Exemplo n.º 1
0
function restapi_user_get_user_tokens_by_username($username)
{
    $ret = array();
    if (!function_exists('setup_userman')) {
        return $ret;
    }
    $user = setup_userman()->getUserByUsername($username);
    if (empty($user)) {
        return $ret;
    }
    return restapi_user_get_user_tokens($user['id']);
}
Exemplo n.º 2
0
 /**
  * @verb GET
  * @returns - a userman user
  * @uri /userman/extensions/:id
  */
 function get_extension_id($params)
 {
     if ($params['id'] == 'none') {
         /* Don't do that. */
         return false;
     }
     $userman = setup_userman();
     if ($userman) {
         $user = $userman->getUserByDefaultExtension($params['id']);
         if ($user) {
             $user['assigned'] = $userman->getAssignedDevices($user['id']);
         }
         return $user;
     }
     return false;
 }
Exemplo n.º 3
0
function userman_configprocess()
{
    $action = isset($_REQUEST['action']) ? $_REQUEST['action'] : null;
    $extension = isset($_REQUEST['extdisplay']) ? $_REQUEST['extdisplay'] : null;
    $userman = setup_userman();
    //if submitting form, update database
    switch ($action) {
        case "add":
            $extension = isset($_REQUEST['extension']) ? $_REQUEST['extension'] : null;
            if (isset($_REQUEST['userman|assign']) && !empty($extension)) {
                if ($_REQUEST['userman|assign'] == 'add') {
                    $username = !empty($_REQUEST['userman_username_cb']) && !empty($_REQUEST['userman_username']) ? $_REQUEST['userman_username'] : $extension;
                    $displayname = !empty($_REQUEST['name']) ? $_REQUEST['name'] : $extension;
                    $email = !empty($_REQUEST['email']) ? $_REQUEST['email'] : '';
                    $password = $_REQUEST['userman|password'];
                    $ret = $userman->addUser($username, $password, $extension, _('Autogenerated user on new device creation'), array('email' => $email, 'displayname' => $displayname));
                    if ($ret['status']) {
                        $userman->setGlobalSettingByID($ret['id'], 'assigned', array($extension));
                        if (!empty($email)) {
                            $userman->sendWelcomeEmail($username, $password);
                        }
                    }
                } elseif ($_REQUEST['userman|assign'] != 'none') {
                    $user = $userman->getUserByID($_REQUEST['userman|assign']);
                    //run this last so that hooks to other modules get the correct information
                    $userman->updateUser($user['username'], $user['username'], $extension);
                }
            }
            break;
        case "edit":
            if (isset($_REQUEST['userman|assign']) && $_REQUEST['userman|assign'] == 'add') {
                $userO = $userman->getUserByDefaultExtension($extension);
                $username = !empty($_REQUEST['userman_username_cb']) && !empty($_REQUEST['userman_username']) ? $_REQUEST['userman_username'] : $extension;
                $displayname = !empty($_REQUEST['name']) ? $_REQUEST['name'] : $extension;
                $email = !empty($_REQUEST['email']) ? $_REQUEST['email'] : '';
                $password = $_REQUEST['userman|password'];
                $ret = $userman->addUser($username, $password, $extension, _('Autogenerated user on new device creation'), array('email' => $email, 'displayname' => $displayname));
                if ($ret['status'] && !empty($userO)) {
                    $userman->setGlobalSettingByID($ret['id'], 'assigned', array($extension));
                    $userman->updateUser($userO['username'], $userO['username'], 'none');
                    if (!empty($email)) {
                        $userman->sendWelcomeEmail($username, $password);
                    }
                }
            } elseif (isset($_REQUEST['userman|assign']) && $_REQUEST['userman|assign'] != 'none') {
                $userO = $userman->getUserByDefaultExtension($extension);
                if (!empty($userO['id']) && $userO['id'] != $_REQUEST['userman|assign']) {
                    $assigned = $userman->getGlobalSettingByID($userO['id'], 'assigned');
                    $assigned = array_diff($assigned, array($extension));
                    $userman->setGlobalSettingByID($userO['id'], 'assigned', $assigned);
                    //run this last so that hooks to other modules get the correct information
                    $userman->updateUser($userO['username'], $userO['username'], 'none');
                    $ret = $userman->getUserById($_REQUEST['userman|assign']);
                    $assigned = $userman->getGlobalSettingByID($ret['id'], 'assigned');
                    if (is_array($assgined) && !in_array($extension, $assigned)) {
                        $assigned[] = $extension;
                        $userman->setGlobalSettingByID($ret['id'], 'assigned', $assigned);
                    } elseif (!is_array($assigned) || empty($assigned)) {
                        $userman->setGlobalSettingByID($ret['id'], 'assigned', array($extension));
                    }
                    //run this last so that hooks to other modules get the correct information
                    $userman->updateUser($ret['username'], $ret['username'], $extension);
                } elseif (empty($userO['id'])) {
                    $user = $userman->getUserByID($_REQUEST['userman|assign']);
                    //run this last so that hooks to other modules get the correct information
                    $ret = $userman->updateUser($user['username'], $user['username'], $extension);
                    if ($ret['status']) {
                        $userman->setGlobalSettingByID($ret['id'], 'assigned', array($extension));
                    }
                }
                //Set to none so remove the extension as a default from this user
                //also remove extension from assigned devices, since we probably did it
            } elseif (isset($_REQUEST['userman|assign']) && $_REQUEST['userman|assign'] == 'none') {
                $userO = $userman->getUserByDefaultExtension($extension);
                if (!empty($userO['id'])) {
                    $assigned = $userman->getGlobalSettingByID($userO['id'], 'assigned');
                    $assigned = array_diff($assigned, array($extension));
                    $userman->setGlobalSettingByID($userO['id'], 'assigned', $assigned);
                    //run this last so that hooks to other modules get the correct information
                    $userman->updateUser($userO['username'], $userO['username'], 'none');
                }
            }
            break;
        case "del":
            $userO = $userman->getUserByDefaultExtension($extension);
            if (!empty($userO['id'])) {
                $assigned = $userman->getGlobalSettingByID($userO['id'], 'assigned');
                if (!empty($assigned)) {
                    $assigned = array_diff($assigned, array($extension));
                    $userman->setGlobalSettingByID($userO['id'], 'assigned', $assigned);
                }
                //run this last so that hooks to other modules get the correct information
                $userman->updateUser($userO['username'], $userO['username'], 'none');
            }
            break;
    }
}
Exemplo n.º 4
0
<?php

$userman = setup_userman();
//pre-boostrap styles
if (version_compare(getVersion(), '12.0', '<')) {
    ?>
	<style>
		.alert {
			width: 80%;
			padding: 15px;
			margin-bottom: 20px;
			border: 1px solid transparent;
			border-radius: 4px;
		}
		.alert-success {
			color: #468847;
			background-color: #dff0d8;
			border-color: #d6e9c6;
		}
		.alert-danger {
			color: #b94a48;
			background-color: #f2dede;
			border-color: #ebccd1;
		}
	</style>
<?php 
}
echo $userman->myShowPage();