<?php
/***************************************************************************
- * Copyright (C) 2003-2004 Polytechnique.org *
+ * Copyright (C) 2003-2007 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
***************************************************************************/
require_once('platal.inc.php');
-require_once('xorg/globals.inc.php');
+require_once('globals.inc.php');
require_once('xorg/session.inc.php');
-XorgGlobals::init();
-XorgGlobals::setlocale();
+$globals = new PlatalGlobals('XorgSession');
XorgSession::init();
-// {{{ function _new_page()
+// {{{ class XorgPage
-function _new_page($type, $tpl_name, $min_auth, $admin=false)
+class XorgPage extends PlatalPage
{
- global $page,$globals;
- require_once("xorg/page.inc.php");
- if (!empty($admin)) {
- $page = new XorgAdmin($tpl_name, $type);
- } else switch($min_auth) {
- case AUTH_PUBLIC:
- $page = new XorgPage($tpl_name, $type);
- break;
-
- case AUTH_COOKIE:
- $page = new XorgCookie($tpl_name, $type);
- break;
-
- case AUTH_MDP:
- $page = new XorgAuth($tpl_name, $type);
+ function XorgPage($tpl, $type = SKINNED)
+ {
+ $this->PlatalPage($tpl, $type);
}
- $page->assign('xorg_tpl', $tpl_name);
+ function run()
+ {
+ global $globals, $platal;
+ $this->assign('globals', $globals);
+ if (isset($platal) && $platal->path == 'register') {
+ $skin = 'register.tpl';
+ } else {
+ $skin = S::v('skin', 'default.tpl');
+ }
+ $this->_run('skin/' . $skin);
+ }
}
// }}}
-// {{{ function new_skinned_page()
+// {{{ class XorgAdmin
-function new_skinned_page($tpl_name, $min_auth)
+/** Une classe pour les pages réservées aux admins (authentifiés!).
+ */
+class XorgAdmin extends XorgPage
{
- _new_page(SKINNED, $tpl_name, $min_auth);
+ // {{{ function XorgAdmin()
+
+ function XorgAdmin($tpl, $type = SKINNED)
+ {
+ $this->XorgPage($tpl, $type);
+ check_perms();
+ }
+
+ // }}}
}
// }}}
-// {{{ function new_simple_page()
-function new_simple_page($tpl_name, $min_auth)
+function _new_page($type, $tpl_name, $admin=false)
{
global $page;
- _new_page(SKINNED, $tpl_name, $min_auth);
- $page->assign('simple', true);
+ if (!empty($admin)) {
+ $page = new XorgAdmin($tpl_name, $type);
+ } else {
+ $page = new XorgPage($tpl_name, $type);
+ }
+
+ $page->assign('xorg_tpl', $tpl_name);
}
-// }}}
-// {{{ function new_nonhtml_page()
+// {{{ function new_skinned_page()
-function new_nonhtml_page($tpl_name, $min_auth)
+function new_skinned_page($tpl_name)
{
- _new_page(NO_SKIN, $tpl_name, $min_auth, false);
+ _new_page(SKINNED, $tpl_name);
}
// }}}
function new_admin_page($tpl_name)
{
- _new_page(SKINNED, $tpl_name, AUTH_MDP, true);
-}
-
-// }}}
-// {{{ function new_admin_table_editor()
-
-function new_admin_table_editor($table, $idfield, $idedit=false)
-{
- array_walk($_GET, 'unfix_gpc_magic');
- array_walk($_POST, 'unfix_gpc_magic');
- array_walk($_REQUEST, 'unfix_gpc_magic');
-
- global $editor;
- new_admin_page('table-editor.tpl');
- require_once('xorg.table-editor.inc.php');
- $editor = new XOrgAdminTableEditor($table,$idfield,$idedit);
+ _new_page(SKINNED, $tpl_name, true);
}
// }}}