From 12596090c0246f6a7e784026fe3deb35a9abcbc2 Mon Sep 17 00:00:00 2001 From: x2000habouzit Date: Sun, 5 Sep 2004 17:39:42 +0000 Subject: [PATCH] homonymes now runs the new system still have the insciption to do ... --- htdocs/admin/homonymes.php | 41 +++++++++++++++++++++++++++-------------- templates/admin/homonymes.tpl | 40 ++++++++++++++++++++-------------------- 2 files changed, 47 insertions(+), 34 deletions(-) diff --git a/htdocs/admin/homonymes.php b/htdocs/admin/homonymes.php index 1a7ad27..c1d384f 100644 --- a/htdocs/admin/homonymes.php +++ b/htdocs/admin/homonymes.php @@ -18,7 +18,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: homonymes.php,v 1.3 2004-09-01 17:59:07 x2000habouzit Exp $ + $Id: homonymes.php,v 1.4 2004-09-05 17:39:42 x2000habouzit Exp $ ***************************************************************************/ require("auto.prepend.inc.php"); @@ -30,13 +30,17 @@ $op = isset($_REQUEST['op']) ? $_REQUEST['op'] : 'list'; $target = isset($_REQUEST['target']) ? $_REQUEST['target'] : 0; if ($target) { - $res = $globals->db->query("SELECT prenom,username,loginbis FROM auth_user_md5 WHERE user_id='$target'"); - if (! list($prenom,$username,$loginbis) = mysql_fetch_row($res)) { + $res = $globals->db->query("SELECT prenom,a.alias AS forlife,h.alias AS loginbis + FROM auth_user_md5 AS u + INNER JOIN aliases AS a ON (a.id=u.user_id AND a.type='a_vie') + INNER JOIN aliases AS h ON (h.id=u.user_id AND h.expire!='') + WHERE user_id='$target'"); + if (! list($prenom,$forlife,$loginbis) = mysql_fetch_row($res)) { $target=0; } else { $page->assign('prenom',$prenom); - $page->assign('username',$username); - $page->assign('loginbis',$loginbis); + $page->assign('forlife',$forlife); + $page->assign('loginbis',$loginbis); } } @@ -53,15 +57,16 @@ if ($target) { // on examine l'op a effectuer switch ($op) { case 'mail': - $mymail = new DiogenesMailer($cc,$username,"Dans 2 semaines, suppression de $loginbis@polytechnique.org",false,$cc); + $mymail = new DiogenesMailer($cc,$forlife,"Dans 2 semaines, suppression de $loginbis@polytechnique.org",false,$cc); $mymail->addHeader($FROM); $mymail->setBody(stripslashes($_REQUEST['mailbody'])); $mymail->send(); $op = 'list'; break; case 'correct': - $globals->db->query("REPLACE INTO aliases VALUES ('$loginbis', 'homonyme', 0)"); - $mymail = new DiogenesMailer($cc,$username,"Mise en place du robot $loginbis@polytechnique.org",false,$cc); + $globals->db->query("UPDATE aliases SET type='homonyme',expire='NOW()' WHERE alias='$loginbis'"); + $globals->db->query("REPLACE INTO homonymes (homonyme_id,user_id) VALUES('$target','$target')"); + $mymail = new DiogenesMailer($cc,$forlife,"Mise en place du robot $loginbis@polytechnique.org",false,$cc); $mymail->addHeader($FROM); $mymail->setBody(stripslashes($_REQUEST['mailbody'])); $mymail->send(); @@ -69,14 +74,22 @@ if ($target) { break; } } + if ($op == 'list') { - $res = $globals->db->query("SELECT loginbis FROM auth_user_md5 WHERE loginbis!='' GROUP BY loginbis ORDER BY loginbis"); + $res = $globals->db->query("SELECT a.alias AS homonyme,s.id AS user_id,s.alias AS forlife, + promo,prenom,nom, + IF(h.homonyme_id=s.id, a.expire, NULL) AS expire, + IF(h.homonyme_id=s.id, a.type, NULL) AS type + FROM aliases AS a + LEFT JOIN homonymes AS h ON (h.homonyme_id = a.id) + INNER JOIN aliases AS s ON (s.id = h.user_id AND s.type='a_vie') + INNER JOIN auth_user_md5 AS u ON (s.id=u.user_id) + WHERE a.type='homonyme' OR a.expire!='' + ORDER BY a.alias,promo"); $hnymes = Array(); - while (list($loginbis) = mysql_fetch_row($res)) $hnymes[$loginbis] = Array(); - mysql_free_result($res); - - $res = $globals->db->query("SELECT loginbis,user_id,username,promo,prenom,nom,alias,date_mise_alias_temp AS date FROM auth_user_md5 WHERE loginbis!='' ORDER BY promo"); - while ($tab = mysql_fetch_assoc($res)) $hnymes[$tab['loginbis']][] = $tab; + while ($tab = mysql_fetch_assoc($res)) { + $hnymes[$tab['homonyme']][] = $tab; + } mysql_free_result($res); $page->assign_by_ref('hnymes',$hnymes); diff --git a/templates/admin/homonymes.tpl b/templates/admin/homonymes.tpl index 8cf1a79..32ed6bb 100644 --- a/templates/admin/homonymes.tpl +++ b/templates/admin/homonymes.tpl @@ -17,7 +17,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: homonymes.tpl,v 1.5 2004-08-31 11:25:39 x2000habouzit Exp $ + $Id: homonymes.tpl,v 1.6 2004-09-05 17:39:42 x2000habouzit Exp $ ***************************************************************************} @@ -28,9 +28,9 @@ {dynamic} {if $op eq 'mail'} -

mail envoyé à {$username}

+

mail envoyé à {$forlife}

{elseif $op eq 'correct'} -

mail envoyé à {$username}, alias supprimé

+

mail envoyé à {$forlife}, alias supprimé

{/if} {if $op eq 'list' || $op eq 'mail' || $op eq 'correct'} @@ -42,8 +42,8 @@ - - + + {foreach from=$hnymes key=login item=row} @@ -55,17 +55,17 @@ {foreach from=$row item=user} - +
usernamedate de l'aliasalias concernédate de péremption de l'alias op
   - {if $user.alias eq $login} - {$user.username} + {if $user.type eq 'alias'} + {$user.forlife} {else} - {$user.username} + {$user.forlife} {/if} {$user.date}{$user.expire|date_format:"%d %b %Y"} - fiche - edit - {if $user.alias eq $login} + fiche + edit + {if $user.type eq 'alias'} mailer corriger {/if} @@ -78,8 +78,6 @@ {elseif $op eq 'mail-conf'}
- - @@ -92,8 +90,8 @@ Comme nous t'en avons informé par mail il y a quelques temps, pour respecter nos engagements en terme d'adresses e-mail devinables, -tu te verras bientôt attribuer de façon définitive l'adresse -{$username}@polytechnique.org. +tu te verras bientôt retirer l'alias {$loginbis}@polytechnique.org pour +ne garder que {$forlife}@polytechnique.org. Toute personne qui écrira à {$loginbis}@polytechnique.org recevra la réponse d'un robot qui l'informera que {$loginbis}@polytechnique.org @@ -106,6 +104,8 @@ L' @@ -115,8 +115,6 @@ L' {elseif $op eq 'correct-conf'} - -
Envoyer un mail pour prévenir l'utilisateur
+ +
@@ -127,8 +125,8 @@ L' {$prenom}, Comme nous t'en avons informé par mail il y a quelques temps, -nous t'avons attribué de façon définitive l'adresse -{$username}@polytechnique.org. +nous t'avons retiré de façon définitive l'adresse +{$loginbis}@polytechnique.org. Toute personne qui écrit à {$loginbis}@polytechnique.org reçoit la réponse d'un robot qui l'informe que {$loginbis}@polytechnique.org @@ -143,6 +141,8 @@ L' -- 2.1.4
Mettre en place le robot {$loginbis}@polytechnique.org
+ +