Eric a écrit:
Cool ! ^^
+1
plg a écrit:
OK, je vais m'en occuper. Comptes sur cet ajout.
Cool ! ^^
Je résous ce topic ;-)
OK, je vais m'en occuper. Comptes sur cet ajout.
Absolument ! J'avais déjà procédé à un ajout de trigger sur ma galerie locale pour voir 1) si j'étais capable de faire 2) si cela correspondait au besoin. "render_lost_password_mail_content", c'est nickel.
Merci plg :-)
Est-ce que cela t'intéresserait ?
$ svn diff password.php Index: password.php =================================================================== --- password.php (revision 9116) +++ password.php (working copy) @@ -84,6 +84,8 @@ ."\n".l10n('Password').': '.$new_password ; + $infos = trigger_event('render_lost_password_mail_content', $infos); + if (pwg_mail($row['email'], array('subject' => l10n('password updated'), 'content' => $infos))) {
Oui... Mais non ;-)
Le plugin Captcha ajoute un élément sur la page d'inscription (register.php) et non sur password.php. De plus, register.php comporte les triggers nécessaires et permet le pre/post filtering.
Avec password.php, autant on pourrait insérer un élément sur la page, autant il n'est pas possible de modifier le comportement de la fonction. Les utilisateurs ayant perdu leur mot de passe reçoivent un mail laconique ne comportant que leur login et mot de passe. Mon but est de permettre "d'embellir" ce contenu.
As tu regarder le chemin que prenais le plugin captcha ?
Il y a des chance que ce soit le même chemin ? non ?
Oui, ce serait l'occasion.
Avis des codeurs en chef ?
Pourquoi pas ajouter des triggers :-D
Profites-en avec la v2.2
;-)
Bonsoir à tous et toutes,
Je suis confronté à un petit problème technique que je n'arrive pas à résoudre dans un de mes plugins (UAM pour ne pas le citer ^^) : Je cherche à surcharger les informations envoyées par email lorsq'un utilisateur a oublié son mot de passe et demande une régénération. Le but n'est pas, évidemment, de supprimer les informations transmises (à savoir username et password) mais de pouvoir en ajouter d'autres personnalisables.
Le fichier de base qui exploite la génération et l'envoi d'un nouveau mot de passe est ./password.php. Je me suis donc basé sur celui-ci. Comme il ne contient pas de trigger, j'ai tenté ceci:
// Customization of lost password email if (script_basename() == 'password') { if (isset($_POST['submit'])) { if (isset($_POST['mail_address']) and !empty($_POST['mail_address']) and isset($conf_UAM[29]) and $conf_UAM[29] == 'true') { $mail_address = pwg_db_real_escape_string($_POST['mail_address']); $query = ' SELECT '.$conf['user_fields']['id'].' AS id , '.$conf['user_fields']['username'].' AS username , '.$conf['user_fields']['email'].' AS email FROM '.USERS_TABLE.' as u INNER JOIN '.USER_INFOS_TABLE.' AS ui ON u.'.$conf['user_fields']['id'].' = ui.user_id WHERE '.$conf['user_fields']['email'].' = \''.$mail_address.'\' AND ui.status = \'normal\' ;'; $result = pwg_query($query); if (pwg_db_num_rows($result) > 0) { while ($row = pwg_db_fetch_assoc($result)) { $new_password = generate_key(6); $infos = $conf_UAM[30] ."\n"."\n".l10n('Username').': '.stripslashes($row['username']) ."\n".l10n('Password').': '.$new_password; } } } } }
Evidemment, cela ne fonctionne pas. J'ai essayé en "clonant" le code originel de password.php. Là, çà fonctionne... Trop ! En effet, comme je fais appel 2 fois à pwg_mail (une fois via password.php et une seconde par le plugin), l'utilisateur reçois 2 emails de régénération de mot de passe; et le dernier arrivé aura raison.
Je suis donc bloqué. D'où ma question : Quelqu'un aurait-il une idée brillante et géniale pour pouvoir surcharger le contenu la variable $infos de password.php ?