================================================================================
+VERSION 0.9.16 XX XX 2008
+
+New:
+
+ * Carnet:
+ - List updated fields in notifications -FRU
+
+ * Core:
+ - New PlProfiler tool -FRU
+ - Integration of goodies/external tools with local rss/iCal -VZA
+ - iGoogle gadgets for latest events and directory search -VZA
+
+ * Lists:
+ - Unsure mails are moderated -FRU
+
+Bug/Wish:
+
+ * Emails:
+ - #726: Don't send the email if an attachment can't be downloaded -FRU
+ - #750: Fix email list in test email -FRU
+
+ * Lists:
+ - #793: Show broken members on ML -FRU
+
+ * Profile:
+ - #729: Fix positioning of addresses on public profile -FRU
+ - #742: Sub domain was hidden when editing profile -FRU
+ - #752: Don't show vcard link on profile when the person is dead -FRU
+ - #764: Fix mentoring edition page -FRU
+ - #790: Ensure we always have a current address -FRU
+
+ * Search:
+ - #741: Mentor search in advanced search -FRU
+
+ * XnetEvent:
+ - #728: Update CSV -FRU
+ - #743: Don't show a warning when subscriber has no forlife -FRU
+
+ * XnetGrp:
+ - #732: Adapt subscription text to sex -FRU
+ - #735: Encoding of list description in member edition form -FRU
+
+From 0.9.15 branch:
+
+ * XnetEvents:
+ - #738: Duplicated payments in certain conditions -FRU
+
+================================================================================
VERSION 0.9.15 08 10 2007
New:
* SHK: Jeremy Lainé (Sharky) <jeremy.laine@m4x.org>
* VP : Vincent Palatin <vincent.palatin@m4x.org>
* XdX: Alexandre Hô (XandreX) <alexandre.ho@m4x.org>
+ * VZA: Vincent Zanotti (vinZ2) <vincent.zanotti@m4x.org>
================================================================================
vim:et:ts=4:sw=4:tw=80:enc=utf-8:
VERSNUM := $(shell grep VERSION ChangeLog | head -1 | sed -e "s/VERSION //;s/ .*//")
VERSTAG := $(shell grep VERSION ChangeLog | head -1 | grep 'XX' > /dev/null 2> /dev/null && echo 'beta')
+BANANA := $(shell ( [ -d ../banana ] && echo `pwd`"/../banana" ) || echo "/home/web/dev/banana")
+
VERSION = $(VERSNUM)$(VERSTAG)
PKG_NAME = platal
## core
##
-core: spool/templates_c spool/mails_c include/globals.inc.php configs/platal.cron htdocs/.htaccess
+core: spool/templates_c spool/mails_c include/globals.inc.php configs/platal.cron htdocs/.htaccess spool/conf
-spool/templates_c spool/mails_c spool/uploads:
+spool/templates_c spool/mails_c spool/uploads spool/conf spool/uploads/temp:
mkdir -p $@
chmod o+w $@
+spool/uploads/temp/.htaccess: spool/uploads/temp Makefile
+ echo "Order deny,allow" > $@
+ echo "Deny from all" >> $@
+
htdocs/.htaccess: htdocs/.htaccess.in Makefile
@REWRITE_BASE="/~$$(id -un)"; \
test "$$REWRITE_BASE" = "/~web" && REWRITE_BASE="/"; \
build-wiki: $(WIKI_NEEDS) | get-wiki
-htdocs/uploads: spool/uploads
+htdocs/uploads: spool/uploads/temp/.htaccess
cd htdocs && ln -sf ../spool/uploads
htdocs/wiki:
## banana
##
-banana: htdocs/images/banana htdocs/css/banana.css
+banana: htdocs/images/banana htdocs/css/banana.css include/banana/banana.inc.php
htdocs/images/banana:
- cd $(@D) && ln -sf /usr/share/banana/img $(@F)
+ cd $(@D) && ln -sf $(BANANA)/img $(@F)
htdocs/css/banana.css:
- cd $(@D) && ln -sf /usr/share/banana/css/style.css $(@F)
+ cd $(@D) && ln -sf $(BANANA)/css/style.css $(@F)
+
+include/banana/banana.inc.php:
+ cd $(@D) && find $(BANANA)/banana/ -name '*.php' -exec ln -sf {} . ";"
+
+
##
## jquery
require_once 'connect.db.inc.php';
require_once dirname(__FILE__).'/../include/banana/ml.inc.php';
+ini_set('memory_limit', '128M');
Banana::$mbox_helper = $globals->banana->mbox_helper;
Banana::$spool_root = $globals->banana->spool_root;
require_once 'connect.db.inc.php';
require_once dirname(__FILE__).'/../include/banana/ml.inc.php';
+ini_set('memory_limit', '128M');
Banana::$mbox_helper = $globals->banana->mbox_helper;
Banana::$spool_root = $globals->banana->spool_root;
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
require_once 'xdb.php';
-$globals->baseurl = "https://www.polytechnique.org";
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
require_once 'connect.db.inc.php';
require_once dirname(__FILE__).'/../../include/banana/ml.inc.php';
+ini_set('memory_limit', '128M');
Banana::$mbox_helper = $globals->banana->mbox_helper;
Banana::$spool_root = $globals->banana->spool_root;
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
require('./connect.db.inc.php');
require('plmailer.php');
-$res = XDB::query("SELECT count(stamp), sum(stamp < NOW() - $M_PERIOD), sum(stamp < NOW() - $R_PERIOD) FROM x4dat.requests");
-list($nb,$nbold,$nbveryold) = $res->fetchOneRow();
+$res = XDB::query("SELECT count(r.stamp), UNIX_TIMESTAMP(MIN(r.stamp)),
+ sum(r.stamp < NOW() - $M_PERIOD), sum(r.stamp < NOW() - $R_PERIOD)
+ FROM x4dat.requests AS r");
+list($nb, $age, $nbold, $nbveryold) = $res->fetchOneRow();
+
+$age = (time() - intval($age)) / 86400;
+$head = "";
+if ($age > 15) {
+ $head = "[autodestruction du serveur] ";
+} elseif ($age > 7) {
+ $head = "[armageddon imminent] ";
+} elseif ($age > 5) {
+ $head = "[guerre nucléaire] ";
+} elseif ($age > 3) {
+ $head = "[ET Téléphone maison] ";
+} elseif ($age > 1) {
+ $head = "[réveil !] ";
+} elseif (!empty($nbveryold)) {
+ $head = "[urgent] ";
+}
+
if (empty($nb)) {
exit;
$mymail = new PlMailer();
$mymail->setFrom('validation@' . $globals->mail->domain);
$mymail->addTo("validation@" . $globals->mail->domain);
-$mymail->setSubject((empty($nbveryold)?"":"[urgent] ")."il y a $nb validation$plural non effectuée$plural");
+$mymail->setSubject($head . "il y a $nb validation$plural non effectuée$plural");
$message =
"il y a $nb validation$plural à effectuer \n"
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$all = new AllNotifs();
-foreach($all->_data as $u) {
- $week = date("W - Y");
-
- $text = " ".($u['sexe'] ? 'Chère' : 'Cher')." {$u['prenom']},\n\n"
- . " Voici les événements survenus dans la semaine écoulée,\n"
- . "et depuis ta dernière visite sur le site.\n\n"
- . "Tu trouveras les mêmes informations sur la page :\n"
- . " https://www.polytechnique.org/carnet/panel\n\n"
- . "------------------------------------------------------------------------\n\n";
-
- $html = <<<EOF
-<html>
- <head>
- <title>Notifications de la semaine $week</title>
- </head>
- <body>
- <p>Voici les événements survenus dans la semaine écoulée, et depuis ta dernière visite sur le site.</p>
- <p>Tu trouveras les mêmes informations sur <a href='https://www.polytechnique.org/carnet/panel'>cette page</a></p>
-EOF;
-
- foreach($u['data'] as $cid=>$d) {
- $text .= " {$all->_cats[$cid][(count($d)==1)?'mail_sg':'mail']} :\n\n";
- $html .= "<h1 style='font-size: 120%'>{$all->_cats[$cid][(count($d)==1)?'mail_sg':'mail']} :</h1>\n<ul>\n";
-
- foreach($d as $promo=>$x) {
- require_once('../../plugins/modifier.date_format.php');
- $date = smarty_modifier_date_format($x['date'], '%d %b %Y');
- $text .= " - (X{$x['promo']}) {$x['prenom']} {$x['nom']} le $date\n";
- $text .= " https://www.polytechnique.org/profile/private/{$x['bestalias']}\n\n";
- $html .= "<li>(X{$x['promo']}) <a href='https://www.polytechnique.org/profile/private/{$x['bestalias']}'>{$x['prenom']} {$x['nom']}</a> le $date</li>\n";
- }
- $text .= "\n";
- $html .= "</ul>\n";
- }
-
- $text .= "-- \n"
- . "L'équipe de Polytechnique.org\n\n"
- . "------------------------------------------------------------------------\n\n"
- . "Tu recois ce mail car tu as activé la notification automatique \n"
- . "par mail des événements que tu surveilles.\n\n"
- . "Tu peux changer cette option sur :\n"
- . " https://www.polytechnique.org/carnet/notifs";
- $html .= <<<EOF
- <hr />
- <p>L'équipe de Polytechnique.org</p>
- <br />
- <p>
- Tu recois ce mail car tu as activé la notification automatique par mail des événements que tu surveilles.
- </p>
- <p>Tu peux changer cette option sur la <a href="https://www.polytechnique.org/carnet/notifs">page
- de configuration des notifications</a>
- </p>
- </body>
-</html>
-EOF;
-
- global $globals;
- $mailer = new PlMailer();
- $mailer->setFrom('Carnet Polytechnicien <support_carnet@' . $globals->mail->domain . '>');
- $mailer->addTo("\"{$u['prenom']} {$u['nom']}\" <{$u['bestalias']}@" . $globals->mail->domain . '>');
- $mailer->setSubject("Notifications de la semaine $week");
- $mailer->setTxtBody($text);
- if ($u['mail_fmt'] == 'html') { $mailer->setHtmlBody($html); }
- $mailer->send();
+$mailer = new PlMailer('carnet/notif.mail.tpl');
+foreach ($all->_data as $u) {
+ $mailer = new PlMailer('carnet/notif.mail.tpl');
+ $mailer->assign('u', $u);
+ $mailer->assign('week', date("W - Y"));
+ $mailer->assign('cats', $all->_cats);
+ $mailer->addTo('"' . $u['prenom'] . ' ' . $u['nom'] . '" <' . $u['bestalias'] . '@polytechnique.org>');
+ $mailer->send($u['mail_fmt'] == 'html');
}
+XDB::execute("DELETE FROM watch_profile
+ WHERE ts < DATE_SUB(CURRENT_DATE, INTERVAL 15 DAY)");
+
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>
#!/usr/bin/php5
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#! /usr/bin/perl -w
#***************************************************************************
-#* Copyright (C) 2003-2007 Polytechnique.org *
+#* Copyright (C) 2003-2008 Polytechnique.org *
#* http://opensource.polytechnique.org/ *
#* *
#* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/perl
#***************************************************************************
-#* Copyright (C) 2003-2007 Polytechnique.org *
+#* Copyright (C) 2003-2008 Polytechnique.org *
#* http://opensource.polytechnique.org/ *
#* *
#* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
--- /dev/null
+#!/bin/sh
+
+field=$1
+nom=$2
+promo=$3
+
+query="SELECT $field FROM auth_user_md5 AS u "
+where=""
+pos=0
+for i in $nom ; do
+ query="$query INNER JOIN search_name AS sn${pos} ON (u.user_id = sn${pos}.uid) "
+ [ "$where" != "" ] && where="$where AND"
+ where="${where} sn${pos}.token LIKE \"${i}%\""
+ pos=$((pos + 1))
+done
+if [ "${promo}" != "" ] ; then
+ [ "$where" != "" ] && where="$where AND "
+ where="${where} u.promo = $promo"
+fi
+query="${query} WHERE ${where} GROUP BY u.user_id"
+
+echo $query | mysql --default-character-set=utf8 -N x4dat
if mlist.header_filter_rules == []:
return 0
try:
- action = mlist.header_filter_rules[1][1]
+ action = mlist.header_filter_rules[2][1]
return 2
except:
- action = mlist.header_filter_rules[0][1]
+ action = mlist.header_filter_rules[1][1]
if action == mm_cfg.HOLD:
return 1
if action == mm_cfg.DISCARD:
return 0
hfr = []
if int(level) is 1:
+ hfr.append(('X-Spam-Flag: Unsure, tests=bogofilter', mm_cfg.HOLD, False))
hfr.append(('X-Spam-Flag: Yes, tests=bogofilter', mm_cfg.HOLD, False))
elif int(level) is 2:
+ hfr.append(('X-Spam-Flag: Unsure, tests=bogofilter', mm_cfg.HOLD, False))
hfr.append(('X-Spam-Flag: Yes, tests=bogofilter, spamicity=(0\.999999|1\.000000)', mm_cfg.DISCARD, False))
hfr.append(('X-Spam-Flag: Yes, tests=bogofilter', mm_cfg.HOLD, False))
elif int(level) is 3:
+ hfr.append(('X-Spam-Flag: Unsure, tests=bogofilter', mm_cfg.HOLD, False))
hfr.append(('X-Spam-Flag: Yes, tests=bogofilter', mm_cfg.DISCARD, False))
if mlist.header_filter_rules != hfr:
mlist.Lock()
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
XDB::execute("INSERT INTO logger.sessions
SET uid={?}, host={?}, ip={?}, forward_ip={?}, forward_host={?}, browser={?}, suid={?}, flags={?}",
- $uid, $host, $ip, $forward_ip, $forward_host, $browser, $suid, $proxy);
+ $uid, $host, ip_to_uint($ip), ip_to_uint($forward_ip), $forward_host, $browser, $suid, $proxy);
if ($forward_ip) {
$this->proxy_ip = $ip;
$this->proxy_host = $host;
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
MiniWiki::Markup("/\n\n/", '</p><p>', "\n\n", "paragraphe1\n\nparagraphe2");
MiniWiki::Markup("/\n/", ' ', "\n");
MiniWiki::Markup("/^.*<\/p>.*<p>.*$/s", "<p>$0</p>", "$0");
+
+ // french typo rules, unbreakable spaces
+ MiniWiki::Markup("/ +([!?:;])/", " $1", "$0");
}
public static function WikiToHTML($wiki, $title = false)
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$this->register_modifier('escape_html', 'escape_html');
$this->default_modifiers = Array('@escape_html');
}
- $this->register_outputfilter('hide_emails');
+ if (S::i('auth') <= AUTH_PUBLIC) {
+ $this->register_outputfilter('hide_emails');
+ }
$this->addJsLink('wiki.js');
header("Accept-Charset: utf-8");
if (Env::v('forceXml')) {
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$this->template_dir = $globals->spoolroot . "/templates/";
$this->compile_dir = $globals->spoolroot . "/spool/mails_c/";
$this->config_dir = $globals->spoolroot . "/configs/";
-
+ array_unshift($this->plugins_dir, $globals->spoolroot."/plugins/");
$this->register_outputfilter(Array($this, 'mail_format'));
$this->register_function('from', Array($this, 'setFrom'));
$this->register_function('bcc', Array($this, 'addBcc'));
$this->register_function('subject', Array($this, 'setSubject'));
$this->register_function('add_header', Array($this, 'addHeader'));
+ $this->assign_by_ref('globals', $globals);
}
public static function &get(&$mailer, $tpl)
error_reporting($level);
}
if ($this->wiki) {
- $this->setTxtBody(MiniWiki::WikiToText($this->wiki, true, 0, 78));
+ $this->setTxtBody(MiniWiki::WikiToText($this->wiki, false, 0, 78));
if ($with_html) {
- $this->setHtmlBody(MiniWiki::WikiToHtml($this->wiki, true));
+ $this->setHtmlBody('<html><body>' . MiniWiki::WikiToHtml($this->wiki, true) . '</body></html>');
}
}
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
--- /dev/null
+<?php
+/***************************************************************************
+ * Copyright (C) 2003-2008 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************/
+
+class PlProfiler
+{
+ static public function start($name, $info = "action")
+ {
+ global $globals;
+ if (!($globals->debug & DEBUG_BT)) {
+ return false;
+ }
+ if (!isset(PlBacktrace::$bt[$name])) {
+ new PlBacktrace($name);
+ }
+ PlBacktrace::$bt[$name]->start($info);
+ return true;
+ }
+
+ static public function step($name, $info = "action")
+ {
+ PlProfiler::stop($name);
+ PlProfiler::start($name, $info);
+ }
+
+ static public function stop($name)
+ {
+ global $globals;
+ if (!($globals->debug & DEBUG_BT)) {
+ return false;
+ }
+ PlBacktrace::$bt[$name]->stop();
+ return true;
+ }
+}
+
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+?>
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
public $vars;
// number of displayed fields
public $nbfields;
+ // a where clause to restrict table
+ public $whereclause;
// the field for sorting entries
public $sortfield;
public $sortdesc = false;
$this->idfield = $idfield;
$this->sortfield = $idfield;
$this->idfield_editable = $editid;
+ $this->whereclause = '1';
$r = XDB::iterator("SHOW COLUMNS FROM $table");
$this->vars = array();
while ($a = $r->next()) {
}
}
+ // add a where clause to limit table listing
+ public function set_where_clause($whereclause="1")
+ {
+ $this->whereclause = $whereclause;
+ }
+
// set an action when trying to delete row
public function on_delete($action = NULL, $message = NULL)
{
}
}
if ($action == 'edit') {
- $r = XDB::query("SELECT * FROM {$this->table} WHERE {$this->idfield} = {?}",$id);
+ $r = XDB::query("SELECT * FROM {$this->table} WHERE {$this->idfield} = {?} AND {$this->whereclause}",$id);
$entry = $r->fetchOneAssoc();
$page->assign('entry', $this->prepare_edit($entry));
$page->assign('id', $id);
}
if (!$cancel) {
if ($this->idfield_editable && ($id != Post::v($this->idfield)) && $action != 'new')
- XDB::execute("UPDATE {$this->table} SET {$this->idfield} = {?} WHERE {$this->idfield} = {?}", Post::v($this->idfield), $id);
+ XDB::execute("UPDATE {$this->table} SET {$this->idfield} = {?} WHERE {$this->idfield} = {?} AND {$this->whereclause}", Post::v($this->idfield), $id);
XDB::execute("REPLACE INTO {$this->table} VALUES ($values)");
if ($id !== false)
$page->trig("L'entrée ".$id." a été mise à jour.");
if (count($this->sort) > 0) {
$sort = 'ORDER BY ' . join($this->sort, ',');
}
- $it = XDB::iterator("SELECT * FROM {$this->table} $sort");
+ $it = XDB::iterator("SELECT * FROM {$this->table} WHERE {$this->whereclause} $sort");
$this->nbfields = 0;
foreach ($this->vars as $field => $descr)
if ($descr['display']) $this->nbfields++;
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
private $filename;
private $type;
+ static public $lastError;
+
/** For images
*/
private $x;
public function upload(array &$file)
{
+ if (@$file['error']) {
+ PlUpload::$lastError = 'Erreur de téléchargement de ' . $file['name'] . ' : ';
+ switch ($file['error']) {
+ case UPLOAD_ERR_INI_SIZE: case UPLOAD_ERR_FORM_SIZE:
+ PlUpload::$lastError .= 'le fichier est trop gros (limite : ' . ini_get('upload_max_filesize') . ')';
+ break;
+ case UPLOAD_ERR_PARTIAL: case UPLOAD_ERR_NO_FILE:
+ PlUpload::$lastError .= 'le fichier n\'a pas été transmis intégralement';
+ break;
+ default:
+ PlUpload::$lastError .= 'erreur interne';
+ break;
+ }
+ return false;
+ }
if (!is_uploaded_file($file['tmp_name'])) {
return false;
} else if (!move_uploaded_file($file['tmp_name'], $this->filename)) {
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
to=geoloc@staff.polytechnique.org
[mails_ax]
-from="Association des Anciens de l'X" <info@amicale.polytechnique.org>
+from="Amicale des Anciens de l'X" <info@amicale.polytechnique.org>
replyto=info@amicale.polytechnique.org
[payment_ready]
[test_email]
from="Polytechnique.org" <support@polytechnique.org>
+
+[carnet]
+from="Carnet Polytechnicien <support_carnet@polytechnique.org>"
locale = "fr_FR.UTF-8"
timezone = "Europe/Paris"
secure_domain = ""
+baseurl = "https://www.example.org/"
skin = "default"
register_skin = "register"
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
padding: 0 6px 0 0;
}
-table.cadre_a_onglet{
- border-width: 0;
- padding : 0;
- margin: 0;
-}
-
-td.conteneur_tab {
- border-width : 1px 2px 2px 1px;
- border-style : solid;
- border-color : #999;
- padding : 4px 4px 4px 4px;
- background : #eceade;
-}
-
-#onglet {
- display : block;
- margin : 0;
- padding : 0;
-}
-
-#onglet li {
- display : block;
- float : left;
- padding : 0.4ex;
- margin : 0 0.3ex -1px 0;
- background : #D2E0E6 repeat-x 0 100%;
- border-width : 1px 1px 0px 1px;
- border-style : solid;
- border-color : #999;
- border-bottom-color : #999;
- width: auto;
- height: 5ex;
- text-align: center;
-}
-
-#onglet li:hover { background : #fc3 repeat-x 0 100%; }
-
-#onglet li.actif {
- background : #eceade;
- border-bottom-color : #eceade;
- font-weight: bold;
-}
-
-#onglet li a {
- font-size: 80%;
- font-weight : normal;
- text-decoration : none;
- color : #000;
-}
-
-#onglet li a:hover { text-decoration: underline; }
-#onglet li img { margin-right : 2px; }
/*******************************************************************************
7 fiche.php & fiche_referent.php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
}
/*******************************************************************************
- 6 Profil
- [ onglets des profils ]
-*******************************************************************************/
-
-td.conteneur_tab {
- background-color: #eeeeff;
- border-color: #2f006f;
-}
-
-#onglet li {
- background-color: #ddddff;
- border-color: #2f006f;
-}
-
-#onglet li:hover {
- background-color: #2f006f;
-}
-
-#onglet li.actif {
- background-color: #eeeeff;
-}
-
-#onglet li:hover a {
- color: #fff;
-}
-
-/*******************************************************************************
7 fiche.php
[ cas de la fiche ]
*******************************************************************************/
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
--- /dev/null
+/***************************************************************************
+ * Copyright (C) 2003-2008 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************/
+
+body {
+ font-family: "Arial", sans-serif;
+ font-size: small;
+ color: #000000;
+ background: #ffffff;
+ background-position: center;
+ margin: 0.2em 0em;
+}
+
+a:link, a:visited, a:active, a:hover { color: #003399; background: none; }
+img { vertical-align: middle; }
+a img { border: 0px; }
+td { vertical-align: top; }
+div.more { font-size: x-small; text-align: right; }
+
+/* Events */
+div.events ul { margin: 0; padding: 0 0.2em 0 1em; }
+div.events ul li { margin: 0.5em 0.2em; padding: 0; }
+li.unread { font-weight: bold; }
+
+/* Search gadget: frame */
+div.welcome {
+ text-align: center;
+}
+
+div.search {
+ text-align: center;
+ margin-top: 1em;
+}
+
+div.error {
+ color: red;
+ font-weight: bold;
+}
+
+/* Search gadget: result page */
+div.contact-list div.contact {
+ width: 100%;
+ text-align: left;
+ border-top: 1px solid #003399;
+ background: #F4D09C;
+ color: inherit;
+}
+
+div.grayed {
+ color: #444444;
+ font-style: italic;
+}
+
+div.grayed div.contact {
+ background: #eee;
+}
+
+div.contact div.nom {
+ font-weight: bold;
+ float: left;
+}
+
+div.contact div.autre {
+ text-align: right;
+ float: right;
+}
+
+div.contact div.long {
+ width: 100%;
+ clear: both;
+ background: white;
+ color: inherit;
+ padding-top: 1px;
+ padding-bottom: 1px;
+}
+
+div.long table { width: 100%; }
+div.long td.lt { width: 35%; }
+div.long td.rt { width: 65%; }
+
+/* vim: set et ts=4 sts=4 sw=4: */
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
padding: 0.3em 1.5em;
}
+.pair pre {
+ background: inherit;
+}
+
/*******************************************************************************
3 Tableaux bicolores + classes utiles
padding: 0 6px 0 0;
}
-table.cadre_a_onglet{
- border-width: 0;
- padding : 0;
- margin: 0;
-}
-
-td.conteneur_tab {
- border: 1px solid #9c9c9c;
- border-left-color: #eee;
- padding: 8px 4px 4px 4px;
- background : url('../images/skins/keynote_topborder.png') top repeat-x;
-}
-
-#onglet {
- display : block;
- margin : 0;
- padding : 0;
-}
-
-#onglet li {
- display : block;
- float : left;
- padding : 0.4ex;
- margin: 0 0.3ex -1px 3px;
- border: 1px solid #9c9c9c;
- border-right: none;
- background: #cecece;
- width: auto;
- height: 5ex;
- text-align: center;
- color: #000;
- font-size: 80%;
-}
-
-#onglet li:hover {
- color: #000;
- background : #adadad;
-}
-
-#onglet li.actif {
- color: #000;
- background : #dedede;
- border: 1px solid #f0f0f0;
- border-right: none;
- border-bottom-color: #dedede;
- font-weight: bold;
-}
-
-#onglet li a {
- font-weight: normal;
- text-decoration: none;
- color: #000;
- background: inherit;
- display: block;
- width: 100%;
- height: 100%;
-}
-#onglet li img { margin-right: 2px; }
-
/*******************************************************************************
7 fiche.php & fiche_referent.php
[ cas de la fiche ]
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
[ onglets des profils ]
*******************************************************************************/
-div.conteneur_tab {
- background-color: #F8EBFF;
- border-color: #C866FA;
- border-right-color: #660099;
- border-bottom-color: #660099;
-}
-
-#onglet li {
- background-color: #FDFDE9;
- xborder-bottom: 1px solid red;
-}
-
-#onglet li.actif {
- background-color: #F8EBFF;
- border-top-color: #C866FA;
- border-right-color: #C866FA;
- border-left-color: #C866FA;
- border-bottom-color: #F8EBFF;
-}
-
/*******************************************************************************
7 fiche.php
[ cas de la fiche ]
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
[ onglets des profils ]
*******************************************************************************/
-td.conteneur_tab {
- background: #efddff;
- border-color: #800080;
-}
-
-#onglet li {
- background: #ecd0ff;
- border-color: #800080;
-}
-
-#onglet li:hover {
- background: #c0c0c0;
-}
-
-#onglet li a:hover {
- color: #800080;
- text-decoration: none;
-}
-
-#onglet li.actif {
- background: #efddff;
-}
-
/*******************************************************************************
7 fiche.php
[ cas de la fiche ]
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
padding: 0 6px 0 0;
}
-table.cadre_a_onglet{
- border-width: 0px;
- padding : 0px;
- margin: 0px;
-}
-
-td.conteneur_tab {
- border-width : 1px 2px 2px 1px;
- border-style : solid;
- border-color : #999;
- padding : 4px 0px 0px 4px;
- background : #fff;
-}
-
-#onglet { display : block; margin : 0px; padding : 0px; }
-
-#onglet li {
- display : block;
- float : left;
- padding : 0.5ex;
- margin : 0px 4px -1px 0px;
- background : #d2e0e6;
- width: auto;
- height: 6ex;
- text-align: center;
- border: 1px solid #999;
-}
-
-#onglet li:hover { background : #ffecce; }
-
-#onglet li.actif {
- background : #fff;
- font-weight: bold;
- border-bottom: 1px solid #fff;
-}
-
-#onglet li a {
- font-size: 90%;
- font-weight : normal;
- text-decoration : none;
- color : #000;
-}
-
/*******************************************************************************
7 fiche.php & fiche_referent.php
[ cas de la fiche ]
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
[ onglets des profils ]
*******************************************************************************/
-td.conteneur_tab {
- border-color: #0067fe;
- background-color: #eeffdd;
-}
-
-#onglet li {
- border-color: #0067fe;
- background-color: #ccddff;
-}
-
-#onglet li:hover {
- background-color:
-}
-
-#onglet li.actif {
- background-color: #eeffdd;
-}
-
-#onglet li a:hover {
- color: #ff0000;
- text-decoration: none;
-}
-
/*******************************************************************************
7 fiche.php
[ cas de la fiche ]
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
[ onglets des profils ]
*******************************************************************************/
-td.conteneur_tab {
- background-color: #f5f0ea;
- border-color: #707070;
-}
-
-#onglet li {
- background: #e2d9c2;
- border-color: #707070;
-}
-
-#onglet li:hover {
- background-color: #8a6540;
-}
-
-#onglet li:hover a {
- color: #f5f0ea;
-}
-
-#onglet li.actif {
- background-color: #f5f0ea;
-}
-
/*******************************************************************************
7 fiche.php
[ cas de la fiche ]
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
background-color: #d0c198;
}
-#menu a {
+#menu a, #menu form {
display: block;
padding: 0.2em 0em 0.2em 15px;
font-size: 89%;
* CLASSES
***************************************************************************/
-.breadcrumb {
- font-weight: bold;
- font-size: 90%;
- padding: 0.5em 0em 0em 0.2em;
-}
-
.erreur { color: red !important; }
.error { color: red !important; }
.center { text-align: center; }
/***************************************************************************
***************************************************************************/
-td.conteneur_tab {
- border: none;
- padding-top: 1em;
+.wizard {
+ margin-top: 0px;
+ margin-left: -1em;
}
-#onglet {
- display : block;
- margin : 0;
- padding : 0;
+.wizard .wiz_header {
+ height: 30px;
+ width: 635px;
+ padding: 0 2px;
+ background: url('../images/skins/wiz_xnet_background.png') bottom left no-repeat;
+ margin-bottom: 1em;
}
-#onglet li {
- display : block;
- float : left;
- border: none;
- background: inherit;
- width: auto;
+.wizard .wiz_header .wiz_tab {
+ height: 100%;
+ text-align: center;
+ font-size: 75%;
}
-#onglet li.actif {
+.wizard .wiz_header .wiz_tab:hover {
+ color: #5c81aa;
font-weight: bold;
}
-#onglet li:before {
- font-weight: normal;
- content: '» ';
- padding-left: 1ex;
+.wizard .wiz_header .active, .wizard .wiz_header .active:hover {
}
-#onglet li:first-child:before {
- content: '';
+.wizard .wiz_header a {
+ color: #000;
+ text-decoration: none;
+ margin-top: 2px;
+ vertical-align: bottom;
}
-#onglet li img { margin-right: 2px; }
-
+.wizard .wiz_header a.active {
+ font-weight: bold;
+}
--- /dev/null
+Those images have been fetched from external servers. They are *not* covered by Plat/al's GPL license.
+Please check with image owners for more information on copyrights and utilization limitations.
+
+add-google.gif: http://gmodules.com/ig/images/plus_google.gif
+add-google-calendar.gif: http://www.google.com/calendar/images/ext/gc_button1.gif
+add-netvibes.gif: http://www.netvibes.com/img/add2netvibes.gif
+add-yahoo: http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
-<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************/
-/*
- * Smarty plugin
- * -------------------------------------------------------------
- * File: insert.getNbIns.php
- * Type: insert
- * Name: getNbIns
- * Purpose:
- * -------------------------------------------------------------
- */
-function smarty_insert_getNbIns($params, &$smarty)
+function igOnLoadHandler()
{
- $res = XDB::query("SELECT COUNT(*) FROM auth_user_md5 WHERE perms IN ('admin','user') AND deces=0");
- $cnt = $res->fetchOneCell();
- return number_format($cnt, 0, ",", ".");
+ if (typeof(_IG_AdjustIFrameHeight) != 'undefined') {
+ _IG_AdjustIFrameHeight();
+ }
}
+
+function markEventAsRead(event_id)
+{
+ _toggle(_gel("mark-read-" + event_id));
+ _gel("evt-" + event_id).setAttribute("class", "read");
+ _gel("link-" + event_id).setAttribute("href", "events/unread/" + event_id);
+ Ajax.update_html(null, "events/read/" + event_id);
+ return false;
+}
+
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
-?>
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************\r
- * Copyright (C) 2003-2007 Polytechnique.org *\r
+ * Copyright (C) 2003-2008 Polytechnique.org *\r
* http://opensource.polytechnique.org/ *\r
* *\r
* This program is free software; you can redistribute it and/or modify *\r
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
}
// }}}
+// {{{ function goodiesPopup()
+
+function goodiesPopup(node) {
+ if (node.href.indexOf('ical') > -1) {
+ __goodies_popup(node, __goodies_ical_sites, 'Calendrier iCal');
+ } else if (node.href.indexOf('rss') > -1 && (node.href.indexOf('xml') > -1 || node.href.indexOf('hash'))) {
+ __goodies_popup(node, __goodies_rss_sites, 'Fil rss');
+ }
+}
+
+var __goodies_ical_sites = [
+ {'url_prefix': '',
+ 'img': 'images/icons/calendar_view_day.gif',
+ 'title': 'Calendrier iCal'},
+ {'url_prefix': 'http://www.google.com/calendar/render?cid=',
+ 'img': 'images/goodies/add-google-calendar.gif',
+ 'title': 'Ajouter à Google Calendar'}
+];
+var __goodies_rss_sites = [
+ {'url_prefix': '',
+ 'img': 'images/icons/feed.gif',
+ 'title': 'Fil rss'},
+ {'url_prefix': 'http://fusion.google.com/add?feedurl=',
+ 'img': 'images/goodies/add-google.gif',
+ 'alt': 'Add to Google',
+ 'title': 'Ajouter à iGoogle/Google Reader'},
+ {'url_prefix': 'http://www.netvibes.com/subscribe.php?url=',
+ 'img': 'images/goodies/add-netvibes.gif',
+ 'title': 'Ajouter à Netvibes'},
+ {'url_prefix': 'http://add.my.yahoo.com/content?.intl=fr&url=',
+ 'img': 'images/goodies/add-yahoo.gif',
+ 'alt': 'Add to My Yahoo!',
+ 'title': 'Ajouter à My Yahoo!'}
+];
+
+function __goodies_popupText(url, sites) {
+ var text = '<div style="text-align: center; line-height: 2.2">';
+ for (var site in sites) {
+ var s_alt = (sites[site]["alt"] ? sites[site]["alt"] : "");
+ var s_img = sites[site]["img"];
+ var s_title = (sites[site]["title"] ? sites[site]["title"] : "");
+ var s_url = (sites[site]["url_prefix"].length > 0 ? sites[site]["url_prefix"] + escape(url) : url);
+
+ text += '<a href="' + s_url + '"><img src="' + s_img + '" title="' + s_title + '" alt="' + s_alt + '"></a><br />';
+ }
+ text += '<a href="https://www.polytechnique.org/Xorg/Goodies">Plus de bonus</a> ...</div>'
+ return text;
+}
+
+function __goodies_popup(node, sites, default_title) {
+ var mouseover_cb = function() {
+ var rss_text = __goodies_popupText(node.href, sites);
+ var rss_title = (node.title ? node.title : default_title);
+ return overlib(rss_text, CAPTION, rss_title, CLOSETEXT, 'Fermer', DELAY, 800, STICKY, WIDTH, 150);
+ }
+ var mouseout_cb = function() {
+ nd();
+ }
+
+ node.onmouseover = mouseover_cb;
+ node.onmouseout = mouseout_cb;
+}
+
+// }}}
// {{{ function auto_links()
function auto_links() {
if (node.href.indexOf('http') < 0) {
node.href = 'http://' + fqdn + '/' + node.href;
}
+ if (node.nodeName.toLowerCase() == 'a') {
+ goodiesPopup(node);
+ }
}
if(node.className == 'popup2') {
node.onclick = function () { popWin(this,840,600); return false; };
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$platal = new Platal('auth', 'banana', 'carnet', 'email', 'events',
'geoloc', 'lists', 'marketing', 'payment', 'platal',
'profile', 'register', 'search', 'stats', 'admin',
- 'newsletter', 'axletter', 'bandeau', 'survey');
+ 'newsletter', 'axletter', 'bandeau', 'survey',
+ 'gadgets');
$platal->run();
exit;
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/protocoleinterface.inc.php
/spool.inc.php
/text.func.inc.php
+/tree.inc.php
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if (!S::v('core_rss_hash')) {
Banana::$feed_active = false;
}
- parent::__construct($params);
+ parent::__construct($params, 'NNTP', 'PlatalBananaPage');
+ if (@$params['action'] == 'profile') {
+ Banana::$action = 'profile';
+ }
}
public function run()
Banana::$page->registerPage('profile', 'Préférences', null);
}
- // Run Banana
- return parent::run();
+ // Run Bananai
+ if (Banana::$action == 'profile') {
+ Banana::$page->run();
+ return $this->action_updateProfile();
+ } else {
+ return parent::run();
+ }
}
public function post($dest, $reply, $subject, $body)
Banana::$profile['subscribe'][] = $g;
}
}
+
+ protected function action_updateProfile()
+ {
+ global $page, $globals;
+
+ if (!(Post::has('action') && Post::has('banananame') && Post::has('bananasig')
+ && Post::has('bananadisplay') && Post::has('bananamail')
+ && Post::has('bananaupdate') && Post::v('action')=="Enregistrer" ))
+ {
+ $req = XDB::query("
+ SELECT nom, mail, sig,
+ FIND_IN_SET('threads', flags),
+ FIND_IN_SET('automaj', flags),
+ FIND_IN_SET('xface', flags)
+ FROM forums.profils
+ WHERE uid = {?}", S::v('uid'));
+ if (!(list($nom, $mail, $sig, $disp, $maj, $xface) = $req->fetchOneRow())) {
+ $nom = S::v('prenom').' '.S::v('nom');
+ $mail = S::v('forlife').'@'.$globals->mail->domain;
+ $sig = $nom.' ('.S::v('promo').')';
+ $disp = 0;
+ $maj = 0;
+ $xface = 0;
+ }
+ $page->assign('nom' , $nom);
+ $page->assign('mail', $mail);
+ $page->assign('sig', $sig);
+ $page->assign('disp', $disp);
+ $page->assign('maj', $maj);
+ $page->assign('xface', $xface);
+ } else {
+ $flags = array();
+ if (Post::b('bananadisplay')) {
+ $flags[] = 'threads';
+ }
+ if (Post::b('bananaupdate')) {
+ $flags[] = 'automaj';
+ }
+ if (Post::b('bananaxface')) {
+ $flags[] = 'xface';
+ }
+ XDB::execute("REPLACE INTO forums.profils (uid, sig, mail, nom, flags)
+ VALUES ({?}, {?}, {?}, {?}, {?})",
+ S::v('uid'), Post::v('bananasig'),
+ Post::v('bananamail'), Post::v('banananame'),
+ implode(',', $flags));
+ }
+ return null;
+ }
}
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
return $base . '/' . $params['page'];
}
if (@$params['action'] == 'subscribe') {
- return $base . '/subscription';
+ return $base . '/subscribe';
}
if (!isset($params['group'])) {
$base .= '/' . $params['group'];
} else if (Banana::$protocole->name() == 'NNTP' && $xnet) {
if ($feed) {
- return 'http://www.polytechnique.org/banana' . hook_platalRSS(@$params['group']);
+ return $globals->baseurl . '/banana' . hook_platalRSS(@$params['group']);
}
$base = $globals->baseurl . '/' . $platal->ns . 'forum';
} else if (Banana::$protocole->name() == 'MLArchives') {
function get_banana_params(array &$get, $group = null, $action = null, $artid = null)
{
+ if ($group == 'forums') {
+ $group = null;
+ } else if ($group == 'thread') {
+ $group = S::v('banana_group');
+ } else if ($group == 'message') {
+ $action = 'read';
+ $group = S::v('banana_group');
+ $artid = S::i('banana_artid');
+ } else if ($action == 'message') {
+ $action = 'read';
+ $artid = S::i('banana_artid');
+ } else if ($group == 'subscribe' || $group == 'subscription') {
+ $group = null;
+ $action = null;
+ $get['action'] = 'subscribe';
+ } else if ($group == 'profile') {
+ $group = null;
+ $action = null;
+ $get['action'] = 'profile';
+ }
if (!is_null($group)) {
$get['group'] = $group;
}
}
}
+class PlatalBananaPage extends BananaPage
+{
+ protected $handler;
+ protected $base;
+
+ public function __construct()
+ {
+ global $platal;
+ Banana::$withtabs = false;
+ $this->handler = 'BananaHandler';
+ $this->base = $platal->pl_self(0);
+ parent::__construct();
+ }
+
+ protected function prepare()
+ {
+ $tpl = parent::prepare();
+ global $wiz, $page;
+ $wiz = new PlWizard('Banana', 'core/plwizard.tpl', true, false);
+ foreach ($this->pages as $name=>&$mpage) {
+ $wiz->addPage($this->handler, $mpage['text'], $name);
+ }
+ $wiz->apply($page, $this->base, $this->page);
+ return $tpl;
+ }
+}
+
+class BananaHandler
+{
+ public function __construct(PlWizard &$wiz)
+ {
+ }
+
+ public function template()
+ {
+ return 'banana/index.tpl';
+ }
+
+ public function prepare(PlatalPage &$page, $id)
+ {
+ }
+
+ public function process()
+ {
+ return PlWizard::CURRENT_PAGE;
+ }
+}
+
function run_banana(&$page, $class, array $args)
{
$banana = new $class(S::v('forlife'), $args);
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
require_once 'banana/banana.inc.php';
require_once 'banana/hooks.inc.php';
+class PlatalBananaMLPage extends PlatalBananaPage
+{
+ public function __construct()
+ {
+ parent::__construct();
+ global $platal;
+ $this->handler = 'BananaMLHandler';
+ $this->base = $platal->pl_self(1);
+ }
+}
+
+class BananaMLHandler extends BananaHandler
+{
+ public function template()
+ {
+ return 'lists/archives.tpl';
+ }
+}
+
class MLBanana extends Banana
{
static public $listname;
function __construct($forlife, $params = null)
{
- global $globals;
+ global $globals;
Banana::$spool_root = $globals->banana->spool_root;
Banana::$spool_boxlist = false;
Banana::$msgedit_canattach = true;
MLBanana::$listname = $params['listname'];
MLBanana::$domain = $params['domain'];
$params['group'] = $params['listname'] . '@' . $params['domain'];
- parent::__construct($params, 'MLArchive');
+ parent::__construct($params, 'MLArchive', 'PlatalBananaMLPage');
}
public function run()
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
***************************************************************************/
require_once 'banana/banana.inc.php';
+require_once 'banana/message.func.inc.php';
require_once 'banana/hooks.inc.php';
function hook_checkcancel($_headers)
}
}
-require_once('banana/page.inc.php');
-
class ModerationPage extends BananaPage
{
protected function prepare()
}
}
-require_once('banana/protocoleinterface.inc.php');
-require_once('banana/message.inc.php');
-
class BananaMLInterface implements BananaProtocoleInterface
{
private $infos; //(list, addr, host, desc, info, diff, ins, priv, sub, own, nbsub)
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
{
foreach ($this->emails as &$mail) {
if ($mail->email == $email) {
+ check_redirect($this);
return $mail->cleanErrors($this->uid);
}
}
$mail->active = false;
}
}
+ check_redirect($this);
}
// function enable() {{{2
$mail->active = true;
$mail->disabled = false;
}
+ check_redirect($this);
}
}
}
}
+// class MailStorage {{{1
+class MailStorage {
+ protected $uid;
+ protected $name;
+ protected $storage;
+
+ public function __construct($_uid, $_name)
+ {
+ $this->uid = $_uid;
+ $this->name = $_name;
+
+ $res = XDB::query("SELECT mail_storage
+ FROM auth_user_md5
+ WHERE user_id = {?}", $this->uid);
+ $this->storages = new FlagSet($res->fetchOneCell());
+ }
+
+ public function disable()
+ {
+ $this->storages->rmFlag($this->name);
+ XDB::execute("UPDATE auth_user_md5
+ SET mail_storage = {?}
+ WHERE user_id = {?}", $this->storages->flags(), $this->uid);
+ }
+
+ public function enable()
+ {
+ $this->storages->addFlag($this->name);
+ XDB::execute("UPDATE auth_user_md5
+ SET mail_storage = {?}
+ WHERE user_id = {?}", $this->storages->flags(), $this->uid);
+ }
+}
+
+class MailStorageIMAP extends MailStorage {
+ public function __construct($_uid)
+ {
+ parent::__construct($_uid, 'imap');
+ }
+}
+
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
public function __construct($sess)
{
$this->session = $sess;
-
- $base = empty($_SERVER['HTTPS']) ? 'http://' : 'https://';
- $this->baseurl = @trim($base.$_SERVER['SERVER_NAME'].dirname($_SERVER['PHP_SELF']), '/');
$this->spoolroot = dirname(dirname(__FILE__));
$this->read_config();
+ if (isset($_SERVER) && isset($_SERVER['SERVER_NAME'])) {
+ $base = empty($_SERVER['HTTPS']) ? 'http://' : 'https://';
+ $this->baseurl = @trim($base.$_SERVER['SERVER_NAME'].dirname($_SERVER['PHP_SELF']), '/');
+ }
+
$this->setlocale();
}
{
$this->read_ini_file($this->spoolroot.'/configs/platal.ini');
$this->read_ini_file($this->spoolroot.'/configs/platal.conf');
+ if (file_exists($this->spoolroot.'/spool/conf/platal.dynamic.conf')) {
+ $this->read_ini_file($this->spoolroot.'/spool/conf/platal.dynamic.conf');
+ }
+ }
+
+ /** Writes an ini file separated in categories
+ * @param filename the name of the file to write (overwrite existing)
+ * @param categories an array of categories (array of keys and values)
+ */
+ private static function write_ini_file($filename, &$categories)
+ {
+ // [category]
+ // key = value
+ $f = fopen($filename, 'w');
+ foreach ($categories as $cat => $conf) {
+ fwrite($f, '; {{{ '.$cat."\n\n");
+ fwrite($f, '['.$cat.']'."\n\n");
+ foreach ($conf as $k => $v) {
+ fwrite($f, $k.' = "'.str_replace('"','\\"',$v).'"'."\n");
+ }
+ fwrite($f, "\n".'; }}}'."\n");
+ }
+ fwrite($f, '; vim:set syntax=dosini foldmethod=marker:'."\n");
+ fclose($f);
+ }
+
+ /** Change dynamic config file
+ * @param conf array of keys and values to add or replace
+ * @param category name of category to change
+ *
+ * Opens the dynamic conf file and set values from conf in specified
+ * category. Updates config vars too.
+ */
+ public function change_dynamic_config($conf, $category = 'Core')
+ {
+ $dynamicfile = $this->spoolroot.'/spool/conf/platal.dynamic.conf';
+ if (file_exists($dynamicfile)) {
+ $array = parse_ini_file($dynamicfile, true);
+ } else {
+ $array = null;
+ }
+ if (!is_array($array)) {
+ // dynamic conf is empty
+ $array = array($category => $conf);
+ } else {
+ // looks for a category that looks the same (case insensitive)
+ $same = false;
+ foreach ($array as $m => &$c) {
+ if (strtolower($m) == strtolower($category)) {
+ $same = $m;
+ break;
+ }
+ }
+ if (!$same) {
+ // this category doesn't exist yet
+ $array[$category] = $conf;
+ } else {
+ // this category already exists
+ $conflower = array();
+ foreach ($conf as $k => $v) {
+ $conflower[strtolower($k)] = $v;
+ }
+ // $conflower is now same as $conf but with lower case keys
+ // replaces values of keys that already exists
+ foreach ($array[$same] as $k => $v) {
+ if (isset($conflower[strtolower($k)])) {
+ $array[$same][$k] = $conflower[strtolower($k)];
+ unset($conflower[strtolower($k)]);
+ }
+ }
+ // add new keys
+ foreach ($conf as $k => $v) {
+ if (isset($conflower[strtolower($k)])) {
+ $array[$same][$k] = $v;
+ }
+ }
+ }
+ }
+ // writes the file over
+ PlatalGlobals::write_ini_file($dynamicfile, $array);
+ // rereads the new config to correctly set vars
+ $this->read_ini_file($dynamicfile);
+ }
+
+ public function bootstrap($conf, $callback, $category = 'Core')
+ {
+ $bootstrap = false;
+ $category = strtolower($category);
+ foreach ($conf as $key) {
+ if (!isset($this->$category->$key)) {
+ $bootstrap = true;
+ break;
+ }
+ }
+ if ($bootstrap) {
+ call_user_func($callback);
+ }
}
private function setlocale()
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$pass_encrypted = hash_encrypt($pass);
$fdate = strftime('%d %B %Y', strtotime($date));
- $mymail = new PlMailer('marketing/mail.relance.tpl');
+ $mymail = new PlMailer('marketing/relance.mail.tpl');
$mymail->assign('nbdix', $nbx);
$mymail->assign('fdate', $fdate);
$mymail->assign('lusername', $alias);
public function getText(array $user)
{
- $page = new XorgPage('marketing/mail.marketing.tpl', NO_SKIN);
+ $page = new XorgPage('marketing/marketing.mail.tpl', NO_SKIN);
$this->prepareText($page, $user);
return $page->raw();
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
function __construct($id = null)
{
- parent::__construct('newsletter/nl.tpl', 'nl.css', 'nl/show', 'newsletter', 'newsletter_ins');
+ parent::__construct('newsletter/nl.mail.tpl', 'nl.css', 'nl/show', 'newsletter', 'newsletter_ins');
if (isset($id)) {
if ($id == 'last') {
$res = XDB::query("SELECT MAX(id) FROM newsletter WHERE bits!='new'");
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if (empty($date)) {
$date = date('Y-m-d');
};
- XDB::execute('REPLACE INTO watch_ops (uid,cid,known,date,info) VALUES({?},{?},NOW(),{?},{?})',
- $uid, $cid, $date, $info);
+ XDB::execute('REPLACE INTO watch_ops (uid,cid,known,date,info)
+ VALUES ({?}, {?}, NOW(), {?}, {?})',
+ $uid, $cid, $date, $info);
if($cid == WATCH_FICHE) {
+ if ($info) {
+ register_profile_update($uid, $info);
+ }
XDB::execute('UPDATE auth_user_md5 SET DATE=NOW() WHERE user_id={?}', $uid);
} elseif($cid == WATCH_INSCR) {
XDB::execute('REPLACE INTO contacts (uid,contact)
WHERE ni_id={?}', $uid);
XDB::execute('DELETE FROM watch_nonins WHERE ni_id={?}', $uid);
}
+ require_once 'xorg.misc.inc.php';
+ update_NbNotifs();
}
// }}}
}
// }}}
-// {{{ function getNbNotifs
-
-function getNbNotifs()
-{
- if (!S::has('uid')) {
- return 0;
- }
- $uid = S::v('uid', -1);
- $watchlast = S::v('watch_last');
-
- // selectionne les notifs de uid, sans detail sur le watcher, depuis
- // $watchlast, meme ceux sans surveillance, non ordonnés
- $res = select_notifs(false, $uid, $watchlast, false);
- $n = $res->numRows();
- $res->free();
- if ($n == 0) {
- return;
+// {{{
+
+global $prf_desc;
+$prf_desc = array('nom' => 'Son patronyme',
+ 'freetext' => 'Le texte libre',
+ 'mobile' => 'Son numéro de téléphone portable',
+ 'nationalite' => 'Sa nationalité',
+ 'nick' => 'Son surnom',
+ 'web' => 'L\'adresse de son site web',
+ 'appli1' => 'Son école d\'application',
+ 'appli2' => 'Son école de post-application',
+ 'addresses' => 'Ses adresses',
+ 'section' => 'Sa section sportive',
+ 'binets' => 'La liste de ses binets',
+ 'medals' => 'Ses décorations',
+ 'cv' => 'Son Curriculum Vitae',
+ 'jobs' => 'Ses informations professionnelles',
+ 'photo' => 'Sa photographie');
+
+function get_profile_change_details($event, $limit) {
+ global $prf_desc;
+ $res = XDB::iterRow("SELECT field
+ FROM watch_profile
+ WHERE uid = {?} AND ts > {?}
+ ORDER BY ts DESC",
+ $event['uid'], $limit);
+ if ($res->total() > 0) {
+ $data = array();
+ while (list($field) = $res->next()) {
+ $data[] .= $prf_desc[$field];
+ }
+ return '<ul><li>' . implode('</li><li>', $data) . '</li></ul>';
}
-
- return "<a href='carnet/panel'>$n événement".($n > 1 ? 's' : '')." !</a>";
+ return null;
}
// }}}
+// {{{ function register_profile_update
+
+function register_profile_update($uid, $field) {
+ XDB::execute("REPLACE INTO watch_profile (uid, ts, field)
+ VALUES ({?}, NOW(), {?})",
+ $uid, $field);
+}
+
// {{{ class AllNotifs
class AllNotifs
// depuis la semaine dernière, meme ceux sans surveillance, ordonnés
$res = select_notifs(false, $uid, $lastweek);
while($tmp = $res->next()) {
+ if ($tmp['cid'] == WATCH_FICHE) {
+ $tmp['data'] = get_profile_change_details($tmp, $lastweek);
+ }
$this->_data[$tmp['cid']][$tmp['promo']][] = $tmp;
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if (substr($cls, -3, 3) == 'req') {
@include 'validations.inc.php';
return;
+ } else if (substr($cls, 0, 6) == 'banana') {
+ require_once 'banana/banana.inc.php';
+ Banana::load(substr($cls, 6));
+ return;
}
@include "$cls.inc.php";
}
E_USER_ERROR => "User Error",
E_USER_WARNING => "User Warning",
E_USER_NOTICE => "User Notice",
- E_STRICT => "Runtime Notice"
+ E_STRICT => "Runtime Notice",
+ E_RECOVERABLE_ERROR => "Recoverable Error"
);
}
}
}
+ $type = isset($errortype[$errno]) ? $errortype[$errno] : $errno;
$errstr = utf8_encode(htmlentities($errstr));
$GLOBALS['pl_errors'][] =
"<div class='phperror'>".
- "<strong>{$errortype[$errno]}</strong> <em>$errstr</em><br />".
+ "<strong>{$type}</strong> <em>$errstr</em><br />".
"<tt>$errfile : $errline</tt>".
"</div>";
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
'INNER JOIN groupex.membres AS gxm ON (u.user_id = gxm.uid
AND gxm.asso_id = ' . $globals->asso('id') . ') ' : '')
. 'LEFT JOIN auth_user_quick AS q USING (user_id)
- LEFT JOIN aliases AS a ON (a.id = u.user_id AND type = \'a_vie\')
+ LEFT JOIN aliases AS a ON (a.id = u.user_id AND a.type = \'a_vie\')
' . $joins,
$where,
'u.user_id');
$qSearch = new QuickSearch('quick');
$fields = new SFieldGroup(true, array($qSearch));
if ($qSearch->isEmpty()) {
- new ThrowError('Recherche trop générale.');
+ new ThrowError('Aucun critère de recherche n\'est spécifié.');
}
$this->score = $qSearch->get_score_statement();
$pwhere = $fields->get_where_statement();
'u.promo DESC, NomSortKey, prenom')));
}
- private function getAdvanced()
+ private function getAdvanced($join, $where)
{
global $globals;
$this->advanced = true;
}
}
+class GadgetView implements PlView
+{
+ public function __construct(PlSet &$set, $data, array $params)
+ {
+ $this->set =& $set;
+ }
+
+ public function fields()
+ {
+ return "u.user_id AS id,
+ u.*, a.alias AS forlife," .
+ (S::logged() ? "q.profile_mobile AS mobile, " : "IF(q.profile_mobile_pub = 'public', q.profile_mobile, NULL) as mobile, ") .
+ "u.perms != 'pending' AS inscrit,
+ u.perms != 'pending' AS wasinscrit,
+ u.deces != 0 AS dcd, u.deces,
+ FIND_IN_SET('femme', u.flags) AS sexe,
+ adr.city, gp.a2, gp.pays AS countrytxt, gr.name AS region" .
+ (S::logged() ? ", c.contact AS contact" : '');
+ }
+
+ public function joins()
+ {
+ return "LEFT JOIN adresses AS adr ON (u.user_id = adr.uid AND FIND_IN_SET('active', adr.statut)".(S::logged() ? "" : " AND adr.pub = 'public'").")
+ LEFT JOIN geoloc_pays AS gp ON (adr.country = gp.a2)
+ LEFT JOIN geoloc_region AS gr ON (adr.country = gr.a2 AND adr.region = gr.region)" .
+ (S::logged() ?
+ "LEFT JOIN contacts AS c On (c.contact = u.user_id AND c.uid = " . S::v('uid') . ")"
+ : "");
+ }
+
+ public function apply(PlatalPage &$page)
+ {
+ $page->assign_by_ref('set',
+ $this->set->get($this->fields(), $this->joins(), null, null, null, 5, 0));
+ }
+
+ public function args()
+ {
+ return null;
+ }
+}
+
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
XDB::execute('INSERT INTO requests (user_id, type, data, stamp) VALUES ({?}, {?}, {?}, {?})',
$this->uid, $this->type, $this, $this->stamp);
+ global $globals;
+ update_NbValid();
return true;
}
public function clean()
{
if ($this->unique) {
- return XDB::execute('DELETE FROM requests WHERE user_id={?} AND type={?}',
- $this->uid, $this->type);
+ $success = XDB::execute('DELETE FROM requests WHERE user_id={?} AND type={?}',
+ $this->uid, $this->type);
} else {
- return XDB::execute('DELETE FROM requests WHERE user_id={?} AND type={?} AND stamp={?}',
- $this->uid, $this->type, $this->stamp);
+ $success = XDB::execute('DELETE FROM requests WHERE user_id={?} AND type={?} AND stamp={?}',
+ $this->uid, $this->type, $this->stamp);
}
+ update_NbValid();
+ return $success;
}
// }}}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
public $rules = "Accepter si l'adresse mail parait correcte, et pas absurde (ou si le marketeur est de confiance).
Si le demandeur marque sa propre adresse mail, refuser dans tous les cas.
Si l'adresse proposée est surveillée, refuser.
- Si le compte associé est désactivé, étudier le cas en fonction de la raison de la désactivation";
+ Si le compte associé est désactivé, étudier le cas en fonction de la raison de la désactivation.";
// }}}
// {{{ constructor
XDB::execute("UPDATE emails AS e
INNER JOIN aliases AS a ON (a.id = e.uid)
- SET e.flags = 'active'
+ SET e.flags = 'active', panne_level = 2
WHERE a.alias = {?} AND e.email = {?}", $this->m_forlife, $this->m_email);
if (XDB::affectedRows() > 0) {
$this->m_reactive = true;
. "N'hésite pas à aller gérer toi-même tes redirections en te rendant à la page :\n"
. "https://www.polytechnique.org/emails/redirect\n"
. "Si tu as perdu ton mot de passe d'accès au site, tu peux également effectuer la procédure de récupération à l'adresse :\n"
- . "https://www.polytechnique.org/recovery\n"
+ . "https://www.polytechnique.org/recovery\n\n"
. "-- \nTrès Cordialement,\nL'Équipe de Polytechnique.org\n"));
$mailer->send();
return true;
. $reason . "\n\n"
. "L'adresse {$this->m_email} nous a été communiquée, veux-tu que cette adresse devienne ta nouvelle "
. "adresse de redirection ? Si oui, envoie nous des informations qui "
- . "nous permettront de nous assurer de ton identité (par exemple ta date de naissance et ta promotion)\n"
+ . "nous permettront de nous assurer de ton identité (par exemple ta date de naissance et ta promotion).\n\n"
. "-- \nTrès Cordialement,\nL'Équipe de Polytechnique.org\n";
$body = wordwrap($body, 78);
$mailer = new PlMailer();
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$this->owners, $this->members);
$liste = strtolower($this->liste);
if ($ret) {
- foreach(Array($liste, $liste."-owner", $liste."-admin", $liste."-bounces") as $l) {
+ foreach(Array($liste, $liste."-owner", $liste."-admin", $liste."-bounces", $liste."-unsubscribe") as $l) {
XDB::execute("INSERT INTO aliases (alias,type) VALUES({?}, 'liste')", $l);
}
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
public function commit ()
{
- return XDB::execute('REPLACE INTO profile_medals_sub VALUES({?}, {?}, {?})', $this->uid, $this->mid, $this->gid);
+ require_once 'notifs.inc.php';
+ register_watch_op($this->uid, WATCH_FICHE, 'medals');
+ return XDB::execute('REPLACE INTO profile_medals_sub
+ VALUES ({?}, {?}, {?})',
+ $this->uid, $this->mid, $this->gid);
}
// }}}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
public function commit()
{
+ require_once 'notifs.inc.php';
+ register_watch_op($this->uid, WATCH_FICHE, 'nom');
require_once('user.func.inc.php');
$this->bestalias = set_new_usage($this->uid, $this->nom_usage, $this->alias);
return true;
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
protected function _mail_subj()
{
- return "[Polytechnique.org/ORANGE] Changement de nom de promo de sortie";
+ return "[Polytechnique.org/ORANGE] Changement de promo de sortie";
}
// }}}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
}
$topay = $u['montant'] - $u['paid'];
if ($topay > 0) {
- $mailer = new PlMailer('xnetevents/mail.new_payment.tpl');
+ $mailer = new PlMailer('xnetevents/newpayment.mail.tpl');
$mailer->assign('asso', $nom);
$mailer->assign('diminutif', $diminutif);
$mailer->assign('evt', $evt);
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
public function commit()
{
+ require_once 'notifs.inc.php';
XDB::execute('REPLACE INTO photo (uid, attachmime, attach, x, y)
VALUES ({?},{?},{?},{?},{?})',
$this->uid, $this->mimetype, $this->data, $this->x, $this->y);
- require_once('notifs.inc.php');
- register_watch_op($this->uid, WATCH_FICHE);
+ register_watch_op($this->uid, WATCH_FICHE, 'photo');
return true;
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$returl = "http://{$_SERVER['SERVER_NAME']}".substr($_SERVER['REQUEST_URI'], 0, $i);
else
$returl = "http://{$_SERVER['SERVER_NAME']}{$_SERVER['REQUEST_URI']}";
- $url = "https://www.polytechnique.org/auth-groupex.php";
+ $url = "https://www.polytechnique.org/auth-groupex";
$url .= "?session=" . session_id();
$url .= "&challenge=" . S::v('challenge');
$url .= "&pass=" . md5(S::v('challenge') . $globals->xnet->secret);
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
require_once('globals.inc.php');
require_once('xorg/session.inc.php');
$globals = new PlatalGlobals('XorgSession');
+$globals->bootstrap(array('NbIns'), 'update_NbIns');
+$globals->bootstrap(array('NbValid'), 'update_NbValid');
// {{{ class XorgPage
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
return $forlife;
}
+/** Convert ip to uint (to store it in a database)
+ */
+function ip_to_uint($ip)
+{
+ $part = explode('.', $ip);
+ $v = 0;
+ $fact = 0x1000000;
+ for ($i = 0 ; $i < 4 ; ++$i) {
+ $v += $fact * $part[$i];
+ $fact >>= 8;
+ }
+ return $v;
+}
+
+/** Convert uint to ip (to build a human understandable ip)
+ */
+function uint_to_ip($uint)
+{
+ return sprintf('%d.%d.%d.%d', ($uint / 16777216) % 0xff,
+ ($uint / 65536) & 0xff,
+ ($uint / 256) & 0xff,
+ ($uint / 1.0) & 0xff);
+}
+
+
+/******************************************************************************
+ * Security functions
+ *****************************************************************************/
+
function check_ip($level)
{
if (empty($_SERVER['REMOTE_ADDR'])) {
}
$ips[] = $_SERVER['REMOTE_ADDR'];
foreach ($ips as &$ip) {
- $ip = "ip LIKE " . XDB::escape($ip);
+ $ip = "ip = " . ip_to_uint($ip);
}
$res = XDB::query('SELECT state
FROM ip_watch
$mailer->send();
}
+
+/******************************************************************************
+ * Dynamic configuration update/edition stuff
+ *****************************************************************************/
+
+function update_NbIns()
+{
+ global $globals;
+ $res = XDB::query("SELECT COUNT(*)
+ FROM auth_user_md5
+ WHERE perms IN ('admin','user') AND deces=0");
+ $cnt = $res->fetchOneCell();
+ $globals->change_dynamic_config(array('NbIns' => $cnt));
+}
+
+function update_NbValid()
+{
+ global $globals;
+ $res = XDB::query("SELECT COUNT(*)
+ FROM requests");
+ $globals->change_dynamic_config(array('NbValid' => $res->fetchOneCell()));
+}
+
+function update_NbNotifs()
+{
+ require_once 'notifs.inc.php';
+ $n = select_notifs(false, S::i('uid'), S::v('watch_last'), false);
+ $_SESSION['notifs'] = $n->numRows();
+}
+
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
send_warning_mail($mail_subject);
}
set_skin();
+ update_NbNotifs();
check_redirect();
return true;
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$res = XDB::query($watch);
$new_fields = $res->fetchOneAssoc();
- $mailer = new PlMailer("admin/mail_intervention.tpl");
+ $mailer = new PlMailer("admin/useredit.mail.tpl");
$mailer->assign("user", S::v('forlife'));
$mailer->assign('old', $old_fields);
$mailer->assign('new', $new_fields);
$mailer->send();
+
+ // update number of subscribers (perms or deceased may have changed)
+ update_NbIns();
$page->trig("updaté correctement.");
}
// DELETE FROM auth_user_md5
case "u_kill":
user_clear_all_subs($mr['user_id']);
+ // update number of subscribers (perms or deceased may have changed)
+ update_NbIns();
$page->trig("'{$mr['user_id']}' a été désinscrit !");
- $mailer = new PlMailer("admin/mail_intervention.tpl");
+ $mailer = new PlMailer("admin/useredit.mail.tpl");
$mailer->assign("user", S::v('forlife'));
$mailer->assign("query", "\nUtilisateur $login désinscrit");
$mailer->send();
if (trim(Post::v('ipN')) != '') {
Xdb::execute('INSERT IGNORE INTO ip_watch (ip, state, detection, last, uid, description)
VALUES ({?}, {?}, CURDATE(), NOW(), {?}, {?})',
- trim(Post::v('ipN')), Post::v('stateN'), S::i('uid'), Post::v('descriptionN'));
+ ip_to_uint(trim(Post::v('ipN'))), Post::v('stateN'), S::i('uid'), Post::v('descriptionN'));
};
break;
case 'edit':
Xdb::execute('UPDATE ip_watch
SET state = {?}, last = NOW(), uid = {?}, description = {?}
- WHERE ip = {?}', Post::v('stateN'), S::i('uid'), Post::v('descriptionN'), Post::v('ipN'));
+ WHERE ip = {?}', Post::v('stateN'), S::i('uid'), Post::v('descriptionN'),
+ ip_to_uint(Post::v('ipN')));
break;
default:
if ($action == 'delete' && !is_null($ip)) {
- Xdb::execute('DELETE FROM emails_watch WHERE ip = {?}', $ip);
+ Xdb::execute('DELETE FROM ip_watch WHERE ip = {?}', ip_to_uint($ip));
}
}
if ($action != 'create' && $action != 'edit') {
$table = array();
$props = array();
while (list($ip, $host, $date, $state, $forlife) = $it->next()) {
+ $ip = uint_to_ip($ip);
if (count($props) == 0 || $props['ip'] != $ip) {
if (count($props) > 0) {
$table[] = $props;
WHERE w.ip = {?}
GROUP BY a2.alias
ORDER BY a2.alias";
- $it = Xdb::iterRow($sql, $ip);
+ $it = Xdb::iterRow($sql, ip_to_uint($ip));
$props = array();
while (list($detection, $state, $last, $description, $edit, $forlife, $host) = $it->next()) {
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
function __construct($id)
{
- parent::__construct('axletter/letter.tpl', 'ax.css', 'ax/show', 'axletter', 'axletter_ins');
+ parent::__construct('axletter/letter.mail.tpl', 'ax.css', 'ax/show', 'axletter', 'axletter_ins');
$this->_head = '<cher> <prenom>,';
if (!is_array($id)) {
} else {
$res = XDB::query("SELECT *
FROM axletter
- WHERE id = {?} OR shortname = {?}", $id, $id);
+ WHERE id = {?} OR short_name = {?}", $id, $id);
}
if (!$res->numRows()) {
$this->_id = null;
static public function listSent()
{
- $res = XDB::query("SELECT IF(shortname IS NULL, id, shortname) as id, date, subject AS titre
+ $res = XDB::query("SELECT IF(short_name IS NULL, id, short_name) as id, date, subject AS titre
FROM axletter
WHERE NOT (FIND_IN_SET('new', bits))
ORDER BY date DESC");
static public function listAll()
{
- $res = XDB::query("SELECT IF(shortname IS NULL, id, shortname) as id, date, subject AS titre
+ $res = XDB::query("SELECT IF(short_name IS NULL, id, short_name) as id, date, subject AS titre
FROM axletter
ORDER BY date DESC");
return $res->fetchAllAssoc();
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
{
return array(
'banana' => $this->make_hook('banana', AUTH_COOKIE),
- 'banana/profile' => $this->make_hook('profile', AUTH_MDP),
- 'banana/subscription' => $this->make_hook('subscription', AUTH_COOKIE),
+// 'banana/profile' => $this->make_hook('profile', AUTH_MDP),
+// 'banana/subscribe' => $this->make_hook('subscription', AUTH_COOKIE),
'banana/rss' => $this->make_hook('rss', AUTH_PUBLIC, 'user', NO_HTTPS),
);
}
FROM auth_user_md5 WHERE promo={?}", $promo);
list($effau, $effid) = $res->fetchOneRow();
if (5*$effau>$effid) { // + de 20% d'inscrits
- $mymail = new PlMailer('mails/forums.promo.tpl');
+ $mymail = new PlMailer('admin/forums-promo.mail.tpl');
$mymail->assign('promo', $promo);
$mymail->send();
}
if (!(Post::has('action') && Post::has('banananame') && Post::has('bananasig')
&& Post::has('bananadisplay') && Post::has('bananamail')
- && Post::has('bananaupdate') && Post::v('action')=="OK" ))
+ && Post::has('bananaupdate') && Post::v('action')=="Enregistrer" ))
{
$req = XDB::query("
SELECT nom, mail, sig,
}
}
- function handler_subscription(&$page)
- {
- $page->changeTpl('banana/index.tpl');
- $page->assign('xorg_title','Polytechnique.org - Forums & PA');
-
- require_once 'banana/forum.inc.php';
- run_banana($page, 'ForumsBanana', Array('action' => 'subscribe'));
- }
-
function handler_rss(&$page, $group, $alias, $hash, $file = null)
{
if (is_null($file)) {
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if (Get::has('read')) {
$_SESSION['watch_last'] = Get::v('read');
+ update_NbNotifs();
pl_redirect('carnet/panel');
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
ORDER BY LENGTH(alias)";
$page->assign('aliases', XDB::iterator($sql, $uid));
- $homonyme = XDB::query("SELECT alias FROM aliases INNER JOIN homonymes ON (id = homonyme_id) WHERE user_id = {?} AND type = 'homonyme'", $uid);
- $page->assign('homonyme', $homonyme->fetchOneCell());
-
+ $homonyme = XDB::query("SELECT alias FROM aliases INNER JOIN homonymes ON (id = homonyme_id) WHERE user_id = {?} AND type = 'homonyme'", $uid);
+ $page->assign('homonyme', $homonyme->fetchOneCell());
+
+ // Affichage des redirections de l'utilisateur.
$sql = "SELECT email
FROM emails
WHERE uid = {?} AND FIND_IN_SET('active', flags)";
$page->assign('mails', XDB::iterator($sql, $uid));
+ // Affichage des backends actifs de stockage des emails.
+ $sql = "SELECT mail_storage
+ FROM auth_user_md5
+ WHERE user_id = {?}";
+ $storages = XDB::query($sql, $uid)->fetchOneCell();
+ $page->assign('storage', explode(',', $storages));
// on regarde si l'utilisateur a un alias et si oui on l'affiche !
$forlife = S::v('forlife');
$retour = $redirect->delete_email($email);
$page->assign('retour', $retour);
}
-
- if ($action == 'active' && $email) {
- $redirect->modify_one_email($email, true);
- }
-
- if ($action == 'inactive' && $email) {
- $redirect->modify_one_email($email, false);
- }
-
- if ($action == 'rewrite' && $email) {
- $rewrite = @func_get_arg(3);
- $redirect->modify_one_email_redirect($email, $rewrite);
- }
-
+
+ if ($action == 'active' && $email) {
+ $redirect->modify_one_email($email, true);
+ }
+
+ if ($action == 'inactive' && $email) {
+ $redirect->modify_one_email($email, false);
+ }
+
+ if ($action == 'rewrite' && $email) {
+ $rewrite = @func_get_arg(3);
+ $redirect->modify_one_email_redirect($email, $rewrite);
+ }
+
+ if ($action == 'storage' && $email == 'imap') {
+ $storage = new MailStorageIMAP(S::v('uid'));
+ $subaction = @func_get_arg(3);
+ if ($subaction == 'active') {
+ $storage->enable();
+ }
+ if ($subaction == 'inactive') {
+ $storage->disable();
+ }
+ }
+
if (Env::has('emailop')) {
$actifs = Env::v('emails_actifs', Array());
print_r(Env::v('emails_rewrite'));
FROM aliases
WHERE id={?} AND (type='a_vie' OR type='alias')
ORDER BY !FIND_IN_SET('usage',flags), LENGTH(alias)", $uid);
+
$page->assign('alias', $res->fetchAllAssoc());
$page->assign('emails',$redirect->emails);
+
+ $res = XDB::query(
+ "SELECT mail_storage
+ FROM auth_user_md5
+ WHERE user_id = {?}", $uid);
+ $page->assign('storage', explode(',', $res->fetchOneCell()));
}
function handler_antispam(&$page, $statut_filtre = null)
return join(', ', $ret);
}
+ $error = false;
foreach ($_FILES as &$file) {
if ($file['name'] && !PlUpload::get($file, S::v('forlife'), 'emails.send', false)) {
- $page->trig("Impossible de télécharger '" . pl_entities($file['name']) . "'");
+ $page->trig(PlUpload::$lastError);
+ $error = true;
+ break;
}
}
- XDB::execute("DELETE FROM email_send_save
- WHERE uid = {?}", S::i('uid'));
-
- $to2 = getEmails(Env::v('to_contacts'));
- $cc2 = getEmails(Env::v('cc_contacts'));
- $txt = str_replace('^M', '', Env::v('contenu'));
- $to = Env::v('to');
- $subj = Env::v('sujet');
- $from = Env::v('from');
- $cc = trim(Env::v('cc'));
- $bcc = trim(Env::v('bcc'));
-
- if (empty($to) && empty($cc) && empty($to2) && empty($bcc) && empty($cc2)) {
- $page->trig("Indique au moins un destinataire.");
- $page->assign('uploaded_f', PlUpload::listFilenames(S::v('forlife'), 'emails.send'));
- } else {
- $mymail = new PlMailer();
- $mymail->setFrom($from);
- $mymail->setSubject($subj);
- if (!empty($to)) { $mymail->addTo($to); }
- if (!empty($cc)) { $mymail->addCc($cc); }
- if (!empty($bcc)) { $mymail->addBcc($bcc); }
- if (!empty($to2)) { $mymail->addTo($to2); }
- if (!empty($cc2)) { $mymail->addCc($cc2); }
- $files =& PlUpload::listFiles(S::v('forlife'), 'emails.send');
- foreach ($files as $name=>&$upload) {
- $mymail->addUploadAttachment($upload, $name);
- }
- if (Env::v('nowiki')) {
- $mymail->setTxtBody(wordwrap($txt, 78, "\n"));
- } else {
- $mymail->setWikiBody($txt);
- }
- if ($mymail->send()) {
- $page->trig("Ton mail a bien été envoyé.");
- $_REQUEST = array('bcc' => S::v('bestalias').'@'.$globals->mail->domain);
- PlUpload::clear(S::v('forlife'), 'emails.send');
- } else {
- $page->trig("Erreur lors de l'envoi du courriel, réessaye.");
+ if (!$error) {
+ XDB::execute("DELETE FROM email_send_save
+ WHERE uid = {?}", S::i('uid'));
+
+ $to2 = getEmails(Env::v('to_contacts'));
+ $cc2 = getEmails(Env::v('cc_contacts'));
+ $txt = str_replace('^M', '', Env::v('contenu'));
+ $to = Env::v('to');
+ $subj = Env::v('sujet');
+ $from = Env::v('from');
+ $cc = trim(Env::v('cc'));
+ $bcc = trim(Env::v('bcc'));
+
+ if (empty($to) && empty($cc) && empty($to2) && empty($bcc) && empty($cc2)) {
+ $page->trig("Indique au moins un destinataire.");
$page->assign('uploaded_f', PlUpload::listFilenames(S::v('forlife'), 'emails.send'));
+ } else {
+ $mymail = new PlMailer();
+ $mymail->setFrom($from);
+ $mymail->setSubject($subj);
+ if (!empty($to)) { $mymail->addTo($to); }
+ if (!empty($cc)) { $mymail->addCc($cc); }
+ if (!empty($bcc)) { $mymail->addBcc($bcc); }
+ if (!empty($to2)) { $mymail->addTo($to2); }
+ if (!empty($cc2)) { $mymail->addCc($cc2); }
+ $files =& PlUpload::listFiles(S::v('forlife'), 'emails.send');
+ foreach ($files as $name=>&$upload) {
+ $mymail->addUploadAttachment($upload, $name);
+ }
+ if (Env::v('nowiki')) {
+ $mymail->setTxtBody(wordwrap($txt, 78, "\n"));
+ } else {
+ $mymail->setWikiBody($txt);
+ }
+ if ($mymail->send()) {
+ $page->trig("Ton mail a bien été envoyé.");
+ $_REQUEST = array('bcc' => S::v('bestalias').'@'.$globals->mail->domain);
+ PlUpload::clear(S::v('forlife'), 'emails.send');
+ } else {
+ $page->trig("Erreur lors de l'envoi du courriel, réessaye.");
+ $page->assign('uploaded_f', PlUpload::listFilenames(S::v('forlife'), 'emails.send'));
+ }
}
}
} else {
WHERE c.uid = {?}
ORDER BY u.nom, u.prenom", S::v('uid'));
$page->assign('contacts', $res->fetchAllAssoc());
- $page->assign('maxsize', ini_get('post_max_size') . 'o');
+ $page->assign('maxsize', ini_get('upload_max_filesize') . 'o');
}
function handler_test(&$page, $forlife = null)
if (!S::has_perms() || !$forlife) {
$forlife = S::v('bestalias');
}
- $mailer = new PlMailer('emails/mail.test.tpl');
+ $mailer = new PlMailer('emails/test.mail.tpl');
$mailer->assign('email', $forlife . '@' . $globals->mail->domain);
$iterator = XDB::iterator("SELECT email
FROM emails AS e
$page->changeTpl('emails/lost.tpl');
$page->assign('lost_emails', XDB::iterator('
- SELECT u.user_id, a.alias
- FROM auth_user_md5 AS u
- INNER JOIN aliases AS a ON (a.id = u.user_id AND a.type = "a_vie")
- LEFT JOIN emails AS e ON (u.user_id=e.uid AND FIND_IN_SET("active",e.flags))
- WHERE e.uid IS NULL AND u.deces = 0
- ORDER BY u.promo DESC, u.nom, u.prenom'));
+ SELECT u.user_id, a.alias
+ FROM auth_user_md5 AS u
+ INNER JOIN aliases AS a ON (a.id = u.user_id AND a.type = "a_vie")
+ LEFT JOIN emails AS e ON (u.user_id=e.uid AND FIND_IN_SET("active",e.flags))
+ WHERE e.uid IS NULL AND u.deces = 0
+ ORDER BY u.promo DESC, u.nom, u.prenom'));
}
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
return $res->fetchOneAssoc();
}
- private function get_events($where, $order, array &$array, $name)
- {
- // affichage des evenements
- // annonces promos triées par présence d'une limite sur les promos
- // puis par dates croissantes d'expiration
- $promo = S::v('promo');
- $uid = S::i('uid');
- $sql = "SELECT e.id,e.titre, ev.user_id IS NULL AS nonlu
- FROM evenements AS e
- LEFT JOIN evenements_vus AS ev ON (e.id = ev.evt_id AND ev.user_id = {?})
- WHERE FIND_IN_SET('valide', e.flags) AND peremption >= NOW()
- AND (e.promo_min = 0 || e.promo_min <= {?})
- AND (e.promo_max = 0 || e.promo_max >= {?})
- AND $where
- ORDER BY $order";
- $sum = XDB::iterator($sql, $uid, $promo, $promo);
- if (!$sum->total()) {
- return false;
- }
- $sql = "SELECT e.id,e.titre,e.texte,e.post_id,a.user_id,a.nom,a.prenom,a.promo,l.alias AS forlife,
- p.x, p.y, p.attach IS NOT NULL AS img, FIND_IN_SET('wiki', e.flags) AS wiki
- FROM evenements AS e
- LEFT JOIN evenements_photo AS p ON (e.id = p.eid)
- INNER JOIN auth_user_md5 AS a ON e.user_id=a.user_id
- INNER JOIN aliases AS l ON ( a.user_id=l.id AND l.type='a_vie' )
- LEFT JOIN evenements_vus AS ev ON (e.id = ev.evt_id AND ev.user_id = {?})
- WHERE FIND_IN_SET('valide', e.flags) AND peremption >= NOW()
- AND (e.promo_min = 0 || e.promo_min <= {?})
- AND (e.promo_max = 0 || e.promo_max >= {?})
- AND ev.user_id IS NULL
- AND $where
- ORDER BY $order";
- $evt = XDB::iterator($sql, $uid, $promo, $promo);
- $array[$name] = array('events' => $evt, 'summary' => $sum);
- return true;
- }
-
private function upload_image(PlatalPage &$page, PlUpload &$upload)
{
if (@!$_FILES['image']['tmp_name'] && !Env::v('image_url')) {
}
$array = array();
- $this->get_events('FIND_IN_SET(\'important\', e.flags)', 'e.creation_date DESC', $array, 'important');
- $this->get_events('e.creation_date > DATE_SUB(CURDATE(), INTERVAL 2 DAY)
- AND NOT FIND_IN_SET(\'important\', e.flags)',
- 'e.creation_date DESC', $array, 'news');
- $this->get_events('e.peremption < DATE_ADD(CURDATE(), INTERVAL 2 DAY)
- AND e.creation_date <= DATE_SUB(CURDATE(), INTERVAL 2 DAY)
- AND NOT FIND_IN_SET(\'important\', e.flags)',
- 'e.peremption, e.creation_date DESC', $array, 'end');
- $this->get_events('e.peremption >= DATE_ADD(CURDATE(), INTERVAL 2 DAY)
- AND e.creation_date <= DATE_SUB(CURDATE(), INTERVAL 2 DAY)
- AND NOT FIND_IN_SET(\'important\', e.flags)',
- 'e.peremption, e.creation_date DESC', $array, 'body');
+ $it = XDB::iterator("SELECT e.id,e.titre,e.texte,e.post_id,a.user_id,a.nom,a.prenom,a.promo,l.alias AS forlife,
+ p.x, p.y, p.attach IS NOT NULL AS img, FIND_IN_SET('wiki', e.flags) AS wiki,
+ FIND_IN_SET('important', e.flags) AS important,
+ e.creation_date > DATE_SUB(CURDATE(), INTERVAL 2 DAY) AS news,
+ e.peremption < DATE_ADD(CURDATE(), INTERVAL 2 DAY) AS end,
+ ev.user_id IS NULL AS nonlu
+ FROM evenements AS e
+ LEFT JOIN evenements_photo AS p ON (e.id = p.eid)
+ INNER JOIN auth_user_md5 AS a ON e.user_id=a.user_id
+ INNER JOIN aliases AS l ON ( a.user_id=l.id AND l.type='a_vie' )
+ LEFT JOIN evenements_vus AS ev ON (e.id = ev.evt_id AND ev.user_id = {?})
+ WHERE FIND_IN_SET('valide', e.flags) AND peremption >= NOW()
+ AND (e.promo_min = 0 || e.promo_min <= {?})
+ AND (e.promo_max = 0 || e.promo_max >= {?})
+ ORDER BY important DESC, news DESC, end DESC, e.peremption, e.creation_date DESC",
+ S::i('uid'), S::i('promo'), S::i('promo'));
+ $cats = array('important', 'news', 'end', 'body');
+ $body = $it->next();
+ foreach ($cats as $cat) {
+ $data = array();
+ if (!$body) {
+ continue;
+ }
+ do {
+ if ($cat == 'body' || $body[$cat]) {
+ $data[] = $body;
+ } else {
+ break;
+ }
+ $body = $it->next();
+ } while ($body);
+ if (!empty($data)) {
+ $array[$cat] = $data;
+ }
+ }
$page->assign_by_ref('events', $array);
}
FIND_IN_SET('valide', e.flags) AS fvalide,
FIND_IN_SET('archive', e.flags) AS farch,
u.promo, u.nom, u.prenom, a.alias AS forlife,
- FIND_IN_SET('wiki', flags) AS wiki
+ FIND_IN_SET('wiki', e.flags) AS wiki
FROM evenements AS e
INNER JOIN auth_user_md5 AS u ON(e.user_id = u.user_id)
INNER JOIN aliases AS a ON (u.user_id = a.id AND a.type='a_vie')
--- /dev/null
+<?php
+/***************************************************************************
+ * Copyright (C) 2003-2008 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************/
+
+class GadgetsModule extends PLModule
+{
+ function handlers()
+ {
+ return array(
+ 'gadgets/ig-events.xml' => $this->make_hook('ig_events_xml', AUTH_PUBLIC, 'user', NO_HTTPS),
+ 'gadgets/ig-events' => $this->make_hook('ig_events', AUTH_PUBLIC),
+ 'gadgets/ig-search.xml' => $this->make_hook('ig_search_xml', AUTH_PUBLIC, 'user', NO_HTTPS),
+ 'gadgets/ig-search' => $this->make_hook('ig_search', AUTH_PUBLIC),
+ );
+ }
+
+ function handler_ig_events_xml(&$page) {
+ require_once 'gadgets/gadgets.inc.php';
+ init_igoogle_xml('gadgets/ig-events.xml.tpl');
+ }
+
+ function handler_ig_events(&$page) {
+ require_once 'gadgets/gadgets.inc.php';
+ init_igoogle_html('gadgets/ig-events.tpl', AUTH_COOKIE);
+
+ $events = XDB::iterator(
+ 'SELECT SQL_CALC_FOUND_ROWS
+ e.id, e.titre, UNIX_TIMESTAMP(e.creation_date) AS creation_date,
+ IF(u.nom_usage = "", u.nom, u.nom_usage) AS nom, u.prenom, u.promo,
+ ev.user_id IS NULL AS nonlu
+ FROM evenements AS e
+ INNER JOIN auth_user_md5 AS u ON e.user_id = u.user_id
+ LEFT JOIN evenements_vus AS ev ON (e.id = ev.evt_id AND ev.user_id = {?})
+ WHERE FIND_IN_SET("valide", e.flags) AND peremption >= NOW()
+ AND (e.promo_min = 0 || e.promo_min <= {?})
+ AND (e.promo_max = 0 || e.promo_max >= {?})
+ ORDER BY e.creation_date DESC
+ LIMIT {?}',
+ S::i('uid'), S::i('promo'), S::i('promo'), 5);
+ $page->assign('events', $events);
+ $page->assign('event_count', XDB::query("SELECT FOUND_ROWS()")->fetchOneCell());
+ }
+
+ function handler_ig_search_xml(&$page) {
+ require_once 'gadgets/gadgets.inc.php';
+ init_igoogle_xml('gadgets/ig-search.xml.tpl');
+ }
+
+ function handler_ig_search(&$page)
+ {
+ if (Env::has('quick') && Env::s('quick') != '') {
+ require_once 'userset.inc.php';
+ $view = new SearchSet(true);
+ $view->addMod('gadget', 'Gadget', true);
+ $view->apply(null, $page);
+
+ $nb_tot = $view->count();
+ $page->assign('result_count', $nb_tot);
+
+ if (!S::logged() && $nb_tot > $globals->search->public_max) {
+ $page->assign('error', 'Votre recherche a généré trop de résultats pour un affichage public.');
+ } elseif ($nb_tot > $globals->search->private_max) {
+ $page->assign('error', 'Recherche trop générale.');
+ } elseif (empty($nb_tot)) {
+ $page->assign('error', 'Il n\'existe personne correspondant à ces critères dans la base !');
+ }
+ }
+
+ require_once 'gadgets/gadgets.inc.php';
+ init_igoogle_html('gadgets/ig-search.tpl', AUTH_PUBLIC);
+ }
+}
+
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+?>
--- /dev/null
+<?php
+/***************************************************************************
+ * Copyright (C) 2003-2008 Polytechnique.org *
+ * http://opensource.polytechnique.org/ *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
+ ***************************************************************************/
+
+// iGoogle gadgets helpers.
+function init_igoogle_xml($template)
+{
+ global $page;
+ $page->changeTpl($template, NO_SKIN);
+
+ header('Content-Type: application/xml; charset=utf-8');
+}
+
+function init_igoogle_html($template, $auth = AUTH_PUBLIC)
+{
+ global $page;
+ $page->changeTpl('gadgets/ig-skin.tpl', NO_SKIN);
+ $page->register_modifier('escape_html', 'escape_html');
+ $page->default_modifiers = Array('@escape_html');
+ header('Accept-Charset: utf-8');
+
+ // Adds external JavaScript libraries provided by iGoogle to the page.
+ if (Env::has('libs')) {
+ $libs = split(',', Env::s('libs'));
+ foreach ($libs as $lib) {
+ if (preg_match('@^[a-z0-9/._-]+$@i', $lib) && !preg_match('@([.][.])|([.]/)|(//)@', $lib)) {
+ $page->append('gadget_js', 'https://www.google.com/ig/f/' . $lib);
+ }
+ }
+ }
+
+ // Redirects the user to the login pagin if required.
+ if ($auth > S::v('auth', AUTH_PUBLIC)) {
+ $page->assign('gadget_tpl', 'gadgets/ig-login.tpl');
+ return false;
+ }
+
+ $page->assign('gadget_tpl', $template);
+ return true;
+}
+
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+?>
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$page->changeTpl('lists/delete.tpl');
if (Post::v('valid') == 'OUI') {
if ($this->client->delete_list($liste, Post::b('del_archive'))) {
- foreach (array('', '-owner', '-admin', '-bounces') as $app) {
+ foreach (array('', '-owner', '-admin', '-bounces', '-unsubscribe') as $app) {
XDB::execute("DELETE FROM $table
WHERE type={?} AND alias={?}",
$type, $liste.$app.$domain);
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
foreach($members as $mem) {
list($m, $dom) = explode('@',$mem);
if ($dom == $globals->mail->domain || $dom == $globals->mail->domain2) {
- $res = XDB::query('SELECT prenom,IF(nom_usage="", nom, nom_usage), promo
- FROM auth_user_md5 AS u
- INNER JOIN aliases AS a ON u.user_id = a.id
- WHERE a.alias = {?}', $m);
- if(list($prenom, $nom, $promo) = $res->fetchOneRow()) {
+ $res = XDB::query('SELECT prenom, IF(nom_usage="", nom, nom_usage), promo, e.uid IS NULL
+ FROM auth_user_md5 AS u
+ INNER JOIN aliases AS a ON u.user_id = a.id
+ LEFT JOIN emails AS e ON ( e.flags = \'active\' AND e.uid = u.user_id)
+ WHERE a.alias = {?}
+ GROUP BY u.user_id', $m);
+ if(list($prenom, $nom, $promo, $broken) = $res->fetchOneRow()) {
$key = $tri_promo ? $promo : strtoupper($nom{0});
- $membres[$key][$nom.$m] = Array('n' => "$prenom $nom", 'l' => $m, 'p' => (!$tri_promo ? $promo : null));
+ $membres[$key][$nom.$m] = Array('n' => "$prenom $nom", 'l' => $m, 'p' => (!$tri_promo ? $promo : null), 'b' => $broken);
} else {
- $membres[0][] = Array('l' => $mem);
+ $membres[0][] = Array('l' => $mem, 'b' => $broken);
}
} else {
$res = XDB::query('SELECT m2.uid,
IF(m2.origine="X", u.prenom, m1.prenom) AS prenom,
IF(m2.origine="X", u.nom, m1.nom) AS nom,
- IF(m2.origine="X", u.promo, "non-X") AS promo
+ IF(m2.origine="X", u.promo, "non-X") AS promo,
+ 0
FROM groupex.membres AS m1
LEFT JOIN groupex.membres AS m2 ON(m1.email=m2.email AND m2.asso_id={?})
LEFT JOIN auth_user_md5 AS u ON(m2.origine = "X" AND m2.uid = u.user_id)
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
}
}
} elseif (Env::v('suppr')) {
- XDB::execute('DELETE FROM photo WHERE uid = {?}',
- S::v('uid'));
- XDB::execute('DELETE FROM requests
- WHERE user_id = {?} AND type="photo"',
- S::v('uid'));
+ XDB::execute('DELETE FROM photo
+ WHERE uid = {?}',
+ S::v('uid'));
+ XDB::execute('DELETE FROM requests
+ WHERE user_id = {?} AND type="photo"',
+ S::v('uid'));
+ update_NbValid();
} elseif (Env::v('cancel')) {
- $sql = XDB::query('DELETE FROM requests
- WHERE user_id={?} AND type="photo"',
- S::v('uid'));
+ $sql = XDB::query('DELETE FROM requests
+ WHERE user_id={?} AND type="photo"',
+ S::v('uid'));
+ update_NbValid();
}
- $sql = XDB::query('SELECT COUNT(*) FROM requests
- WHERE user_id={?} AND type="photo"',
+ $sql = XDB::query('SELECT COUNT(*)
+ FROM requests
+ WHERE user_id={?} AND type="photo"',
S::v('uid'));
$page->assign('submited', $sql->fetchOneCell());
$page->assign('has_trombi_x', file_exists($trombi_x));
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
}
}
$current = 0;
+ $success = true;
foreach ($value as $key=>&$adr) {
if (@$adr['current']) {
$current++;
}
}
- if (!$init && $current != 1 && count($value) > 0) {
+ if ($current == 0 && count($value) > 0) {
+ foreach ($value as $key=>&$adr) {
+ $adr['current'] = true;
+ break;
+ }
+ } else if ($current > 1) {
$success = false;
- } else {
- $success = true;
}
foreach ($value as $key=>&$adr) {
$ls = true;
{
parent::__construct($wiz);
$this->settings['addresses'] = new ProfileAddress();
+ $this->watched['addresses'] = true;
}
protected function _fetchData()
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
parent::__construct($wiz);
$this->settings['medals'] = new ProfileDeco();
$this->settings['medals_pub'] = new ProfilePub();
+ $this->watched['medals'] = true;
}
protected function _fetchData()
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$this->settings['appli1']
= $this->settings['appli2']
= new ProfileAppli();
+ $this->watched= array('nom' => true, 'freetext' => true, 'mobile' => true, 'web' => true,
+ 'appli1' => true, 'appli2' => true, 'nationalite' => true, 'nick' => true);
}
protected function _fetchData()
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
parent::__construct($wiz);
$this->settings['section'] = new ProfileSection();
$this->settings['binets'] = new ProfileGroup('binets', 'user_id', 'binet_id');
+ $this->watched['section'] = $this->watched['binets'] = true;
}
public function _prepare(PlatalPage &$page, $id)
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
parent::__construct($wiz);
$this->settings['cv'] = null;
$this->settings['jobs'] = new ProfileJob();
+ $this->watched['cv'] = $this->watched['jobs'] = true;
}
protected function _fetchData()
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
FROM mentor
WHERE uid = {?}",
S::i('uid'));
- $this->value['expertise'] = $res->fetchOneCell();
+ $this->values['expertise'] = $res->fetchOneCell();
}
protected function _saveData()
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
} else if (@$address['parsevalid']) {
$address = array_merge($address, cut_address(@$address['text']));
$address['checked'] = true;
- $mailer = new PlMailer('geoloc/mail_geoloc.tpl');
+ $mailer = new PlMailer('geoloc/geoloc.mail.tpl');
$mailer->assign('text', get_address_text($address));
$mailer->assign('geoloc', $geotxt);
$mailer->send();
protected $settings = array(); // A set ProfileSetting objects
protected $errors = array(); // A set of boolean with the value check errors
protected $changed = array(); // A set of boolean indicating wether the value has been changed
+ protected $watched = array(); // A set of boolean indicating the fields that are watched
public $orig = array();
public $values = array();
protected function saveData()
{
+ require_once 'notifs.inc.php';
foreach ($this->settings as $field=>&$setting) {
if (!is_null($setting) && $this->changed[$field]) {
$setting->save($this, $field, $this->values[$field]);
}
+ if ($this->changed[$field] && @$this->watched[$field]) {
+ register_profile_update(S::i('uid'), $field);
+ }
}
$this->_saveData();
XDB::execute('REPLACE INTO user_changes
SET user_id = {?}', S::v('uid'));
if (!S::has('suid')) {
- require_once 'notifs.inc.php';
register_watch_op(S::i('uid'), WATCH_FICHE);
}
global $platal;
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
"valide, en particulier, il ne peut pas être renvoyé vers lui-même.";
}
$birth = trim(Env::v('naissance'));
- if (!preg_match('/^[0-3][0-9][01][0-9][12][90][0-9][0-9]$/', $birth)) {
+ if (!preg_match('@^[0-3]?\d/[01]?\d/(19|20)?\d{2}$@', $birth)) {
$err[] = "La 'Date de naissance' n'est pas correcte.";
} else {
- $year = (int)substr($birth, 4, 4);
+ $birth = explode('/', $birth, 3);
+ $year = intval($birth[2]);
+ if ($year < 100) $year += 1900;
$promo = (int)$sub_state['promo'];
if ($year > $promo - 15 || $year < $promo - 30) {
$err[] = "La 'Date de naissance' n'est pas correcte.";
if (isset($err)) {
$err = join('<br />', $err);
} else {
- $sub_state['naissance'] = sprintf("%s-%s-%s",
- substr($birth,4,4),
- substr($birth,2,2),
- substr($birth,0,2));
+ $sub_state['naissance'] = sprintf("%04d-%02d-%02d",
+ intval($birth[2]), intval($birth[1]), intval($birth[0]));
if ($sub_state['naissance_ini'] != '0000-00-00' && $sub_state['naissance'] != $sub_state['naissance_ini']) {
$alert .= "Date de naissance incorrecte à l'inscription - ";
}
require_once('user.func.inc.php');
user_reindex($uid);
+ // update number of subscribers (perms has changed)
+ update_NbIns();
+
if (!start_connexion($uid, false)) {
return PL_FORBIDDEN;
}
/************* envoi d'un mail au démarcheur ***************/
/***********************************************************/
$res = XDB::iterRow(
- "SELECT DISTINCT sa.alias, IF(s.nom_usage,s.nom_usage,s.nom) AS nom,
- s.prenom, FIND_IN_SET('femme', s.flags) AS femme
+ "SELECT sa.alias, IF(s.nom_usage,s.nom_usage,s.nom) AS nom,
+ s.prenom, FIND_IN_SET('femme', s.flags) AS femme,
+ GROUP_CONCAT(m.email) AS mails
FROM register_marketing AS m
INNER JOIN auth_user_md5 AS s ON ( m.sender = s.user_id )
INNER JOIN aliases AS sa ON ( sa.id = m.sender
AND FIND_IN_SET('bestalias', sa.flags) )
- WHERE m.uid = {?}", $uid);
+ WHERE m.uid = {?}
+ GROUP BY m.sender", $uid);
XDB::execute("UPDATE register_mstats SET success=NOW() WHERE uid={?}", $uid);
- while (list($salias, $snom, $sprenom, $sfemme) = $res->next()) {
+ $market = array();
+ while (list($salias, $snom, $sprenom, $sfemme, $mails) = $res->next()) {
+ $market[] = " - par $snom $sprenom sur $mails";
$mymail = new PlMailer();
$mymail->setSubject("$prenom $nom s'est inscrit à Polytechnique.org !");
$mymail->setFrom('"Marketing Polytechnique.org" <register@' . $globals->mail->domain . '>');
. " - email : $email\n"
. " - sexe : $femme\n"
. " - ip : {$logger->ip} ({$logger->host})\n"
- . ($logger->proxy_ip ? " - proxy : {$logger->proxy_ip} ({$logger->proxy_host})\n" : "");
+ . ($logger->proxy_ip ? " - proxy : {$logger->proxy_ip} ({$logger->proxy_host})\n" : "")
+ . "\n\n"
+ . "Les marketings suivants avaient été effectués :\n"
+ . implode("\n", $market);
$mymail->setTxtBody($msg);
$mymail->send();
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if (!S::logged() && $nb_tot > $globals->search->public_max) {
new ThrowError('Votre recherche a généré trop de résultats pour un affichage public.');
} elseif ($nb_tot > $globals->search->private_max) {
- new ThrowError('Recherche trop générale');
+ new ThrowError('Recherche trop générale. Une <a href="search/adv">recherche avancée</a> permet de préciser la recherche.');
} elseif (empty($nb_tot)) {
- new ThrowError('il n\'existe personne correspondant à ces critères dans la base !');
+ new ThrowError('Il n\'existe personne correspondant à ces critères dans la base !');
}
} else {
$page->assign('formulaire',1);
$nb_tot = $view->count();
if ($nb_tot > $globals->search->private_max) {
$this->form_prepare();
- new ThrowError('Recherche trop générale');
+ new ThrowError('Recherche trop générale.');
}
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$where[] = 'ems.email = ' . XDB::escape($this->email);
}
if (!empty($this->ip)) {
- $ip = XDB::escape($this->ip);
+ $ip = ip_to_uint($this->ip);
$where[] = "( ls.ip = $ip OR ls.forward_ip = $ip )";
}
{
$this->fields = $_fields;
$this->and = $_and;
+ foreach ($this->fields as $key=>&$field) {
+ if (is_null($field)) {
+ unset($this->fields[$key]);
+ }
+ }
}
// }}}
{
$b = true;
for ($i=0 ; $b && $i<count($this->fields) ; $i++) {
- $b = $b && $this->fields[$i]->too_large();
+ if (!is_null($this->fields[$i])) {
+ $b = $b && $this->fields[$i]->too_large();
+ }
}
return $b;
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$womanField = new RefSField('woman',array('FIND_IN_SET(\'femme\',u.flags)+1'),'','','');
$subscriberField = new RefSField('subscriber',array('!(u.perms IN (\'admin\',\'user\'))+1'),'','','');
$aliveField = new RefSField('alive',array('(u.deces!=0)+1'),'','','');
+ if (Env::v('only_referent') == 'on') {
+ $referentField = new RefSField('only_referent', array('"on"'), 'mentor', 'mt', 'mt.expertise != "" AND mt.uid=u.user_id');
+ } else {
+ $referentField = null;
+ }
if (!Env::i('cityid')) {
$townField = new RefSField('city',array('ac.city'),'adresses','ac',getadr_join('ac'),false);
return array(
$nameField, $firstnameField, $nicknameField, $promo1Field,
- $promo2Field, $womanField, $subscriberField, $aliveField,
+ $promo2Field, $womanField, $subscriberField, $aliveField, $referentField,
$townField, $countryField, $regionField, $mapField, $entrepriseField,
$posteField, $secteurField, $cvField, $natField, $binetField,
$groupexField, $sectionField, $schoolField, $diplomaField,
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
{
if ($promo == 'all') {
// date de départ
- $depart = 1920;
+ $depart = 1930;
//recupere le nombre d'inscriptions par jour sur la plage concernée
$res = XDB::iterRow(
set xr [$depart:$fin]
set yr [0:100]
-set title "Nombre d'inscrits par promotion depuis $depart."
+set title "Proportion d'inscrits par promotion depuis $depart, en %."
plot "-" using 1:2 title 'inscrits' with boxes;
{$inscrits}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$this->show_error($page, "", 'survey/edit', $errors);
} else {
if (S::has('survey_id')) {
- $this->show_confirm($page, "Veuillez confirmer l'enregistrement des modifications apportées à ce sondage", 'edit', array('action' => 'valid'));
+ $this->show_confirm($page, "Veuillez confirmer l'enregistrement des modifications apportées à ce sondage.", 'edit', array('action' => 'valid'));
} else {
$this->show_confirm($page, "Veuillez confirmer l'envoi de cette proposition de sondage.", 'edit', array('action' => 'valid'));
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
XDB::execute("DELETE FROM requests
WHERE type = 'paiements' AND data LIKE {?}",
PayReq::same_event($eid, $globals->asso('id')));
+ update_NbValid();
}
if ($action == 'archive') {
$page->assign('admin', $admin);
$page->assign('moments', $evt['moments']);
$page->assign('money', $evt['money']);
+ $page->assign('telepayment', $evt['paiement_id']);
$page->assign('tout', !Env::v('item_id', false));
}
$evt = get_event_detail($eid, $item_id);
}
- $page->assign('evt', $evt);
+ $page->assign_by_ref('evt', $evt);
$page->assign('tout', is_null($item_id));
if (count($evt['moments'])) {
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
// }}}
// {{{ function get_event_participants()
-function get_event_participants($evt, $item_id, $tri, $limit = '') {
+function get_event_participants(&$evt, $item_id, $tri, $limit = '') {
global $globals;
if (Env::has('initiale')) {
$tab = array();
$user = 0;
+ $evt['adminpaid'] = 0;
+ $evt['telepaid'] = 0;
+ $evt['topay'] = 0;
+ $evt['paid'] = 0;
while ($u = $res->next()) {
if ($u['nb'] == 0) {
continue;
$pay_id, $u['uid']);
$montants = $res_->fetchColumn();
foreach ($montants as $m) {
- $p = strtr(substr($m, 0, strpos($m, "EUR")), ",", ".");
- $u['paid'] += trim($p);
+ $p = strtr(substr($m, 0, strpos($m, "EUR")), ",", ".");
+ $u['paid'] += trim($p);
}
}
$u['telepayment'] = $u['paid'] - $u['adminpaid'];
$u['montant'] += $i['montant']*$i['nb'];
}
$tab[] = $u;
+ $evt['telepaid'] += $u['telepayment'];
+ $evt['adminpaid'] += $u['adminpaid'];
+ $evt['paid'] += $u['paid'];
+ $evt['topay'] += $u['montant'];
}
return $tab;
}
$participant_list = $evt['participant_list'];
$absent_list = $evt['absent_list'];
- $email = get_user_forlife($uid);
+ $email = get_user_forlife($uid, '_silent_user_callback');
if ($email) {
$email .= '@'.$globals->mail->domain;
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if (!S::has('core_rss_hash')) {
$page->setRssLink("Polytechnique.net :: {$globals->asso("nom")} :: News publiques",
- "rss/rss.xml");
+ $platal->ns . "rss/rss.xml");
} else {
$page->setRssLink("Polytechnique.net :: {$globals->asso("nom")} :: News",
- 'rss/'.S::v('forlife') .'/'.S::v('core_rss_hash').'/rss.xml');
+ $platal->ns . 'rss/'.S::v('forlife') .'/'.S::v('core_rss_hash').'/rss.xml');
}
$page->assign('articles', $arts);
if (!is_null($u) && may_update()) {
$page->assign('u', $u);
- $res = XDB::query("SELECT nom, prenom, promo, user_id
- FROM auth_user_md5 AS u
- INNER JOIN aliases AS al ON (al.id = u.user_id
- AND al.type != 'liste')
- WHERE al.alias = {?}", $u);
+ $res = XDB::query("SELECT u.nom, u.prenom, u.promo, u.user_id, FIND_IN_SET('femme', u.flags)
+ FROM auth_user_md5 AS u
+ INNER JOIN aliases AS al ON (al.id = u.user_id AND al.type != 'liste')
+ WHERE al.alias = {?}", $u);
- if (list($nom, $prenom, $promo, $uid) = $res->fetchOneRow()) {
+ if (list($nom, $prenom, $promo, $uid, $sexe) = $res->fetchOneRow()) {
$res = XDB::query("SELECT COUNT(*)
- FROM groupex.membres AS m
- INNER JOIN aliases AS a ON (m.uid = a.id
- AND a.type != 'homonyme')
- WHERE a.alias = {?} AND m.asso_id = {?}",
- $u, $globals->asso('id'));
+ FROM groupex.membres AS m
+ INNER JOIN aliases AS a ON (m.uid = a.id AND a.type != 'homonyme')
+ WHERE a.alias = {?} AND m.asso_id = {?}",
+ $u, $globals->asso('id'));
$n = $res->fetchOneCell();
if ($n) {
$page->kill("$prenom $nom est déjà membre du groupe !");
}
elseif (Env::has('accept'))
{
- XDB::execute("INSERT INTO groupex.membres
- VALUES ({?}, {?}, 'membre', 'X', NULL, NULL, NULL, NULL, NULL)",
+ XDB::execute("INSERT INTO groupex.membres (asso_id, uid)
+ VALUES ({?}, {?})",
$globals->asso('id'), $uid);
$mailer = new PlMailer();
$mailer->addTo("$u@polytechnique.org");
$mailer->setFrom('"'.S::v('prenom').' '.S::v('nom')
.'" <'.S::v('forlife').'@polytechnique.org>');
$mailer->setSubject('['.$globals->asso('nom').'] Demande d\'inscription');
- $message = "Cher Camarade,\n"
+ $message = ($sexe ? 'Chère' : 'Cher') . " Camarade,\n"
. "\n"
. " Suite à ta demande d'adhésion à ".$globals->asso('nom').",\n"
. "j'ai le plaisir de t'annoncer que ton inscription a été validée !\n"
. "{$_SESSION["prenom"]} {$_SESSION["nom"]}.";
$mailer->setTxtBody($message);
$mailer->send();
- $page->kill("$prenom $nom a bien été inscrit");
+ $page->kill("$prenom $nom a bien été inscrit" . ($sexe ? 'e' : '') . ".");
}
elseif (Env::has('refuse'))
{
break;
}
}
- pl_redirect("");
+ http_redirect($_SERVER['HTTP_REFERER']);
}
function handler_admin_annuaire(&$page)
WHERE a.alias={?}', $globals->asso('id'), $forlife);
pl_redirect("member/$forlife");
} else {
- $page->trig($email." n'est pas un alias polytechnique.org valide");
+ $page->trig($email." n'est pas un alias polytechnique.org valide.");
}
} else {
require_once 'xorg.misc.inc.php';
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
."<a href='mailto:support@m4x.org'>support@m4x.org</a>");
return;
}
- XDB::execute('INSERT INTO x4dat.virtual (alias,type)
- VALUES({?},{?})', $liste.'@'.$dom, 'list');
- XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', XDB::insertId(),
- "$red+post@listes.polytechnique.org");
- XDB::execute('INSERT INTO x4dat.virtual (alias,type)
- VALUES({?},{?})', $liste.'-owner@'.$dom, 'list');
- XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', XDB::insertId(),
- "$red+owner@listes.polytechnique.org");
- XDB::execute('INSERT INTO x4dat.virtual (alias,type)
- VALUES({?},{?})', $liste.'-admin@'.$dom, 'list');
- XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', XDB::insertId(),
- "$red+admin@listes.polytechnique.org");
- XDB::execute('INSERT INTO x4dat.virtual (alias,type)
- VALUES({?},{?})', $liste.'-bounces@'.$dom, 'list');
- XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', XDB::insertId(),
- "$red+bounces@listes.polytechnique.org");
-
+ foreach (array('', 'owner', 'admin', 'bounces', 'unsubscribe') as $app) {
+ $mdir = $app == '' ? '+post' : '+' . $app;
+ $app = '-' . $app;
+ XDB::execute('INSERT INTO x4dat.virtual (alias,type)
+ VALUES({?},{?})', $liste. $app . '@'.$dom, 'list');
+ XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
+ VALUES ({?}, {?})', XDB::insertId(),
+ $red . $mdir . '@listes.polytechnique.org');
+ }
pl_redirect('lists/admin/'.$liste);
}
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
{
extract($compiler->_parse_attrs($tag_attrs));
+ $alt = 'alt=""';
+
if (isset($title)) {
- $title = 'title="'. pl_entities(trim($title, '\'"'), ENT_QUOTES).'" ';
+ $title = pl_entities(trim($title, '\'"'), ENT_QUOTES);
+ $alt = 'alt="'.$title.'"';
+ $title = 'title="'. $title.'" ';
}
$name = pl_entities(trim($name, '\'"'), ENT_QUOTES);
$name = $globals->baseurl . '/' . $name;
}
- return "?><img src='$name' alt='' $title /><?php";
+ return "?><img src='$name' $alt $title /><?php";
}
/* vim: set expandtab enc=utf-8: */
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if ($param['titre'])
{
if ($param['titre_div'])
- $txthtml .= "<div class='titre'>".$param['titre'].$map."</div>\n";
+ $txthtml .= "<div class='titre'>".pl_entity_decode($param['titre'])." ".$map."</div>\n";
else
- $txthtml .= "<em>".$param['titre']."</em>".$map."<br />\n";
+ $txthtml .= "<em>".pl_entity_decode($param['titre'])." </em>".$map."<br />\n";
}
foreach ($lines as $line)
{
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************/
-
-function smarty_insert_getNbNotifs($params, &$smarty)
+function smarty_modifier_number_format($string, $decimal = 0)
{
- if(S::logged()) {
- require_once('notifs.inc.php');
- return getNbNotifs();
- }
+ return number_format($string, $decimal, ',', '.');
}
+
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>
<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************/
-
-/*
- * Smarty plugin
- * -------------------------------------------------------------
- * File: insert.mkStats.php
- * Type: insert
- * Name: mkStats
- * Purpose:
- * -------------------------------------------------------------
- */
-function smarty_insert_mkStats($params, &$smarty)
+function smarty_modifier_uint_to_ip($string)
{
- $res = XDB::query('select count(*) from requests');
- $cnt = $res->fetchOneCell();
- return ($cnt ? $cnt : '-');
+ return uint_to_ip($string);
}
+
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</td>
<td><input type="submit" value="<" name="sub01" /></td>
<td>
- Promotion :
+ Promotion :
<input type="text" name="promo" value="{$promo}" size="4" maxlength="4" />
<input type="submit" value="GO" />
</td>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h1>Regexps pour les détections de bounces</h1>
<p>
-Rappel sur les niveaux :
+Rappel sur les niveaux :
</p>
<ul>
<li>0: IGNORE == ignorer le bounce</li>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr><th>Système</th></tr>
<tr class="impair">
<td>
- <strong>Postfix :</strong>
+ <strong>Postfix :</strong>
<a href="admin/postfix/blacklist">Blacklist</a>
|
<a href="admin/postfix/whitelist">Whitelist</a>
</tr>
<tr class="pair">
<td>
- <strong>Sécurité :</strong>
+ <strong>Sécurité :</strong>
<a href="admin/logger">Logs des sessions</a>
|
<a href="admin/logger/actions">Actions</a>
<tr><th>Contenu du site</th></tr>
<tr class="impair">
<td>
- <strong>Utilisateurs :</strong>
+ <strong>Utilisateurs :</strong>
<a href="admin/promo">Ajout</a>
|
<a href="admin/user">Edit/Su/Logs</a>
</tr>
<tr class="pair">
<td>
- <strong>Infos dynamiques :</strong>
+ <strong>Infos dynamiques :</strong>
<a href="admin/downtime">Coupures</a>
|
<a href="admin/mx/broken">MX défaillants</a>
</tr>
<tr class="impair">
<td>
- <strong>Champs profil :</strong>
+ <strong>Champs profil :</strong>
<a href="admin/formations">Formations</a>
|
<a href="admin/binets">Binets</a>
</tr>
<tr class="pair">
<td>
- <strong>Newsletter :</strong>
+ <strong>Newsletter :</strong>
<a href="admin/newsletter">Liste</a>
|
<a href="admin/newsletter/categories">Catégories</a>
</tr>
<tr class="impair">
<td>
- <strong>Administrer :</strong>
+ <strong>Administrer :</strong>
<a href="admin/auth-groupes-x">Auth Groupes X</a>
|
<a href="admin/lists">Listes</a>
</tr>
<tr class="pair">
<td>
- <strong>Valider demandes :</strong>
+ <strong>Valider demandes :</strong>
<a href="admin/validate">Valider</a>
|
<a href="admin/events">Événements</a>
</tr>
<tr class="impair">
<td>
- <strong>Trésorerie :</strong>
+ <strong>Trésorerie :</strong>
<a href="admin/payments">Paiements</a>
</td>
</tr>
<tr class="pair">
<td>
- <strong>Géoloc :</strong>
+ <strong>Géoloc :</strong>
<a href="admin/geoloc">Synchro</a>
|
<a href="admin/geoloc/dynamap">Dynamap</a>
</tr>
<tr class="impair">
<td>
- <strong>Wiki :</strong>
+ <strong>Wiki :</strong>
<a href="admin/wiki">Pages et permissions</a>
</td>
</tr>
<tr class="pair">
<td>
- <strong>AX-Letter :</strong>
+ <strong>AX-Letter :</strong>
<a href="ax/edit">Edition</a>
|
<a href="admin/axletter">Inscriptions et Permissions</a>
</tr>
<tr class="impair">
<td>
- <strong>Sondages :</strong>
+ <strong>Sondages :</strong>
<a href="survey/admin">Gestion des sondages</a>
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if $session.forward_ip}
<tr class="pair">
<td class="titre">Hôte</td>
- <td><em>{$session.forward_host}</em> <tt>IP: {$session.forward_ip}</tt></td>
+ <td><em>{$session.forward_host}</em> <tt>IP: {$session.forward_ip|uint_to_ip}</tt></td>
</tr>
<tr class="pair">
<td class="titre">Proxy</td>
- <td><em>{$session.host}</em> <tt>IP: {$session.ip}</tt></td>
+ <td><em>{$session.host}</em> <tt>IP: {$session.ip|uint_to_ip}</tt></td>
</tr>
{else}
<tr class="pair">
<td class="titre">{if $session.flags}Proxy{else}Hôte{/if}</td>
- <td><em>{$session.host}</em> <tt>IP: {$session.ip}</tt></td>
+ <td><em>{$session.host}</em> <tt>IP: {$session.ip|uint_to_ip}</tt></td>
</tr>
{/if}
<tr class="impair">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<table class="tinybicol">
<tr>
<td class="center">
- <strong>Promotion :</strong>
+ <strong>Promotion :</strong>
<input type="text" size="4" name="promo" value="{$promo}" /><br />
<input type="submit" name="valid_promo" value="Ajouter des membres" />
<input type="submit" name="valid_promo" value="Mettre à jour les matricules AX" />
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<strong>ATTENTION ! Cet utilisateur n'a pas accepté la synchronisation</strong>
</div>
{/if}
-<div>Les fiches de cet utilisateur :
+<div>Les fiches de cet utilisateur :
<ul>
<li><a href='profile/{$x.user_id}' class='popup2'>polytechnique.org</a></li>
<li><a href='http://www.polytechniciens.com/?page=AX_FICHE_ANCIEN&anc_id={$x.matricule_ax}'>polytechniciens.com</a></li>
{if $adr.remove}
Effacer l'adresse {$adr.adrid}.
{else}
- {if $adr.adrid}Modifier l'adresse {$adr.adrid} :{else}Ajouter l'adresse :{/if}
+ {if $adr.adrid}Modifier l'adresse {$adr.adrid} :{else}Ajouter l'adresse :{/if}
{include file='geoloc/address.tpl' address=$adr no_div=1 for="`$x.prenom` `$x.nom`"}
{/if}
</td></tr>
{if $pro.remove}
Effacer l'emploi {$pro.entrid}.
{else}
- {if $pro.entrid || $pro.entrid === 0}Modifier l'emploi {$pro.entrid} :{else}Ajouter l'emploi :{/if}
+ {if $pro.entrid || $pro.entrid === 0}Modifier l'emploi {$pro.entrid} :{else}Ajouter l'emploi :{/if}
{if $pro.entreprise}
<div>
- <em>Entreprise/Organisme : </em> <strong>{$pro.entreprise}</strong>
+ <em>Entreprise/Organisme : </em> <strong>{$pro.entreprise}</strong>
</div>
{/if}
{if $pro.secteur}
<div>
- <em>Secteur : </em>
+ <em>Secteur : </em>
<strong>{$pro.secteur}{if $pro.ss_secteur} ({$pro.ss_secteur}){/if}</strong>
</div>
{/if}
{if $pro.fonction}
<div>
- <em>Fonction : </em> <strong>{$pro.fonction}</strong>
+ <em>Fonction : </em> <strong>{$pro.fonction}</strong>
</div>
{/if}
{if $pro.poste}
<div>
- <em>Poste : </em> <strong>{$pro.poste}</strong>
+ <em>Poste : </em> <strong>{$pro.poste}</strong>
</div>
{/if}
{include file='geoloc/address.tpl' address=$pro no_div=1 for=$pro.entreprise}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if !$smarty.request.login && !$mr.forlife}
<tr class="pair">
<td class="center">
- Il est possible d'entrer ici n'importe quelle adresse mail : redirection, melix, ou alias.
+ Il est possible d'entrer ici n'importe quelle adresse mail : redirection, melix, ou alias.
</td>
</tr>
{/if}
<td>
<input type="text" name="naissanceN" size="12" maxlength="10" value="{$mr.naissance}" />
{if $mr.naissance_ini neq '0000-00-00' && $mr.naissance neq $mr.naissance_ini}
- <span class="erreur smaller">({icon name=error}Date de naissance connue : {$mr.naissance_ini})</span>
+ <span class="erreur smaller">({icon name=error}Date de naissance connue : {$mr.naissance_ini})</span>
{elseif $mr.naiss_err}
<span class="erreur smaller">({icon name=error}Date de naissance incohérente)</span>
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<td colspan='2' {popup caption="Règles de validation" text=$valid->ruleText()}>
<form action="admin/validate" method="post">
<div>
- Réponse préremplie :
+ Réponse préremplie :
<select onchange="this.form.comm.value=this.value">
<option value=""></option>
{foreach from=$valid->answers() item=automatic_answer}
<a href="admin/validate/answers">{icon name="page_edit" title="Editer les réponses automatiques"}</a>
</div>
<div class='center'>
- Ajouté dans l'email :<br />
+ Ajouté dans l'email :<br />
<textarea rows="5" cols="50" name="comm"></textarea><br />
<input type="hidden" name="uid" value="{$valid->uid}" />
{/if}
<p>
- Afficher seulement les validation suivantes :
+ Afficher seulement les validation suivantes :
</p>
<form action="admin/validate" method="post">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{/literal}
<p class="center">
+ <a href="Site/AllRecentChanges?action=rss&user={$smarty.session.forlife}&hash={$smarty.session.core_rss_hash}" style="display:block;float:right" title="Changements">{icon name=feed title='fil rss'}</a>
{icon name=magnifier} <a href="Site/AllRecentChanges">Voir les changements récents</a>
</p>
{$perm.edit}
</td>
<td class="action" style="margin-top: 0; margin-bottom: 0; padding-top: 0; padding-bottom: 0; height: 20px">
- <a href="admin/wiki/rename/{$cat}.{$page}" onclick="var newname=prompt('Déplacer la page {$cat}.{$page} vers :', '{$cat}.{$page}'); if (!newname) return false; this.href += '/'+newname;">{icon name=book_next title='déplacer'}</a>
+ <a href="admin/wiki/rename/{$cat}.{$page}" onclick="var newname=prompt('Déplacer la page {$cat}.{$page} vers :', '{$cat}.{$page}'); if (!newname) return false; this.href += '/'+newname;">{icon name=book_next title='déplacer'}</a>
<a href="admin/wiki/delete/{$cat}.{$page}" onclick="return confirm('Supprimer la page {$cat}.{$page} ?');">{icon name=cross title='supprimer'}</a>
<input type="checkbox" name="{$cat}/{$page}"/>
</td>
</tr>
<tr class="pair">
<td>
- Attribue les permissions aux pages cochées :
+ Attribue les permissions aux pages cochées :
</td>
<td>
<select name="read">
</form>
<p class="smaller">
- * : les pages marquées d'une astérisque sont actuellement disponibles en cache (accès plus rapide)
+ * : les pages marquées d'une astérisque sont actuellement disponibles en cache (accès plus rapide)
</p>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{/if}
<fieldset>
- <legend>Sujet du mail : <input type="text" name="subject" value="{$subject}" size="60"/></legend>
+ <legend>Sujet du mail : <input type="text" name="subject" value="{$subject}" size="60"/></legend>
<p class="center">
<a href="wiki_help" class="popup3">
{icon name=information title="Syntaxe wiki"} Voir les marqueurs de mise en forme autorisés
</a><br />
- <strong>Titre : </strong><input type="text" name="title" value="{$title}" size="60" /><br />
+ <strong>Titre : </strong><input type="text" name="title" value="{$title}" size="60" /><br />
<textarea name="body" rows="30" cols="78">{$body}</textarea><br />
- <strong>Signature : </strong><input type="text" name="signature" value="{$signature}" size="60" />
+ <strong>Signature : </strong><input type="text" name="signature" value="{$signature}" size="60" />
</p>
</fieldset>
{include file="axletter/letter.tpl"}
</td>
</tr>
-</fieldset>
+</table>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<br />
+{if isset($banana|smarty:nodefaults)}
{$banana|smarty:nodefaults}
+{else}
+{if !$smarty.post.action}
+<p class="normal">
+ Tu peux régler quelques paramètres qui apparaîtront sur les messages lorsque
+ tu posteras sur les forums. Cela ne te permettra pas d'être anonyme, puisque
+ tout le monde pourra remonter à ton identité en regardant ta fiche. L'objectif
+ est simplement de permettre plus de convivialité.
+</p>
+<p class="normal">
+ Tu pourras voir dans les forums les nouveaux messages mis en valeur (en
+ général en gras). Si tu consultes les forums régulièrement, tu peux en avoir
+ assez de voir tout le contenu du forum : la dernière option te permet de
+ n'afficher que les fils de discussion contenant des messages lus.
+</p>
+
+<form action="banana/profile" method="post">
+ <table class="bicol" cellpadding="3" cellspacing="0" summary="Configuration de Banana">
+ <tr>
+ <th colspan="2">Profil Banana</th>
+ </tr>
+ <tr>
+ <td class="titre">Nom</td>
+ <td><input type="text" name="banananame" value="{$nom}" /></td>
+ </tr>
+ <tr>
+ <td class="titre">Adresse électronique</td>
+ <td><input type="text" name="bananamail" value="{$mail}" /></td>
+ </tr>
+ <tr>
+ <td class="titre">Signature</td>
+ <td><textarea name="bananasig" cols="50" rows="4">{$sig}</textarea></td>
+ </tr>
+ <tr class="pair">
+ <td class="titre">Affichage des fils de discussion</td>
+ <td>
+ <input type="radio" name="bananadisplay" value="0"
+ {if !$disp}checked="checked"{/if} /> Afficher tous les messages <br />
+ <input type="radio" name="bananadisplay" value="1"
+ {if $disp}checked="checked"{/if} /> Afficher seulement les fils de discussion contenant des messages non lus
+ </td>
+ </tr>
+ <tr class="pair">
+ <td class="titre">Mise à jour des messages non lus</td>
+ <td>
+ <input type="radio" name="bananaupdate" value="1"
+ {if $maj}checked="checked"{/if} /> Automatique<br />
+ <input type="radio" name="bananaupdate" value="0"
+ {if !$maj}checked="checked"{/if} /> Manuelle
+ </td>
+ </tr>
+ <tr class="pair">
+ <td class="titre" colspan="2">
+ <input type="checkbox" {if $xface}checked="checked"{/if} name="bananaxface" id="xface" />
+ <label for="xface">Afficher mon X-Face plutôt que ma photo si il est disponible</label>
+ </td>
+ </tr>
+ </table>
+ <div class="center"><input type="submit" name="action" value="Enregistrer" /></div>
+</form>
+{else}
+<p class="normal">
+ Ton profil est enregistré !!!
+</p>
+{/if}
+{/if}
+{if !$it_is_xnet}
<p class="smaller">
{icon name="lightbulb" title="Astuce"}Astuce :
Tu peux également consulter les fora en utilisant un client NNTP tel que
Outlook Express ou Thunderbird.<br />N'hésite pas à <a href="password/smtp?doc=nntp">
consulter la documentation et à activer ton accès</a> pour utiliser ce service.
</p>
+{/if}
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
+++ /dev/null
-{**************************************************************************}
-{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
-{* http://opensource.polytechnique.org/ *}
-{* *}
-{* This program is free software; you can redistribute it and/or modify *}
-{* it under the terms of the GNU General Public License as published by *}
-{* the Free Software Foundation; either version 2 of the License, or *}
-{* (at your option) any later version. *}
-{* *}
-{* This program is distributed in the hope that it will be useful, *}
-{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
-{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
-{* GNU General Public License for more details. *}
-{* *}
-{* You should have received a copy of the GNU General Public License *}
-{* along with this program; if not, write to the Free Software *}
-{* Foundation, Inc., *}
-{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
-{* *}
-{**************************************************************************}
-
-<br />
-
-<table class="cadre_a_onglet" cellpadding="0" cellspacing="0" width="100%">
- <tr>
- <td>
- <ul id="onglet">
- <li class="actif">Préférences</li>
- <li><a href="banana/subscription">Abonnements</a></li>
- <li><a href="banana">Les Forums</a></li>
- </ul>
- </td>
- </tr>
- <tr>
- <td class="conteneur_tab">
-
-{if !$smarty.post.action}
-
- <p class="normal">
- Tu peux régler quelques paramètres qui apparaîtront sur les messages lorsque
- tu posteras sur les forums. Cela ne te permettra pas d'être anonyme, puisque
- tout le monde pourra remonter à ton identité en regardant ta fiche. L'objectif
- est simplement de permettre plus de convivialité.
- </p>
- <p class="normal">
- Tu pourras voir dans les forums les nouveaux messages mis en valeur (en
- général en gras). Si tu consultes les forums régulièrement, tu peux en avoir
- assez de voir tout le contenu du forum : la dernière option te permet de
- n'afficher que les fils de discussion contenant des messages lus.
- </p>
-
- <form action="banana/profile" method="post">
- <table class="bicol" cellpadding="3" cellspacing="0" summary="Configuration de Banana">
- <tr>
- <th colspan="2">Profil Banana</th>
- </tr>
- <tr>
- <td class="titre">Nom</td>
- <td><input type="text" name="banananame" value="{$nom}" /></td>
- </tr>
- <tr>
- <td class="titre">Adresse électronique</td>
- <td><input type="text" name="bananamail" value="{$mail}" /></td>
- </tr>
- <tr>
- <td class="titre">Signature</td>
- <td><textarea name="bananasig" cols="50" rows="4">{$sig}</textarea></td>
- </tr>
- <tr class="pair">
- <td class="titre">Affichage des fils de discussion</td>
- <td>
- <input type="radio" name="bananadisplay" value="0"
- {if !$disp}checked="checked"{/if} /> Afficher tous
- les messages
- <br />
- <input type="radio" name="bananadisplay" value="1"
- {if $disp}checked="checked"{/if} /> Afficher
- seulement les fils de discussion contenant des messages non lus
- </td>
- </tr>
- <tr class="pair">
- <td class="titre">Mise à jour des messages non lus</td>
- <td>
- <input type="radio" name="bananaupdate" value="1"
- {if $maj}checked="checked"{/if} /> Automatique
- <br />
- <input type="radio" name="bananaupdate" value="0"
- {if !$maj}checked="checked"{/if} /> Manuelle
- </td>
- </tr>
- <tr class="pair">
- <td class="titre" colspan="2">
- <input type="checkbox" {if $xface}checked="checked"{/if} name="bananaxface" id="xface" />
- <label for="xface">Afficher mon X-Face plutôt que ma photo si il est disponible</label>
- </td>
- </tr>
- </table>
- <div class="center"><input type="submit" name="action" value="Enregistrer" /></div>
- </form>
-
-{else}
- <p class="normal">
- Ton profil est enregistré !!!
- </p>
-{/if}
-
- </td>
- </tr>
-</table>
-
-<p class="smaller">
- {icon name="lightbulb" title="Astuce"}Astuce :
- Tu peux également consulter les fora en utilisant un client NNTP tel que
- Outlook Express ou Thunderbird.<br />N'hésite pas à <a href="password/smtp?doc=nntp">
- consulter la documentation et à activer ton accès</a> pour utiliser ce service.
-</p>
-
-
-{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}\r
{* *}\r
-{* Copyright (C) 2003-2007 Polytechnique.org *}\r
+{* Copyright (C) 2003-2008 Polytechnique.org *}\r
{* http://opensource.polytechnique.org/ *}\r
{* *}\r
{* This program is free software; you can redistribute it and/or modify *}\r
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr>
<th colspan="2">
{if $smarty.session.core_rss_hash}
- <a href='carnet/rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml' style="display:block;float:right">
+ <a href="carnet/rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml" style="display:block;float:right" title="Notifications">
{icon name=feed title='fil rss'}
</a>
{else}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</h1>
<div>
-Ajouter la personne suivante à ma liste de contacts :
+Ajouter la personne suivante à ma liste de contacts :
<div style="float: right">
<form id="add_user" action="carnet/contacts" method="post">
<div>
</div>
</div>
<p style="clear: both">
- Tu peux également rajouter des camarades dans tes contacts lors d'une recherche dans l'annuaire :
+ Tu peux également rajouter des camarades dans tes contacts lors d'une recherche dans l'annuaire :
il te suffit de cliquer sur l'icône {icon name=add} en face de son nom dans les résultats !
</p>
{if $plset_count || $smarty.request.quick}
<p>
-Pour récupérer ta liste de contacts dans un PDF imprimable :<br />
+Pour récupérer ta liste de contacts dans un PDF imprimable :<br />
(attention, les photos font beaucoup grossir les fichiers !)
</p>
<ul>
- <li>avec les photos :
+ <li>avec les photos :
[<a href="carnet/contacts/pdf/promo/photos/mescontacts.pdf" class='popup'><strong>tri par promo</strong></a>]
[<a href="carnet/contacts/pdf/photos/mescontacts.pdf" class='popup'><strong>tri par noms</strong></a>]
</li>
- <li>sans les photos :
+ <li>sans les photos :
[<a href="carnet/contacts/pdf/promo/mescontacts.pdf" class='popup'><strong>tri par promo</strong></a>]
[<a href="carnet/contacts/pdf/mescontacts.pdf" class='popup'><strong>tri par noms</strong></a>]
</li>
</ul>
<p>
- Tu peux télécharger des informations sur tes contacts :
+ Tu peux télécharger des informations sur tes contacts :
</p>
<ul>
<li>
{icon name=calendar_view_day title='Anniversaires'}
- <a href="carnet/contacts/ical/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/anniv-x.ics">
+ <a href="carnet/contacts/ical/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/anniv-x.ics" title="Anniversaires">
Le calendrier des anniversaires
</a>
</li>
</div>
</form>
</div>
- Tu peux faire une recherche sur tes contacts :
+ Tu peux faire une recherche sur tes contacts :
</p>
{include file="core/plset.tpl"}
--- /dev/null
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+
+{config_load file="mails.conf" section="carnet"}
+{if $mail_part eq 'head'}
+{from full=#from#}
+{subject text="Notifications de la semaine `$week`"}
+{if isset(#replyto#)}{add_header name='Reply-To' value=#replyto#}{/if}
+{if isset(#retpath#)}{add_header name='Return-Path' value=#retpath#}{/if}
+{elseif $mail_part eq 'wiki'}
+{if $u.sexe}Chère{else}Cher{/if} {$u.prenom},
+
+Voici les événements survenus dans la semaine écoulée, et depuis ta dernière visite sur le site.
+
+Tu trouveras les mêmes informations sur [[https://www.polytechnique.org/carnet/panel|cette page]].
+
+{foreach from=$u.data key=cid item=d}
+
+!{if $d|@count eq 1}{$cats[$cid].mail_sg}{else}{$cats[$cid].mail}{/if} :
+
+{foreach from=$d key=promo item=x}
+* (X{$x.promo}), le {$x.date|date_format:"%d %b %Y"}, [[https://www.polytechnique.org/profile/private/{$x.bestalias}|{$x.prenom} {$x.nom}]]
+{/foreach}
+
+{/foreach}
+--
+L'Équipe de Polytechnique.org
+
+'''''Note :''''' Tu reçois ce mail ce mail car tu as activé la notification automatique par mail des événements que tu surveilles.\\
+Tu peux changer cette options sur la [[https://www.polytechnique.org/carnet/notifs|page de configuration des notifications]].
+
+{/if}
+
+{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h2>Surveiller des promos</h2>
<p>
-Attention : pour les promos, tu n'es pas notifié des événements trop fréquents (par exemple les changements de fiche).
+Attention : pour les promos, tu n'es pas notifié des événements trop fréquents (par exemple les changements de fiche).
</p>
<form action="carnet/notifs/" method="post">
<fieldset>
<legend>Ajouter une promo</legend>
Tu peux surveiller des promos (mettre la promo sur 4 chiffres),
- ou des plages de promos (par ex. 1990-1992) : <br />
+ ou des plages de promos (par ex. 1990-1992) : <br />
<input type='text' name='promo' />
<input type='submit' name='add_promo' value='ajouter'
onclick="this.form.action += 'add_promo/' + this.form.promo.value;" />
{if $watch->promos()|@count eq 0}
<p>Tu ne surveilles actuellement aucune promo.</p>
{else}
- <p>Tu surveilles les promos suivantes :</p>
+ <p>Tu surveilles les promos suivantes :</p>
<ul>
{foreach from=$watch->promos() item=p}
<li>{if $p.0 eq $p.1}{$p.0}{else}{$p.0} à {$p.1}{/if}</li>
{if $watch->nonins()|@count eq 0}
Tu ne surveilles actuellement aucun non-inscrit.
{elseif $watch->nonins()|@count}
- Tu surveilles {if $watch->nonins()|@count eq 1}le non-inscrit{else}les non-inscrits{/if} :
+ Tu surveilles {if $watch->nonins()|@count eq 1}le non-inscrit{else}les non-inscrits{/if} :
<ul>
{foreach from=$watch->nonins() item=p}
<li>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<div class="right">
{if $smarty.session.core_rss_hash}
-<a href='carnet/rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml'>{icon name=feed title='fil rss'}</a>
+<a href="carnet/rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml" title="Notifications">{icon name=feed title='fil rss'}</a>
{/if}
</div>
{foreach from=$notifs->_data item=c key=cid}
<h2>{if ($c|@count) > 1}
-{$notifs->_cats[$cid].mail} :
+{$notifs->_cats[$cid].mail} :
{else}
{foreach from=$c item=promo}
{if ($promo|@count) > 1}
- {$notifs->_cats[$cid].mail} :
+ {$notifs->_cats[$cid].mail} :
{else}
- {$notifs->_cats[$cid].mail_sg} :
+ {$notifs->_cats[$cid].mail_sg} :
{/if}
{/foreach}
{/if}</h2>
{foreach from=$c key=p item=promo}
{section name=row loop=$promo}
<tr {if ( $promo[row].known > $smarty.session.watch_last ) || ( $promo[row].date eq $today ) }style="font-weight: bold"{/if}>
- <td class='titre' style="width:15%">{if $smarty.section.row.first}{$p}{/if}</td>
+ <td class='titre' style="width:15%" {if $promo[row].data}rowspan="2"{/if}>{if $smarty.section.row.first}{$p}{/if}</td>
<td>
{if $promo[row].inscrit}
<a href="profile/{$promo[row].bestalias}" class="popup2">
{$promo[row].prenom} {$promo[row].nom}
{/if}
</td>
- <td style="width:25%">
+ <td style="width:25%" {if $promo[row].data}rowspan="2"{/if}>
{$promo[row].date|date_format}
</td>
+ {if $promo[row].data}
+ <tr><td>{$promo[row].data|smarty:nodefaults}</td></tr>
+ {/if}
</tr>
{/section}
{/foreach}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<link>{#globals.baseurl#}/profile/private/{$x.bestalias}</link>
<guid isPermaLink="false">carnet{$x.known}{$cid}{$x.bestalias}</guid>
<description><![CDATA[
+ {if $x.data}{$x.prenom} {$x.nom} a mis à jours les données suivantes :<br />{$x.data}<br />{/if}
{if !$x.contact and !$x.dcd}
<a href="{#globals.baseurl#}/carnet/contacts?action=ajouter&user={$x.bestalias}">
{icon name=add title="Ajouter" full=true} Ajouter à mes contacts
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<p>
-Trier par :
+Trier par :
{if ($order eq 'nom') and not($smarty.request.inv)}
[<a href='carnet/contacts?order=nom&trombi={$smarty.request.trombi}&inv=1'><strong>nom <img src='images/dn.png' alt='decr.' /></strong></a>]
{else}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h1 class="erreur">Cette page n'existe pas !!!</h1>
{if $near}
-<p>L'adresse suivante semble correspondre à ta demande :<br />
+<p>L'adresse suivante semble correspondre à ta demande :<br />
{icon name="lightbulb" title="Cherchais-tu ?"} <a href="{$globals->baseurl}/{$near}">{$globals->baseurl}/{$near}</a>
</p>
{/if}
{**************************************************************************}\r
{* *}\r
-{* Copyright (C) 2003-2007 Polytechnique.org *}\r
+{* Copyright (C) 2003-2008 Polytechnique.org *}\r
{* http://opensource.polytechnique.org/ *}\r
{* *}\r
{* This program is free software; you can redistribute it and/or modify *}\r
\r
<div style="width:800px;height:600px">\r
{if $bug_sent}\r
-<script type="text/javascript">window.close();</script>\r
-{/if}\r
+<p class="erreur">\r
+ Ton message a bien été envoyé au support de Polytechnique.org, tu devrais en\r
+ recevoir une copie d'ici quelques minutes. Nous allons le traiter et y répondre\r
+ dans les plus brefs délais.\r
+</p>\r
+\r
+<div class="center"><input type="submit" onclick="window.close()" name="close" value="Fermer" /></div>\r
+{else}\r
<form action="send_bug" method="post" onsubmit="cleanContent()">\r
<h1>Signaler un bug ou demander une amélioration</h1>\r
<div style="margin-left:10%;margin-right:10%">\r
<option value="wish">Souhait</option>\r
<option value="help">Aide/Dépannage</option>\r
</select>\r
- Sujet : <input type="text" name="item_summary" id="flyspray_title" value="sur la page {$smarty.server.HTTP_REFERER}" size="50" maxlength="100"/>\r
+ Sujet : <input type="text" name="item_summary" id="flyspray_title" value="sur la page {$smarty.server.HTTP_REFERER}" size="50" maxlength="100"/>\r
<textarea name="detailed_desc" id="flyspray_detail" cols="70" rows="10" style="width:100%;margin-top:10px;margin-bottom:10px;height:400px;display:block;" onFocus="cleanContent()" onBlur="fillContent()"></textarea>\r
<input type="hidden" name="page" value="{$smarty.server.HTTP_REFERER|default:$smarty.request.page}" />\r
<div class="center">\r
- <input type="button" value="Fermer" onclick="window.close()"/>\r
- <input type="submit" name="send" value="Signaler le bug"/>\r
+ <input type="button" value="Abandonner" onclick="window.close()"/>\r
+ <input type="submit" name="send" value="Envoyer"/>\r
</div>\r
</div>\r
</form>\r
fillContent();\r
</script>\r
</div>\r
+{/if}\r
\r
{* vim:set et sws=2 sts=2 sw=2 enc=utf-8: *}\r
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</ul>
{/if}
+{if $smarty.request.response}<!-- failed login code //-->
+<br />
+<div class="erreur">
+ Erreur d'identification. Essaie à nouveau !
+</div>
+{/if}
+
<br />
<form action="{$smarty.server.REQUEST_URI}" method="post" id="login" onsubmit="doChallengeResponse(); return false;" style="display: none">
</tr>
<tr style="white-space: nowrap">
<td class="titre">
- Adresse email :
+ Adresse email :
</td>
<td>
<input type="text" name="username" size="20" maxlength="50" value="{insert name="getUserName"}" /> @ <select name="domain">
</tr>
<tr>
<td></td>
- <td {popup caption='Connexion permanente' width='300' text='Coche cette case pour être automatiquement reconnu à ta prochaine connexion
- depuis cet ordinateur.<br />
- Il n\'est pas conseillé de cocher la case si cette machine n\'est pas <b>strictement</b> personnelle'}>
+ <td>
<input type="checkbox" name="remember" id="remember" /><label for="remember">Garder l'accès aux services après déconnexion</label>
</td>
</tr>
<tr>
+ <td></td>
+ <td>
+ Coche la case ci-dessus pour être automatiquement reconnu lors de ta prochaine connexion depuis cet ordinateur.
+ Il n'est pas conseillé de la cocher si cette machine n'est pas <b>strictement</b> personnelle.
+ </td>
+ </tr>
+ <tr>
<td colspan="2">
<table width="100%"><tr>
<td>
- <a href="recovery">mot de passe perdu ?</a>
+ <a href="recovery">Mot de passe perdu ?</a>
</td>
<td class="right">
- <input type="submit" name="submitbtn" value="Envoyer" />
+ <input type="submit" name="submitbtn" value="Me connecter" />
</td>
</tr></table>
</td>
{/if}
</div>
-{if $smarty.request.response}<!-- failed login code //-->
-<br />
-<div class="erreur">
- Erreur d'identification. Essaie à nouveau !
-</div>
-{/if}
-
<!-- Set up the form with the challenge value and an empty reply value //-->
<form action="{$smarty.server.REQUEST_URI}" method="post" id="loginsub">
<div>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr class="impair">
<td colspan="{$t->nbfields}">
<strong>
- Nouvelles entrées : <a href="{$t->pl}/new">Manuellement</a> • <a href="{$t->pl}/massadd">Depuis un CSV</a>
+ Nouvelles entrées : <a href="{$t->pl}/new">Manuellement</a> • <a href="{$t->pl}/massadd">Depuis un CSV</a>
</strong>
</td>
<td class="right">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
" />
</td>
<td>
- Ton alias est actuellement : <strong>{$actuel}</strong>. Il est pour l'instant
+ Ton alias est actuellement : <strong>{$actuel}</strong>. Il est pour l'instant
<span id="mail_public">{if $mail_public}public et apparaît donc sur ta fiche.{else}privé et n'apparaît nulle part sur le site.{/if}</span>
</td>
</tr>
{if $actuel}
<p>
- <strong>Note : tu as déjà l'alias {$actuel}, or tu ne peux avoir qu'un seul alias à la fois.
+ <strong>Note : tu as déjà l'alias {$actuel}, or tu ne peux avoir qu'un seul alias à la fois.
Si tu effectues une nouvelle demande l'ancien alias sera effacé.</strong>
</p>
{/if}
{if $demande}
<p>
- <strong>Note : tu as déjà effectué une demande pour {$demande->alias}, dont le traitement est
+ <strong>Note : tu as déjà effectué une demande pour {$demande->alias}, dont le traitement est
en cours. Si tu souhaites modifier ceci refais une demande, sinon ce n'est pas la peine.</strong>
</p>
{/if}
<th>Demande d'alias</th>
</tr>
<tr>
- <td>Alias demandé :</td>
+ <td>Alias demandé :</td>
</tr>
<tr>
<td><input type="text" name="alias" value="{$r_alias}" />@{#globals.mail.alias_dom#} et @{#globals.mail.alias_dom2#}</td>
</td>
</tr>
<tr>
- <td>Brève explication :</td>
+ <td>Brève explication :</td>
</tr>
<tr>
<td><textarea rows="5" cols="50" name="raison">{$r_raison}</textarea></td>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{/literal}
</script>
<fieldset>
- <legend><strong>Choisis ton propre réglage :</strong></legend>
+ <legend><strong>Choisis ton propre réglage :</strong></legend>
<input id='s0' type='radio' name='statut_filtre' value='0' {if $filtre eq 0}checked="checked"{/if} onclick="Ajax.update_html(null, '{$globals->baseurl}/emails/antispam/'+this.value, bogoUpdated)" />
<label for='s0'>(1) le filtre anti-spam n'agit pas sur tes mails</label>
<br />
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
Nous t'écrivons car lors de l'envoi de la lettre d'information mensuelle
de Polytechnique.org à ton adresse polytechnicienne :
- {$x.alias}@{#globals.mail.domain#},
+ {$x.alias}@{$globals->mail->domain},
l'adresse {$email}, sur laquelle tu rediriges ton courrier, ne fonctionnait pas.
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</tr>
<tr class="impair">
<td>
- Tes adresses polytechniciennes sont :<br /><br />
+ Tes adresses polytechniciennes sont :<br /><br />
<div>
{iterate from=$aliases item=a}
<input type='radio' {if $a.best}checked="checked"{/if} name='best' value='{$a.alias}' onclick='Ajax.update_html(null,"{$globals->baseurl}/emails/best/{$a.alias}",bestaliasUpdated)' />
</p>
{else}
Actuellement, tout courrier électronique qui t'y est adressé, est envoyé
- {if $mails->total() eq 1} à l'adresse {else} aux adresses {/if}
+ {if $mails->total() eq 1} à l'adresse{else} aux adresses{/if} :
<ul>
{iterate from=$mails item=m}
<li><strong>{$m.email}</strong></li>
{/iterate}
</ul>
{/if}
+ {if count($storage) neq 0}
+ Ton courrier est également stocké sur {if count($storage) eq 1}le compte suivant{else} les comptes suivants{/if} :
+ <ul>
+ {if in_array('googleapps', $storage)}
+ <li><a href="https://www.polytechnique.org/Xorg/GoogleApps">
+ <strong>Compte Google Apps / GMail de Polytechnique.org</strong>
+ </a></li>
+ {/if}
+ {if in_array('imap', $storage)}
+ <li><a href="https://www.polytechnique.org/Xorg/IMAP">
+ <strong>Accès de secours aux emails (IMAP)</strong>
+ </a></li>
+ {/if}
+ </ul>
+ {/if}
{test_email}
Si tu souhaites <strong>modifier ce reroutage de ton courrier,</strong>
- <a href="emails/redirect">il te suffit de te rendre ici !</a>
+ <a href="emails/redirect">il te suffit de te rendre ici !</a>
</td>
</tr>
</table>
<table class="bicol">
<tr>
- <th>Un alias sympathique : {#globals.mail.alias_dom#} !</th>
+ <th>Un alias sympathique : {#globals.mail.alias_dom#} !</th>
</tr>
<tr class="impair">
<td>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
Tes adresses de redirection
</h1>
<p>
- Tu configures ici les adresses emails vers lesquelles tes adresses (listées ci-dessous) sont dirigées :
+ Tu configures ici les adresses emails vers lesquelles tes adresses (listées ci-dessous) sont dirigées :
</p>
<ul>
{if $melix}
<form action="emails/redirect" method="post">
<div>
<br />
- Ajouter une adresse email :
+ Ajouter une adresse email :
<input type="text" size="35" maxlength="60" name="email" value="" />
<input type="submit" value="ajouter" name="emailop" />
</div>
</fieldset>
{/if}
+<h1>Tes comptes de stockage de courrier</h1>
+<p>
+ Polytechnique.org te propose de conserver les mails que tu reçois, pendant une durée limitée (environ 30 jours).
+ Grâce à ce service, tu disposes d'une sauvegarde de tes mails en secours, au cas où, par exemple, tu effacerais
+ un mail par erreur.<br />
+ <strong>Attention :</strong> il ne s'agit que d'un service de secours, dont la disponibilité n'est pas garantie.
+</p>
+
+<table class="bicol" summary="Compte de stockage">
+ <tr>
+ <th colspan="2">Compte de stockage</th>
+ </tr>
+ <tr class="pair">
+ <td>
+ <a href="https://www.polytechnique.org/Xorg/IMAP">
+ <strong>Accès de secours aux emails (IMAP)</strong>
+ </a><br />Hébergé par Polytechnique.org
+ </td>
+ <td>
+ <form action="emails/redirect/storage/imap/{if in_array('imap', $storage)}inactive{else}active{/if}" method="post">
+ {if in_array('imap', $storage)}
+ <input type="submit" value="Désactiver" />
+ {else}
+ <input type="submit" value="Activer" />
+ {/if}
+ </form>
+ </td>
+ </tr>
+</table>
+
{if $eleve}
<h1>Pour les Élèves (non encore diplômés)</h1>
<p>
</p>
<p>
Si tu utilises le service POP de poly pour récupérer tes mails dans ton logiciel de courrier,
- l'équipe de Polytechnique.org te conseille de rediriger :
+ l'équipe de Polytechnique.org te conseille de rediriger :
</p>
<ul>
<li>«prenom.nom»@polytechnique.edu vers {$smarty.session.forlife}@{#globals.mail.domain#} ;</li>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</div>
<div id="preview">
<div id="preview_pv" style="display: none">
- <strong>Aperçu du mail :</strong>
+ <strong>Aperçu du mail :</strong>
<div id="mail_preview">
</div>
<div class="center">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<p>
Pour soumettre un (non-)spam mal détecté par notre <a href="emails/antispam">antispam</a>, il suffit d'enregistrer
les sources (regarde dans la documentation de ton client mail dans la liste ci-dessous) du mail en tant que fichier
- depuis ton client mail, puis de soumettre ce fichier à l'interface ci-dessus en sélectionnant l'action adaptée :
+ depuis ton client mail, puis de soumettre ce fichier à l'interface ci-dessus en sélectionnant l'action adaptée :
</p>
<ul>
- <li><strong>spam</strong> : pour soumettre un spam mal reconnu ;</li>
- <li><strong>nonspam</strong> : pour soumettre un mail légitime mal reconnu.</li>
+ <li><strong>spam</strong> : pour soumettre un spam mal reconnu ;</li>
+ <li><strong>nonspam</strong> : pour soumettre un mail légitime mal reconnu.</li>
</ul>
{include wiki=Xorg.Mails part=clients}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
Tu reçois ce mail car tu as demandé la confirmation du bon fonctionnement de ton adresse polytechnicienne {$email}.
{if $redirects->total() gt 1}Si toutes tes redirections fonctionnent correctement tu devrais recevoir une copie de ce mail
-des boîtes suivantes :
+dans les boîtes suivantes :
{iterate from=$redirects item=mail}
* {$mail.email}
{/iterate}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h1>
- Gestion des événements :
+ Gestion des événements :
[
{if $arch || $action eq 'edit'}
<a href="admin/events">Actualités</a>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</div>
{/if}
<div style="clear: both">
- Choisir un fichier : <input type="file" name="image" id="image" /><br />
- Indiquer une adresse : <input type="text" name="image_url" id="image_url" value="" />
+ Choisir un fichier : <input type="file" name="image" id="image" /><br />
+ Indiquer une adresse : <input type="text" name="image_url" id="image_url" value="" />
</div>
</td>
</tr>
</tr>
<tr class="pair">
<td colspan="2">
- Tu peux limiter la visibilité de ton annonce aux camarades de certaines promotions :
+ Tu peux limiter la visibilité de ton annonce aux camarades de certaines promotions :
</td>
</tr>
{include file="include/field.promo.tpl"}
<tr class="pair">
<td colspan="2">
- Choisis la date d'expiration de ton annonce :
+ Choisis la date d'expiration de ton annonce :
</td>
</tr>
<tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<td class="half titre" style="height: 18px; padding-top: 1px; padding-bottom: 1px;">
{if $smarty.foreach.events.first}
{if $smarty.session.core_rss_hash}
- <a href='rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml' style="display:block;float:right">
+ <a href="rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml" style="display:block;float:right" title="Annonces">
{icon name=feed title='fil rss'}
</a>
{else}
{/if}
</td>
</tr>
- {iterate item=ev from=$evenement.summary}
+ {foreach item=ev from=$evenement}
<tr class="impair">
<td class="half">
•
</td>
</tr>
{assign var="has_evts" value=true}
- {/iterate}
+ {/foreach}
{/foreach}
{if !$has_evts}
<tr>
</script>
{foreach from=$events key=category item=evenement}
- {iterate item=ev from=$evenement.events}
+ {foreach item=ev from=$evenement}
+ {if $ev.nonlu}
<div id="content-evt{$ev.id}">
<br />
</tr>
</table>
</div>
- {/iterate}
+ {/if}
+ {/foreach}
{/foreach}
<p class="smaller">
- Nota Bene : les informations présentées ici n'engagent que leurs auteurs
+ Nota Bene : les informations présentées ici n'engagent que leurs auteurs
respectifs et sont publiées à leur initiative. L'association Polytechnique.org
ne pourrait en aucun cas être tenue responsable de la nature des propos relatés
sur cet espace d'expression et d'information. Elle se réserve le droit de
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if trim($titre) || trim($texte)}
<table class="bicol">
- <tr><th><em>Aperçu de : </em>{$titre|nl2br}</th></tr>
+ <tr><th><em>Aperçu de : </em>{$titre|nl2br}</th></tr>
<tr class="pair"><td>{$texte|miniwiki|smarty:nodefaults}</td></tr>
</table>
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
--- /dev/null
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+
+<div class="events">
+ <ul>
+ {iterate from=$events item=ev}
+ <li class="{if $ev.nonlu}unread{else}read{/if}" id="evt-{$ev.id}">
+ {if $ev.nonlu}
+ <div id="mark-read-{$ev.id}" style="float: right">
+ <a href="events/read/{$ev.id}" target="_top" onclick="return markEventAsRead({$ev.id})">{*
+ *}{icon name=tick title="Marquer comme lu"}</a>
+ </div>
+ {/if}
+ <a href="events{if !$ev.nonlu}/unread/{$ev.id}{else}#newsid{$ev.id}{/if}" target="_blank" id="link-{$ev.id}"
+ title="Ajouté le {$ev.creation_date|date_format} par {$ev.prenom} {$ev.nom} (X{$ev.promo})">
+ {tidy}
+ {$ev.titre|nl2br}
+ {/tidy}
+ </a>
+ </li>
+ {assign var="has_evts" value=true}
+ {/iterate}
+ {if !$has_evts}
+ <li><em>Aucun article actuellement.</em></li>
+ {/if}
+ </ul>
+</div>
+<div class="more">
+ <a href="events" target="_blank">{$event_count} événements au total</a> >>>
+</div>
+
+{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
--- /dev/null
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+
+<?xml version="1.0" encoding="UTF-8"?>
+<Module>
+ <ModulePrefs title="Polytechnique.org - Événements"
+ title_url="https://www.polytechnique.org/events" scrolling="false"
+ description="Les dernières annonces du site Polytechnique.org."
+ author="Polytechnique.org" author_email="support+gadgets@polytechnique.org">
+ <Locale lang="fr" />
+ <Require feature="dynamic-height" />
+ </ModulePrefs>
+ <Content type="url" href="{$globals->baseurl}/gadgets/ig-events" />
+</Module>
+
+{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-{config_load file="mails.conf" section="listes_promo"}
-{if $mail_part eq 'head'}
-{from full=#from#}
-{to addr=#to#}
-{subject text="Création de la liste promo $promo"}
-{elseif $mail_part eq 'text'}
+<div style="text-align: center">
+ <img src="images/skins/default_headlogo.jpg" /><br />
+ <b>Polytechnique.org</b>
+</div>
+<div style="text-align: center" id="connect">
+ <a href="login" target="_blank">Me connecter !</a><br />
+ <a href="javascript:window.location.reload()">
+ Je suis déjà connecté à Polytechnique.Org.
+ </a>
+</div>
-Création de la liste promo {$promo} à faire !
-{/if}
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
--- /dev/null
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+
+{if !$c.inscrit || $c.dcd}<div class='grayed'>{/if}
+<div class="contact" {if $c.inscrit}{if $smarty.session.auth ge AUTH_COOKIE}title="Fiche mise à jour le {$c.date|date_format}"{/if}{/if}>
+ <div class="nom">
+ {if $c.sexe}•{/if}
+ {if !$c.dcd && $c.inscrit}<a href="profile/{$c.forlife}" class="popup2">{/if}
+ {if $c.nom_usage}{$c.nom_usage} {$c.prenom}<br />({$c.nom}){else}{$c.nom} {$c.prenom}{/if}
+ {if !$c.dcd && $c.inscrit}</a>{/if}
+ </div>
+ <div class="autre">
+ {if $c.iso3166}
+ <img src='images/flags/{$c.iso3166}.gif' alt='{$c.nat}' height='11' title='{$c.nat}' />
+ {/if}
+ (X {$c.promo})
+ {if $c.dcd}décédé{if $c.sexe}e{/if} le {$c.deces|date_format}{/if}
+ {if $smarty.session.auth ge AUTH_COOKIE}
+ {if !$c.wasinscrit && !$c.dcd}
+ {if $show_action eq ajouter}
+ <a href="carnet/notifs/add_nonins/{$c.user_id}" target="_top">{*
+ *}{icon name=add title="Ajouter à la liste de mes surveillances"}</a>
+ {else}
+ <a href="carnet/notifs/del_nonins/{$c.user_id}" target="_top">{*
+ *}{icon name=cross title="Retirer de la liste de mes surveillances"}</a>
+ {/if}
+ {elseif $c.wasinscrit && !$c.dcd}
+ <a href="vcard/{$c.forlife}.vcf">{*
+ *}{icon name=vcard title="Afficher la carte de visite"}</a>
+ {if $show_action eq ajouter}
+ <a href="carnet/contacts?action={$show_action}&user={$c.forlife}" target="_top">{*
+ *}{icon name=add title="Ajouter à mes contacts"}</a>
+ {else}
+ <a href="carnet/contacts?action={$show_action}&user={$c.forlife}" target="_top">{*
+ *}{icon name=cross title="Retirer de mes contacts"}</a>
+ {/if}
+ {/if}
+ {/if}
+ </div>
+ <div class="long">
+ {if $c.wasinscrit}
+ {if $c.mobile || $c.countrytxt || $c.city}
+ <table cellspacing="0" cellpadding="0">
+ {if $c.countrytxt || $c.city}
+ <tr>
+ <td class="lt">Géographie:</td>
+ <td class="rt">{$c.city}{if $c.city && $c.countrytxt}, {/if}{$c.countrytxt}</td>
+ </tr>
+ {/if}
+ {if $c.mobile && !$c.dcd}
+ <tr>
+ <td class="lt">Mobile:</td>
+ <td class="rt">{$c.mobile}</td>
+ </tr>
+ {/if}
+ </table>
+ {/if}
+ {/if}
+ </div>
+</div>
+{if !$c.inscrit || $c.dcd}</div>{/if}
+
+{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
--- /dev/null
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+
+{if $error}
+<div class="error">{$error}</div>
+{elseif $set}
+<div class="contact-list">
+{iterate from=$set item=res}
+ {if $res.contact}
+ {include file="gadgets/ig-minifiche.tpl" c=$res show_action="retirer"}
+ {else}
+ {include file="gadgets/ig-minifiche.tpl" c=$res show_action="ajouter"}
+ {/if}
+{/iterate}
+</div>
+<div class="more">
+ <a href="search?quick={$smarty.request.quick}" target="_blank">{$result_count} résultats au total</a> >>>
+</div>
+{else}
+<div class="welcome">
+ <img src="images/skins/default_headlogo.jpg" alt="Logo Polytechnique.org" />
+</div>
+{/if}
+
+<div class="search">
+ <form method="get" action="gadgets/ig-search">
+ <input name="extern_js" type="hidden" value="{$smarty.request.extern_js}" />
+ <input name="libs" type="hidden" value="{$smarty.request.libs}" />
+ <input name="mid" type="hidden" value="{$smarty.request.mid}" />
+ <input name="parent" type="hidden" value="{$smarty.request.parent}" /><br />
+ <input name="synd" type="hidden" value="{$smarty.request.synd}" />
+ <input name="quick" type="text" value="{$smarty.request.quick}" /><br />
+ <input value="Chercher sur Polytechnique.org" type="submit" />
+ </form>
+</div>
+
+{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
--- /dev/null
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+
+<?xml version="1.0" encoding="UTF-8"?>
+<Module>
+ <ModulePrefs title="Polytechnique.org - Annuaire"
+ title_url="https://www.polytechnique.org/search" scrolling="false"
+ description="Outil de recherche rapide de l'annuaire de Polytechnique.org."
+ author="Polytechnique.org" author_email="support+gadgets@polytechnique.org">
+ <Locale lang="fr" />
+ <Require feature="dynamic-height" />
+ </ModulePrefs>
+ <Content type="url" href="{$globals->baseurl}/gadgets/ig-search" />
+</Module>
+
+{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
--- /dev/null
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+
+{include file="skin/common.doctype.tpl"}
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="css/base.css" media="all"/>
+ <link rel="stylesheet" type="text/css" href="css/igoogle.css" media="all"/>
+ <script type="text/javascript" src="javascript/ajax.js"></script>
+ <script type="text/javascript" src="javascript/base.js"></script>
+ <script type="text/javascript" src="javascript/igoogle.js"></script>
+ <script type="text/javascript" src="javascript/xorg.js"></script>
+ {foreach from=$gadget_js item=js}
+ <script type="text/javascript" src="{$js}"></script>
+ {/foreach}
+ <script type="text/javascript">var platal_baseurl = "{$globals->baseurl}/";</script>
+ </head>
+ <body onload="igOnLoadHandler();">
+{if $gadget_tpl}{include file=$gadget_tpl}{/if}
+ </body>
+</html>
+
+{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<form action='admin/geoloc' method='post'>
<p>
-La ville dont l'id est : <input size="6" name="id" />
+La ville dont l'id est : <input size="6" name="id" />
</p>
</form>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}\r
{* *}\r
-{* Copyright (C) 2003-2007 Polytechnique.org *}\r
+{* Copyright (C) 2003-2008 Polytechnique.org *}\r
{* http://opensource.polytechnique.org/ *}\r
{* *}\r
{* This program is free software; you can redistribute it and/or modify *}\r
{**************************************************************************}\r
{* *}\r
-{* Copyright (C) 2003-2007 Polytechnique.org *}\r
+{* Copyright (C) 2003-2008 Polytechnique.org *}\r
{* http://opensource.polytechnique.org/ *}\r
{* *}\r
{* This program is free software; you can redistribute it and/or modify *}\r
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{/literal}
//]]></script>
<form action="{$csv_path}" method="post" id="csv_form">
-<table class="cadre_a_onglet" cellpadding="0" cellspacing="0" style="width: 98%; margin-left:1%;">
- <tr>
- <td>
- <ul id="onglet">
- {if $csv_page eq 'source'}
- <li class="actif">1 - Choisir<br />la source</li>
- {else}
- <li><a href="{$csv_path}" onclick="return gotoPage('source');">1 - Choisir<br />la source</a></li>
- {/if}
- {if $csv_page eq 'values'}
- <li class="actif">2 - Définir<br />les valeurs</li>
- {elseif $smarty.session.csv}
- <li><a href="{$csv_path}" onclick="return gotoPage('values');">2 - Définir<br />les valeurs</a></li>
- {else}
- <li>2 - Définir<br />les valeurs</li>
- {/if}
- {if $csv_page eq 'valid'}
- <li class="actif">3 - Vérifier<br />et valider</li>
- {elseif $csv_action}
- <li><a href="{$csv_path}" onclick="return gotoPage('valid');">3 - Vérifier<br />et valider</a></li>
- {else}
- <li>3 - Vérifier<br />et valider</li>
- {/if}
- </ul>
- </td>
- </tr>
- <tr>
- <td class="conteneur_tab">
- <table style="width: 100%">
- <tr>
- <td>
+ <div class="center" style="padding-bottom: 1em">
+ Import d'un CSV :
{if $csv_page eq 'source'}
- <textarea name="csv_source" rows="20" cols="80">{$smarty.session.csv|default:$smarty.session.csv_source}</textarea><br />
- Entrez les données sous la forme suivante (avec
- <input type="text" name="csv_separator" value="{$smarty.session.csv_separator|default:";"}" maxlength="1" size="1" />
- comme séparateur) :<br/>
- <pre class="center">TITRE1{$smarty.session.csv_separator|default:";"}TITRE2{$smarty.session.csv_separator|default:";"}...
+ <span class="erreur">Choisir la source</span>
+ {else}
+ <a href="{$csv_path}" onclick="return gotoPage('source');">Choisir la source</a>
+ {/if}
+ »
+ {if $csv_page eq 'values'}
+ <span class="erreur">Définir les valeurs</span>
+ {elseif $smarty.session.csv}
+ <a href="{$csv_path}" onclick="return gotoPage('values');">Définir les valeurs</a>
+ {else}
+ Définir les valeurs
+ {/if}
+ »
+ {if $csv_page eq 'valid'}
+ <span class="erreur">Vérifier et valider</span>
+ {elseif $csv_action}
+ <a href="{$csv_path}" onclick="return gotoPage('valid');">Vérifier et valider</a>
+ {else}
+ Vérifier et valider
+ {/if}
+ </div>
+ {if $csv_page eq 'source'}
+ <div>
+ <textarea name="csv_source" rows="20" cols="80">{$smarty.session.csv|default:$smarty.session.csv_source}</textarea><br />
+ Entrez les données sous la forme suivante (avec
+ <input type="text" name="csv_separator" value="{$smarty.session.csv_separator|default:";"}" maxlength="1" size="1" />
+ comme séparateur) :<br/>
+ <pre class="center">TITRE1{$smarty.session.csv_separator|default:";"}TITRE2{$smarty.session.csv_separator|default:";"}...
val1_1{$smarty.session.csv_separator|default:";"}val1_2{$smarty.session.csv_separator|default:";"}...
val2_1{$smarty.session.csv_separator|default:";"}val2_2{$smarty.session.csv_separator|default:";"}...
val3_1{$smarty.session.csv_separator|default:";"}val3_2{$smarty.session.csv_separator|default:";"}...</pre>
- {elseif $csv_page eq 'values'}
+ </div>
+ {elseif $csv_page eq 'values'}
<div class="center">
- Action à effectuer si l'entrée existe :
+ Action à effectuer si l'entrée existe :
<select name="csv_action" onchange="this.form.submit()">
<option value="insert" {if $smarty.session.csv_action eq 'insert'}selected="selected"{/if}>
ne rien faire
Les données ont été ajoutées.
{/if}
{/if}
- </td>
- </tr>
{if !$csv_done}
- <tr>
- <td class="center">
+ <div class="center">
<input type="hidden" name="csv_page" value="{$csv_page}" />
<input type="hidden" id="csv_next_page" name="csv_next_page" value="{$csv_page}" />
{if $csv_page eq 'source'}
{elseif $csv_page eq 'valid'}
<input type="submit" name="csv_valid" value="Valider" />
{/if}
- </td>
- </tr>
+ </div>
{/if}
- </table>
- </td>
- </tr>
-</table>
</form>
{* vim:set et sws=2 sts=2 sw=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<input type="text" name="{$min_field_name|default:"promo_min"}" id="{$prefix}promo_min"
size="4" maxlength="4" value="{$promo_min|default:0}"
onkeyup="return updateRange();" onchange="return updateRange();" /> incluse
- <span class="smaller">(ex : 1980)</span>
+ <span class="smaller">(ex : 1980)</span>
</td>
</tr>
<tr id="{$prefix}promo_max_tr" class="impair">
<input type="text" name="{$max_field_name|default:"promo_max"}" id="{$prefix}promo_max"
size="4" maxlength="4" value="{$promo_max|default:0}"
onkeyup="return updateRange();" onchange="return updateRange();" /> incluse
- <span class="smaller">(ex : 2000)</span>
+ <span class="smaller">(ex : 2000)</span>
</td>
</tr>
<tr id="{$prefix}promo_range_tr" class="impair">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<td>{$valid->alias}</td>
</tr>
<tr class="pair">
- <td class="titre">Visibilité :</td>
+ <td class="titre">Visibilité :</td>
<td>{$valid->public}</td>
</tr>
<tr class="pair">
- <td class="titre">Motif :</td>
+ <td class="titre">Motif :</td>
<td>{$valid->raison|nl2br}</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
<tr class="pair">
- <td class="titre">Adresse litigieuse :</td>
+ <td class="titre">Adresse litigieuse :</td>
<td>
{$valid->loginbis}@polytechnique.org
</td>
</tr>
<tr class="pair">
- <td class="titre">Homonymes :</td>
+ <td class="titre">Homonymes :</td>
<td>
{foreach from=$valid->homonymes_forlife item=o}
<a href='profile/{$o}' class='popup2'>{$o}</a>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if $valid->m_relance neq '0000-00-00' && $valid->m_relance neq ''}
<tr class="pair">
- <td class="titre">Dernière relance le :</td>
+ <td class="titre">Dernière relance le :</td>
<td>{$valid->m_relance|date_format}</td>
</tr>
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr class="pair">
- <td class="titre">Médaille :</td>
+ <td class="titre">Médaille :</td>
<td>{$valid->medal_name()}</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{capture name=order}
{if $plset_count > 1}
<div>
- Trier par :
+ Trier par :
{foreach from=$orders key=name item=sort}
[
{if $name eq $order}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<div class="long">
<table cellspacing="0" cellpadding="0">
<tr>
- <td class="lt">Expertise :</td>
+ <td class="lt">Expertise :</td>
<td class="rt" colspan="2">{$p.expertise|nl2br}</td>
</tr>
</table>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr class="{cycle values="pair,impair"}">
<td>{$login}</td>
<td>
- Camarade :
+ Camarade :
<select name="mk_uid[{$login}]">
{iterate from=$it item=user}
<option value="{$user.user_id}">{$user.prenom} {$user.nom} (X{$user.promo})</option>
{/iterate}
</select><br />
- Action<a href="{$platal->pl_self()}#action_desc">*</a> :
+ Action<a href="{$platal->pl_self()}#action_desc">*</a> :
<select name="mk_action[{$login}]" onchange="showEmail(this.value, '{$login}');">
<option value="none">Aucune</option>
<option value="marketu">Envoyer un mail en ton nom</option>
<option value="sub">Lui proposer l'inscription</option>
</select><br />
<span id="mk_s_mail[{$login}]" style="display: none">
- Email : <input type="text" name="mk_email[{$login}]" value="" />
+ Email : <input type="text" name="mk_email[{$login}]" value="" />
</span>
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<td>
{if $details.sub>1}
Tu es inscrit sur la liste.<br />
- Te désinscrire :
+ Te désinscrire :
<a href='{$platal->pl_self(1)}?del=1'>{icon name=cross title="me désinscrire"}</a>
{elseif $details.sub eq 1}
Ta demande d'inscription est en cours de validation.
{else}
Tu n'es pas inscrit.<br />
- Demander ton inscription :
+ Demander ton inscription :
<a href="{$platal->pl_self(1)}?add=1">{icon name=add title="demander mon inscription"}</a>
{/if}
</td>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<p>
N'importe qui peut faire la demande de création d'une mailing-list, il suffit pour cela d'être au
moins 4 polytechniciens inscrits sur le site, et de fournir les informations suivantes concernant la
-liste :
+liste :
</p>
<form action='lists/create' method='post'>
</td>
</tr>
<tr>
- <td class='titre'>Sujet (bref) :</td>
+ <td class='titre'>Sujet (bref) :</td>
<td>
<input type='text' name='desc' size='50' value="{$smarty.post.desc}" />
</td>
</tr>
<tr>
- <td class='titre'>Propriétés :</td>
+ <td class='titre'>Propriétés :</td>
<td>
<table style='width: 100%'>
<tr>
- <td>visibilité :</td>
+ <td>visibilité :</td>
<td><input type='radio' name='advertise' value='0'
{if $smarty.post.advertise eq 0 && $smarty.post}checked='checked'{/if} />publique</td>
<td><input type='radio' name='advertise' value='1'
<td></td>
</tr>
<tr>
- <td>diffusion :</td>
+ <td>diffusion :</td>
<td><input type='radio' name='modlevel' value='0'
{if !$smarty.post.modlevel}checked='checked'{/if} />libre</td>
<td><input type='radio' name='modlevel' value='1'
{if $smarty.post.modlevel eq 2}checked='checked'{/if} />modérée</td>
</tr>
<tr>
- <td>inscription :</td>
+ <td>inscription :</td>
<td><input type='radio' name='inslevel' value='0'
{if $smarty.post.inslevel eq 0 && $smarty.post}checked='checked'{/if} />libre</td>
<td><input type='radio' name='inslevel' value='1'
<p>
La création de la liste sera soumise à un contrôle manuel avant d'être validée. Ce contrôle a
pour but notamment de vérifier qu'il n'y aura pas ambiguité entre les membres de la liste et son
- identité. Exemple : n'importe qui ne peut pas ouvrir pointgamma@polytechnique.org, il ne suffit
+ identité. Exemple : n'importe qui ne peut pas ouvrir pointgamma@polytechnique.org, il ne suffit
pas d'être le premier à le demander.
</p>
<p>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr class='impair'>
<td>
Veux tu réellement détruire la liste {$details.addr} ?<br />
- Pour valider ton choix, écris en majuscules (sans espace) « OUI » :
+ Pour valider ton choix, écris en majuscules (sans espace) « OUI » :
<input type='text' size='3' maxlength='3' name="valid" />
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</td>
</tr>
<tr>
- <td><strong>Liste {$platal->argv[1]} :</strong></td>
+ <td><strong>Liste {$platal->argv[1]} :</strong></td>
<td>
{if $on neq members}
[<a href='{$platal->ns}lists/members/{$platal->argv[1]}'>liste des membres</a>]
</tr>
{if $details.own || hasPerms('admin,groupadmin')}
<tr>
- <td><strong>Administrer la liste :</strong></td>
+ <td><strong>Administrer la liste :</strong></td>
<td>
{if $on neq moderate}
[<a href='{$platal->ns}lists/moderate/{$platal->argv[1]}'>modération</a>]
{if hasPerms('admin,groupadmin')}
<tr>
- <td><strong>Administrer (avancé) :</strong></td>
+ <td><strong>Administrer (avancé) :</strong></td>
<td>
{if $on neq soptions}
[<a href='{$platal->ns}lists/soptions/{$platal->argv[1]}'>options avancées</a>]
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h2>La diffusion sur une liste de diffusion</h2>
<p>
-La diffusion a trois niveaux de modération. La diffusion peut être :
+La diffusion a trois niveaux de modération. La diffusion peut être :
</p>
<ul>
- <li><strong>libre :</strong> tout le monde peut y envoyer des mails, la diffusion y est
+ <li><strong>libre :</strong> tout le monde peut y envoyer des mails, la diffusion y est
immédiate ;</li>
- <li><strong>restreinte :</strong> les membres de la liste peuvent envoyer librement des mails,
+ <li><strong>restreinte :</strong> les membres de la liste peuvent envoyer librement des mails,
les extérieurs sont modérés ;</li>
- <li><strong>modérée :</strong> l'envoi d'un mail à la liste est alors filtré par des
+ <li><strong>modérée :</strong> l'envoi d'un mail à la liste est alors filtré par des
modérateurs, eux seuls peuvent accepter un message envoyé à la liste.</li>
</ul>
{assign var="has_private" value=false}
{include file='lists/listes.inc.tpl' lists=$member}
-<p class="smaller">Attention : lorsqu'une liste à laquelle tu es abonné est privée, l'icône {icon name=weather_cloudy} est affichée en début de ligne. Si tu t'en désinscris, il ne te sera pas possible de t'y abonner de nouveau sans l'action d'un modérateur.</p>
+<p class="smaller">Attention : lorsqu'une liste à laquelle tu es abonné est privée, l'icône {icon name=weather_cloudy} est affichée en début de ligne. Si tu t'en désinscris, il ne te sera pas possible de t'y abonner de nouveau sans l'action d'un modérateur.</p>
{/if}
<h1>Listes de diffusion publiques auxquelles tu peux t'inscrire</h1>
<th colspan='2'>Inscription à une liste de diffusion promo</th>
</tr>
<tr>
- <td class='titre'>Promotion :</td>
+ <td class='titre'>Promotion :</td>
<td>
<input type='text' size='4' maxlength='4' name='promo_add' />
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
onclick="return (is_IE || Ajax.update_html('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?mid={$m.id}&mdel=1'));">
{icon name=delete title="Spam"}
</a>
- De : {$m.sender}<br />
+ De : {$m.sender}<br />
<a href='{$platal->ns}lists/moderate/{$liste.list}?mid={$m.id}'>
{icon name=magnifier title="Voir le message"}
</a>
- Sujet : {$m.subj|hdc|smarty:nodefaults|default:"[pas de sujet]"}<br />
+ Sujet : {$m.subj|hdc|smarty:nodefaults|default:"[pas de sujet]"}<br />
{/foreach}
</span>
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<td>
{if $details.sub>1}
Tu es inscrit sur la liste.<br />
- Te désinscrire :
+ Te désinscrire :
<a href='{$platal->pl_self(1)}?del=1'>{icon name=cross title="me désinsiscrire"}</a>
{elseif $details.sub eq 1}
Ta demande d'inscription est en cours de validation.
{else}
Tu n'es pas inscrit.<br />
- Demander ton inscription :
+ Demander ton inscription :
<a href="{$platal->pl_self(1)}?add=1">{icon name=add title="demander mon inscription"}</a>
{/if}
</td>
</td>
<td>
{if $promo && strpos($x.l, '@') === false}
+ {if $x.b}<a href="marketing/broken/{$x.l}">{icon name=error}</a>{/if}
<a href="profile/{$x.l}" class="popup2">{$x.n}</a>
{elseif $x.x}
<a href="{$platal->ns}member/{$x.x}">{$x.n}</a>
</td>
<td>
{if $promo && strpos($x.l, '@') === false}
+ {if $x.b}<a href="marketing/broken/{$x.l}">{icon name=error}</a>{/if}
<a href="profile/{$x.l}" class="popup2">{$x.n}</a>
{elseif $x.x}
<a href="{$platal->ns}member/{$x.x}">{$x.n}</a>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<th class='titre'>Modérer le mail</th>
</tr>
<tr>
- <td>raison (pour les refus) :
+ <td>raison (pour les refus) :
<textarea cols='50' rows='10' name='reason' id='raison'>
--
{$smarty.session.prenom} {$smarty.session.nom} (X{$smarty.session.promo})
</ul>
</form>
<p>
-En cas de refus, le mail envoyé à l'auteur du mail que tu modères actuellement sera de la forme suivante :
+En cas de refus, le mail envoyé à l'auteur du mail que tu modères actuellement sera de la forme suivante :
</p>
<pre>{$msg|utf8_encode}</pre>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<form method='post' action='{$platal->pl_self(1)}'>
<table class='tinybicol' cellpadding='0' cellspacing='0'>
<tr>
- <th class='titre'>refuser l'inscription de :</th>
+ <th class='titre'>refuser l'inscription de :</th>
</tr>
<tr>
<td>{$del_user.name}</td>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr><th colspan='2'>Options de la liste {$details.addr}</th></tr>
<tr class='impair'>
<td>
- <strong>description courte :</strong><br />
+ <strong>description courte :</strong><br />
<span class='smaller'>une courte phrase pour décrire la liste.</span>
</td>
<td>
</tr>
<tr class='impair'>
<td>
- <strong>description longue :</strong><br />
+ <strong>description longue :</strong><br />
<span class='smaller'>une description plus longue de la liste.</span>
</td>
<td>
</tr>
<tr class='pair'>
<td>
- <strong>message de bienvenue :</strong><br />
+ <strong>message de bienvenue :</strong><br />
<span class='smaller'>un texte de bienvenue incorporé au mail envoyé aux nouveaux
abonnés à la liste.</span>
</td>
</tr>
<tr class='impair'>
<td>
- <strong>message d'adieu :</strong><br />
+ <strong>message d'adieu :</strong><br />
<span class='smaller'>un texte d'au revoir incorporé au mail de départ envoyé aux
utilisateurs qui se désinscrivent. Ce mail peut être désactivé.</span>
</td>
<tr><th colspan='2'>Options avancées de la liste {$details.addr}</th></tr>
<tr class='impair'>
<td>
- <strong>ajout dans le sujet :</strong><br />
+ <strong>ajout dans le sujet :</strong><br />
<span class='smaller'>Un préfixe (optionnel) ajouté dans le sujet de chaque mail envoyé sur la liste te permet de trier plus facilement ton courrier.</span>
</td>
<td>
</tr>
<tr class='impair'>
<td>
- <strong>notification de (dés)abonnement :</strong><br />
+ <strong>notification de (dés)abonnement :</strong><br />
<span class='smaller'>notifier les modérateurs des inscriptions/désinscriptions d'utilisateurs sur cette liste.</span>
</td>
<td>
</tr>
<tr class='impair'>
<td>
- <strong>diffusion :</strong>
+ <strong>diffusion :</strong>
</td>
<td>
<input type='radio' name='moderate' value='0'
</tr>
<tr class='impair'>
<td>
- <strong>inscription libre ou modérée :</strong><br />
+ <strong>inscription libre ou modérée :</strong><br />
<span class='smaller'>détermine si les inscriptions à la liste sont modérées ou non.</span>
</td>
<td>
</tr>
<tr class='impair'>
<td>
- <strong>antispam :</strong><br />
+ <strong>antispam :</strong><br />
<span class='smaller'>détermine la politique de l'antispam sur cette liste.</span>
</td>
<td>
</p>
<p class='erreur'>
-Attention, cette liste est à utiliser pour des non-X ou des non-inscrits à la liste :
+Attention, cette liste est à utiliser pour des non-X ou des non-inscrits à la liste :
</p>
<p>
les X inscrits à la liste doivent ajouter leurs adresses usuelles parmis leurs adresses de
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr><th colspan='2'>Options de la liste {$details.addr}</th></tr>
<tr class='impair'>
<td>
- <strong>msg_header :</strong><br />
+ <strong>msg_header :</strong><br />
<span class='smaller'>ajouté au début de tous les messages.</span>
</td>
<td>
</tr>
<tr class='impair'>
<td>
- <strong>msg_footer :</strong><br />
+ <strong>msg_footer :</strong><br />
<span class='smaller'>ajouté à la fin de tous les messages.</span>
</td>
<td>
<tr><th colspan='2'>Options avancées de la liste {$details.addr}</th></tr>
<tr class='impair'>
<td>
- <strong>visibilité :</strong><br />
+ <strong>visibilité :</strong><br />
<span class='smaller'>si coché, la liste sera listée dans la page de l'ensemble des listes.
(les listes d'admin doivent être décochées)</span>
</td>
</tr>
<tr class='pair'>
<td>
- <strong>archive :</strong><br />
+ <strong>archive :</strong><br />
<span class='smaller'>Liste archivée ?</span>
</td>
<td>
</tr>
<tr class='impair'>
<td>
- <strong>max_message_size :</strong><br />
+ <strong>max_message_size :</strong><br />
<span class='smaller'>Taille maximale des posts en Ko:</span>
</td>
<td>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<table class="bicol" summary="Fiche camarade">
<tr><th colspan="2">Proposition d'adresse pour<br />{$user.nom} {$user.prenom} (X{$user.promo})</th></tr>
<tr class="pair">
- <td>Adresse email :</td>
+ <td>Adresse email :</td>
<td>
<input type="text" name="mail" size="30" maxlength="50" value="{$smarty.post.mail}" />
</td>
</tr>
{if $user.email}
<tr class="impair">
- <td>Explication :</td>
+ <td>Explication :</td>
<td><textarea name="comment" cols="50" rows="4">{$smarty.post.comment}</textarea></td>
</tr>
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<br />
<p>
-Nombre d'X vivants d'après notre base de données : {$stats.vivants}<br />
-Nombre d'X vivants inscrits à Polytechnique.org : {$stats.inscrits}<br />
-Soit un pourcentage d'inscrits de : {$stats.ins_rate} %<br />
+Nombre d'X vivants d'après notre base de données : {$stats.vivants}<br />
+Nombre d'X vivants inscrits à Polytechnique.org : {$stats.inscrits}<br />
+Soit un pourcentage d'inscrits de : {$stats.ins_rate} %<br />
</p>
<p>
-Parmi ceux-ci :<br />
-Nombre d'X vivants depuis 1972 d'après notre base de données : {$stats.vivants72}<br />
-Nombre d'X vivants depuis 1972 inscrits à Polytechnique.org : {$stats.inscrits72}<br />
-Soit un pourcentage d'inscrits de : {$stats.ins72_rate} % <br />
+Parmi ceux-ci :<br />
+Nombre d'X vivants depuis 1972 d'après notre base de données : {$stats.vivants72}<br />
+Nombre d'X vivants depuis 1972 inscrits à Polytechnique.org : {$stats.inscrits72}<br />
+Soit un pourcentage d'inscrits de : {$stats.ins72_rate} % <br />
</p>
<p>
-Nombre de Polytechniciennes vivantes : {$stats.vivantes}<br />
-Nombre de Polytechniciennes vivantes et inscrites : {$stats.inscrites} <br />
-Soit un pourcentage d'inscrites de : {$stats.inse_rate} % <br />
+Nombre de Polytechniciennes vivantes : {$stats.vivantes}<br />
+Nombre de Polytechniciennes vivantes et inscrites : {$stats.inscrites} <br />
+Soit un pourcentage d'inscrites de : {$stats.inse_rate} % <br />
</p>
<p>
-Nombre d'<a href="marketing/this_week">inscrits ces 7 derniers jours</a> : {$nbInsSem}<br />
-Nombre d'<a href="marketing/relance">inscriptions en cours</a> (2ème phase non terminée) : {$nbInsEnCours} <br />
-Nombre d'envois marketing effectués n'ayant pas abouti : {$nbInsMarket}<br />
-Nombre d'envois marketing ayant abouti cette semaine : {$nbInsMarkOK}
+Nombre d'<a href="marketing/this_week">inscrits ces 7 derniers jours</a> : {$nbInsSem}<br />
+Nombre d'<a href="marketing/relance">inscriptions en cours</a> (2ème phase non terminée) : {$nbInsEnCours} <br />
+Nombre d'envois marketing effectués n'ayant pas abouti : {$nbInsMarket}<br />
+Nombre d'envois marketing ayant abouti cette semaine : {$nbInsMarkOK}
</p>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{#globals.baseurl#}/register/%%hash%%
==========================================================
-Il ne te faut que 5 minutes sur https://www.polytechnique.org/ pour rejoindre la communauté polytechnicienne sur le web grâce aux services de Polytechnique.org dont profitent déjà {$num_users} camarades. Cela te permettera, entre autres, de contacter un X en connaissant seulement son nom et son prénom et de bénéficier à vie d'une adresse prestigieuse {$u.forlife}@polytechnique.org et de son alias discret {$u.forlife}@m4x.org (m4x = mail for X).
+Il ne te faut que 5 minutes sur https://www.polytechnique.org/ pour rejoindre la communauté polytechnicienne sur le web grâce aux services de Polytechnique.org dont profitent déjà {$num_users} camarades. Cela te permettra, entre autres, de contacter un X en connaissant seulement son nom et son prénom et de bénéficier à vie d'une adresse prestigieuse {$u.forlife}@polytechnique.org et de son alias discret {$u.forlife}@m4x.org (m4x = mail for X).
Pas de nouvelle boîte aux lettres à relever, il suffit de la rediriger vers ton adresse personnelle et/ou professionnelle que tu indiques et que tu peux changer à ta guise, sans que tes correspondants n'aient à actualiser leur carnet d'adresses.
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h2>Matricules</h2>
-Matricule polytechnique.org : {$matricule}
+Matricule polytechnique.org : {$matricule}
{if $matricule_X}
<br />
-Matricule École (à rentrer lors de l'inscription) : <strong>{$matricule_X}</strong>
+Matricule École (à rentrer lors de l'inscription) : <strong>{$matricule_X}</strong>
{/if}
{if $pending}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if $it.dern_rel && $it.dern_rel != '0000-00-00'}
Relance le: {$it.dern_rel}
{elseif $it.email}
- En cours : {$it.email}
+ En cours : {$it.email}
{else}
-
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<form method="post" action="{$platal->path}">
<table class="bicol" summary="Fiche camarade">
- <tr class="impair"><td>Nom :</td><td>{$nom}</td></tr>
- <tr class="pair"><td>Prénom :</td><td>{$prenom}</td></tr>
- <tr class="impair"><td>Promo :</td><td>{$promo}</td></tr>
+ <tr class="impair"><td>Nom :</td><td>{$nom}</td></tr>
+ <tr class="pair"><td>Prénom :</td><td>{$prenom}</td></tr>
+ <tr class="impair"><td>Promo :</td><td>{$promo}</td></tr>
<tr class="pair">
- <td>Adresse email :</td>
+ <td>Adresse email :</td>
<td>
<input type="text" name="mail" size="30" maxlength="50" />
</td>
</tr>
<tr class="impair">
- <td>Nous lui écrirons :</td>
+ <td>Nous lui écrirons :</td>
<td>
<input type="radio" name="origine" value="user" checked="checked" /> en ton nom<br />
<input type="radio" name="origine" value="staff" /> au nom de l'équipe Polytechnique.org
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h1>Marketing volontaire</h1>
<p>
-Choix de la promo :
+Choix de la promo :
</p>
<p>
{foreach from=$promos item=p}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</td>
<td>
<input type='text' size='16' name='shortname' value="{$nl->_shortname}" />
- <span class="smaller">(Ex : 2006-06 pour la NL de juin 2006)</span>
+ <span class="smaller">(Ex : 2006-06 pour la NL de juin 2006)</span>
</td>
</tr>
<tr>
<td>
Créer un nouvel article ...
</td>
- <td style='vertical-align:middle; border-left: 1px gray solid'>
- [<a href="admin/newsletter/edit/{$nl->_id}/new#edit">créer</a>]
+ <td style='vertical-align:middle; border-left: 1px gray solid' class="center">
+ <a href="admin/newsletter/edit/{$nl->_id}/new#edit">{icon name=add title="créer"}</a>
</td>
</tr>
{foreach from=$nl->_arts item=arts key=cat}
{foreach from=$arts item=art}
<tr class="{cycle values="impair,pair"}">
<td>
- <pre>{$art->toText($smarty.session.prenom,$smarty.session.nom,$smarty.session.femme)|smarty:nodefaults}</pre>
+ <pre>{$art->toText($smarty.session.prenom,$smarty.session.nom,$smarty.session.femme)}</pre>
</td>
<td style='vertical-align:middle; border-left: 1px gray solid'>
- <strong>Pos: {$art->_pos}</strong><br />
- [<a href="admin/newsletter/edit/{$nl->_id}/{$art->_aid}/edit#edit">edit</a>]<br />
- [<a href="admin/newsletter/edit/{$nl->_id}/{$art->_aid}/delete">delete</a>]
+ <small><strong>Pos: {$art->_pos}</strong></small><br />
+ <a href="admin/newsletter/edit/{$nl->_id}/{$art->_aid}/edit#edit">{icon name="page_edit" title="Editer"}</a>
+ <a href="admin/newsletter/edit/{$nl->_id}/{$art->_aid}/delete">{icon name="delete" title="Supprimer"}</a>
</td>
</tr>
{/foreach}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr><th>{$nl->title(true)}</th></tr>
<tr>
<td>
- {include file="newsletter/nl.tpl"}
+ {include file="newsletter/nl.mail.tpl"}
</td>
</tr>
</table>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</form>
{if $transactions}
-<p class="descr">Tu as déjà effectué des paiements pour cette transaction :</p>
+<p class="descr">Tu as déjà effectué des paiements pour cette transaction :</p>
<table class="bicol">
<tr><th>Date</th><th>Montant</th></tr>
{iterate from=$transactions item=t}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Gestion des télépaiements </h1>
+<h1>{$asso.nom} : Gestion des télépaiements </h1>
<p class="descr">
Voici la liste des paiements en ligne possible pour le groupe {$asso.nom}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
pw1 = document.forms.smtppass_form.smtppass1.value;
pw2 = document.forms.smtppass_form.smtppass2.value;
if (pw1 != pw2) {
- alert ("\nErreur : les deux champs ne sont pas identiques !");
+ alert ("\nErreur : les deux champs ne sont pas identiques !");
exit;
return false;
}
if (pw1.length < 6) {
- alert ("\nErreur : le nouveau mot de passe doit faire au moins 6 caractères !");
+ alert ("\nErreur : le nouveau mot de passe doit faire au moins 6 caractères !");
exit;
return false;
}
<table class="tinybicol" cellpadding="3" summary="Définition du mot de passe">
<tr>
<td class="titre">
- Mot de passe (15 caractères maximum) :
+ Mot de passe (15 caractères maximum) :
</td>
<td>
<input type="password" size="15" maxlength="15" name="smtppass1" />
</tr>
<tr>
<td class="titre">
- Retape-le une fois (pour vérification) :
+ Retape-le une fois (pour vérification) :
</td>
<td>
<input type="password" size="15" maxlength="15" name="smtppass2" />
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</form>
{else}
-En voici les adresses :
+En voici les adresses :
<ul>
<li>
- Anonces sur la page d'entrée :
- <a href='rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml'>{icon name=feed title='fil rss'}</a>
+ Anonces sur la page d'entrée :
+ <a href="rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml" title="Annonces">{icon name=feed title='fil rss'}</a>
</li>
<li>
- Ton carnet polytechnicien :
- <a href='carnet/rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml'>{icon name=feed title='fil rss'}</a>
+ Ton carnet polytechnicien :
+ <a href="carnet/rss/{$smarty.session.forlife}/{$smarty.session.core_rss_hash}/rss.xml" title="Notifications">{icon name=feed title='fil rss'}</a>
</li>
</ul>
<p>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<br />
-<p><strong>Dans tous les cas,</strong> vous pouvez :</p>
+<p><strong>Dans tous les cas,</strong> vous pouvez :</p>
<ul>
<li class="spaced">
<strong><a href="search"> rechercher un ancien élève ou un
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</tr>
<tr>
<td class="titre">
- Nouveau mot de passe :
+ Nouveau mot de passe :
</td>
<td>
<input type="password" size="10" maxlength="10" name="nouveau" />
</tr>
<tr>
<td class="titre">
- Retape-le une fois :
+ Retape-le une fois :
</td>
<td>
<input type="password" size="10" maxlength="10" name="nouveau2" />
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</tr>
<tr>
<td class="titre">
- Login :<br />
+ Login :<br />
<span class="smaller">"prenom.nom" ou "prenom.nom.promo"</span>
</td>
<td>
</tr>
<tr>
<td class="titre">
- Date de naissance :<br />
+ Date de naissance :<br />
<span class="smaller">format JJMMAAAA soit 01032000<br />pour 1<sup>er</sup> mars 2000</span>
</td>
<td>
</tr>
<tr>
<td class="titre">
- Adresse électronique : <span class="smaller">(facultatif)</span>
+ Adresse électronique : <span class="smaller">(facultatif)</span>
</td>
<td>
<input type="text" size="20" maxlength="50" name="email" />
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<p>
Tu n'aimes pas les couleurs ou l'apparence de {#globals.core.sitename#} ? Normal, les goûts et les
couleurs, ça ne se discute pas. Certains préfèrent une page sérieuse, d'autres plus
-fantaisiste. A toi de voir :)
+fantaisiste. A toi de voir :)
</p>
<p>
Note aux utilisateurs du navigateur Netscape 4.x ou équivalent.
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
+++ /dev/null
-{**************************************************************************}
-{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
-{* http://opensource.polytechnique.org/ *}
-{* *}
-{* This program is free software; you can redistribute it and/or modify *}
-{* it under the terms of the GNU General Public License as published by *}
-{* the Free Software Foundation; either version 2 of the License, or *}
-{* (at your option) any later version. *}
-{* *}
-{* This program is distributed in the hope that it will be useful, *}
-{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
-{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
-{* GNU General Public License for more details. *}
-{* *}
-{* You should have received a copy of the GNU General Public License *}
-{* along with this program; if not, write to the Free Software *}
-{* Foundation, Inc., *}
-{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
-{* *}
-{**************************************************************************}
-
-{if $etat_naissance}
-{include file="profil/naissance.tpl"}
-{/if}
-{if $etat_naissance == '' || $etat_naissance == 'ok'}
-
-{foreach from=$errs item=e}
-<p class="erreur">{$e}</p>
-{/foreach}
-
-<p>
-Tu peux consulter <a href="profile/{$smarty.session.forlife}" class="popup2">l'état actuel de ta fiche</a>
-telle qu'elle apparaîtra pour un camarade, ou telle qu'elle apparaîtra dans l'annuaire de
-l'<a href="profile/{$smarty.session.forlife}?view=ax" class="popup2">AX</a>
-ou à <a href="profile/{$smarty.session.forlife}?view=public" class="popup2">tout le monde</a>.</p>
-
-<form action="profile/edit/{$onglet}" method="post" id="prof_annu">
- <table class="cadre_a_onglet" cellpadding="0" cellspacing="0" style="width: 98%; margin-left:1%;">
- <tr>
- <td>
- <ul id='onglet'>
- {foreach from=$onglets key=o item=i}
- {if $o eq $onglet}
- <li class="actif">{$i|nl2br}</li>
- {else}
- <li><a href="profile/edit/{$o}">{$i|nl2br}</a></li>
- {/if}
- {/foreach}
- </ul>
- <input type="hidden" value="" name="adresse_flag" />
- </td>
- </tr>
- <tr>
- <td class="conteneur_tab">
- <table style="width:100%">
- <tr>
- <td colspan="2">
- {include file=$onglet_tpl}
- </td>
- </tr>
- <tr class="center">
- <td>
- <input type="submit" value="Valider ces modifications" name="modifier" />
- </td>
- <td>
- <input type="submit" value="Valider et passer au prochain onglet" name="suivant" />
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
-</form>
-{/if}
-
-{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if $expertise != '' || $secteurs|count || $pays|count }
<div id="part">
- <h2>Informations de référent :</h2>
+ <h2>Informations de référent :</h2>
{if $expertise}
<div class="rubrique_referent">
- <em>Expertise : </em><br />
+ <em>Expertise : </em><br />
<span>{$expertise|nl2br}</span>
</div>
{/if}
{if $secteurs|count}
<div class="rubrique_referent">
- <em>Secteurs :</em><br />
+ <em>Secteurs :</em><br />
<ul>
{foreach from=$secteurs item="secteur" key="i"}
<li>{$secteur}{if $ss_secteurs.$i != ''} ({$ss_secteurs.$i}){/if}</li>
{/if}
{if $pays|count}
<div class="rubrique_referent">
- <em>Pays :</em>
+ <em>Pays :</em>
<ul>
{foreach from=$pays item="pays_i"}
<li>{$pays_i}</li>
{foreach from=$adr_pro item="address" key="i"}
<h2>{$address.entreprise}</h2>
{include file="include/emploi.tpl" address=$address}
- {include file="geoloc/address.tpl" address=$address titre="Adresse : " for=$address.entreprise}
+ {include file="geoloc/address.tpl" address=$address titre="Adresse : " for=$address.entreprise}
<div class="spacer"> </div>
{/foreach}
{if $cv}
<div class="part">
- <h2>Curriculum Vitae : </h2>
+ <h2>Curriculum Vitae : </h2>
<div style="padding: 0 2ex">{$cv|smarty:nodefaults}</div>
</div>
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
<table class="bicol" style="margin-bottom: 1em"
- summary="Profil : Informations générales">
+ summary="Profil : Informations générales">
<tr>
<th colspan="2">
<div class="flags" style="float: left">
{if !$no_private_key}
<table class="bicol" style="margin-bottom: 1em"
- summary="Profil : Informations générales">
+ summary="Profil : Informations générales">
<tr>
<th>
Synchronisation avec l'AX
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</tr>
{if $mygroups->total()}
<tr class="pair">
- <td colspan="2">Tu es actuellement dans les groupes suivants :</td>
+ <td colspan="2">Tu es actuellement dans les groupes suivants :</td>
</tr>
{/if}
{assign var=grp_admin value=false}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr>
<td class="titre">Sous-Secteur d'activité</td>
<td id="{$jobid}_ss_secteur">
- <input type="hidden" name="{$jobpref}[ss_secteur]" value="{$job.ss_secteur|default='-1'}" />
+ <input type="hidden" name="{$jobpref}[ss_secteur]" value="{$job.ss_secteur|default:'-1'}" />
</td>
</tr>
<tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<td id="countries">
{foreach from=$countries item=country key=i}
<div id="countries_{$i}" style="clear: both; margin-bottom: 0.7em">
- <div style="float: left; width: 50%">{$country}</div>
+ <a style="display: block; float: right"
+ href="javascript:removeCountry('{$i}')">{icon name=cross title="Supprimer ce pays"}</a>
+ <div class="titre">{$country}</div>
<input type="hidden" name="countries[{$i}]" value="{$country}" />
- <a href="javascript:removeCountry('{$i}')">{icon name=cross title="Supprimer ce pays"}</a>
</div>
{/foreach}
</td>
<a href="javascript:removeSecteur('{$s}', '{$ss}')" style="display: block; float: right">
{icon name=cross title="Supprimer ce secteur"}
</a>
- <input type="hidden" name="secteurs[' + s + '][' + ss + ']" value="{$ss_sect}" />
+ <input type="hidden" name="secteurs[{$s}][{$ss}]" value="{$ss_sect}" />
{$ss_sect}
</div>
{/foreach}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<input type="radio" name="reason" value="divorce" id="reason_div" onclick="this.form.other_reason.value=''" /><label for="reason_div">Divorce</label><br />
{/if}
<input type="radio" name="reason" value="raccourci" id="reason_rac" onclick="this.form.other_reason.value=''" /><label for="reason_rac">Nom d'état civil simplifié, le nom officiel étant trop long</label><br />
- <input type="radio" name="reason" value="other" id="reason_oth" /><label for="reason_oth">Autre :</label><br />
+ <input type="radio" name="reason" value="other" id="reason_oth" /><label for="reason_oth">Autre :</label><br />
<input type="text" name="other_reason" onfocus="document.getElementById('reason_oth').checked='checked'" size="60" />
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
//]]></script>
{/literal}
-{if $logged and $x.forlife eq $smarty.session.forlife}
-[<a href="javascript:chgMainWinLoc('profile/edit')">Modifier ma fiche</a>]
-{/if}
-
<div id="fiche">
<div id="photo" class="part">
{if $photo_url}<img alt="Photo de {$x.forlife}" src="{$photo_url}" width="{$x.x}"/>{/if}
- {if $logged}
- {if $x.section}<div><em class="intitule">Section : </em><span>{$x.section}</span></div>{/if}
- {if $x.binets_join}<div><em class="intitule">Binet(s) : </em><span>{$x.binets_join}</span></div>{/if}
- {if $x.gpxs_join}<div><em class="intitule">Groupe(s) et institution(s) X : </em><span><br/>{$x.gpxs_join|smarty:nodefaults}</span></div>{/if}
+ {if $logged && ( $x.section|smarty:nodefaults || $x.binets_join|smarty:nodefaults || $x.gpxs_join|smarty:nodefaults)}
+ <h2>A l'X...</h2>
+ {if $x.section}<div><em class="intitule">Section : </em><span>{$x.section}</span></div>{/if}
+ {if $x.binets_join}<div><em class="intitule">Binet(s) : </em><span>{$x.binets_join}</span></div>{/if}
+ {if $x.gpxs_join}<div><em class="intitule">Groupe(s) et institution(s) X : </em><span><br/>{$x.gpxs_join|smarty:nodefaults}</span></div>{/if}
+ {/if}
+ {if $x.freetext}
+ <h2>Commentaires :</h2>
+ <span>{$x.freetext|miniwiki|smarty:nodefaults}</span>
{/if}
- {if $x.web}<div><em class="intitule">Site Web : </em><br /><a href="{$x.web}" class='popup'>{$x.web}</a></div>{/if}
- {if $x.freetext}<div><em class="intitule">Commentaires : </em><br /><span>{$x.freetext|miniwiki|smarty:nodefaults}</span></div>{/if}
</div>
<div id="fiche_identite" class="part">
<div class="civilite">
{if $x.sexe}•{/if}
{$x.prenom} {if $x.nom_usage eq ""}{$x.nom}{else}{$x.nom_usage} ({$x.nom}){/if}
{if $logged}
- {if $x.nickname} (alias {$x.nickname}){/if}
- <a href="vcard/{$x.forlife}.vcf">{*
- *}{icon name=vcard title="Afficher la carte de visite"}</a>
+ {if $x.nickname} (alias {$x.nickname}){/if}
+ {/if}
+ {if $x.web} <a href="{$x.web}">{icon name="world_go" title="Site Web"}</a>{/if}
+ {if $logged}
+ {if !$x.dcd}<a href="vcard/{$x.forlife}.vcf">{*
+ *}{icon name=vcard title="Afficher la carte de visite"}</a>{/if}
{if !$x.is_contact}
<a href="javascript:chgMainWinLoc('carnet/contacts?action=ajouter&user={$x.forlife}')">
{icon name=add title="Ajouter à mes contacts"}</a>
<a href="javascript:chgMainWinLoc('admin/user/{$x.forlife}')">
{icon name=wrench title="administrer user"}</a>
{/if}
+ {if $x.forlife eq $smarty.session.forlife}
+ <a href="javascript:chgMainWinLoc('profile/edit')">{icon name="user_edit" title="Modifier ma fiche"}</a>
+ {/if}
{/if}
</div>
{if $logged}
{/if}
{if $x.mobile}
<div class="mob">
- <em class="intitule">Mobile : </em>{$x.mobile}
+ <em class="intitule">Mobile : </em>{$x.mobile}
</div>
{/if}
<div class='spacer'></div>
</div>
{if $x.adr}
<div class="part">
- <h2>Contact : </h2>
- {foreach from=$x.adr item="address" key="i" name=adresses}
- {if $i is odd}
+ <h2>Contact : </h2>
+ {foreach from=$x.adr item="address" name=adresses}
+ {if $smarty.foreach.adresses.iteration is even}
{assign var=pos value="right"}
{else}
{assign var=pos value="left"}
{/if}
{if $address.active}
- {include file="geoloc/address.tpl" address=$address titre_div=true titre="Mon adresse actuelle :"
+ {include file="geoloc/address.tpl" address=$address titre_div=true titre="Mon adresse actuelle :"
for="`$x.prenom` `$x.nom`" pos=$pos}
{elseif $address.secondaire}
- {include file="geoloc/address.tpl" address=$address titre_div=true titre="Adresse secondaire :"
+ {include file="geoloc/address.tpl" address=$address titre_div=true titre="Adresse secondaire :"
for="`$x.prenom` `$x.nom`" pos=$pos}
{else}
- {include file="geoloc/address.tpl" address=$address titre_div=true titre="Adresse principale :"
+ {include file="geoloc/address.tpl" address=$address titre_div=true titre="Adresse principale :"
for="`$x.prenom` `$x.nom`" pos=$pos}
{/if}
- {if $i is odd}<div class="spacer"></div>{/if}
+ {if $smarty.foreach.adresses.iteration is even}<div class="spacer"></div>{/if}
{/foreach}
</div>
{/if}
{if $x.adr_pro}
<div class="part">
- <h2>Informations professionnelles :</h2>
+ <h2>Informations professionnelles :</h2>
{foreach from=$x.adr_pro item="address" key="i"}
{if $i neq 0}<hr />{/if}
{include file="include/emploi.tpl" address=$address}
- {include file="geoloc/address.tpl" address=$address titre="Adresse : " for=$address.entreprise pos="left"}
+ {include file="geoloc/address.tpl" address=$address titre="Adresse : " for=$address.entreprise pos="left"}
<div class="spacer"> </div>
{/foreach}
</div>
{/if}
{if $x.medals}
<div class="part">
- <h2>Distinctions : </h2>
+ <h2>Distinctions : </h2>
{foreach from=$x.medals item=m}
<div class="medal_frame">
<img src="profile/medal/{$m.id}" width="24" alt="{$m.medal}" title="{$m.medal}" style='float: left;' />
{/if}
{if $logged && $x.cv}
<div class="part">
- <h2>Curriculum Vitae :</h2>
+ <h2>Curriculum Vitae :</h2>
{$x.cv|miniwiki:title|smarty:nodefaults}
</div>
{/if}
{if !$logged}
<div class="part">
+ <small>
Cette fiche est publique et visible par tout internaute,<br />
vous pouvez aussi voir <a href="profile/private/{$x.forlife}?display=light">celle réservée aux X</a>.
+ </small>
</div>
{/if}
<div class="spacer"></div>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</tr>
<tr>
<td {if !$submited}colspan="2"{/if} class="center">
- Si tu ne souhaites plus montrer cette photo tu peux aussi l'effacer en la remplaçant par : <br />
+ Si tu ne souhaites plus montrer cette photo tu peux aussi l'effacer en la remplaçant par : <br />
{if $has_trombi_x}
<input type="submit" value="Trombino de l'X" name="trombi" /><br />
{/if}
</td>
{if $submited}
<td class="center">
- Tu peux annuler ta soumission et garder ta photo actuelle : <br />
+ Tu peux annuler ta soumission et garder ta photo actuelle : <br />
<input type="submit" value="Annuler ta soumission" name="cancel" />
</td>
{/if}
</p>
<p>
Si elle est sur Internet, choisis la seconde solution et nos robots iront la télécharger
- directement où il faut :-)
+ directement où il faut :-)
</p>
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{assign var="step" value=$smarty.session.sub_state.step}
<div class="descr center">
- <strong>Procédure d'inscription :</strong>
+ <strong>Procédure d'inscription :</strong>
{if !$step}<span class="erreur">{/if}Charte{if !$step}</span>{/if} »
{if $step eq 1 || $step eq 2}<span class="erreur">{/if}Identification{if $step eq 1 || $step eq 2}</span>{/if} »
{if $step eq 4 || $step eq 3}<span class="erreur">{/if}Pré-Inscription{if $step eq 4 || $step eq 3}</span>{/if} »
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
Une erreur est survenue lors de ton inscription ...
</p>
<p>
-Contacte nous au plus vite, en nous indiquant ce nombre : {$uid} sur
+Contacte nous au plus vite, en nous indiquant ce nombre : {$uid} sur
<a href="mailto:support@{#globals.mail.domain#}">support@{#globals.mail.domain#}</a>
</p>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
login : {$mailorg}
mot de passe : {$pass}
-Rends-toi sur la page web suivante afin d'activer ta pré-inscription, et de changer ton mot de passe en quelque chose de plus facile à mémoriser :
+Rends-toi sur la page web suivante afin d'activer ta pré-inscription et de changer obligatoirement ce mot de passe provisoire en un mot de passe de ton choix :
{$baseurl}/register/end/{$hash}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h1>Conditions générales</h1>
<p>
-L'enregistrement se déroule <strong>en deux étapes</strong> :
+L'enregistrement se déroule <strong>en deux étapes</strong> :
</p>
<ul>
<li>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<form action="register" method="post">
<p>
- Avant toute chose, il te faut nous donner ta promotion :
+ Avant toute chose, il te faut nous donner ta promotion :
</p>
<table class="tinybicol">
<tr>
</tr>
<tr>
<td>
- Donne ta promotion sur 4 chiffres :
+ Donne ta promotion sur 4 chiffres :
<input type="text" size="4" maxlength="4" name="promo" value="{$smarty.post.promo}" />
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</tr>
<tr>
<td class="titre">
- Matricule X :
+ Matricule X :
</td>
<td>
<input type="text" size="6" maxlength="6" name="mat"
{math equation="(promo % 100) + 100" promo=$promo}532)<br />
{/if}
Voir sur le GU ou un bulletin de solde pour trouver cette information<br /><br />
- Pour les élèves étrangers voie 2, il est du type :
+ Pour les élèves étrangers voie 2, il est du type :
{if $promo < 1999}
{math equation="(promo + 1) % 100" promo=$promo}0XXX
{else}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<p>
Ces adresses sont des redirections vers des adresses e-mail de ton choix.
- Indique-s-en un pour commencer (tu pourras indiquer les autres une fois l'inscription terminée) et pouvoir
+ Indique-s-en une pour commencer (tu pourras indiquer les autres une fois l'inscription terminée) et pouvoir
terminer ton inscription.
</p>
<p>
- Attention, il doit <strong>impérativement être correct</strong> pour que nous puissions
+ Attention, elle doit <strong>impérativement être correcte</strong> pour que nous puissions
t'envoyer ton mot de passe.
</p>
<tr>
<td class="titre">
E-mail<br />
- <span class="smaller">(Première redirection)</span>
+ <span class="smaller">(Première adresse de ton choix)</span>
</td>
<td>
<input type="text" size="35" maxlength="50" name="email" value="{$smarty.post.email}" />
<tr>
<td class="titre">
Date de naissance<br />
- <span class="smaller">(Format JJMMAAAA)</span>
+ <span class="smaller">jour/mois/année</span>
</td>
<td>
- <input type="text" size="8" maxlength="8" name="naissance" value="{$smarty.post.naissance}" />
+ <input type="text" size="10" maxlength="10" name="naissance" value="{$smarty.post.naissance}" />
(demandée si perte de mot de passe)
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
Ton adresse électronique à vie <strong>{$smarty.session.forlife}@{#globals.mail.domain#}</strong> est déjà ouverte, essaie-la !
</p>
<p class="smaller">
- <strong>Remarque :</strong> m4x.org est un domaine "discret" qui veut dire "mail for X" et
+ <strong>Remarque :</strong> m4x.org est un domaine "discret" qui veut dire "mail for X" et
qui comporte exactement les mêmes adresses que le domaine polytechnique.org.
</p>
{else}
<p>
-Tu as recu un mot de passe par défaut, si tu souhaites en changer, tu peux le faire ici :
+Tu as recu un mot de passe par défaut, si tu souhaites en changer, tu peux le faire ici :
</p>
<form action="register/success" method="post" id="changepass">
</tr>
<tr>
<td class="titre">
- Nouveau mot de passe :
+ Nouveau mot de passe :
</td>
<td>
<input type="password" size="10" maxlength="10" name="nouveau" />
</tr>
<tr>
<td class="titre">
- Retape-le une fois :
+ Retape-le une fois :
</td>
<td>
<input type="password" size="10" maxlength="10" name="nouveau2" />
</form>
<p class="smaller">
-<strong>N'oublie pas :</strong> si tu perds ton mot de passe, nous n'avons aucun engagement, en
+<strong>N'oublie pas :</strong> si tu perds ton mot de passe, nous n'avons aucun engagement, en
particulier en termes de rapidité, mais pas seulement, à te redonner accès au
site. Cela peut prendre plusieurs semaines, les pertes de mot de passe sont
traitées avec la priorité minimale.
<p>
Cette fonctionnalité n'est pas du tout redondante avec l'annuaire de l'AX, car nous pouvons synchroniser pour toi
- les données qu'il contient :
+ les données qu'il contient :
</p>
<dl>
{if $lists|@count neq 0}
<p>
- Des camarades souhaitent que tu t'inscrives aux listes suivantes :
+ Des camarades souhaitent que tu t'inscrives aux listes suivantes :
</p>
<dl>
{foreach from=$lists key=list item=details}
- <dt><input type='checkbox' value='1' checked="checked" name="sub_ml[{$list}]" /> {$list}* : {$details.desc}</dt>
+ <dt><input type='checkbox' value='1' checked="checked" name="sub_ml[{$list}]" /> {$list}* : {$details.desc}</dt>
{if $details.info}
<dd>
{$details.info|nl2br}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<script type="text/javascript">// <!--
var baseurl = platal_baseurl + "search/";
{literal}
- // display an autocomplete row : blabla (nb of found matches)
+ // display an autocomplete row : blabla (nb of found matches)
function make_format_autocomplete(block) {
return function(row) {
regexp = new RegExp('(' + RegExp.escape(block.value) + ')', 'i');
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<p>
La ligne de recherche ci-dessus accepte non seulement des mélanges de <strong>noms</strong> et de <strong>prénoms</strong>...
-mais elle accepte de plus la syntaxe suivante pour les <strong>promotions</strong> :
+mais elle accepte de plus la syntaxe suivante pour les <strong>promotions</strong> :
</p>
<ul>
- <li><code>1990</code> : signifie appartient à la promotion 1990 ;</li>
- <li><code>1990-2000</code> : signifie sur la promotion 1990 à 2000 ;</li>
- <li><code><1990</code> : signifie promotions inférieures ou égales à 1990 ;</li>
- <li><code>>1990</code> : signifie promotions supérieures ou égales à 1990.</li>
+ <li><code>1990</code> : signifie appartient à la promotion 1990 ;</li>
+ <li><code>1990-2000</code> : signifie sur la promotion 1990 à 2000 ;</li>
+ <li><code><1990</code> : signifie promotions inférieures ou égales à 1990 ;</li>
+ <li><code>>1990</code> : signifie promotions supérieures ou égales à 1990.</li>
</ul>
<p>
-Ainsi, rechercher tous les "Dupont" sur les promotions 1980 à 1990 et sur la promotion 2000 se fait avec la recherche :
+Ainsi, rechercher tous les "Dupont" sur les promotions 1980 à 1990 et sur la promotion 2000 se fait avec la recherche :
<code>Dupont 1980-1990 2000</code>
</p>
Parfois on ne sait plus si le nom qu'on recherche s'écrit « Lenormand », « Le Normand » ou « Le-Normand »...
</p>
<p>
-Pour éviter ce genre d'écueils, il suffit de chercher : <code>Le Normand</code><br />
+Pour éviter ce genre d'écueils, il suffit de chercher : <code>Le Normand</code><br />
En effet, le moteur de recherche va alors chercher tous les utilisateurs dont le nom
contient 'Le' <strong>et</strong> 'Normand' sans distinction de casse et sans tenir compte des accents.
</p>
{if hasPerm('user')}
<h2>Raccourcis...</h2>
<p>
- Un certain nombre de raccourcis permettent d'accéder plus rapidement au contenu du site :
+ Un certain nombre de raccourcis permettent d'accéder plus rapidement au contenu du site :
<ul>
<li><code>fiche:prenom.nom.promo</code> ouvre la fiche du camarade indiquée ;</li>
<li><code>ref:prenom.nom.promo</code> ouvre la fiche référent du camarade indiquée ;</li>
//]]></script>
{/if}
-<h2>Polytechniciens des promotions 1919 et précédentes</h2>
-<p>Notre base de données ne contient que les polytechniciens depuis la promotion 1920. Pour effectuer des recherches dans les
-promotions précédentes, il faut utiliser l'<a href="http://bibli.polytechnique.fr/F/?func=file&file_name=find-b&local_base=BCXC2">annuaire en ligne de la bibliothèque de
-l'École</a>.</p>
+<h2>Polytechniciens des promotions 1920 et précédentes</h2>
+<p>Notre base de données ne contient que les polytechniciens depuis la promotion 1921. Pour effectuer des recherches dans les
+promotions précédentes, il faut utiliser l'<a href="http://bibli.polytechnique.fr/F/?func=file&file_name=find-b&local_base=BCXC2">annuaire en ligne de la bibliothèque de l'École</a>.</p>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<div class="backtrace">
<h1>
{if $trace->error}<span style="color: #f00">{/if}
- Exécution de {$bt_name} : {$trace->traces|@count} actions en {$trace->totaltime|string_format:"%.3f"}s (hover-me pour la trace)
+ Exécution de {$bt_name} : {$trace->traces|@count} actions en {$trace->totaltime|string_format:"%.3f"}s (hover-me pour la trace)
{if $trace->error}</span>{/if}
</h1>
<div class="hide">
{**************************************************************************}\r
{* *}\r
-{* Copyright (C) 2003-2007 Polytechnique.org *}\r
+{* Copyright (C) 2003-2008 Polytechnique.org *}\r
{* http://opensource.polytechnique.org/ *}\r
{* *}\r
{* This program is free software; you can redistribute it and/or modify *}\r
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<!-- Pour récupérer ce bandeau sur votre site :
+<!-- Pour récupérer ce bandeau sur votre site :
incluez le fichier http://www.polytechnique.org/bandeau dans vos php
ou http://www.polytechnique.org/bandeau/login pour profiter du login
automatique. Et rajoutez à la liste de css de vos pages
http://www.polytechnique.org/bandeau.css.
Pour avoir l'icone, pour des raisons de sécurité il n'y a pas d'accès
- direct, il faut alors rediriger bandeau/icone.png vers celle du site :
+ direct, il faut alors rediriger bandeau/icone.png vers celle du site :
http://www.polytechnique.org/bandeau/icone.png -->
{if !$login && $smarty.session.auth}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
Validation:
<a href="http://jigsaw.w3.org/css-validator/validator?uri={#globals.baseurl#}/valid.html">CSS</a>
|
- références :
+ références :
<a href="http://www.w3schools.com/xhtml/xhtml_reference.asp">XHTML</a>
<a href="http://www.w3schools.com/css/css_reference.asp">CSS2</a>
</div>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
<div>
- Plat/al <a href="changelog">{#globals.version#}</a> - Copyright © 1999-2007 <a href="http://x-org.polytechnique.org/">Polytechnique.org</a>
+ Plat/al <a href="changelog">{#globals.version#}</a> - Copyright © 1999-2008 <a href="http://x-org.polytechnique.org/">Polytechnique.org</a>
-
<a href="Reference/Convention-AX">Lien avec l'AX</a>
-
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<meta name="keywords" content="Ecole polytechnique, anciens eleves, portail, alumni, AX, X, routage, reroutage, e-mail, email, mail" />
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
<link rel="icon" href="/images/favicon.png" type="image/png" />
+ <link rel="apple-touch-icon" href="images/logo.png" type="image/png" />
<link rel="index" href="" />
<link rel="author" href="changelog" />
<link rel="search" href="search" />
{$xorg_extra_header|smarty:nodefaults}
{/if}
- <title>{$xorg_title|default:"Polytechnique.org : le site des élèves et anciens élèves de l'École polytechnique"}</title>
+ <title>{$xorg_title|default:"Polytechnique.org : le site des élèves et anciens élèves de l'École polytechnique"}</title>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<table class="bicol" style="font-weight:normal;text-align:center; border-left:0px; border-right:0px; margin-top:0.5em; width:100%; margin-left: 0; font-size: smaller;">
<tr><th>Valid</th></tr>
<tr class="impair">
- <td><a href="admin/validate">{insert name="mkStats"}</a></td>
+ <td>
+ <a href="admin/validate">
+ {if $globals->core->NbValid|smarty:nodefaults eq 0}-{else}{$globals->core->NbValid|default:'-'}{/if}
+ </a>
+ </td>
</tr>
</table>
{/if}
-{**************************************************************************}\r
-{* *}\r
-{* Copyright (C) 2003-2007 Polytechnique.org *}\r
-{* http://opensource.polytechnique.org/ *}\r
-{* *}\r
-{* This program is free software; you can redistribute it and/or modify *}\r
-{* it under the terms of the GNU General Public License as published by *}\r
-{* the Free Software Foundation; either version 2 of the License, or *}\r
-{* (at your option) any later version. *}\r
-{* *}\r
-{* This program is distributed in the hope that it will be useful, *}\r
-{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}\r
-{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}\r
-{* GNU General Public License for more details. *}\r
-{* *}\r
-{* You should have received a copy of the GNU General Public License *}\r
-{* along with this program; if not, write to the Free Software *}\r
-{* Foundation, Inc., *}\r
-{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}\r
-{* *}\r
-{**************************************************************************}\r
- <table>\r
- <tr>\r
- <td class="date-heure">\r
- <script type="text/javascript">\r
- <!--\r
- document.write(getNow());\r
- //-->\r
- </script>\r
- </td>\r
- <td class="inscrits">\r
- {insert name="getNbIns"} polytechniciens sur le web\r
- <form action="search" method="get">\r
- <div>\r
- <input type="text" size="30" name="quick" class="quick_search" value="{$smarty.request.quick|default:"recherche dans l'annuaire"}" onfocus="if (this.value == '{$smarty.request.quick|default:"recherche dans l'annuaire"|escape:javascript}') this.value=''" onblur="if (this.value == '') this.value='{$smarty.request.quick|default:"recherche dans l'annuaire"|escape:javascript}'"/> \r
- </div>\r
- </form>\r
- {insert name="getNbNotifs"}\r
- </td>\r
- </tr>\r
- </table>\r
+{**************************************************************************}
+{* *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
+{* http://opensource.polytechnique.org/ *}
+{* *}
+{* This program is free software; you can redistribute it and/or modify *}
+{* it under the terms of the GNU General Public License as published by *}
+{* the Free Software Foundation; either version 2 of the License, or *}
+{* (at your option) any later version. *}
+{* *}
+{* This program is distributed in the hope that it will be useful, *}
+{* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
+{* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
+{* GNU General Public License for more details. *}
+{* *}
+{* You should have received a copy of the GNU General Public License *}
+{* along with this program; if not, write to the Free Software *}
+{* Foundation, Inc., *}
+{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
+{* *}
+{**************************************************************************}
+ <table>
+ <tr>
+ <td class="date-heure">
+ <script type="text/javascript">
+ <!--
+ document.write(getNow());
+ //-->
+ </script>
+ </td>
+ <td class="inscrits">
+ {$globals->core->NbIns|number_format} polytechniciens sur le web
+ <form action="search" method="get">
+ <div>
+ <input type="text" size="30" name="quick" class="quick_search"
+ value="{$smarty.request.quick|default:"recherche dans l'annuaire"}"
+ onfocus="if (this.value == '{$smarty.request.quick|default:"recherche dans l'annuaire"|escape:javascript}') this.value=''"
+ onblur="if (this.value == '') this.value='{$smarty.request.quick|default:"recherche dans l'annuaire"|escape:javascript}'"/>
+ </div>
+ </form>
+ {if $smarty.session.auth gt AUTH_PUBLIC && $smarty.session.notifs}
+ <a href="carnet/panel">{$smarty.session.notifs} événement{if $smarty.session.notifs gt 1}s{/if}</a>
+ {/if}
+ </td>
+ </tr>
+ </table>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h1>Inscrits par promo</h1>
<p>
-Voici le nombre d'inscrits par promo :
+Voici le nombre d'inscrits par promo :
</p>
<table class="bicol" cellpadding="3" cellspacing="0" summary="Statistiques">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
{* *}
{**************************************************************************}
-<h1>Sondages : confirmation</h1>
+<h1>Sondages : confirmation</h1>
<form action="{$survey_formaction}" method="post">
{if is_array($survey_formhidden)}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<tr id="ln_promo_exp">
<td></td>
<td class="smaller">
- Exemple : 1954,1986-1989,-1942,2000- restreindra le sondage à toutes les promotions suivantes :<br/>
+ Exemple : 1954,1986-1989,-1942,2000- restreindra le sondage à toutes les promotions suivantes :<br/>
1954, 1986 à 1989, toutes jusqu'à 1942 et toutes à partir 2000 (les bornes sont systématiquement incluses)
</td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
{* *}
{**************************************************************************}
-<h1>Sondage : {if $survey_type == 'root'}nouveau sondage{else}nouvelle question{/if}</h1>
+<h1>Sondage : {if $survey_type == 'root'}nouveau sondage{else}nouvelle question{/if}</h1>
<form action="{$survey_formaction}" method="post">
<input type="hidden" name="survey_action" value="{$survey_action}"/>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
{* *}
{**************************************************************************}
-<h1>Sondages : erreur</h1>
+<h1>Sondages : erreur</h1>
{if !is_null($survey_errors) && is_array($survey_errors)}
<table class="bicol">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if $survey_resultmode}
<ul>
{foreach item=sresult from=$squestion.result}
- <li>{$squestion.choices[$sresult.answer]} : {$sresult.count*100/$survey.votes|string_format:"%.1f"}% ({$sresult.count} votes)</li>
+ <li>{$squestion.choices[$sresult.answer]} : {$sresult.count*100/$survey.votes|string_format:"%.1f"}% ({$sresult.count} votes)</li>
{/foreach}
</ul>
{else}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if $survey_resultmode}
<ul>
{foreach item=sresult from=$squestion.result}
- <li>{$squestion.choices[$sresult.answer]} : {$sresult.count*100/$survey.votes|string_format:"%.1f"}% ({$sresult.count} votes)</li>
+ <li>{$squestion.choices[$sresult.answer]} : {$sresult.count*100/$survey.votes|string_format:"%.1f"}% ({$sresult.count} votes)</li>
{/foreach}
</ul>
{else}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>Sondage : {$survey.title}</h1>
+<h1>Sondage : {$survey.title}</h1>
<form action="survey/vote{if $survey_votemode}/{$survey.id}{/if}" method='post'>
<table style="width: 100%">
<tr>
<td colspan="2">{$survey.description}</td>
</tr>
<tr>
- <td class="titre">Fin du sondage :</td>
+ <td class="titre">Fin du sondage :</td>
<td>{$survey.end|date_format:"%x"}</td>
</tr>
<tr>
- <td class="titre">Type de sondage :</td>
+ <td class="titre">Type de sondage :</td>
<td>{$survey_modes[$survey.mode]}</td>
</tr>
{if $survey.mode != Survey::MODE_ALL}
<tr>
- <td class="titre">Promotions :</td>
+ <td class="titre">Promotions :</td>
<td>
{if $survey.promos eq "#"}
erreur
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{if $survey_resultmode}
- Quelques réponses données par les personnes sondées :
+ Quelques réponses données par les personnes sondées :
<ul>
{foreach item=sresult from=$squestion.result}
<li>{$sresult.answer}</li>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{if $survey_resultmode}
- Quelques réponses données par les personnes sondées :
+ Quelques réponses données par les personnes sondées :
<ul>
{foreach item=sresult from=$squestion.result}
<li>{$sresult.answer}</li>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
{* *}
{**************************************************************************}
-<h1>Sondages : succès</h1>
+<h1>Sondages : succès</h1>
{if $survey_message neq ""}
{$survey_message}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<form action="admin" method="post">
<p class="descr">
Pour ajouter un groupe, choisir ici le diminutif qu'il va utiliser,
- tu seras ensuite redirigé vers une page te permettant d'éditer le groupe :
+ tu seras ensuite redirigé vers une page te permettant d'éditer le groupe :
</p>
<div class="center">
<input type="text" name="diminutif" value="{$smarty.request.diminutif}" />
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{elseif $cat eq institutions}
<p class="descr">
-De nombreux organismes officiels sont liés à l'École polytechnique : le collège de l'École
+De nombreux organismes officiels sont liés à l'École polytechnique : le collège de l'École
polytechnique, l'amicale des anciens élèves, le site des X sur le web Polytechnique.org, etc...
Cette liste n'est pas exhaustive. Vous pouvez découvrir chacun de ces organismes en cliquant sur les
-liens correspondants :
+liens correspondants :
</p>
{elseif $cat eq promotions}
<p class="descr">
Quelques promotions de polytechniciens ont mis au point leur propre site web, qui permet aux élèves
de ces promotions d'organiser des repas promos, de faire partager des souvenirs photographiques, de
-se retrouver sur internet... En voici des exemples :
+se retrouver sur internet... En voici des exemples :
</p>
{/if}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
<link rel="icon" href="images/favicon.png" type="image/png" />
+ <link rel="apple-touch-icon" href="images/logo-xnet.png" type="image/png" />
<link rel="stylesheet" type="text/css" href="css/xnet.css" media="screen" />
{if $menu && !$simple}
<tr>
- <td id="menu" rowspan="2">
+ <td id="menu">
{foreach from=$menu key=title item=submenu}
{if $title neq 'no_title'}<h1>{$title}</h1>{/if}
{foreach from=$submenu key=tit item=url}
{/if}
{/foreach}
{/foreach}
- </td>
- <td class="breadcrumb">
{if $asso && ($is_admin ||
- ($smarty.session.suid && ($smarty.session.suid.perms->hasFlag('admin') ||
- $smarty.session.suid.may_update[$asso.id])))}
- <div style="float: right">
- <form method="post" action="{$platal->ns}change_rights">
- <div style="display: inline">
- <small>voir le site en tant que...
- <select name="right" onchange="this.form.submit()" style="margin: 0; padding: 0">
- {if hasPerm('admin') || ($smarty.session.suid && $smarty.session.suid.perms->hasFlag('admin'))}
- <option value="admin" {if hasPerm('admin')}selected="selected"{/if}>Administrateur</option>
- {/if}
- <option value="anim" {if $is_admin && !hasPerm('admin')}selected="selected"{/if}>Animateur</option>
- <option value="member" {if !$is_admin && $is_member}selected="selected"{/if}>Membre</option>
- <option value="logged" {if !$is_admin && !$is_member}selected="selected"{/if}>Non-membre</option>
- </select>
- </small>
- </div>
- </form>
- </div>
- {/if}
- <a href=".">X.net</a> »
- {if $asso}
- <a href="groups/{$asso.cat}">{$asso.cat|cat_pp}</a> »
- {if $asso.dom}
- <a href="groups/{$asso.cat}/{$asso.dom}">{$asso.domnom}</a> »
- {/if}
- {$asso.nom}
- {elseif $cat}
- <a href="groups/{$cat}">{$cat|cat_pp}</a> »
- {if $dom || !$doms}
- {if $cat eq 'promotions'}
- Choix de la promotion
- {else}
- Choix de l'Asso
- {/if}
- {else}
- Choix du domaine
- {/if}
- {elseif $wikipage}
- <a href="Xnet">Documentation</a>
+ ($smarty.session.suid && ($smarty.session.suid.perms->hasFlag('admin') ||
+ $smarty.session.suid.may_update[$asso.id])))}
+ <h1>Voir le site comme...</h1>
+ <form method="post" action="{$platal->ns}change_rights">
+ <div>
+ <select name="right" onchange="this.form.submit()" style="margin: 0; padding: 0">
+ {if hasPerm('admin') || ($smarty.session.suid && $smarty.session.suid.perms->hasFlag('admin'))}
+ <option value="admin" {if hasPerm('admin')}selected="selected"{/if}>Administrateur</option>
+ {/if}
+ <option value="anim" {if $is_admin && !hasPerm('admin')}selected="selected"{/if}>Animateur</option>
+ <option value="member" {if !$is_admin && $is_member}selected="selected"{/if}>Membre</option>
+ <option value="logged" {if !$is_admin && !$is_member}selected="selected"{/if}>Non-membre</option>
+ </select>
+ </div>
+ </form>
{/if}
</td>
- </tr>
- <tr>
<td id="body">
{include file="skin/common.content.tpl"}
</td>
<td id="perso">
{list_all_my_groups}
{if !$smarty.session.auth}
- <div>Me connecter :</div>
+ <div>Me connecter :</div>
<a class='gp' href="login/{if $platal->pl_self() eq 'exit'}index{else}{$platal->pl_self()}{/if}">polytechnicien</a>
{if $platal->pl_self() neq 'exit'}
{javascript name=jquery}
- <a href="send_bug" class="popup_840x600">signaler un bug</a>
{/if}
<br />
- © Copyright 2000-2007 <a href="http://x-org.polytechnique.org/">Association Polytechnique.org</a>
+ © Copyright 2000-2008 <a href="http://x-org.polytechnique.org/">Association Polytechnique.org</a>
</td>
</tr>
{/if}
</table>
- </body>
+ </body>
</html>
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : <a href='{$platal->ns}events'>Evénements</a> </h1>
+<h1>{$asso.nom} : <a href='{$platal->ns}events'>Evénements</a> </h1>
<p>
L'événement {$evt.intitule}
{if $oublis}
<p class="erreur">
-Ils ont payé mais ont oublié de s'inscrire :
+Ils ont payé mais ont oublié de s'inscrire :
</p>
<table summary="payé mais non inscrits" class="tinybicol">
<tr class="pair">
<td>
<a href="" {if $is_admin}onclick="return remplitAuto('{$m.email}')"{/if}>
- {$m.prenom} {$m.nom}
+ {if !$m.prenom && !$m.nom}
+ {$m.email}
+ {else}
+ {$m.prenom} {$m.nom}
+ {/if}
</a>
</td>
<td>{$m.promo}</td>
<tr>
<td>
{if $is_admin}<a href="javascript:remplitAuto('{$m.email}')">{/if}
- {if $m.femme}•{/if}{$m.prenom} {$m.nom}
+ {if $m.femme}•{/if}{if !$m.prenom && !$m.nom}{$m.email}{else}{$m.prenom} {$m.nom}{/if}
{if $is_admin}</a>{/if}
</td>
<td>{$m.promo}</td>
{/if}
</tr>
{/foreach}
+ {if $is_admin && $evt.money}
+ <tr>
+ {assign var=cols value=$moments|@count}
+ <td colspan="{$cols+3}" class="right"><strong>Total</strong></td>
+ <td>{$evt.topay}€</td>
+ {if $evt.paiement_id}
+ <td>{$evt.telepaid|default:0}€</td>
+ <td>{$evt.adminpaid|default:0}€</td>
+ {/if}
+ <td>{$evt.paid}€</td>
+ </tr>
+ {/if}
</table>
<p class="descr">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software, you can redistribute it and/or modify *}
{* 59 Temple Place, Suite 330; Boston, MA 02111-1307 USA *}
{* *}
{**************************************************************************}
-Nom;Prénom;Promotion{if $tout}{foreach from=$moments item=m};{$m.titre}{/foreach}{if $admin && $money};À payer;Payé{/if}{else};Nombre{/if}
+Nom;Prénom;Promotion{if $tout}{foreach from=$moments item=m};{$m.titre}{/foreach}{if $admin && $money};À payer;{if
+$telepayment}Télépaiement;Liquide/Chèque;{/if}Payé{/if}{else};Nombre{/if}
{if $participants}
{foreach from=$participants item=m}
;
-{$m.nom};{$m.prenom};{$m.promo}{if $tout}{foreach from=$moments item=i};{$m[$i.item_id]}{/foreach}{if $admin && $money};{$m.montant};{$m.paid}{/if}{else};{$m.nb}{/if}
+{$m.nom};{$m.prenom};{$m.promo}{if $tout}{foreach from=$moments item=i};{$m[$i.item_id]}{/foreach}{if $admin &&
+$money};{$m.montant};{if $telepayment}{$m.telepayment};{$m.adminpaid};{/if}{$m.paid}{/if}{else};{$m.nb}{/if}
{/foreach}
;
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{/literal}
</script>
-<h1>{$asso.nom} : {$evt.intitule|default:"Nouvel événement"}</h1>
+<h1>{$asso.nom} : {$evt.intitule|default:"Nouvel événement"}</h1>
<p class="descr">
Un événement peut être une réunion, un séminaire, une conférence, un voyage promo,
Options :
</td>
<td>
- Montrer la liste des inscrits aux membres :
+ Montrer la liste des inscrits aux membres :
<input type="radio" name="show_participants" value="1" {if $evt.show_participants}checked="checked"{/if} /> oui
<input type="radio" name="show_participants" value="0" {if !$evt.show_participants}checked="checked"{/if}/> non
<br />
- Autoriser les non-membres :
+ Autoriser les non-membres :
<input type="radio" name="accept_nonmembre" value="1" {if $evt.accept_nonmembre}checked="checked"{/if} /> oui
<input type="radio" name="accept_nonmembre" value="0" {if !$evt.accept_nonmembre}checked="checked"{/if}/> non
<br />
- Autoriser les invités :
+ Autoriser les invités :
<input type="radio" name="noinvite" value="0" {if !$evt.noinvite}checked="checked"{/if} /> oui
<input type="radio" name="noinvite" value="1" {if $evt.noinvite}checked="checked"{/if}/> non
</td>
</tr>
<tr id="new_pay" style="display:none">
<td colspan="2">
- Il faut que tu définisses le texte du mail de confirmation de paiement. Pour ceci, tu peux adapter le modèle qui suit :
+ Il faut que tu définisses le texte du mail de confirmation de paiement. Pour ceci, tu peux adapter le modèle qui suit :
<ul>
<li><strong>Remplace les crochets</strong> ([...]) par le texte que tu désires y voir apparaître</li>
<li><salutation>, <prenom>, <nom> et <montant> seront <strong>automatiquement</strong> remplacés par les informations adaptées</li>
</colgroup>
<tr>
<td class='titre'>
- Début :
+ Début :
</td>
<td>
le {html_select_date prefix='deb_' end_year='+5' day_value_format='%02d'
</tr>
<tr>
<td class='titre'>
- Fin :
+ Fin :
</td>
<td>
le {html_select_date prefix='fin_' end_year='+5' day_value_format='%02d'
<th colspan="2">Moment {$i}</th>
</tr>
<tr>
- <td class="titre">Intitulé :</td>
+ <td class="titre">Intitulé :</td>
<td><input type="text" name="titre{$i}" value="{$moment.titre}" size="45" maxlength="100" /></td>
</tr>
<tr>
- <td class="titre">Détails pratiques :</td>
+ <td class="titre">Détails pratiques :</td>
<td><textarea name="details{$i}" rows="6" cols="45">{$moment.details}</textarea></td>
</tr>
<tr>
- <td class="titre">Tarif :<br /><small>(par participant)</small></td>
+ <td class="titre">Tarif :<br /><small>(par participant)</small></td>
<td><input type="text" name="montant{$i}" value="{if $moment.montant}{$moment.montant|replace:".":","}{else}0,00{/if}" size="7" maxlength="7" /> € <small>(0 si gratuit)</small></td>
</tr>
{/foreach}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{if !$is_admin}
-<h1>{$asso.nom} : Evénements</h1>
+<h1>{$asso.nom} : Evénements</h1>
{else}
<h1>
- {$asso.nom} :
+ {$asso.nom} :
{if $archive}[<a href="{$platal->ns}events">Evénements</a>] {else}Evénements {/if}
{if $archive}Archives {else}[<a href="{$platal->ns}events/archive">Archives</a>] {/if}
</h1>
</tr>
<tr>
- <td class="titre">date :</td>
+ <td class="titre">date :</td>
<td>
{if $e.fin and $e.fin neq $e.debut}
{if $e.debut_day eq $e.fin_day}
</tr>
<tr>
- <td class="titre">annonceur :</td>
+ <td class="titre">annonceur :</td>
<td>
<a href='https://www.polytechnique.org/profile/{$e.alias}' class='popup2'>{$e.prenom} {$e.nom} ({$e.promo})</a>
</td>
{if $is_admin || $e.show_participants || ($e.deadline_inscription && $e.inscr_open)}
<tr>
- <td class="titre">Informations :</td>
+ <td class="titre">Informations :</td>
<td class='actions'>
{if $is_admin || $e.show_participants}
<a href="{$platal->ns}events/admin/{$e.short_name|default:$e.eid}">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Evénement {$event.intitule}</h1>
+<h1>{$asso.nom} : Evénement {$event.intitule}</h1>
<p>
[<a href="{$platal->ns}events">Revenir à la liste des événements</a>]
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Administration des announces</h1>
+<h1>{$asso.nom} : Administration des announces</h1>
<table class="bicol">
<tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
}
{/literal}
</script>
-<h1>{$asso.nom} : Edition d'une annonce</h1>
+<h1>{$asso.nom} : Edition d'une annonce</h1>
{if $art.texte}
<div>
<th colspan="2">Editer une annonce</th>
</tr>
<tr class="pair">
- <td class="titre">Titre :</td>
+ <td class="titre">Titre :</td>
<td><input type="text" name="titre" value="{$art.titre}" size="50" maxlength="200" /></td>
</tr>
<tr>
- <td class="titre">Contenu de l'annonce :</td>
+ <td class="titre">Contenu de l'annonce :</td>
<td>
<small>
Le contenu est destiné à recevoir la descriptioin de ce qui est annoncé.
</td>
</tr>
<tr style="border-top: 1px solid gray">
- <td class="titre">Contacts :</td>
+ <td class="titre">Contacts :</td>
<td>
<small>
La section "contacts" sert à noter les informations telles que les adresses mails de contact, les sites web.
<table class="tinybicol">
<tr>
- <td class="titre">Date de péremption :</td>
+ <td class="titre">Date de péremption :</td>
<td>
{valid_date name="peremption" value=$art.peremption}
</td>
</tr>
{if $events}
<tr>
- <td class="titre">Attacher à un événement :</td>
+ <td class="titre">Attacher à un événement :</td>
<td>
<select name="event">
<option value="" {if !$art.event}selected="selected"{/if}>-- Aucun --</option>
</tr>
{/if}
<tr>
- <td class="titre">Visibilité :</td>
+ <td class="titre">Visibilité :</td>
<td>
<input type="checkbox" name="public" {if $art.public}checked="checked"{/if} onchange="visibilityChange(this)" />
Rendre cette annonce publique
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<title>{$line.titre|strip_tags}</title>
<guid isPermaLink="false">{$line.id}</guid>
<link>{#globals.baseurl#}/{$asso.diminutif}/#art{$line.id}</link>
- <description><![CDATA[{$line.texte|miniwiki}{if $line.contacts}<br/><br/><strong>Contacts :</strong><br/>{$line.contacts|miniwiki}{/if}]]></description>
+ <description><![CDATA[{$line.texte|miniwiki}{if $line.contacts}<br/><br/><strong>Contacts :</strong><br/>{$line.contacts|miniwiki}{/if}]]></description>
<author>{$line.prenom} {$line.nom} (X{$line.promo})</author>
<pubDate>{$line.create_date|rss_date}</pubDate>
</item>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Annuaire du groupe </h1>
+<h1>{$asso.nom} : Annuaire du groupe </h1>
<p class="descr">
-Le groupe {$asso.nom} compte {$nb_tot} membres.
+Le groupe {$asso.nom} compte {$nb_tot} membres :
</p>
-<p class="descr">
-Les membres extérieurs du groupe sont intégrés à cette liste, et repérés par l'inscription 'extérieur' dans la colonne promotion.
-</p>
-
-<p class="descr">
-Tu peux également :
-</p>
<ul class="descr">
{if $is_admin}
<li>
{if $broken}
<p class="smaller">
- {icon name=error} : Un camarade signalé par ce symbole n'a plus d'adresse de redirection et ne peut donc
+ {icon name=error} : Un camarade signalé par ce symbole n'a plus d'adresse de redirection et ne peut donc
plus être contacté via son adresse polytechnique.org. Si tu connais sa nouvelle adresse, tu peux nous la communiquer en
cliquant sur le symbole.
</p>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Accueil</h1>
+<h1>{$asso.nom} : Accueil</h1>
<table cellpadding="0" cellspacing="0" class='tiny'>
{if $asso.site}
{if !$is_member && $is_logged && $asso.inscriptible && $xnet_type != 'promotions'}
<tr>
<td class="titre">
- M'inscrire :
+ M'inscrire :
</td>
<td>
<a href="{if $asso.sub_url}{$asso.sub_url}{else}{$platal->ns}subscribe{/if}">m'inscrire</a>
{elseif $is_member}
<tr>
<td class="titre">
- Me désinscrire :
+ Me désinscrire :
</td>
<td>
<a href="{if $asso.unsub_url}{$asso.unsub_url}{else}{$platal->ns}unsubscribe{/if}">me désinscrire</a>
<p style="text-align: justify;">
<small>
-<em>Nota Bene :</em> les informations présentées ici n'engagent que leurs auteurs
+<em>Nota Bene :</em> les informations présentées ici n'engagent que leurs auteurs
respectifs et sont publiées à leur initiative. L'association Polytechnique.org
ne pourrait en aucun cas être tenue responsable de la nature des propos relatés
sur cet espace d'expression et d'information. Elle se réserve le droit de
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Éditer l'accueil</h1>
+<h1>{$asso.nom} : Éditer l'accueil</h1>
<form method="post" action="{$platal->ns}edit" enctype="multipart/form-data">
{if $super}
</tr>
<tr>
<td class="titre">
- Catégorie :
+ Catégorie :
</td>
<td>
<select name="cat">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
</div>
{/if}
{tidy}
- {if $admin}Aperçu de : {/if}{$art.titre}
+ {if $admin}Aperçu de : {/if}{$art.titre}
{/tidy}
</th>
</tr>
</tr>
{if ($is_logged || $admin) && $art.contacts}
<tr class="pair">
- <td class="titre">Contacts :</td>
+ <td class="titre">Contacts :</td>
</tr>
<tr class="pair">
<td style="padding-left: 20px">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Forum</h1>
+<h1>{$asso.nom} : Forum</h1>
{$banana|smarty:nodefaults}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{if $u && $is_admin && $show_form}
<h2>
- Demande de la part de : {$prenom} {$nom} (X{$promo})
+ Demande de la part de : {$prenom} {$nom} (X{$promo})
<a href="https://www.polytechnique.org/profile/{$u}">Voir sa fiche</a>
</h2>
<form action="{$platal->ns}subscribe/{$u}" method="post">
<strong>OUI, je souhaite être inscrit au groupe {$asso.nom}</strong>
</p>
<p class="descr">
- Indique ci-après <strong>tes motivations</strong> qui seront communiquées aux animateurs du groupe :
+ Indique ci-après <strong>tes motivations</strong> qui seront communiquées aux animateurs du groupe :
</p> <textarea cols=80 rows=12 name="message">
Chers Camarades,
{$smarty.session.prenom} {$smarty.session.nom} (X{$smarty.session.promo})
--
-Ma fiche sur Polytechnique.org :
+Ma fiche sur Polytechnique.org :
https://www.polytechnique.org/profile/{$smarty.session.forlife}
</textarea>
<div class="center">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
-<h1>{$asso.nom} : Envoyer un mail</h1>
+<h1>{$asso.nom} : Envoyer un mail</h1>
<p class="descr">
-Ton message peut être personnalisé : si tu rentres les mots <cher>, <prenom>,
+Ton message peut être personnalisé : si tu rentres les mots <cher>, <prenom>,
<nom>, ces mots seront remplacés, pour chacun des destinataires, par "cher" accordé au
masculin ou féminin, par son prénom, ou son nom.
</p>
<form action="{$platal->ns}mail" method="post" enctype="multipart/form-data">
<table class='bicol'>
<tr>
- <th colspan="2">Ecrire un mail :</th>
+ <th colspan="2">Ecrire un mail :</th>
</tr>
<tr>
- <td class="titre">Expéditeur :</td>
+ <td class="titre">Expéditeur :</td>
<td>
<input type="text" name="from" size="55" maxlength="70"
value="{if $smarty.request.from}{$smarty.request.from}{else}"{$smarty.session.prenom} {$smarty.session.nom}" <{$smarty.session.bestalias}@polytechnique.org>{/if}" />
</td>
</tr>
<tr>
- <td class="titre">Répondre à :</td>
+ <td class="titre">Répondre à :</td>
<td>
<input type="text" name="replyto" size="55" maxlength="70" value="{$smarty.request.replyto}" />
</td>
</tr>
<tr>
<td class="titre">
- Sujet :
+ Sujet :
</td>
<td><input type="text" name="sujet" value="{$smarty.request.sujet|default:"remplir le sujet ..."}" size=55 maxlength=70></td>
</tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{/literal}
//]]></script>
-<h1>{$asso.nom} : Ajout d'un membre</h1>
+<h1>{$asso.nom} : Ajout d'un membre</h1>
<form method="post" action="{$platal->ns}member/new/">
<ul class='descr'>
</td>
</tr>
<tr id="xnom" style="display: none">
- <td class="titre">Nom :</td>
+ <td class="titre">Nom :</td>
<td><input type="text" id="nom" name="nom" size="20" value="" onkeyup="searchX();" /></td>
</tr>
<tr id="xprenom" style="display: none">
- <td class="titre">Prénom :</td>
+ <td class="titre">Prénom :</td>
<td><input type="text" id="prenom" name="prenom" size="20" value="" onkeyup="searchX();" /></td>
</tr>
<tr id="xpromo" style="display: none">
- <td class="titre">Promotion :</td>
+ <td class="titre">Promotion :</td>
<td><input type="text" id="promo" name="promo" size="4" value="" onkeyup="searchX();" /></td>
</tr>
<tr id="xsearch" style="display: none" class="pair">
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{else}
-<h1>{$asso.nom} : gestion des membres</h1>
+<h1>{$asso.nom} : gestion des membres</h1>
<h2>
- Suppression du membre : {$user.prenom} {$user.nom}
+ Suppression du membre : {$user.prenom} {$user.nom}
</h2>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{/literal}
</script>
-<h1>{$asso.nom} : gestion des membres</h1>
+<h1>{$asso.nom} : gestion des membres</h1>
<p>
[<a href='{$platal->ns}annuaire'>Retour à l'annuaire</a>]
{if $user.origine neq X}
<tr class="impair">
<td class="titre">
- Type d'utilisateur :
+ Type d'utilisateur :
</td>
<td>
<select name="origine" onchange="showInformations(this); return true">
</tr>
<tr id="prenom" class="impair" {if $user.origine eq "groupe"}style="display: none"{/if}>
<td class="titre">
- Prénom :
+ Prénom :
</td>
<td>
<input type="text" value="{$user.prenom}" name="prenom" size="40" />
</tr>
<tr class="impair">
<td class="titre">
- Nom :
+ Nom :
</td>
<td>
<input type="text" value="{$user.nom}" name="nom" size="40" />
</tr>
<tr id="sexe" class="impair" {if $user.origine eq "groupe"}style="display: none"{/if}>
<td class="titre">
- Sexe :
+ Sexe :
</td>
<td>
<select name="sexe">
<tr id="make_X" {if $user.origine eq "groupe"}style="display: none"{/if}>
<td colspan="2">
<span id="make_X_cb">
- <input type="checkbox" name="is_x" id="is_x" onchange="showXInput(this);" />
+ <input type="checkbox" name="is_x" id="is_x" onclick="showXInput(this);" onchange="showXInput(this);" />
<label for="is_x">coche cette case si il s'agit d'un X</label>
</span>
<span id="make_X_login" style="display: none">
<td>
<a href='{$platal->ns}lists/members/{$liste.list}'>{$liste.list}</a>
</td>
- <td>{$liste.desc}</td>
+ <td>{$liste.desc|smarty:nodefaults}</td>
<td class='right'>{$liste.nbsub}</td>
</tr>
{foreachelse}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{elseif !$choix->total()}
Aucun camarade non-inscrit ne correspond aux informations fournies
{elseif $choix->total()}
- Camarades correspondants :
+ Camarades correspondants :
<select name="userid" onchange="document.getElementById('marketing').style.display = (this.value == 0 ? 'none' : '')">
<option value="0"></option>
{iterate item=x from=$choix}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
<h1>Création d'un alias</h1>
<p class='descr'>
-Les alias sont concus pour répondre aux problèmes suivants :
+Les alias sont concus pour répondre aux problèmes suivants :
</p>
<ul class='descr'>
<li>
- redirections pour les postes des gens au sein du groupe : par exemple il est pratique d'avoir un alias
+ redirections pour les postes des gens au sein du groupe : par exemple il est pratique d'avoir un alias
president@..., ou bien tresorier@... qui pointent tout le temps vers la bonne personne du groupe.
Une sorte d'adresse de «redirection à vie».
</li>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{* *}
{**************************************************************************}
-<h1>{$asso.nom} : Création d'une liste de diffusion</h1>
+<h1>{$asso.nom} : Création d'une liste de diffusion</h1>
<p class="descr">
-<strong>Note :</strong> Les listes de diffusion sont un outil particulièrement adapté pour des
+<strong>Note :</strong> Les listes de diffusion sont un outil particulièrement adapté pour des
échanges entre 6 personnes, ou plus (newsletter, débat interne au groupe ...). En revanche, elles
s'avèrent peu praticables pour des discussions plus restreintes. Il est alors préférable
d'utiliser <a href="{$platal->ns}alias/create">un alias</a>, à la gestion beaucoup plus souple.
</td>
</tr>
<tr>
- <td><strong>Sujet (bref) :</strong></td>
+ <td><strong>Sujet (bref) :</strong></td>
<td>
<input type='text' name='desc' size='40' value="{$smarty.post.desc}" />
</td>
</tr>
<tr>
- <td><strong>Propriétés :</strong></td>
+ <td><strong>Propriétés :</strong></td>
<td>
<table style='width: 100%' class="normal">
<tr>
- <td>visibilité :</td>
+ <td>visibilité :</td>
<td>
<input type='radio' name='advertise' value='0'
{if $smarty.post.advertise && $smarty.post}checked='checked'{/if} />publique
<td></td>
</tr>
<tr>
- <td>diffusion :</td>
+ <td>diffusion :</td>
<td>
<input type='radio' name='modlevel' value='0'
{if !$smarty.post.modlevel}checked='checked'{/if} />libre
</td>
</tr>
<tr>
- <td>inscription :</td>
+ <td>inscription :</td>
<td>
<input type='radio' name='inslevel' value='0'
{if !$smarty.post.inslevel && $smarty.post}checked='checked'{/if} />libre
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
{else}
-<h1>{$asso.nom} : Listes de diffusion</h1>
+<h1>{$asso.nom} : Listes de diffusion</h1>
-<h2>Listes de diffusion du groupe {$asso.nom} :</h2>
+<h2>Listes de diffusion du groupe {$asso.nom} :</h2>
<p class="descr">
Une liste dont <strong>la diffusion</strong> est modérée est une liste dont les mails sont validés
t'empêcherait de t'y réabonner par la suite sans l'aide d'un administrateur.
</p>
-<h2>Voici les alias existants pour le groupe {$asso.nom} :</h2>
+<h2>Voici les alias existants pour le groupe {$asso.nom} :</h2>
<table cellspacing="0" cellpadding="0" class='large'>
<tr>
{**************************************************************************}
{* *}
-{* Copyright (C) 2003-2007 Polytechnique.org *}
+{* Copyright (C) 2003-2008 Polytechnique.org *}
{* http://opensource.polytechnique.org/ *}
{* *}
{* This program is free software; you can redistribute it and/or modify *}
--- /dev/null
+create table watch_profile (
+ uid int(5) unsigned not null,
+ ts timestamp not null default CURRENT_TIMESTAMP,
+ field enum('nom', 'freetext', 'mobile', 'nationalite', 'nick', 'web', 'appli1', 'appli2',
+ 'addresses', 'section', 'binets', 'medals', 'cv', 'jobs', 'photo'),
+
+ primary key field (uid, field)
+) charset=utf8;
+
+
+alter table auth_user_quick change column profile_freetext profile_freetext mediumtext;
+
+# vim:set syntax=mysql:
--- /dev/null
+ALTER DATABASE `x4dat` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
+
--- /dev/null
+alter table axletter change column shortname short_name varchar(16) unique key;
+
+# vim:set syntax=mysql:
--- /dev/null
+ALTER TABLE auth_user_md5 ADD COLUMN mail_storage SET('imap', 'googleapps') DEFAULT 'imap' NOT NULL AFTER smtppass;
+
+# vim:set syntax=mysql:
--- /dev/null
+USE logger;
+
+ALTER TABLE sessions
+ADD COLUMN ip2 INT(11) UNSIGNED NOT NULL,
+ADD COLUMN forward_ip2 INT(11) UNSIGNED DEFAULT NULL;
+
+UPDATE sessions
+ SET ip2 = SUBSTRING_INDEX(ip, ".", 1) * 256 * 256 * 256
+ + SUBSTRING_INDEX(SUBSTRING_INDEX(ip, ".", 2), ".", -1) * 256 * 256
+ + SUBSTRING_INDEX(SUBSTRING_INDEX(ip, ".", 3), ".", -1) * 256
+ + SUBSTRING_INDEX(ip, ".", -1),
+ forward_ip2 = SUBSTRING_INDEX(forward_ip, ".", 1) * 256 * 256 * 256
+ + SUBSTRING_INDEX(SUBSTRING_INDEX(forward_ip, ".", 2), ".", -1) * 256 * 256
+ + SUBSTRING_INDEX(SUBSTRING_INDEX(forward_ip, ".", 3), ".", -1) * 256
+ + SUBSTRING_INDEX(forward_ip, ".", -1);
+
+ALTER TABLE sessions
+DROP COLUMN ip,
+DROP COLUMN forward_ip,
+CHANGE COLUMN ip2 ip INT(11) UNSIGNED NOT NULL,
+CHANGE COLUMN forward_ip2 forward_ip INT(11) UNSIGNED DEFAULT NULL,
+ADD INDEX ip (ip),
+ADD INDEX forward_ip (forward_ip);
+
+USE x4dat;
+
+ALTER TABLE ip_watch
+ADD COLUMN ip2 INT(11) UNSIGNED NOT NULL;
+
+UPDATE ip_watch
+ SET ip2 = SUBSTRING_INDEX(ip, ".", 1) * 256 * 256 * 256
+ + SUBSTRING_INDEX(SUBSTRING_INDEX(ip, ".", 2), ".", -1) * 256 * 256
+ + SUBSTRING_INDEX(SUBSTRING_INDEX(ip, ".", 3), ".", -1) * 256
+ + SUBSTRING_INDEX(ip, ".", -1);
+
+ALTER TABLE ip_watch
+DROP PRIMARY KEY,
+DROP COLUMN ip,
+CHANGE COLUMN ip2 ip INT(11) UNSIGNED NOT NULL,
+ADD PRIMARY KEY ip (ip);
+
+# vim:set syntax=mysql:
--- /dev/null
+#!/bin/bash
+
+. ../inc/pervasive.sh
+
+echo "Upgrading bogofilter settings for ML"
+sudo -u list ./upgrade_lists.py
+
+mailman_stop
+mailman_templates
+mailman_start
+
+
+###########################################################
+for sql in *.sql
+do
+ echo -n $sql
+ $MYSQL x4dat < $sql &>/dev/null || echo -n " ERROR"
+ echo .
+done
+
+###########################################################
+
+echo "we will now upgrade the search table (this may be a long operation)
+
+please hit ^D to continue
+"
+
+cat
+
+pushd ../../bin
+./search.rebuild_db.php
+popd
+
+###########################################################
+
--- /dev/null
+#!/usr/bin/python
+
+import sys
+sys.path.append('/usr/lib/mailman/bin')
+import paths
+from Mailman import MailList
+from Mailman import Utils
+from Mailman import mm_cfg
+
+def get_bogo_level(mlist):
+ """ Retreive the old style bogo level """
+ try:
+ if mlist.header_filter_rules == []:
+ return 0
+ try:
+ action = mlist.header_filter_rules[1][1]
+ return 2
+ except:
+ action = mlist.header_filter_rules[0][1]
+ if action == mm_cfg.HOLD:
+ return 1
+ elif action == mm_cfg.DISCARD:
+ return 3
+ except:
+ return 0
+
+def set_bogo_level(mlist, level):
+ """ Convert bogo level to the new level structure """
+ if level == 0:
+ return
+ hfr = []
+ if level == 1:
+ hfr.append(('X-Spam-Flag: Unsure, tests=bogofilter', mm_cfg.HOLD, False))
+ hfr.append(('X-Spam-Flag: Yes, tests=bogofilter', mm_cfg.HOLD, False))
+ elif level == 2:
+ hfr.append(('X-Spam-Flag: Unsure, tests=bogofilter', mm_cfg.HOLD, False))
+ hfr.append(('X-Spam-Flag: Yes, tests=bogofilter, spamicity=(0\.999999|1\.000000)', mm_cfg.DISCARD, False))
+ hfr.append(('X-Spam-Flag: Yes, tests=bogofilter', mm_cfg.HOLD, False))
+ elif level == 3:
+ hfr.append(('X-Spam-Flag: Unsure, tests=bogofilter', mm_cfg.HOLD, False))
+ hfr.append(('X-Spam-Flag: Yes, tests=bogofilter', mm_cfg.DISCARD, False))
+ mlist.Lock()
+ mlist.header_filter_rules = hfr
+ mlist.Save()
+ mlist.Unlock()
+
+
+names = Utils.list_names()
+names.sort()
+for name in names:
+ mlist = MailList.MailList(name, lock=0)
+ set_bogo_level(mlist, get_bogo_level(mlist))
+