<?php
require 'xnet.inc.php';
-new_page('xnet/groupe/inscrire.tpl', AUTH_MDP);
+new_page('xnet/groupe/inscrire.tpl');
+$page->doAuth(true);
$page->useMenu();
$page->setType($globals->asso('cat'));
$page->assign('asso', $globals->asso());
+++ /dev/null
-<?php
- require 'xnet.inc.php';
-
- if (logged()) {
- redirect("index.php");
- }
-
- new_page('index.tpl', AUTH_MDP);
- $page->run();
-?>
// the wiki engine used is pmwiki.
// the templates created are stored in wiki.d/cache_wikiword.tpl
-// some page can be seen by everybody (public), but to validate a password
-// if we arrive here before setting new access we need to try an auth
-new_page('wiki.tpl', Env::has('response') ? AUTH_MDP : AUTH_PUBLIC);
+new_page('wiki.tpl'));
if ($globals->wiki->wikidir && $globals->xnet->wiki) {
$wikisite = 'xnet';
wiki_assign_auth();
}
-if (!Env::get('action'))
- $page->assign('xorg_extra_header', "<script type='text/JavaScript'>\n<!--\nNix={map:null,convert:function(a){Nix.init();var s='';for(i=0;i<a.length;i++){var b=a.charAt(i);s+=((b>='A'&&b<='Z')||(b>='a'&&b<='z')?Nix.map[b]:b);}return s;},init:function(){if(Nix.map!=null)return;var map=new Array();var s='abcdefghijklmnopqrstuvwxyz';for(i=0;i<s.length;i++)map[s.charAt(i)]=s.charAt((i+13)%26);for(i=0;i<s.length;i++)map[s.charAt(i).toUpperCase()]=s.charAt((i+13)%26).toUpperCase();Nix.map=map;},decode:function(a){document.write(Nix.convert(a));}}\n//-->\n</script>\n");
+if (!Env::get('action')) {
+ $page->addJsLink('javascript/wiki.js');
+}
+
$page->assign('is_member', is_member());
$page->assign('has_perms', has_perms() || may_update());
// {{{ function new_skinned_page()
-function new_page($tpl_name, $min_auth)
+function new_page($tpl_name, $type = SKINNED)
{
- global $page,$globals;
+ global $page, $globals;
require_once("xnet/page.inc.php");
- switch($min_auth) {
- case AUTH_PUBLIC:
- $page = new XnetPage($tpl_name, $type);
- break;
-
- default:
- $page = new XnetAuth($tpl_name, $type);
- }
+ $page = new XnetPage($tpl_name, $type);
$page->assign('xorg_tpl', $tpl_name);
}
-function new_skinned_page($tpl_name, $min_auth)
+function new_skinned_page($tpl_name)
{
- return new_page($tpl_name, $min_auth);
+ return new_page($tpl_name);
}
// }}}
+
function new_identification_page()
{
- new_page('', AUTH_MDP);
global $page;
+
+ new_page('');
+ $page->doAuth(true);
$page->useMenu();
}
function new_group_page($tpl_name)
{
- global $page,$globals;
- require_once("xnet/page.inc.php");
- $page = new XnetGroupPage($tpl_name);
- $page->assign('xorg_tpl', $tpl_name);
+ global $page, $globals;
+
+ new_page($tpl_name);
+
+ $page->doAuth(true);
+ if (!is_member() && !has_perms()) {
+ $page->kill("You have not sufficient credentials");
+ }
+
+ $page->useMenu();
+ $page->assign('asso', $globals->asso());
+ $page->setType($globals->asso('cat'));
}
// }}}
function new_groupadmin_page($tpl_name)
{
- global $page,$globals;
- require_once("xnet/page.inc.php");
- $page = new XnetGroupAdmin($tpl_name);
- $page->assign('xorg_tpl', $tpl_name);
+ global $page, $globals;
+
+ new_page($tpl_name);
+
+ if (!may_update()) {
+ $page->kill("You have not sufficient credentials");
+ }
+
+ $page->useMenu();
+ $page->assign('asso', $globals->asso());
+ $page->setType($globals->asso('cat'));
}
// }}}
function new_admin_page($tpl_name)
{
- global $page,$globals;
- require_once("xnet/page.inc.php");
- $page = new XnetAdmin($tpl_name);
- $page->assign('xorg_tpl', $tpl_name);
+ global $page, $globals;
+
+ new_page($tpl_name);
+
+ check_perms();
+
+ $page->useMenu();
+ if ($globals->asso('cat')) {
+ $page->assign('asso', $globals->asso());
+ $page->setType($globals->asso('cat'));
+ }
}
// }}}
function new_nonhtml_page($tpl_name)
{
global $page, $globals;
- require_once("xnet/page.inc.php");
- $page = new XnetGroupPage($tpl_name, NO_SKIN);
- $page->assign('xorg_tpl', $tpl_name);
+
+ new_page($tpl_name, NO_SKIN);
+
+ $page->doAuth(true);
+ if (!is_member() && !has_perms()) {
+ $page->kill("You have not sufficient credentials");
+ }
+
+ $page->useMenu();
+ $page->assign('asso', $globals->asso());
+ $page->setType($globals->asso('cat'));
}
// }}}
// }}}
// {{{ function doAuth()
- function doAuth()
+ function doAuth($force = false)
{
$this->register_function('list_all_my_groups', 'list_all_my_groups');
$this->register_modifier('cat_pp', 'cat_pp');
$this->assign('it_is_xnet', true);
+ if (!logged() && $force) {
+ $_SESSION['session']->doLogin($this);
+ }
if (!logged() && Get::has('auth')) {
$_SESSION['session']->doAuthX($this);
}
}
// }}}
-// {{{ class XnetAuth
-
-/** Une classe pour les pages nécessitant l'authentification.
- * (equivalent de controlauthentification.inc.php)
- */
-class XnetAuth extends XnetPage
-{
- // {{{ function XnetAuth()
-
- function XnetAuth($tpl, $type=SKINNED)
- {
- $this->XnetPage($tpl, $type);
- }
-
- // }}}
- // {{{ function doAuth()
-
- function doAuth()
- {
- parent::doAuth();
- $_SESSION['session']->doAuth($this);
- }
-
- // }}}
-}
-
-// }}}
-// {{{ class XnetAdmin
-
-/** Une classe pour les pages réservées aux admins (authentifiés!).
- */
-class XnetAdmin extends XnetAuth
-{
- // {{{ function XnetAdmin()
-
- function XnetAdmin($tpl, $type=SKINNED)
- {
- global $globals;
-
- $this->XnetAuth($tpl, $type);
- check_perms();
-
- $this->useMenu();
- if ($globals->asso('cat')) {
- $this->assign('asso', $globals->asso());
- $this->setType($globals->asso('cat'));
- }
- }
-
- // }}}
-}
-
-// }}}
-// {{{ class XnetGroupPage
-
-/** Une classe pour les pages réservées aux admins (authentifiés!).
- */
-class XnetGroupPage extends XnetAuth
-{
- // {{{ function XnetAdmin()
-
- function XnetGroupPage($tpl, $type=SKINNED)
- {
- global $globals;
-
- $this->XnetAuth($tpl, $type);
- if (!is_member() && !has_perms()) {
- $this->kill("You have not sufficient credentials");
- }
-
- $this->useMenu();
- $this->assign('asso', $globals->asso());
- $this->setType($globals->asso('cat'));
- }
-
- // }}}
-}
-
-// }}}
-// {{{ class XnetGroupAdmin
-
-/** Une classe pour les pages réservées aux admins (authentifiés!).
- */
-class XnetGroupAdmin extends XnetAuth
-{
- // {{{ function XnetAdmin()
-
- function XnetGroupAdmin($tpl, $type=SKINNED)
- {
- global $globals;
-
- $this->XnetAuth($tpl, $type);
- if (!may_update()) {
- $this->kill("You have not sufficient credentials");
- }
-
- $this->useMenu();
- $this->assign('asso', $globals->asso());
- $this->setType($globals->asso('cat'));
- }
-
- // }}}
-}
-
-// }}}
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker:
?>
// {{{ doLogin
function doLogin(&$page) {
- // login for non-x has been disabled, so don't need this js anymore
- //$page->addJsLink('javascript/do_challenge_response.js');
- $page->assign("xorg_tpl", "xnet/login.tpl");
- $page->run();
+ redirect($_SESSION['session']->loginX);
}
// }}}
{only_public}
<div>Me connecter :</div>
<a class='gp' href="{$smarty.session.session->loginX}">polytechnicien</a>
- <!--a class='gp' href="{rel}/login.php">extérieur</a-->
{/only_public}
</td>
<td id="search">