本文整理汇总了PHP中jAuth::login方法的典型用法代码示例。如果您正苦于以下问题:PHP jAuth::login方法的具体用法?PHP jAuth::login怎么用?PHP jAuth::login使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类jAuth
的用法示例。
在下文中一共展示了jAuth::login方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: in
/**
*
*/
function in()
{
$conf = jApp::coord()->getPlugin('auth')->config;
// both after_login and after_logout config fields are required
if ($conf['after_login'] == '') {
throw new jException('jauth~autherror.no.after_login');
}
if ($conf['after_logout'] == '') {
throw new jException('jauth~autherror.no.after_logout');
}
$rep = $this->getResponse('redirectUrl');
if (!jAuth::login($this->param('login'), $this->param('password'), $this->param('rememberMe'))) {
// auth fails
sleep(intval($conf['on_error_sleep']));
$params = array('login' => $this->param('login'), 'failed' => 1);
if ($conf['enable_after_login_override']) {
$params['auth_url_return'] = $this->param('auth_url_return');
}
$rep->url = jUrl::get($conf['after_logout'], $params);
} else {
if ($conf['enable_after_login_override']) {
$url_return = $this->param('auth_url_return');
if ($url_return) {
$rep->url = $url_return;
} else {
$rep->url = jUrl::get($conf['after_login']);
}
} else {
$rep->url = jUrl::get($conf['after_login']);
}
}
return $rep;
}
示例2: in
/**
*
*/
function in()
{
$rep = $this->getResponse('redirectUrl');
$conf = jApp::coord()->getPlugin('auth')->config;
$url_return = '/';
if ($conf['after_login'] == '') {
throw new jException('jcommunity~login.error.no.auth_login');
}
if ($conf['after_logout'] == '') {
throw new jException('jcommunity~login.error.no.auth_logout');
}
$form = jForms::fill('jcommunity~login');
if (!$form) {
$rep->url = jUrl::get($conf['after_logout']);
return $rep;
}
if (!jAuth::login($form->getData('auth_login'), $form->getData('auth_password'), $form->getData('auth_remember_me'))) {
sleep(intval($conf['on_error_sleep']));
$form->setErrorOn('auth_login', jLocale::get('jcommunity~login.error'));
//jMessage::add(jLocale::get('jcommunity~login.error'), 'error');
if ($auth_url_return = $this->param('auth_url_return')) {
$url_return = jUrl::get('login:index', array('auth_url_return' => $auth_url_return));
} else {
$url_return = jUrl::get('login:index');
}
} else {
jForms::destroy('jcommunity~login');
if (!($conf['enable_after_login_override'] && ($url_return = $this->param('auth_url_return')))) {
$url_return = jUrl::get($conf['after_login']);
}
}
$rep->url = $url_return;
return $rep;
}
示例3: in
/**
*
*/
function in()
{
$conf = $GLOBALS['gJCoord']->getPlugin('auth')->config;
$url_return = '/';
// both after_login and after_logout config fields are required
if ($conf['after_login'] == '') {
throw new jException('jauth~autherror.no.auth_login');
}
if ($conf['after_logout'] == '') {
throw new jException('jauth~autherror.no.auth_logout');
}
// if after_login_override = off or url_return doesnt exists, set url_return to after_login
// if auth_url_return exists, redirect to it
if (!($conf['enable_after_login_override'] && ($url_return = $this->param('auth_url_return')))) {
$url_return = jUrl::get($conf['after_login']);
}
if (!jAuth::login($this->param('login'), $this->param('password'), $this->param('rememberMe'))) {
// auth fails
sleep(intval($conf['on_error_sleep']));
$params = array('login' => $this->param('login'), 'failed' => 1);
if ($conf['enable_after_login_override']) {
$params['auth_url_return'] = $this->param('auth_url_return');
}
$url_return = jUrl::get($conf['after_logout'], $params);
}
$rep = $this->getResponse('redirectUrl');
$rep->url = $url_return;
return $rep;
}
示例4: setUp
public function setUp()
{
$conf = parse_ini_file(jApp::configPath() . 'auth_class.coord.ini.php', true);
global $gJCoord;
require_once JELIX_LIB_PATH . 'plugins/coord/auth/auth.coord.php';
if (isset($gJCoord->plugins['auth'])) {
$this->oldAuthPlugin = $gJCoord->plugins['auth'];
}
$gJCoord->plugins['auth'] = new AuthCoordPlugin($conf);
$this->config =& $gJCoord->plugins['auth']->config;
$_SESSION[$this->config['session_name']] = new jAuthDummyUser();
jAuth::login('laurent', 'foo', false);
}
示例5: in
/**
*
*/
function in()
{
$conf = $GLOBALS['gJCoord']->getPlugin('auth')->config;
if (!jAuth::login($this->param('login'), $this->param('password'))) {
sleep(intval($conf['on_error_sleep']));
$result = 'BAD';
} else {
$result = 'OK';
}
$rep = $this->getResponse('text');
$rep->content = $result;
return $rep;
}
示例6: confirm
/**
* activate a new password. the key should be given as a parameter
*/
function confirm()
{
$repError = $this->_check();
if ($repError) {
return $repError;
}
$rep = $this->getResponse("redirect");
$rep->action = "password:confirmform";
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
return $rep;
}
$form = jForms::fill('confirmation');
if ($form == null) {
return $rep;
}
if (!$form->check()) {
return $rep;
}
$login = $form->getData('conf_login');
$user = jAuth::getUser($login);
if (!$user) {
$form->setErrorOn('conf_login', jLocale::get('password.form.confirm.login.doesnt.exist'));
return $rep;
}
if ($user->status != JCOMMUNITY_STATUS_PWD_CHANGED) {
jForms::destroy('confirmation');
$rep = $this->getResponse('html');
$tpl = new jTpl();
$tpl->assign('status', JCOMMUNITY_STATUS_VALID);
$rep->body->assign('MAIN', $tpl->fetch('password_ok'));
return $rep;
}
if (strcmp($user->request_date, date('Y-m-d H:i:s', time() - 48 * 60 * 60)) < 0) {
jForms::destroy('confirmation');
$rep = $this->getResponse('html');
$tpl = new jTpl();
$tpl->assign('status', JCOMMUNITY_STATUS_MAIL_CHANGED);
$rep->body->assign('MAIN', $tpl->fetch('password_ok'));
return $rep;
}
if ($form->getData('conf_key') != $user->keyactivate) {
$form->setErrorOn('conf_key', jLocale::get('password.form.confirm.bad.key'));
return $rep;
}
$passwd = $form->getData('conf_password');
$user->status = JCOMMUNITY_STATUS_VALID;
jAuth::updateUser($user);
jAuth::changePassword($login, $passwd);
jAuth::login($login, $passwd);
jForms::destroy('confirmation');
$rep->action = "password:confirmok";
return $rep;
}
示例7: index
/**
* Redirect to the appropriate action depending on the REQUEST parameter.
* @param $PROJECT Name of the project
* @param $REQUEST Request type
* @return Redirect to the corresponding action depending on the request parameters
*/
function index()
{
if (isset($_SERVER['PHP_AUTH_USER'])) {
$ok = jAuth::login($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
}
$rep = $this->getResponse('redirect');
// Get the project
$project = $this->iParam('project');
if (!$project) {
// Error message
jMessage::add('The parameter project is mandatory !', 'ProjectNotDefind');
return $this->serviceException();
}
// Get parameters
if (!$this->getServiceParameters()) {
return $this->serviceException();
}
// Return the appropriate action
$service = strtoupper($this->iParam('SERVICE'));
$request = strtoupper($this->iParam('REQUEST'));
if ($request == "GETCAPABILITIES") {
return $this->GetCapabilities();
} elseif ($request == "GETCONTEXT") {
return $this->GetContext();
} elseif ($request == "GETSCHEMAEXTENSION") {
return $this->GetSchemaExtension();
} elseif ($request == "GETLEGENDGRAPHICS") {
return $this->GetLegendGraphics();
} elseif ($request == "GETLEGENDGRAPHIC") {
return $this->GetLegendGraphics();
} elseif ($request == "GETFEATUREINFO") {
return $this->GetFeatureInfo();
} elseif ($request == "GETPRINT") {
return $this->GetPrint();
} elseif ($request == "GETSTYLES") {
return $this->GetStyles();
} elseif ($request == "GETMAP") {
return $this->GetMap();
} elseif ($request == "GETFEATURE") {
return $this->GetFeature();
} elseif ($request == "DESCRIBEFEATURETYPE") {
return $this->DescribeFeatureType();
} elseif ($request == "GETTILE") {
return $this->GetTile();
} elseif ($request == "GETPROJ4") {
return $this->GetProj4();
} else {
global $HTTP_RAW_POST_DATA;
if (isset($HTTP_RAW_POST_DATA)) {
$requestXml = $HTTP_RAW_POST_DATA;
} else {
$requestXml = file('php://input');
$requestXml = implode("\n", $requestXml);
}
$xml = simplexml_load_string($requestXml);
if ($xml == false) {
jMessage::add('REQUEST ' . $request . ' not supported by Lizmap Web Client', 'InvalidRequest');
return $this->serviceException();
}
return $this->PostRequest($requestXml);
}
}
示例8: confirm
/**
* activate an account. the key should be given as a parameter
*/
function confirm()
{
if (jAuth::isConnected()) {
return $this->noaccess();
}
$rep = $this->getResponse("redirect");
$rep->action = "registration:confirmform";
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
return $rep;
}
$form = jForms::fill('confirmation');
if ($form == null) {
return $rep;
}
if (!$form->check()) {
return $rep;
}
$login = $form->getData('conf_login');
$user = jAuth::getUser($login);
if (!$user) {
$form->setErrorOn('conf_login', jLocale::get('register.form.confirm.login.doesnt.exist'));
return $rep;
}
if ($user->status != JCOMMUNITY_STATUS_NEW) {
jForms::destroy('confirmation');
$rep = $this->getResponse('html');
$tpl = new jTpl();
$tpl->assign('already', true);
$rep->body->assign('MAIN', $tpl->fetch('registration_ok'));
return $rep;
}
if ($form->getData('conf_key') != $user->keyactivate) {
$form->setErrorOn('conf_key', jLocale::get('register.form.confirm.bad.key'));
return $rep;
}
$user->status = JCOMMUNITY_STATUS_VALID;
jEvent::notify('jcommunity_registration_confirm', array('user' => $user));
jAuth::updateUser($user);
jAuth::changePassword($login, $form->getData('conf_password'));
jAuth::login($login, $form->getData('conf_password'));
jForms::destroy('confirmation');
$rep->action = "registration:confirmok";
return $rep;
}
示例9: beforeAction
/**
* @param array $params plugin parameters for the current action
* @return null or jSelectorAct if action should change
*/
public function beforeAction($params)
{
$notLogged = false;
$badip = false;
$selector = null;
// Check if auth cookie exist and user isn't logged on
if (isset($this->config['persistant_enable']) && $this->config['persistant_enable'] && !jAuth::isConnected()) {
if (isset($this->config['persistant_cookie_name']) && isset($this->config['persistant_crypt_key'])) {
$cookieName = $this->config['persistant_cookie_name'];
if (isset($_COOKIE[$cookieName]['auth']) && strlen($_COOKIE[$cookieName]['auth']) > 0) {
$decrypted = jCrypt::decrypt($_COOKIE[$cookieName]['auth'], $this->config['persistant_crypt_key']);
$decrypted = @unserialize($decrypted);
if ($decrypted && is_array($decrypted)) {
list($login, $password) = $decrypted;
jAuth::login($login, $password);
}
}
if (isset($_COOKIE[$cookieName]['login'])) {
// destroy deprecated cookies
setcookie($cookieName . '[login]', '', time() - 3600, $this->config['persistant_cookie_path']);
setcookie($cookieName . '[passwd]', '', time() - 3600, $this->config['persistant_cookie_path']);
}
} else {
throw new jException('jelix~auth.error.persistant.incorrectconfig', 'persistant_cookie_name, persistant_crypt_key');
}
}
//Do we check the ip ?
if ($this->config['secure_with_ip']) {
if (!isset($_SESSION['JELIX_AUTH_SECURE_WITH_IP'])) {
$_SESSION['JELIX_AUTH_SECURE_WITH_IP'] = $this->_getIpForSecure();
} else {
if ($_SESSION['JELIX_AUTH_SECURE_WITH_IP'] != $this->_getIpForSecure()) {
session_destroy();
$selector = new jSelectorAct($this->config['bad_ip_action']);
$notLogged = true;
$badip = true;
}
}
}
//Creating the user's object if needed
if (!isset($_SESSION[$this->config['session_name']])) {
$notLogged = true;
$_SESSION[$this->config['session_name']] = new jAuthDummyUser();
} else {
$notLogged = !jAuth::isConnected();
}
if (!$notLogged && $this->config['timeout']) {
if (isset($_SESSION['JELIX_AUTH_LASTTIME'])) {
if (time() - $_SESSION['JELIX_AUTH_LASTTIME'] > $this->config['timeout'] * 60) {
$notLogged = true;
jAuth::logout();
unset($_SESSION['JELIX_AUTH_LASTTIME']);
} else {
$_SESSION['JELIX_AUTH_LASTTIME'] = time();
}
} else {
$_SESSION['JELIX_AUTH_LASTTIME'] = time();
}
}
$needAuth = isset($params['auth.required']) ? $params['auth.required'] == true : $this->config['auth_required'];
$authok = false;
if ($needAuth) {
if ($notLogged) {
if ($this->config['on_error'] == 1 || !jApp::coord()->request->isAllowedResponse('jResponseRedirect')) {
throw new jException($this->config['error_message']);
} else {
if (!$badip) {
$auth_url_return = jApp::coord()->request->getParam('auth_url_return');
if ($auth_url_return === null) {
jApp::coord()->request->params['auth_url_return'] = jUrl::getCurrentUrl();
}
$selector = new jSelectorAct($this->config['on_error_action']);
}
}
} else {
$authok = true;
}
} else {
$authok = true;
}
return $selector;
}
示例10: savenewpwd
/**
* let's change the user password
*/
function savenewpwd()
{
$login = $this->param('user');
$rep = $this->getResponse('redirect');
$rep->action = 'jcommunity~account:show';
$rep->params = array('user' => $login);
if ($login == '' || !jAuth::isConnected() || jAuth::getUserSession()->login != $login) {
return $rep;
}
$form = jForms::fill('havefnubb~pwd', $login);
if (!$form) {
return $rep;
}
// check the form !
$form->check();
//if error go back to the form to retry to change the password
if (count($form->getErrors())) {
$rep->action = 'havefnubb~members:changepwd';
// check if the new password is different from the actual one
} else {
if ($form->getData('conf_password') == $form->getData('old_password')) {
jMessage::add(jLocale::get('havefnubb~members.pwd.passwd.are.the.same.unchanged'), 'warning');
$rep->action = 'havefnubb~members:changepwd';
return $rep;
}
//update the password
$passwd = $form->getData('conf_password');
$user = jAuth::getUser($login);
// update the user info
jAuth::updateUser($user);
// change the pass
jAuth::changePassword($login, $passwd);
// login back with new pass
jAuth::login($login, $passwd);
jForms::destroy('havefnubb~pwd');
}
jMessage::add(jLocale::get('havefnubb~member.pwd.passwd.successfully.changed'), 'ok');
return $rep;
}