本文整理汇总了PHP中group::setUserRights方法的典型用法代码示例。如果您正苦于以下问题:PHP group::setUserRights方法的具体用法?PHP group::setUserRights怎么用?PHP group::setUserRights使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类group
的用法示例。
在下文中一共展示了group::setUserRights方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: die
// выполняем вход
if ($_COOKIE['remh'] === $user->cookieUserHash($arrData)) {
$user->authorizeUser($arrData['email'], $arrData['password'], false, true);
die('<script type="text/javascript">window.location="' . chpu::createChpuUrl(CONF_SCRIPT_URL . 'index.php?ut=' . $_SESSION['sd_user'][DB_PREFIX . 'conf']['user_type']) . '";</script>');
} else {
cookies::deleteAccessCookie();
}
} else {
cookies::deleteAccessCookie();
}
} else {
cookies::deleteAccessCookie();
}
if (!isset($_SESSION['sd_' . DB_PREFIX . 'codex'])) {
// записываем в сессию права пользователя
$_SESSION['sd_' . DB_PREFIX . 'codex'] = $group->setUserRights('guest', 'guest');
}
// определяем тип пользователя, по умолчанию
$_SESSION['sd_user'][DB_PREFIX . 'conf']['user_type'] = !isset($_GET['ut']) ? 'competitor' : ('competitor' !== $_GET['ut'] && 'employer' !== $_GET['ut'] ? 'competitor' : $_GET['ut']);
$smarty->assign('user_email', false);
$smarty->assign('user_type', $_SESSION['sd_user'][DB_PREFIX . 'conf']['user_type']);
$smarty->assign('codex', $_SESSION['sd_' . DB_PREFIX . 'codex']);
// значения, возвращаемые в форму
}
/**
* обработка страниц
*/
if (isset($_GET['do'])) {
// выход из пользовательской части
if ('logout' === $_GET['do']) {
// очищаем куки и сессию пользователя
示例2: selectUserType
/**
* protected функция производит обновление данных пользователя,
* в соответствии с выбранным типом учетной записи
* данные обновляются и в БД и в Сессии
*
* @param (array) $arrData - массив содержащий данные пользователя для обновления array('first_name', 'last_name', 'phone', 'user_type')
* @param (array) $arrPayments - массив платных услуг (определенных администратором)
*
* @return string (состояние moderate, active или payment) or false
*/
protected function selectUserType($arrData, &$arrPayments)
{
// определяем группу для типа пользователя
$user_group = constant('CONF_' . strtoupper($arrData['user_type']) . '_REGISTER_DEFAULT_GROUP');
// определяем состояние учетной записи пользователя
$group = new group();
$arrRights = $group->setUserRights($arrData['user_type'], $user_group);
// определяем токен учетной записи, в соответствии с обязанностями
$token = $arrRights['resp']['moder_account'] ? 'moderate' : ($arrPayments['register_' . strtolower($arrData['user_type'])] ? 'payment' : 'active');
// если пользователь выбрал платный тип, устанавливаем дату действия токена
'payment' === $token ? $this->arrServiceFields['token_datetime'] = terms::calcDateTimeOfTerm(CONF_USER_PAYMENT_DELETE) : null;
// обновляем данные пользователя
if ($this->updateUser(array('first_name' => $arrData['first_name'], 'last_name' => $arrData['last_name'], 'phone' => $arrData['phone'], 'token_datetime' => $this->arrServiceFields['token_datetime']), "id IN (" . secure::escQuoteData($_SESSION['sd_user']['data']['id']) . ")")) {
// изменяем рабочую таблицу
$this->changeTable('conf_users');
// обновляем таблицу настроек пользователя
if ($this->updateUser(array('user_type' => $arrData['user_type'], 'user_group' => $user_group, 'token' => $token), "id IN (" . secure::escQuoteData($_SESSION['sd_user']['data']['id']) . ")")) {
// изменяем рабочую таблицу
$this->changeTable('users', USR_PREFIX);
// обновляем токен пользователя в сессии
if ('active' === $token) {
$_SESSION['sd_user']['data']['first_name'] = $arrData['first_name'];
$_SESSION['sd_user']['data']['last_name'] = $arrData['last_name'];
$_SESSION['sd_user']['data']['phone'] = $arrData['phone'];
$_SESSION['sd_user'][DB_PREFIX . 'conf']['user_type'] = $arrData['user_type'];
$_SESSION['sd_user'][DB_PREFIX . 'conf']['user_group'] = $user_group;
$_SESSION['sd_user'][DB_PREFIX . 'conf']['token'] = $token;
$_SESSION['sd_' . DB_PREFIX . 'codex'] = $arrRights;
}
return $token;
} else {
// изменяем рабочую таблицу
$this->changeTable('users', USR_PREFIX);
return false;
}
} else {
return false;
}
}