<?php
/***************************************************************************
- * Copyright (C) 2003-2008 Polytechnique.org *
+ * Copyright (C) 2003-2009 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
"SELECT SUM(nb) AS nb_tot, COUNT(DISTINCT ep.uid) AS nb, e.*,
IF(e.deadline_inscription, e.deadline_inscription >= LEFT(NOW(), 10),
1) AS inscr_open,
- LEFT(10, e.debut) AS debut_day, LEFT(10, e.fin) AS fin_day,
+ LEFT(10, e.debut) AS first_day, LEFT(10, e.fin) AS last_day,
LEFT(NOW(), 10) AS now,
ei.titre,
al.vid AS absent_list, pl.vid AS participant_list,
$evt = $res->fetchOneAssoc();
- if (!$evt || ($GLOBALS['IS_XNET_SITE'] && $evt['accept_nonmembre'] == 0 && !is_member() && !may_update())) {
+ if (!$evt) {
return null;
}
+ if ($GLOBALS['IS_XNET_SITE'] && $evt['accept_nonmembre'] == 0 && !is_member() && !may_update()) {
+ return false;
+ }
// smart calculation of the total number
if (!$item_id) {
$evt['telepaid'] += trim($p);
}
+ make_event_date($evt);
+
return $evt;
}
}
// }}}
+// {{{ function event_change_shortname()
function event_change_shortname(&$page, $eid, $old, $new)
{
global $globals;
et qu'il ne contient que des lettres non accentuées,
des chiffres ou les caractères - et .");
return $old;
+ } elseif ($new && ctype_digit($new)) {
+ $page->trigError("Le raccourci demandé ne peut être accepté car il
+ ne contient que des chiffres. Rajoute-lui par exemple
+ une lettre.");
+ return $old;
}
//vérifier que l'alias n'est pas déja pris
$lastid = XDB::insertId();
XDB::execute(
- "INSERT INTO virtual_redirect (
+ "INSERT IGNORE INTO virtual_redirect (
SELECT {?} AS vid, IF(u.nom IS NULL, m.email, CONCAT(a.alias, {?})) AS redirect
FROM groupex.evenements_participants AS ep
LEFT JOIN groupex.membres AS m ON (ep.uid = m.uid)
$new.'-absents@'.$globals->xnet->evts_domain);
$lastid = XDB::insertId();
- XDB::execute("INSERT INTO virtual_redirect (
- SELECT {?} AS vid, IF(u.nom IS NULL, m.email, CONCAT(a.alias, {?})) AS redirect
+ XDB::execute("INSERT IGNORE INTO virtual_redirect (
+ SELECT {?} AS vid, IF(a.alias IS NULL, m.email, CONCAT(a.alias, {?})) AS redirect
FROM groupex.membres AS m
LEFT JOIN groupex.evenements_participants AS ep ON (ep.uid = m.uid AND ep.eid = {?})
LEFT JOIN auth_user_md5 AS u ON (u.user_id = m.uid)
// cannot happen
return $old;
}
+// }}}
+
+// {{{ function make_event_date()
+function make_event_date(&$e)
+{
+ $start = strtotime($e['debut']);
+ $end = strtotime($e['fin']);
+ $first_day = strtotime($e['first_day']);
+ $last_day = strtotime($e['last_day']);
+ unset($e['debut'], $e['fin'], $e['first_day'], $e['last_day']);
+
+ $date = "";
+ if ($start && $end != $start) {
+ if ($first_day == $last_day) {
+ $date .= "le " . strftime("%d %B %Y", $start) . " de "
+ . strftime("%H:%M", $start) . " à " . strftime("%H:%M", $end);
+ } else {
+ $date .= "du " . strftime("%d %B %Y à %H:%M", $start)
+ . "\nau " . strftime("%d %B %Y à %H:%M", $end);
+ }
+ } else {
+ $date .= "le " . strftime("%d %B %Y à %H:%M", $start);
+ }
+ $e['date'] = $date;
+}
+// }}}
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
?>