X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=include%2Fxorg.inc.php;h=97c8a037e175e75f9624925d2cb33ae6bbf4f66b;hb=fe136252bc2722c0df328d889728008c473a0eb2;hp=cb86440297863669ad9bb9f7da4528340b87c10d;hpb=a3a049fc80d3707bcc76903ab89f73974c470c0c;p=platal.git diff --git a/include/xorg.inc.php b/include/xorg.inc.php index cb86440..97c8a03 100644 --- a/include/xorg.inc.php +++ b/include/xorg.inc.php @@ -18,67 +18,67 @@ * Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * ***************************************************************************/ + 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 ($min_auth == AUTH_PUBLIC && Env::get('force_login') == '1') - $min_auth = AUTH_COOKIE; - 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; + $this->assign('globals', $globals); + $this->_run('skin/'.S::v('skin', 'default.tpl')); + } } // }}} -function new_identification_page() -{ - _new_page(SKINNED, '', AUTH_MDP); -} -// {{{ 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); } // }}} @@ -86,22 +86,7 @@ function new_nonhtml_page($tpl_name, $min_auth) 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); } // }}}