'%grp/events/sub' => $this->make_hook('sub', AUTH_MDP),
'%grp/events/csv' => $this->make_hook('csv', AUTH_MDP),
'%grp/events/ical' => $this->make_hook('ical', AUTH_MDP),
- '%grp/events/edit' => $this->make_hook('edit', AUTH_MDP),
- '%grp/events/admin' => $this->make_hook('admin', AUTH_MDP),
+ '%grp/events/edit' => $this->make_hook('edit', AUTH_MDP, 'groupadmin'),
+ '%grp/events/admin' => $this->make_hook('admin', AUTH_MDP, 'groupmember'),
);
}
{
global $globals;
- if ($archive == 'archive') {
- $archive = true;
- new_groupadmin_page('xnetevents/index.tpl');
- } else {
- $archive = false;
- new_group_open_page('xnetevents/index.tpl');
- }
-
+ $page->changeTpl('xnetevents/index.tpl');
$action = null;
+ $archive = ($archive == 'archive' && may_update());
+
if (Post::has('del')) {
$action = 'del';
$eid = Post::v('del');
function handler_sub(&$page, $eid = null)
{
require_once dirname(__FILE__).'/xnetevents/xnetevents.inc.php';
-
- new_group_open_page('xnetevents/subscribe.tpl');
+ $page->changeTpl('xnetevents/subscribe.tpl');
$evt = get_event_detail($eid);
if (!$evt) {
}
}
- new_groupadmin_page('xnetevents/edit.tpl');
+ $page->changeTpl('xnetevents/edit.tpl');
$moments = range(1, 4);
$error = false;
return PL_NOT_FOUND;
}
- if ($evt['show_participants']) {
- new_group_page('xnetevents/admin.tpl');
- } else {
- new_groupadmin_page('xnetevents/admin.tpl');
+ $page->changeTpl('xnetevents/admin.tpl');
+ if (!$evt['show_participants'] && !may_update()) {
+ return PL_FORBIDDEN;
}
if (may_update() && Post::v('adm')) {
$page->assign('oubliinscription', $res);
}
+ $absents = XDB::iterator("SELECT p.uid,
+ IF(m.origine = 'X', IF(u.nom_usage != '', u.nom_usage, u.nom), m.nom) AS nom,
+ IF(m.origine = 'X', u.prenom, u.prenom) AS prenom,
+ IF(m.origine = 'X', u.promo, m.origine) AS promo,
+ IF(m.origine = 'X', FIND_IN_SET('femme', u.flags), m.sexe) AS sexe,
+ IF(m.origine = 'X', a.alias, m.email) AS email
+ FROM groupex.evenements_participants AS p
+ INNER JOIN groupex.membres AS m USING(uid)
+ LEFT JOIN auth_user_md5 AS u ON (u.user_id = m.uid)
+ LEFT JOIN aliases AS a ON (a.id = u.user_id AND a.type = 'a_vie')
+ WHERE p.eid = {?} AND nb = 0
+ GROUP BY p.uid
+ ORDER BY nom, prenom, promo", $evt['eid']);
+
+ $page->assign('absents', $absents);
$page->assign('participants',
get_event_participants($evt, $item_id, $tri,
"LIMIT ".($ofs*NB_PER_PAGE).", ".NB_PER_PAGE));