From d55888e6f1c14ad8d368609cf50779607a92b184 Mon Sep 17 00:00:00 2001 From: x2000habouzit Date: Thu, 13 Jul 2006 23:21:20 +0000 Subject: [PATCH] migrate admin.php, recode into latin1 git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@479 839d8a87-29fc-0310-9880-83ba4fa771e5 --- htdocs.net/admin.php | 49 ------------------------------------------ include/xnet/page.inc.php | 2 +- modules/xnet.php | 54 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+), 50 deletions(-) delete mode 100644 htdocs.net/admin.php diff --git a/htdocs.net/admin.php b/htdocs.net/admin.php deleted file mode 100644 index 8d7c59d..0000000 --- a/htdocs.net/admin.php +++ /dev/null @@ -1,49 +0,0 @@ -useMenu(); - - if (Get::has('del')) { - $res = $globals->xdb->query('SELECT id, nom, mail_domain FROM groupex.asso WHERE diminutif={?}', Get::get('del')); - list($id, $nom, $domain) = $res->fetchOneRow(); - $page->assign('nom', $nom); - if ($id && Post::has('del')) { - $globals->xdb->query('DELETE FROM groupex.membres WHERE asso_id={?}', $id); - $page->trig('membres supprimés'); - - if ($domain) { - $globals->xdb->query('DELETE FROM virtual_domains WHERE domain={?}', $domain); - $globals->xdb->query('DELETE FROM virtual, virtual_redirect - USING virtual INNER JOIN virtual_redirect USING (vid) - WHERE alias LIKE {?}', '%@'.$domain); - $page->trig('suppression des alias mails'); - - require_once('lists.inc.php'); - $client =& lists_xmlrpc(Session::getInt('uid'), Session::get('password'), $domain); - if ($listes = $client->get_lists()) { - foreach ($listes as $l) { - $client->delete_list($l['list'], true); - } - $page->trig('mail lists surpprimées'); - } - } - - $globals->xdb->query('DELETE FROM groupex.asso WHERE id={?}', $id); - $page->trig("Groupe $nom supprimé"); - Get::kill('del'); - } - if (!$id) { - Get::kill('del'); - } - } - - if (Post::has('diminutif')) { - $globals->xdb->query('INSERT INTO groupex.asso (id,diminutif) VALUES(NULL,{?})', Post::get('diminutif')); - redirect(Post::get('diminutif').'/edit.php'); - } - - $res = $globals->xdb->query('SELECT nom,diminutif FROM groupex.asso ORDER by NOM'); - $page->assign('assos', $res->fetchAllAssoc()); - - $page->run(); -?> diff --git a/include/xnet/page.inc.php b/include/xnet/page.inc.php index 2449623..ba72a7f 100644 --- a/include/xnet/page.inc.php +++ b/include/xnet/page.inc.php @@ -63,7 +63,7 @@ class XnetPage extends PlatalPage $sub['liste des groupes'] = 'plan'; if (logged()) { if (has_perms()) { - $sub['admin X.net'] = 'admin.php'; + $sub['admin X.net'] = 'admin'; } $sub['déconnexion'] = 'exit'; } diff --git a/modules/xnet.php b/modules/xnet.php index 84bb0d2..282d7c8 100644 --- a/modules/xnet.php +++ b/modules/xnet.php @@ -34,6 +34,7 @@ class XnetModule extends PLModule 'services' => $this->make_hook('services', AUTH_PUBLIC), 'manuel' => $this->make_hook('manuel', AUTH_PUBLIC), + 'admin' => $this->make_hook('admin', AUTH_MDP, 'admin'), 'plan' => $this->make_hook('plan', AUTH_PUBLIC), ); } @@ -86,6 +87,59 @@ class XnetModule extends PLModule $page->useMenu(); } + function handler_admin(&$page) + { + global $globals; + + new_admin_page('xnet/admin.tpl'); + $page->useMenu(); + + if (Get::has('del')) { + $res = $globals->xdb->query('SELECT id, nom, mail_domain + FROM groupex.asso WHERE diminutif={?}', + Get::get('del')); + list($id, $nom, $domain) = $res->fetchOneRow(); + $page->assign('nom', $nom); + if ($id && Post::has('del')) { + $globals->xdb->query('DELETE FROM groupex.membres WHERE asso_id={?}', $id); + $page->trig('membres supprimés'); + + if ($domain) { + $globals->xdb->query('DELETE FROM virtual_domains WHERE domain={?}', $domain); + $globals->xdb->query('DELETE FROM virtual, virtual_redirect + USING virtual INNER JOIN virtual_redirect USING (vid) + WHERE alias LIKE {?}', '%@'.$domain); + $page->trig('suppression des alias mails'); + + require_once('lists.inc.php'); + $client =& lists_xmlrpc(Session::getInt('uid'), Session::get('password'), $domain); + if ($listes = $client->get_lists()) { + foreach ($listes as $l) { + $client->delete_list($l['list'], true); + } + $page->trig('mail lists surpprimées'); + } + } + + $globals->xdb->query('DELETE FROM groupex.asso WHERE id={?}', $id); + $page->trig("Groupe $nom supprimé"); + Get::kill('del'); + } + if (!$id) { + Get::kill('del'); + } + } + + if (Post::has('diminutif')) { + $globals->xdb->query('INSERT INTO groupex.asso (id,diminutif) + VALUES(NULL,{?})', Post::get('diminutif')); + redirect(Post::get('diminutif').'/edit.php'); + } + + $res = $globals->xdb->query('SELECT nom,diminutif FROM groupex.asso ORDER by NOM'); + $page->assign('assos', $res->fetchAllAssoc()); + } + function handler_plan(&$page) { global $globals; -- 2.1.4