From: x2000habouzit Date: Thu, 2 Sep 2004 22:27:05 +0000 (+0000) Subject: 10 tons of fixes, again and again X-Git-Tag: xorg/old~1602 X-Git-Url: http://git.polytechnique.org/?a=commitdiff_plain;h=d68fc684130f9b80dd76e65f2a2b68186b19171b;p=platal.git 10 tons of fixes, again and again --- diff --git a/htdocs/admin/admin_trombino.php b/htdocs/admin/admin_trombino.php index c59354c..9758db7 100644 --- a/htdocs/admin/admin_trombino.php +++ b/htdocs/admin/admin_trombino.php @@ -18,21 +18,24 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: admin_trombino.php,v 1.2 2004-08-31 10:03:29 x2000habouzit Exp $ + $Id: admin_trombino.php,v 1.3 2004-09-02 22:27:05 x2000habouzit Exp $ ***************************************************************************/ require("auto.prepend.inc.php"); new_admin_page('admin/admin_trombino.tpl'); -$q = $globals->db->query("SELECT username,promo FROM auth_user_md5 WHERE user_id = '" . $_REQUEST["uid"] . "'"); -list($username, $promo) = mysql_fetch_row($q); +$q = $globals->db->query("SELECT a.alias,promo + FROM auth_user_md5 AS u + INNER JOIN aliases AS a ON ( u.user_id = a.id AND type='a_vie' ) + WHERE user_id = '{$_REQUEST['uid']}'"); +list($forlife, $promo) = mysql_fetch_row($q); if (isset($_REQUEST["action"])) { switch ($_REQUEST["action"]) { case "ecole": header("Content-type: image/jpeg"); - readfile("/home/web/trombino/photos".$promo."/".$username.".jpg"); + readfile("/home/web/trombino/photos".$promo."/".$forlife.".jpg"); exit; break; @@ -57,6 +60,6 @@ if (isset($_REQUEST["action"])) { } } -$page->assign('username', $username); +$page->assign('forlife', $forlife); $page->run(); ?> diff --git a/htdocs/emails.php b/htdocs/emails.php index 54278e5..38b2f6a 100644 --- a/htdocs/emails.php +++ b/htdocs/emails.php @@ -18,19 +18,18 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: emails.php,v 1.4 2004-08-31 10:03:28 x2000habouzit Exp $ + $Id: emails.php,v 1.5 2004-09-02 22:27:05 x2000habouzit Exp $ ***************************************************************************/ require("auto.prepend.inc.php"); new_skinned_page('emails.tpl',AUTH_COOKIE); // on regarde si on a affaire à un homonyme -$res = $globals->db->query("SELECT username!=loginbis AND loginbis!='',alias FROM auth_user_md5 WHERE username = '".$_SESSION["username"]."'"); -list($is_homonyme,$alias) = mysql_fetch_row($res); -mysql_free_result($res); -$page->assign('is_homonyme', $is_homonyme); -$page->assign('alias', $alias); - +$sql = "SELECT alias, (type='a_vie') AS a_vie + FROM aliases + WHERE id='{$_SESSION['uid']}' + ORDER BY type!='a_vie'"; +$page->mysql_assign($sql, 'aliases'); $sql = "SELECT email FROM emails @@ -39,7 +38,7 @@ $page->mysql_assign($sql, 'mails', 'nb_mails'); // on regarde si l'utilisateur a un alias et si oui on l'affiche ! -$sql = "SELECT domain FROM groupex.aliases WHERE id=12 AND email like '".$_SESSION['username']."'"; +$sql = "SELECT domain FROM groupex.aliases WHERE id=12 AND email like '".$_SESSION['forlife']."'"; $result = $globals->db->query($sql); if ($result && list($aliases) = mysql_fetch_row($result)) $page->assign('melix', substr($aliases,0,-3)); diff --git a/htdocs/newsletter.php b/htdocs/newsletter.php index 359abd7..ccbf3c1 100644 --- a/htdocs/newsletter.php +++ b/htdocs/newsletter.php @@ -18,7 +18,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: newsletter.php,v 1.5 2004-08-31 10:03:28 x2000habouzit Exp $ + $Id: newsletter.php,v 1.6 2004-09-02 22:27:05 x2000habouzit Exp $ ***************************************************************************/ require("auto.prepend.inc.php"); @@ -39,7 +39,7 @@ if (($res)&&(list($nl_date, $nl_titre, $nl_text) = mysql_fetch_row($res))) { if (isset($_REQUEST['send_mail'])) { require('diogenes.mailer.inc.php'); $mymail = new DiogenesMailer("info_newsletter@polytechnique.org", - $_SESSION['username']."@polytechnique.org", + $_SESSION['forlife']."@polytechnique.org", "[polytechnique.org] ".$nl_titre); $mymail->addHeader("From: \"Equipe polytechnique.org\" "); $mymail->setBody("Suite à ta demande sur le site web, nous te réexpédions cette lettre d'informations archivée.\r\n\r\n".strip_tags($nl_text)); diff --git a/htdocs/pattecassee.php b/htdocs/pattecassee.php index 01fabd2..a24bd7e 100644 --- a/htdocs/pattecassee.php +++ b/htdocs/pattecassee.php @@ -18,7 +18,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: pattecassee.php,v 1.6 2004-08-31 10:03:28 x2000habouzit Exp $ + $Id: pattecassee.php,v 1.7 2004-09-02 22:27:05 x2000habouzit Exp $ ***************************************************************************/ require("auto.prepend.inc.php"); @@ -41,19 +41,19 @@ if (array_key_exists('email', $_GET) && array_key_exists('action', $_GET)) { $email = valide_email($_GET['email']); // vérifications d'usage $sel = $globals->db->query( - "SELECT e.uid, a.username - FROM emails AS e - INNER JOIN auth_user_md5 AS a ON e.uid = a.user_id - WHERE e.email='$email'"); + "SELECT e.uid, a.alias + FROM emails AS e + INNER JOIN auth_user_md5 AS u ON e.uid = u.user_id + INNER JOIN aliases AS a ON e.uid = a.id + WHERE e.email='$email'"); if (list($uid, $dest) = mysql_fetch_row($sel)) { // envoi du mail $message = "Bonjour ! Ce mail a été généré automatiquement par le service de patte cassée de -Polytechnique.org car un autre utilisateur, " -.$_SESSION["prenom"]." ".$_SESSION["nom"].", +Polytechnique.org car un autre utilisateur, {$_SESSION['prenom']} {$_SESSION['nom']}, nous a signalé qu'en t'envoyant un mail, il avait reçu un message d'erreur -indiquant que ton adresse de redirection " . $email . " +indiquant que ton adresse de redirection $email ne fonctionnait plus ! Nous te suggérons de vérifier cette adresse, et le cas échéant de mettre diff --git a/htdocs/routage-mail.php b/htdocs/routage-mail.php index 156f788..9f161b8 100644 --- a/htdocs/routage-mail.php +++ b/htdocs/routage-mail.php @@ -18,14 +18,14 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: routage-mail.php,v 1.4 2004-08-31 22:01:30 x2000habouzit Exp $ + $Id: routage-mail.php,v 1.5 2004-09-02 22:27:05 x2000habouzit Exp $ ***************************************************************************/ require("auto.prepend.inc.php"); new_skinned_page('routage-mail.tpl',AUTH_MDP); require("email.classes.inc.php"); -$redirect = new Redirect(); +$redirect = new Redirect($_SESSION['uid']); if (isset($_REQUEST['emailop'])) { if ($_REQUEST['emailop']=="retirer" && isset($_REQUEST['num'])) { @@ -40,22 +40,17 @@ if (isset($_REQUEST['emailop'])) { } elseif (isset($_REQUEST['emails_actifs']) && is_array($_REQUEST['emails_actifs']) && isset($_REQUEST['emails_rewrite']) && is_array($_REQUEST['emails_rewrite'])) { - $page->assign('retour', - $redirect->modify_email($_REQUEST['emails_actifs'],$_REQUEST['emails_rewrite'])); + $page->assign('retour', $redirect->modify_email($_REQUEST['emails_actifs'],$_REQUEST['emails_rewrite'])); } } -$sql = "SELECT domain FROM groupex.aliases WHERE id=12 AND email like'".$_SESSION['username']."'"; +$sql = "SELECT domain FROM groupex.aliases WHERE id=12 AND email like'".$_SESSION['forlife']."'"; $res = $globals->db->query($sql); list($grx) = mysql_fetch_row($res); $page->assign('grx',$grx); $page->assign('domaine',substr($grx,0,-3)); -$sql = "SELECT alias FROM auth_user_md5 WHERE user_id=".$_SESSION["uid"]; -$res = $globals->db->query($sql); -list($alias) = mysql_fetch_row($res); -$page->assign('alias',$alias); -foreach ($redirect->emails as $mail) - $emails[] = $mail; -$page->assign('emails',$emails); + +$page->mysql_assign("SELECT alias FROM aliases WHERE id=".$_SESSION["uid"], 'alias'); +$page->assign('emails',$redirect->emails); $page->run(); ?> diff --git a/htdocs/trombipromo.php b/htdocs/trombipromo.php index 5ada38a..ce8193c 100644 --- a/htdocs/trombipromo.php +++ b/htdocs/trombipromo.php @@ -18,7 +18,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: trombipromo.php,v 1.4 2004-08-31 10:03:29 x2000habouzit Exp $ + $Id: trombipromo.php,v 1.5 2004-09-02 22:27:05 x2000habouzit Exp $ ***************************************************************************/ require("auto.prepend.inc.php"); @@ -47,9 +47,10 @@ $res = $globals->db->query("SELECT COUNT(*) list($pnb) = mysql_fetch_row($res); $page->assign('pnb', $pnb); -$sql = "SELECT promo,user_id,username,nom,prenom - FROM auth_user_md5 AS u - RIGHT JOIN photo AS p ON u.user_id=p.uid +$sql = "SELECT promo,user_id,a.alias AS forlife,nom,prenom + FROM photo AS p + INNER JOIN auth_user_md5 AS u ON u.user_id=p.uid + INNER JOIN aliases AS a ON ( u.user_id=a.id AND a.type='a_vie' ) $where ORDER BY promo,nom,prenom LIMIT $offset,$limit"; diff --git a/include/email.classes.inc.php b/include/email.classes.inc.php index 365ed8c..451b308 100644 --- a/include/email.classes.inc.php +++ b/include/email.classes.inc.php @@ -18,7 +18,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: email.classes.inc.php,v 1.2 2004-08-31 11:16:48 x2000habouzit Exp $ + $Id: email.classes.inc.php,v 1.3 2004-09-02 22:27:06 x2000habouzit Exp $ ***************************************************************************/ require("xorg.misc.inc.php"); @@ -50,23 +50,23 @@ class Email { $this->active = $this->filtre; } - function set($flag) { + function set($flag,$uid) { global $globals; if (!$this->{$flag}) { $globals->db->query("update emails set flags = CONCAT_WS(',',flags,'".$this->{'flag_'.$flag}. - "') where uid={$_SESSION['uid']} and num=".$this->num); + "') where uid=$uid and num=".$this->num); if ($flag=='active') $_SESSION['log']->log("email_on",$this->email); $this->{$flag} = true; } } - function deset($flag) { + function deset($flag,$uid) { global $globals; if ($this->{$flag}) { $globals->db->query("update emails set flags = flags & ~(1 << (FIND_IN_SET('".$this->{'flag_'.$flag}."',flags)-1)) - where uid={$_SESSION['uid']} and num=".$this->num); + where uid=$uid and num=".$this->num); if ($flag=='active') $_SESSION['log']->log("email_off",$this->email); $this->{$flag} = false; @@ -77,13 +77,15 @@ class Email { class Redirect { var $flag_active = 'active'; var $emails; + var $uid; - function Redirect() { + function Redirect($_uid) { global $globals; + $this->uid=$_uid; $result = $globals->db->query("select num, email, FIND_IN_SET('active',flags),FIND_IN_SET('filtre',flags), FIND_IN_SET('rewrite',flags), FIND_IN_SET('m4x',flags), FIND_IN_SET('mtic',flags) - from emails where uid = {$_SESSION['uid']}"); + from emails where uid = $_uid"); while ($row = mysql_fetch_row($result)) { $num = $row[0]; if ($num!=0) @@ -124,7 +126,7 @@ class Redirect { global $globals; if (!$this->other_active($num)) return ERROR_INACTIVE_REDIRECTION; - $globals->db->query("delete from emails where uid={$_SESSION['uid']} and num='$num'"); + $globals->db->query("delete from emails where uid={$this->uid} and num='$num'"); $_SESSION['log']->log("email_del",$this->emails[$num]->email); unset($this->emails[$num]); return SUCCESS; @@ -151,7 +153,7 @@ class Redirect { $mtic = 1; } $newnum = $this->freenum(); - $globals->db->query("insert into emails (uid,num,email,flags) VALUES({$_SESSION['uid']},'$newnum','$email','$flags')"); + $globals->db->query("insert into emails (uid,num,email,flags) VALUES({$this->uid},'$newnum','$email','$flags')"); $_SESSION['log']->log("email_add",$email); $this->emails[$newnum] = new Email(array($newnum,$email,1,1,1,0,$mtic)); return SUCCESS; @@ -161,15 +163,15 @@ class Redirect { global $globals; foreach($this->emails as $num=>$mail) { if ($emails_rewrite[$num] != 'no') - $this->emails[$num]->set('rewrite'); + $this->emails[$num]->set('rewrite',$this->uid); else $this->emails[$num]->deset('rewrite'); if ($emails_rewrite[$num] == 'm4x') - $this->emails[$num]->set('m4x'); + $this->emails[$num]->set('m4x',$this->uid); else $this->emails[$num]->deset('m4x'); if(in_array($num,$emails_actifs)) - $this->emails[$num]->set('active'); + $this->emails[$num]->set('active',$this->uid); else $this->emails[$num]->deset('active'); } diff --git a/templates/admin/admin_trombino.tpl b/templates/admin/admin_trombino.tpl index 7569ff4..f61ce61 100644 --- a/templates/admin/admin_trombino.tpl +++ b/templates/admin/admin_trombino.tpl @@ -17,7 +17,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: admin_trombino.tpl,v 1.2 2004-08-31 11:25:39 x2000habouzit Exp $ + $Id: admin_trombino.tpl,v 1.3 2004-09-02 22:27:06 x2000habouzit Exp $ ***************************************************************************} @@ -27,10 +27,10 @@ {dynamic}

-Photo actuelle de {$username} +Photo actuelle de {$forlife}

- +[ PHOTO ]

@@ -42,10 +42,12 @@ Photo actuelle de {$username}

- - - - +
+ + + + +
{/dynamic} diff --git a/templates/emails.tpl b/templates/emails.tpl index f966b18..7194cc0 100644 --- a/templates/emails.tpl +++ b/templates/emails.tpl @@ -17,7 +17,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: emails.tpl,v 1.3 2004-08-31 11:25:38 x2000habouzit Exp $ + $Id: emails.tpl,v 1.4 2004-09-02 22:27:06 x2000habouzit Exp $ ***************************************************************************} @@ -29,21 +29,26 @@ Gestion de mes courriers - + + + + - +
Mes adresses polytechniciennes à vie {if !$is_homonyme}*{/if}Mes adresses polytechniciennes à vie
- Tes adresses polytechniciennes sont - {$smarty.session.username}@polytechnique.org et - {$smarty.session.username}@m4x.org + Tes adresses polytechniciennes sont : +
    + {foreach from=$aliases item=a} +
  • {if $a.a_vie}(*){/if} {$a.alias}@polytechnique.org
  • +
  • {if $a.a_vie}(*){/if} {$a.alias}@m4x.org
  • + {/foreach} +
+
(M4X signifie mail for X, son intérêt est de te doter d'une adresse à vie moins "voyante" que l'adresse @polytechnique.org). - {if $alias} - Tu disposes également des adresses {$alias}@polytechnique.org et {$alias}@m4x.org - {/if}
Elles seront prochainement complétées d'une adresse @polytechnique.edu, plus lisible dans les pays du monde où "Polytechnique" n'évoque pas grand chose, @@ -52,20 +57,27 @@ Gestion de mes courriers
+

+(*) les adresses mails marquées de (*) te sont réservées à vie (et même plus). +les autres sont sujettes à être supprimées (en cas d'homonymie, ou de changement de nom d'épouse pour les femmes) +

+ +
- + @@ -78,7 +90,7 @@ Gestion de mes courriers - + - + - +
Où est-ce que je reçois le courrier qui m'y est adressé ?
Actuellement, tout courrier électronique qui t'y est adressé, est envoyé {if $nb_mails eq 1} à l'adresse {else} aux adresses {/if} - {section name=mail loop=$mails} - {$mails[mail].email}{if $smarty.section.mail.last}.{else}, {/if} - {/section} -
+
    + {section name=mail loop=$mails} +
  • {$mails[mail].email}{if $smarty.section.mail.last}.{else}, {/if}
  • + {/section} +
Si tu souhaites modifier ce reroutage de ton courrier, il te suffit de te rendre ici !
Antivirus, antispam
Tous les courriers qui te sont envoyés sur tes adresses polytechniciennes sont filtrés par un logiciel antivirus très performant. Il te protège de ces @@ -99,13 +111,13 @@ Gestion de mes courriers
Un alias sympatique : melix !
Tu peux ouvrir en supplément une adresse synonyme de ton adresse @polytechnique.org, sur les domaines @melix.org et @melix.net (melix = Mél X).
{if $melix} Tu disposes à l'heure actuelle des adresses {$melix}net et {$melix}org. @@ -119,17 +131,6 @@ Gestion de mes courriers
- -{if !$is_homonyme} -

-* Tu les garderas toute ta vie, sauf si un jour un homonyme d'une autre promotion -s'inscrit à Polytechnique.org (les cas d'homonymie sont très rares), -auquel cas ces adresses deviendraient -{$smarty.session.username}{$smarty.session.promo|regex_replace:"/^../":""}@polytechnique.org et -{$smarty.session.username}{$smarty.session.promo|regex_replace:"/^../":""}@m4x.org -

-{/if} - {/dynamic} {* vim:set et sw=2 sts=2 sws=2: *} diff --git a/templates/routage-mail.tpl b/templates/routage-mail.tpl index 9079b56..e5cc690 100644 --- a/templates/routage-mail.tpl +++ b/templates/routage-mail.tpl @@ -17,14 +17,14 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: routage-mail.tpl,v 1.5 2004-08-31 22:01:32 x2000habouzit Exp $ + $Id: routage-mail.tpl,v 1.6 2004-09-02 22:27:06 x2000habouzit Exp $ ***************************************************************************} {dynamic} {if $retour == $smarty.const.ERROR_INACTIVE_REDIRECTION}

Tu ne peux pas avoir aucune adresse de redirection active, sinon ton adresse - {$smarty.session.username}@polytechnique.org ne fonctionnerait plus. + {$smarty.session.forlife}@polytechnique.org ne fonctionnerait plus.

{/if} {if $retour == $smarty.const.ERROR_INVALID_EMAIL} @@ -34,7 +34,7 @@ {/if} {if $retour == $smarty.const.ERROR_LOOP_EMAIL}

- Erreur: {$smarty.session.username}@polytechnique.org doit renvoyer vers un email + Erreur: {$smarty.session.forlife}@polytechnique.org doit renvoyer vers un email existant valide. En particulier, il ne peut pas être renvoyé vers lui-même, ni son équivalent en m4x.org, ni vers son équivalent polytechnique.edu.

@@ -56,8 +56,14 @@ Tes adresses de redirection

- Tu configures ici les adresses emails vers lesquelles tes adresses {if $grx neq ""}{$grx}, {$domaine}org, {/if}{if $alias neq ""}{$alias}@polytechnique.org, {$alias}@m4x.org,{/if}{$smarty.session.username}@polytechnique.org et {$smarty.session.username}@m4x.org sont redirigées. + Tu configures ici les adresses emails vers lesquelles tes adresses (listées ci-dessous) sont dirigées :

+

Le routage est en place pour les adresses dont la case "Actif" est cochée. Si tu modifies souvent ton routage, tu as tout intérêt à rentrer toutes les @@ -79,27 +85,24 @@ Réécriture   - {section name=i loop=$emails} + {foreach from=$emails item=e} - {$emails[i]->email} - active}checked="checked"{/if} /> + {$e->email} - active}checked="checked"{/if} /> + + - retirer + retirer - {/section} + {/foreach}
diff --git a/templates/trombipromo.tpl b/templates/trombipromo.tpl index 0ecb59e..936a4a6 100644 --- a/templates/trombipromo.tpl +++ b/templates/trombipromo.tpl @@ -17,7 +17,7 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *************************************************************************** - $Id: trombipromo.tpl,v 1.5 2004-08-31 11:25:39 x2000habouzit Exp $ + $Id: trombipromo.tpl,v 1.6 2004-09-02 22:27:06 x2000habouzit Exp $ ***************************************************************************} @@ -82,10 +82,10 @@ chaque page affiche au plus {$limit} photos. {/if} - +  [ PHOTO ] - {mailto address="`$p.username`@polytechnique.org" text="`$p.prenom` `$p.nom`"} + {mailto address="`$p.forlife`@polytechnique.org" text="`$p.prenom` `$p.nom`"} {if $smarty.request.xpromo eq 'all'}{$p.promo}{/if} {if $smarty.session.perms eq 'admin'}
[admin]{/if}