<?php

/**------------------------------------------------
*
* Rooty, 2018 <rooty@rooty.me>
*
*
* This software is protected by copyright, please
* read the file COPYRIGHT.
* This program is distributed in the hope that it
* will be useful, but without any warranty; without
* even the implied warranty of merchantability or
* fitness for a particular purpose. Please
* read the file LICENCE.
*
* Fichier config_system.php
*
* Ce fichier contient les definitions des VARIABLES communes permettant au système (variables a prendre en compte lors de l'execution)de Fonctionner
*
* @author Rooty <www.rooty.me|rooty@rooty.me>
* @link www.rooty.me
* @since 2018/04/02
* @version 0.3
* @package commun
* @subpackage config
* @copyright Copyright &copy; 2009-2018, Rooty
*/

#####################################################################################################
################################# Parametrage
#####################################################################################################
/**
* declaration du system... si cette variable n'est pas définie, les fichier inclus ne marche pas...
* cette variable est déclarée sur la page d'execution du script.
*<p> if ( !defined('SYSTEM_IN') )
* {
* die("Hacking attempt");
* }</p>
*/
if ( !defined('SYSTEM_IN') )
{
 die("Hacking attempt");
}

/*
* Permet le repport de toutes les erreurs
*/
//error_reporting(E_ALL);

/*
* Désactive magic quotes
*/
// set_magic_quotes_runtime(0);

/*
* Désactive la taille mémoire limite...
*/
ini_set("memory_limit", "-1");

/*
* Table de traduction des entités par défaut du système
*/
define ("SYSTEM_DEFAULT_HTMLENTITIES", "utf-8");

##########################################################################################
# Configuration générale des éléments
##########################################################################################
/* Configuration des utilisateurs spécifiques */
$GLOBALS['SYSTEM_DEFAULT_USER_ADMIN']=2;		/* compte par défaut d'administration */
$GLOBALS['SYSTEM_DEFAULT_USER_GUEST']=1;		/* utilisateur anonyme par défaut (1 seul) */
/* Langue par defaut utilisée */
$GLOBALS['SYSTEM_DEFAULT_LANGUAGE']=1;			/* identifiant de la langue par défaut */
$GLOBALS['SYSTEM_DEFAULT_LANGUAGE_CODE']="fr";		/* identifiant de la langue par défaut */
$GLOBALS['SYSTEM_DEFAULT_NODE']=1;			/* utilisateur anonyme par défaut (1 seul) */

/* clé system de cryptage */
$GLOBALS['SYSTEM_KEY']="my Key:Granilim, you'll never find it";

// global $_SERVER;
// var_dump($_SERVER);
/* Definition de l'ip Utilisateur */
if( getenv('HTTP_X_FORWARDED_FOR') != '' )
{
	$systemIp = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : $REMOTE_ADDR );

	$entries = explode(',', getenv('HTTP_X_FORWARDED_FOR'));
	reset($entries);
	while (list(, $entry) = each($entries))
	{
		$entry = trim($entry);
		if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", $entry, $ip_list) )
		{
			$private_ip = array('/^0\./', '/^127\.0\.0\.1/', '/^192\.168\..*/', '/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/', '/^10\..*/', '/^224\..*/', '/^240\..*/');
			$found_ip = preg_replace($private_ip, $systemIp, $ip_list[1]);
			if ($systemIp != $found_ip)
			{
				$systemIp = $found_ip;
				break;
			}
		}
	}
}
else
{
	$systemIp = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : $REMOTE_ADDR );
}
$GLOBALS['SYSTEM_IP']=$systemIp;
unset($systemIp);

##########################################################################################
# Configuration générale des éléments
##########################################################################################
/* Configuration des utilisateurs spécifiques */
$GLOBALS['SYSTEM_TEMPLATE_DEFAULT_DIR']="default";			/* compte par défaut d'administration */
$GLOBALS['SYSTEM_TEMPLATE_DEFAULT_TITLE']="LCube";		/* utilisateur anonyme par défaut (1 seul) */
$GLOBALS['SYSTEM_TEMPLATE_DEFAULT_DESCRIPTION']="Fablab Associatif en Nouvelle Aquitaine";		/* utilisateur anonyme par défaut (1 seul) */
?>
