forked from ZwiiCMS-Team/ZwiiCMS
13.3.06 Login, connexion persistante
This commit is contained in:
parent
5326b94c04
commit
0f1bd2377e
@ -5,6 +5,7 @@
|
||||
- Répare le bouton d'effacement en mode édition d'une page.
|
||||
- Corrige la feuille de style du slider les balises H1, H3 et A.
|
||||
- Corrige l'absence de contenu de page lorsque le module est en position libre et que le mot clé [MODULE] n'a pas été inséré.
|
||||
- Corrige l'option "REster connecter sur ce navigateur' dont la connexion est désormais réellement persistente.
|
||||
|
||||
## Versions 13.3.05
|
||||
** Corrections : **
|
||||
|
@ -408,8 +408,8 @@ class helper
|
||||
*/
|
||||
public static function deleteCookie($cookieKey)
|
||||
{
|
||||
unset($_COOKIE[$cookieKey]);
|
||||
setcookie($cookieKey, '', time() - 3600, helper::baseUrl(false, false), '', false, true);
|
||||
unset($_COOKIE[$cookieKey]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -574,7 +574,7 @@ class user extends common
|
||||
// Stoppe si le profil est affecté
|
||||
foreach ($groups as $userId) {
|
||||
if ((string) $this->getData(['user', $userId, 'profil']) === $this->getUrl(3)) {
|
||||
$profilUsed= false;
|
||||
$profilUsed = false;
|
||||
}
|
||||
}
|
||||
foreach ($this->getData(['profil']) as $groupId => $groupData) {
|
||||
@ -935,11 +935,11 @@ class user extends common
|
||||
// recherche les membres du groupe
|
||||
$groups = helper::arrayColumn($this->getData(['user']), 'group');
|
||||
$groups = array_keys($groups, $this->getUrl(2));
|
||||
$flag= true;
|
||||
$flag = true;
|
||||
// Stoppe si le profil est affecté
|
||||
foreach ($groups as $userId) {
|
||||
if ((string) $this->getData(['user', $userId, 'profil']) === $this->getUrl(3)) {
|
||||
$flag= false;
|
||||
$flag = false;
|
||||
}
|
||||
}
|
||||
if (
|
||||
@ -1045,10 +1045,22 @@ class user extends common
|
||||
// RAZ
|
||||
$this->setData(['user', $userId, 'connectFail', 0]);
|
||||
$this->setData(['user', $userId, 'connectTimeout', 0]);
|
||||
// Expiration
|
||||
|
||||
// Validité du cookie
|
||||
$expire = $this->getInput('userLoginLongTime', helper::FILTER_BOOLEAN) === true ? strtotime("+1 year") : 0;
|
||||
setcookie('ZWII_USER_ID', $userId, $expire, helper::baseUrl(false, false), '', helper::isHttps(), true);
|
||||
setcookie('ZWII_USER_PASSWORD', $this->getData(['user', $userId, 'password']), $expire, helper::baseUrl(false, false), '', helper::isHttps(), true);
|
||||
switch ($this->getInput('userLoginLongTime', helper::FILTER_BOOLEAN)) {
|
||||
case false:
|
||||
// Cookie de session
|
||||
setcookie('ZWII_USER_ID', $userId, $expire, helper::baseUrl(false, false), '', helper::isHttps(), true);
|
||||
setcookie('ZWII_USER_PASSWORD', $this->getData(['user', $userId, 'password']), $expire, helper::baseUrl(false, false), '', helper::isHttps(), true);
|
||||
break;
|
||||
default:
|
||||
// Cookie persistant
|
||||
setcookie('ZWII_USER_ID', $userId, $expire, helper::baseUrl(false, false));
|
||||
setcookie('ZWII_USER_PASSWORD', $this->getData(['user', $userId, 'password']), $expire, helper::baseUrl(false, false));
|
||||
break;
|
||||
}
|
||||
|
||||
// Accès multiples avec le même compte
|
||||
$this->setData(['user', $userId, 'accessCsrf', $_SESSION['csrf']]);
|
||||
// Valeurs en sortie lorsque le site est en maintenance et que l'utilisateur n'est pas administrateur
|
||||
@ -1064,8 +1076,9 @@ class user extends common
|
||||
} else {
|
||||
$logStatus = 'Connexion réussie';
|
||||
$pageId = $this->getUrl(2);
|
||||
if ($this->getData(['config', 'page404']) === $pageId
|
||||
|| $this->getData(['config', 'page403']) === $pageId
|
||||
if (
|
||||
$this->getData(['config', 'page404']) === $pageId
|
||||
|| $this->getData(['config', 'page403']) === $pageId
|
||||
) {
|
||||
$pageId = '';
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user