<?php
///////////////////////////////////////////////////////////////////////////////////////////
///Script PHP/MYSQL of management of classifieds ads developed by Script PAG
///Script PAG all rights reserved. Use under license. http://www.script-pag.com
///////////////////////////////////////////////////////////////////////////////////////////

############################################################
///////////////////////////////////
///Initialize module's loader
//////////////////////////////////
require_once __DIR__.'/includes/loaderClass.php';
loader::init();

require_once __DIR__.'/includes/all_fns.php';
require_once __DIR__.'/includes/modulesClass.php';


///////////////////////////////////
///Get slug
//////////////////////////////////

$slug = slug();
$controller = null;

///////////////////////////////////
//Deposit
//////////////////////////////////

if($slug == $language['router_slug_deposit'])
$controller = 'ad_deposit';

///////////////////////////////////
//Search engine
//////////////////////////////////

elseif($slug == $language['router_slug_search_ads'] || $slug == $language['router_slug_search_shops'])
$controller = 'search';

///////////////////////////////////
//Ad
//////////////////////////////////

elseif($slug == $language['router_slug_ad'])
$controller = 'ad_page';

///////////////////////////////////
//Shop
//////////////////////////////////

elseif($slug == $language['router_slug_shop'])
$controller = 'shop_page';

///////////////////////////////////
//Page
//////////////////////////////////

elseif($slug == $language['router_slug_page'])
$controller = 'page';

///////////////////////////////////
//Rss
//////////////////////////////////

elseif($slug == $language['router_slug_rss'])
$controller = 'rss';

///////////////////////////////////
//Php file
//////////////////////////////////

elseif(!$controller && file_exists(__DIR__.DIRECTORY_SEPARATOR.$slug) && !is_dir(__DIR__.DIRECTORY_SEPARATOR.$slug))
$controller = str_replace('.php', '', $slug);

///////////////////////////////////
///Load modules manager
//////////////////////////////////
modules::load();

///////////////////////////////////
///Test if the slug is module's route
//////////////////////////////////
if(!$controller && $route = is_module_route($slug)) {
	$controller = 'module';
	$_GET['module'] = $route[0];
	$_GET['action'] = $route[1];
}

///////////////////////////////////
//404
//////////////////////////////////

elseif(!$controller) $controller = '404';

///////////////////////////////////
///Initialize pool manager
//////////////////////////////////
pool::init('front', $controller);

///////////////////////////////////
///Initialize modules
//////////////////////////////////
modules::init();

///////////////////////////////////
///Execute beforedispatch hook
//////////////////////////////////
pool::execute('beforedispatch');

///////////////////////////////////
//Load controller file
//////////////////////////////////

require_once __DIR__.'/'.$controller.'.php';

///////////////////////////////////
///Execute postdispatch hook
//////////////////////////////////
pool::execute('postdispatch');

///////////////////////////////////
///Close bdd connection
//////////////////////////////////
$conn = null;