<?php
/* This file is part of Madcollector.
* Madcollector created by Thomas Andrieu,
* Developped by Thomas Andrieu.
* Madcollector is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation.
* Madcollector 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. See the
* GNU General Public License for more details.
*/
session_start();
ob_start(); //required for plugins/filters and PDF output
define("DATA", "data/");
define("VIEWS", "views/");
define("LIBS", "libs/");
define("DAO", "dao/");
define("CLASSES", "classes/");
define("COVER","covers/kingsize/");
define("PREVIEWCOVER","covers/thumbnails/");
define("PLUGINS", "plugins/");
require_once 'cfg/param.php'; // Config file
require_once CLASSES.('pluginmanager.class.php');
require_once CLASSES.('user.class.php');
require_once LIBS.'functions.php';
require_once DAO.'dao.php';
require_once DAO.'settings.dao.php';
require_once DAO.'user.dao.php';
if(!isset($_GET['rub'])) $_GET['rub'] = "";
if(!isset($_GET['lang'])) $_GET['lang'] = "";
if(!isset($_GET['letter'])) $_GET['letter'] = "";
if(!isset($_GET['page'])) $_GET['page'] = "";
if(!isset($_GET['enreg'])) $_GET['enreg'] = "";
if(!isset($_GET['format'])) $_GET['format'] = "";
$madPluginManager = new PluginManager();
$mySettingsDAO = new SettingsDAO();
$myUserDAO = new UserDAO();
if(is_dir("install"))
{
echo '<p><a href="./install/">Install folder is present</a>. Please perform install or remove it once install is complete.</p>';
exit ;
}
$dbconnector = null;
$dbconnector = maddb_connect($cfg_database_driver,$cfg_host,$cfg_database,$cfg_user,$cfg_password);
//Disabling magic_quotes
disable_magic_quotes();
$error_messages = array();
//Getting main settings
$select_settings = $mySettingsDAO->get_site_settings();
for($i=0;$i<sizeOf($select_settings);$i++)
{
$key = $select_settings[$i]["setting_name"];
$table_settings[$key] = $select_settings[$i]["setting_value"];
}
//Language in mc_settings
if ((!isset($_SESSION['lang']))||($_SESSION['lang']==""))
{
$_SESSION['lang']=$table_settings["default_language"];
//Without any default language, force to English
if($_SESSION['lang']=="")
$_SESSION['lang']="en";
}
// Language
if($_GET['lang']!=""){$_SESSION['lang']=$_GET['lang'];}
if(isset($_SESSION['lang'])) $lang=$_SESSION['lang'];
include 'locales/'.$lang.'/locale.'.$lang.".php"; // exemple "locales/fr/locale.fr with fr as $lang variable
//loading theme
if(($table_settings["theme"]!=null)&&($table_settings["theme"]!=""))
if(is_file("themes/".$table_settings["theme"]."/header.inc.php"))
define("THEME", "themes/".$table_settings["theme"]."/");
else define("THEME", "themes/default/");
else define("THEME", "themes/default/");
//Usual GET parameters
//--------------
$letter = substr($_GET['letter'],0,1);
$page = $_GET['page'];
$nbrEnregPage = $_GET['enreg'];
if(($letter == "")||(!isset($letter)))
$letter = ".";
if($letter == "%")
$letter = "[0-9]";
if(($page == "")||(!isset($page))||(!is_numeric($page)))
$page = "1";
if((!isset($_SESSION['NbrEnregPage']))||(!is_numeric($_SESSION['NbrEnregPage'])))
$_SESSION['NbrEnregPage'] = 50;
if(($nbrEnregPage == "")||(!isset($nbrEnregPage))||(!is_numeric($_SESSION['NbrEnregPage'])))
$nbrEnregPage = $_SESSION['NbrEnregPage'];
else $_SESSION['NbrEnregPage'] = $nbrEnregPage;
//---------------
// Reconnecting from cookie session
if ((!isset($_SESSION['login']))&&(isset($_COOKIE['login'])))
{
if($_COOKIE['login'] !="")
{
if(isset($_COOKIE['id_user']))
$_SESSION["id_user"] = $_COOKIE['id_user'];
if(isset($_COOKIE['login']))
$_SESSION["login"] = $_COOKIE['login'];
if(isset($_COOKIE['level']))
$_SESSION["level"] = $_COOKIE['level'];
if(isset($_COOKIE['lang']))
$_SESSION["lang"] = $_COOKIE['lang'];
if(isset($_SESSION["id_user"]))
setcookie("id_user",$_SESSION["id_user"], time()+604800);
if(isset($_SESSION["RegUser"]))
setcookie("login",$_SESSION["login"], time()+604800);
if(isset($_SESSION["level"]))
setcookie("level",$_SESSION["level"], time()+604800);
if(isset($_SESSION["lang"]))
setcookie("lang",$_SESSION["lang"], time()+604800);
}
}
if (isset($_SESSION['login']))
{
//Update last user visit
$myUserDAO->save_user_last_visit($_SESSION['id_user']);
//REFRESH LEVEL STATUS : If the user stays connected with cookies, we refresh its new status given by the administrators
$myUser = $myUserDAO->get_user_by_id($_SESSION['id_user']);
if($myUser!=null)
{
$_SESSION["level"] = $myUser->level;
}
}
$madPluginManager->loadPlugins(PLUGINS);
$rub=$_GET['rub'];
// Array with authorized pages
$tableau=array();
if ($dh = opendir(DATA))
{
while (($file = readdir($dh)) !== false)
if (substr($file, strlen($file) - 8) == '.inc.php')
array_push($tableau, DATA.$file);
}
closedir($dh);
if (isset($rub) && in_array(DATA.$rub.".inc.php", $tableau)) {
$pageInclude = DATA.$rub.".inc.php";
}else{
$pageInclude = DATA."latestnews.inc.php";
}
include $pageInclude;
use_globalfilters();
ob_end_flush();
?>