X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=classes%2Fxorgpage.php;h=2bf2062b95e126a53e4170884a6d81c92a736b37;hb=d43f7f9521e4a4207fb0acda796011baacd3e97e;hp=3d121878e379d0d9e8dc39c1042c49c2eb4c9c7f;hpb=020a95fa78dc544b3064739d409026a0056d98f4;p=platal.git diff --git a/classes/xorgpage.php b/classes/xorgpage.php index 3d12187..2bf2062 100644 --- a/classes/xorgpage.php +++ b/classes/xorgpage.php @@ -21,15 +21,20 @@ class XorgPage extends PlPage { + protected $forced_skin = null; + protected $default_skin = null; + public function __construct() { parent::__construct(); // Set the default page $this->changeTpl('platal/index.tpl'); + if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false) { + $this->addJsLink('json2.js'); + } $this->addJsLink('jquery.xorg.js'); $this->addJsLink('overlib.js'); - $this->addJsLink('secure_hash.js'); $this->addJsLink('core.js'); $this->addJsLink('xorg.js'); $this->setTitle('le site des élèves et anciens élèves de l\'École polytechnique'); @@ -50,13 +55,36 @@ class XorgPage extends PlPage } } + /** Force the skin to use, bypassing user choice. + * Typically used for the 'register' page. + * @param $skin The skin to use. + */ + public function forceSkin($skin) + { + $this->forced_skin = $skin; + } + + /** Choose another 'default' skin. + * Typically used for the 'Auth Groupe X' login page. + * @param $skin The default skin to use. + */ + public function setDefaultSkin($skin) + { + $this->default_skin = $skin; + } + public function run() { global $globals, $platal; - if (isset($platal) && $platal->path == 'register') { - $skin = $globals->register_skin . ".tpl"; + if ($this->forced_skin !== null) { + $skin = $this->forced_skin . '.tpl'; } else { - $skin = S::v('skin', $globals->skin . ".tpl"); + if ($this->default_skin === null) { + $default_skin = $globals->skin; + } else { + $default_skin = $this->default_skin; + } + $skin = S::v('skin', $default_skin . '.tpl'); } $this->_run('skin/' . $skin); }