suscribe 2.6 bug approbation

This commit is contained in:
Fred Tempez 2025-01-03 21:20:56 +01:00
parent e263577aad
commit ea48b853cb
3 changed files with 24 additions and 19 deletions

View File

@ -1,3 +1,5 @@
# Version 2.6
- Corrige d'un bug empêchat de terminer la procédure d'inscription après approbation.
# Version 2.5 # Version 2.5
- Reformatage du formulaire d'approbation pour mettre en avant les actions à réaliser par l'administrateur. - Reformatage du formulaire d'approbation pour mettre en avant les actions à réaliser par l'administrateur.
# Version 2.4 # Version 2.4

View File

@ -1 +1 @@
{"name":"suscribe","realName":"Auto Inscription","version":"2.5","update":"0.0","delete":true,"dataDirectory":""} {"name":"suscribe","realName":"Auto Inscription","version":"2.6","update":"0.0","delete":true,"dataDirectory":""}

View File

@ -15,7 +15,7 @@
class suscribe extends common class suscribe extends common
{ {
const VERSION = '2.5'; const VERSION = '2.6';
const REALNAME = 'Auto Inscription'; const REALNAME = 'Auto Inscription';
const DELETE = true; const DELETE = true;
const UPDATE = '0.0'; const UPDATE = '0.0';
@ -146,15 +146,9 @@ class suscribe extends common
'mail' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'mail']), 'mail' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'mail']),
'password' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'password']), 'password' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'password']),
'tags' => $this->getInput('registrationUserLabel', helper::FILTER_STRING_SHORT), 'tags' => $this->getInput('registrationUserLabel', helper::FILTER_STRING_SHORT),
'connectFail' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'connectFail']),
'connectTimeout' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'connectTimeout']),
'accessUrl' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'accessUrl']),
'accessTimer' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'accessTimer']),
'accessCsrf' => $this->getData(['module', $this->getUrl(0), 'users', $this->getUrl(2), 'accessCsrf'])
] ]
]); ]);
// Notifier le user uniquement si le groupe est membre au moins membre // Notifier le user
if ($this->getInput('registrationUserEditGroup') >= 1) {
$this->sendMail( $this->sendMail(
$this->getData(['module', $this->getUrl(0), 'users', 'mail']), $this->getData(['module', $this->getUrl(0), 'users', 'mail']),
'Approbation de l\'inscription', 'Approbation de l\'inscription',
@ -162,7 +156,6 @@ class suscribe extends common
null, null,
$this->getData(['config', 'smtp', 'from']) $this->getData(['config', 'smtp', 'from'])
); );
}
// Supprimer le user de la base temporaire, // Supprimer le user de la base temporaire,
$this->deleteData(['module', $this->getUrl(0), 'users', $this->getUrl(2)]); $this->deleteData(['module', $this->getUrl(0), 'users', $this->getUrl(2)]);
// Valeurs en sortie // Valeurs en sortie
@ -411,10 +404,9 @@ class suscribe extends common
$check $check
&& $this->getInput('registrationValidPassword', helper::FILTER_STRING_SHORT, true) !== $this->getInput('registrationValidConfirmPassword', helper::FILTER_STRING_SHORT, true) && $this->getInput('registrationValidPassword', helper::FILTER_STRING_SHORT, true) !== $this->getInput('registrationValidConfirmPassword', helper::FILTER_STRING_SHORT, true)
) { ) {
self::$inputNotices['registrationAddConfirmPassword'] = 'Les mots de passe ne sont pas identiques'; self::$inputNotices['registrationValidConfirmPassword'] = 'Les mots de passe ne sont pas identiques';
$check = false; $check = false;
} }
if ($check) { if ($check) {
if ( if (
// Pas d'approbation par un administrateur // Pas d'approbation par un administrateur
@ -444,8 +436,19 @@ class suscribe extends common
// Approbation nécessaire // Approbation nécessaire
$this->setData(['module', $this->getUrl(0), 'users', $userId, 'status', self::STATUS_ACCOUNT_AWAITING]); $this->setData(['module', $this->getUrl(0), 'users', $userId, 'status', self::STATUS_ACCOUNT_AWAITING]);
$notification = 'L\'inscription doit être approuvée par un administrateur'; $notification = 'L\'inscription doit être approuvée par un administrateur';
// Stocker le mot de passe temporairement
$this->setData([
'module',
$this->getUrl(0),
'users',
$userId,
'password',
$this->getInput('registrationValidPassword', helper::FILTER_PASSWORD, true),
]);
} }
} }
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'redirect' => $check ? helper::baseUrl() . $this->getdata(['module', $this->getUrl(0), 'config', 'pageSuccess']) : helper::baseUrl() . $this->getdata(['module', $this->getUrl(0), 'config', 'pageError']), 'redirect' => $check ? helper::baseUrl() . $this->getdata(['module', $this->getUrl(0), 'config', 'pageSuccess']) : helper::baseUrl() . $this->getdata(['module', $this->getUrl(0), 'config', 'pageError']),