Пример #1
0
function editUser($userAccount, $pACL, $pDB, $arrFormElements, $smarty, $local_templates_dir, $arrLang, $idUserAccount, $userLevel1)
{
    if (getParameter("id_user")) {
        $id_user = getParameter("id_user");
        if (!$pACL->isUserAdministratorGroup($userAccount)) {
            if ($pACL->getIdUser($userAccount) != $id_user) {
                $smarty->assign("mb_title", $arrLang["ERROR"]);
                $smarty->assign("mb_message", $arrLang["You are not authorized to access to information of that user"]);
                return reportUserList($arrLang, $pACL, $idUserAccount, $smarty, $userLevel1, $userAccount);
            }
        }
    } else {
        $id_user = $pACL->getIdUser($userAccount);
    }
    // Tengo que recuperar la data del usuario
    $pACL = new paloACL($pDB);
    $arrUser = $pACL->getUsers($id_user);
    $arrFillUser['name'] = $arrUser[0][1];
    $arrFillUser['description'] = $arrUser[0][2];
    // Lleno el grupo
    $arrMembership = $pACL->getMembership($id_user);
    $id_group = "";
    if (is_array($arrMembership)) {
        foreach ($arrMembership as $groupName => $groupId) {
            $id_group = $groupId;
            // Asumo que cada usuario solo puede pertenecer a un grupo
            break;
        }
    }
    $arrFillUser['group'] = $id_group;
    $arrFillUser['extension'] = $arrUser[0][3];
    // Implementar
    include_once "libs/paloSantoForm.class.php";
    $arrFormElements['password1']['REQUIRED'] = 'no';
    $arrFormElements['password2']['REQUIRED'] = 'no';
    $oForm = new paloForm($smarty, $arrFormElements);
    $arrFillUser['password1'] = '********';
    $arrFillUser['password2'] = '********';
    $listaPropiedades = leerPropiedadesWebmail($pDB, $smarty, $id_user);
    if (isset($listaPropiedades['login'])) {
        $arrFillUser['webmailuser'] = $listaPropiedades['login'];
    }
    if (isset($listaPropiedades['domain'])) {
        $arrFillUser['webmaildomain'] = $listaPropiedades['domain'];
    }
    if (isset($listaPropiedades['password'])) {
        $arrFillUser['webmailpassword1'] = '********';
    }
    //if (isset($listaPropiedades['imapsvr'])) $arrFillUser['webmailimapsvr'] = $listaPropiedades['imapsvr'];
    $oForm->setEditMode();
    $smarty->assign("id_user", $id_user);
    return $oForm->fetchForm("{$local_templates_dir}/new.tpl", "{$arrLang['Edit User']} \"" . $arrFillUser['name'] . "\"", $arrFillUser);
}