game/onyx2/include/common.php

61 lines
2.3 KiB
PHP

<?php
if (empty($sess->values['connected']) && !defined("xCSRF"))
define("xCSRF", true);
require_once("function.php"); //Inclusion des fonctions principales
require_once("tables.php"); //Inclusion des noms des tables de base de données correspondant à l'architecture du serveur
//On prépare le gestionnaire de templates
$template = new Template();
$template->assign('date', strftime("%A %d %B %Y %H:%M"));
$template->assign('datehb', strftime("/%a %d %b %Y/%H%M %S"));
$template->assign('link', array_map("url", $VAR['link']));
$template->assign('url_serveur', $_SERVER['HTTP_HOST']);
$template->assign('url_images', $VAR['url_images']);
//On charge la session
$SESS = new Session();
//Extraction des données en cache
$header = Cache::read('headerNB');
if (empty($header))
{
$bdd = new BDD();
$nbcovie = $bdd->unique_query("SELECT COUNT(id) AS covenants FROM $table_user WHERE race = 'covenant';");
$nbhumain = $bdd->unique_query("SELECT COUNT(id) AS humains FROM $table_user WHERE race = 'humain';");
$enligne = $bdd->unique_query("SELECT COUNT(session) AS enligne FROM sessions WHERE active = true AND var != '0';");
$infos = $bdd->query("SELECT * FROM $table_infoshead ORDER BY id DESC;");
$msgdem = $bdd->unique_query("SELECT titre FROM $table_messages_demarrage ORDER BY id DESC LIMIT 1;");
$bdd->deconnexion();
Cache::set('headerNB', array('count' => array($nbcovie['covenants'], $nbhumain['humains'], "cette", $enligne['enligne']), 'infos' => $infos, 'messagedemarrage' => $msgdem['titre']));
unset($nbcovie, $nbhumain, $enligne, $infos, $msgdem, $bdd);
$header = Cache::read('headerNB');
}
$template->assign('header', $header);
$template->assign('version', $VAR['version']);
$template->assign('first_page', $VAR['first_page']);
$template->assign('LANG', $LANG);
define("VITESSE", $VAR['vitesse']);
//Evite les attaques CSRF
if (!empty($_SERVER['HTTP_REFERER']) && !ereg(time().'http://'.$_SERVER['HTTP_HOST'], time().$_SERVER['HTTP_REFERER']) && !defined('xCSRF'))
{
elog("Possibilité d'attaque CSRF\n".var_export($_REQUEST,TRUE), 2);
unset($_POST, $_GET);
$_GET = $_POST = array();
}
function limite($txt, $limit)
{
if (strlen($txt) > $limit)
return true;
else
return false;
}
?>