server/htdocs/index.php

120 lines
2.2 KiB
PHP
Raw Normal View History

2013-10-09 13:40:23 +00:00
<?php
//Inclusion de l'API Onyx
require_once(trim(file_get_contents('./.onyx')));
2013-10-22 06:16:02 +00:00
define("SALT_USER", "connected");
define("SALT_ADMIN", "admin");
2013-10-09 13:40:23 +00:00
//On active le débogage si l'on est sur le domaine de debug
2013-10-09 21:04:45 +00:00
if ($_SERVER["SERVER_NAME"] == "localhost" || $_SERVER["SERVER_NAME"] == "fic" || $_SERVER["SERVER_NAME"] == "atlantis.chen.li")
2013-10-09 13:40:23 +00:00
define("DEBUG", true);
//Chargement de tout le nécessaire pour le site
2013-10-22 06:19:51 +00:00
require_once("common.php");
2013-10-09 13:40:23 +00:00
2013-10-26 06:59:59 +00:00
$template->assign("SALT_USER",SALT_USER);
$template->assign("SALT_ADMIN",SALT_ADMIN);
2013-10-22 06:16:02 +00:00
$n = preg_match_all("#[^/]+#", strtolower(gpc("p")), $out);
$p = $out[0];
2013-10-09 13:40:23 +00:00
2013-10-22 06:16:02 +00:00
// Admin part
2013-10-22 06:19:51 +00:00
if ($n && $p[0] == SALT_ADMIN)
2013-10-09 13:40:23 +00:00
{
2013-10-22 06:16:02 +00:00
if ($n <= 1)
$page = require("admin/home.php");
else
2013-10-09 13:40:23 +00:00
{
2013-10-22 06:16:02 +00:00
switch($p[1])
2013-10-09 13:40:23 +00:00
{
2013-10-22 06:16:02 +00:00
case "exercices/import/":
case "exercices/import":
$page = require("admin/import_exercices.php");
2013-10-09 13:40:23 +00:00
break;
2013-10-22 06:16:02 +00:00
case "users":
case "users/":
$page = require("admin/list_users.php");
2013-10-09 13:40:23 +00:00
break;
2013-10-22 06:16:02 +00:00
case "users/import":
case "users/import/":
$page = require("admin/import_users.php");
2013-10-09 13:40:23 +00:00
break;
}
}
2013-10-22 06:16:02 +00:00
}
2013-10-09 13:40:23 +00:00
2013-10-22 06:16:02 +00:00
// Known users
2013-10-22 06:19:51 +00:00
else if ($n && $p[0] == SALT_USER)
2013-10-22 06:16:02 +00:00
{
$connected = true;
if ($n <= 1)
$page = require("team/home.php");
2013-10-22 06:16:02 +00:00
else
2013-10-09 13:40:23 +00:00
{
2013-10-22 06:16:02 +00:00
$TEAM = $p[1];
if ($n <= 2)
$page = require("team/team.php");
else
{
switch($p[2])
{
2013-10-26 06:59:59 +00:00
case "me/":
case "me":
$page = require("team/me.php");
2013-10-22 06:16:02 +00:00
break;
case "summary":
case "summary/":
$page = require("team/summary.php");
break;
case "confirmation":
$page = require("team/confirmation.php");
break;
2013-10-22 06:16:02 +00:00
}
// SALT/$team/$theme
if (empty($page))
{
$THEME = $p[2];
if ($n == 4)
{
$EXERCICE = $p[3];
$page = require("team/exercice.php");
}
else if ($n == 5)
{
if ($p[4] == "submission")
$page = require("team/submission.php");
}
2013-10-22 06:16:02 +00:00
}
}
2013-10-09 13:40:23 +00:00
}
}
2013-10-22 06:16:02 +00:00
// Public part
else
2013-10-09 13:40:23 +00:00
{
2013-10-22 06:16:02 +00:00
if ($n == 0)
$page = require("public/home.php");
else if ($n == 1)
2013-10-09 13:40:23 +00:00
{
2013-10-26 06:59:59 +00:00
$TEAM = intval(substr($p[0], 0, strpos($p[0], "-")));
2013-10-09 15:51:12 +00:00
2013-11-04 22:20:16 +00:00
$page = require("public/score.php");
2013-10-09 13:40:23 +00:00
}
}
2013-10-22 06:16:02 +00:00
// No page here...?
2013-10-09 13:40:23 +00:00
if (empty($page))
{
$template->assign("err", 404);
$template->display("404.tpl");
}
else
$template->display($page.".tpl");