本文整理汇总了PHP中Base_AclCommon::set_user方法的典型用法代码示例。如果您正苦于以下问题:PHP Base_AclCommon::set_user方法的具体用法?PHP Base_AclCommon::set_user怎么用?PHP Base_AclCommon::set_user使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Base_AclCommon
的用法示例。
在下文中一共展示了Base_AclCommon::set_user方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: form
static function form()
{
try {
$anonymous = Variable::get('anonymous_setup');
} catch (NoSuchVariableException $e) {
$anonymous = true;
}
if (!Base_AclCommon::is_user() && Base_User_LoginCommon::is_banned()) {
return self::t('You have exceeded the number of allowed login attempts.');
}
require_once 'modules/Libs/QuickForm/requires.php';
if (!Base_AclCommon::is_user() && !$anonymous) {
Base_User_LoginCommon::autologin();
}
if (!Base_AclCommon::is_user() && !$anonymous) {
$get = count($_GET) ? '?' . http_build_query($_GET) : '';
$form = new HTML_QuickForm('loginform', 'post', $_SERVER['PHP_SELF'] . $get);
$form->setRequiredNote('<span style="font-size:80%; color:#ff0000;">*</span><span style="font-size:80%;">' . self::t('denotes required field') . '</span>');
$form->addElement('text', 'username', self::t('Username'));
$form->addRule('username', 'Field required', 'required');
$form->addElement('password', 'password', self::t('Password'));
$form->addRule('password', 'Field required', 'required');
// register and add a rule to check if user is banned
$form->registerRule('check_user_banned', 'callback', 'rule_login_banned', 'Base_User_LoginCommon');
$form->addRule('username', self::t('You have exceeded the number of allowed login attempts.'), 'check_user_banned');
// register and add a rule to check if user and password exists
$form->registerRule('check_login', 'callback', 'submit_login', 'Base_User_LoginCommon');
$form->addRule(array('username', 'password'), self::t('Login or password incorrect'), 'check_login', $form);
$form->addElement('submit', null, self::t('Login'));
if ($form->validate()) {
$user = $form->exportValue('username');
Base_AclCommon::set_user(Base_UserCommon::get_user_id($user), true);
// redirect below is used to better browser refresh behavior.
header('Location: ' . $_SERVER['REQUEST_URI']);
} else {
return "<center>" . $form->toHtml() . "</center>";
}
}
}
示例2: telegram
public static function telegram()
{
$tokens = DB::GetAssoc('SELECT token,single_cache_uid FROM base_notify WHERE telegram=1 AND single_cache_uid is not null');
if (!$tokens) {
return;
}
$ret = array();
$map = array();
$refresh_time = time();
$notified_cache = array();
foreach ($tokens as $token => $uid) {
$msgs = array();
if (Base_NotifyCommon::is_refresh_due_telegram($token)) {
Base_AclCommon::set_user($uid);
$notified_cache[$token] = array();
$notifications = Base_NotifyCommon::get_notifications($token);
foreach ($notifications as $module => $module_new_notifications) {
foreach ($module_new_notifications as $id => $message) {
$notified_cache[$token][$module][] = $id;
$title = EPESI . ' ' . Base_NotifyCommon::strip_html($message['title']);
$body = Base_NotifyCommon::strip_html($message['body']);
//$icon = Base_NotifyCommon::get_icon($module, $message);
$msgs[] = array('title' => $title, 'body' => $body);
}
}
}
$remote_token = md5($uid . '#' . Base_UserCommon::get_user_login($uid) . '#' . $token);
$ret[$remote_token] = $msgs ? $msgs : '0';
$map[$remote_token] = $token;
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://telegram.epesicrm.com/");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($ret));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$status = curl_exec($ch);
curl_close($ch);
$status = @json_decode($status);
if (is_array($status)) {
foreach ($status as $remove) {
if (isset($map[$remove])) {
DB::Execute('UPDATE base_notify SET telegram=0 WHERE token=%s', array($map[$remove]));
unset($notified_cache[$map[$remove]]);
}
}
foreach ($notified_cache as $token => $nc) {
Base_NotifyCommon::set_notified_cache($nc, $token, $refresh_time);
}
}
}