migrate admin.php, recode into latin1
authorx2000habouzit <x2000habouzit@839d8a87-29fc-0310-9880-83ba4fa771e5>
Thu, 13 Jul 2006 23:21:20 +0000 (23:21 +0000)
committerx2000habouzit <x2000habouzit@839d8a87-29fc-0310-9880-83ba4fa771e5>
Thu, 13 Jul 2006 23:21:20 +0000 (23:21 +0000)
git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@479 839d8a87-29fc-0310-9880-83ba4fa771e5

htdocs.net/admin.php [deleted file]
include/xnet/page.inc.php
modules/xnet.php

diff --git a/htdocs.net/admin.php b/htdocs.net/admin.php
deleted file mode 100644 (file)
index 8d7c59d..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-    require 'xnet.inc.php';
-    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());
-    
-    $page->run();
-?>
index 2449623..ba72a7f 100644 (file)
@@ -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';
         }
index 84bb0d2..282d7c8 100644 (file)
@@ -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;