Il file config.php

Config.php

 

Il file è situato nella root del software e definisce le configurazioni di base del framework per l'installazione.

 

Il file config.php è diviso in due parti fondamentali.

 

La prima parte tratta le configurazioni di installazione del software, come ad esempio la path in cui il framework è stato installato e le informazioni di lingua e dell'url del sito.
Tali informazioni possono essere moficiate a seconda delle esigenze.

 

/*
  CONFIG.PHP
 */
 
 /**
 ## USER CONFIGURATION
 */
 
 //debug
 Config::get()->DEBUG_MODE = false;
 
 //http var
 Config::get()->HTTP_PROTOCOLL = 'http://';
 Config::get()->HTTP_PORT = '80';
 
 //install path - use with / - Es /site/ or / or /site/blog/
 Config::get()->INSTALL_PATH = "/";
 
 //site url - use [lang] e [url] per inserire il match lingua e url
 Config::get()->LANGS_REQUEST_PARAM = "lang";
 Config::get()->URL_REQUEST_PARAM = "url";
 Config::get()->SITE_URL = Config::get()->HTTP_PROTOCOLL . $_SERVER['SERVER_NAME'] . Config::get()->INSTALL_PATH . "[lang][url]";
 
 //database
 Config::get()->DB_SERVER = "localhost";
 Config::get()->DB_NAME = "create_wiki";
 Config::get()->DB_USER = "create_wiki";
 Config::get()->DB_PASS = "create_wiki";
 Config::get()->DB_PREFIX = "cw_";
 
 //lang define
 Config::get()->DEFAULT_LANG = "it";
 Config::get()->LANGS = array(
  "it" => array(
   "label" => "Italiano",
   "path" => ""
  )
 );
 
 //tpl vars
 Config::get()->TPL_PAGES_CONTENT_VAR = "pages_content";                  //variabile per stampare il contenuto delle pagine all'interno dei tpl generali
 
 //error tpl
 Config::get()->ERROR_TPL_HEADER_STATUS_500 = "500";
 Config::get()->ERROR_TPL_HEADER_STATUS_503 = "503";
 Config::get()->ERROR_TPL_HEADER_STATUS_403 = "403";
 Config::get()->ERROR_TPL_HEADER_STATUS_404 = "404";
 Config::get()->ERROR_TPL_HEADER_STATUS_410 = "410";
 Config::get()->ERROR_TPL_IE6 = "ie6";
 
 //mail form
 Config::get()->DEST_EMAIL = "";

 

 

La seconda parte del file viene utilizzata dal sistema per descrivere tutte le configurazioni che non vanno modificate per l'installazione del software. 
Tali configurazioni vengono usate dal sistema per l'attività di esecuzione.

 

 

/** ################################################################ */
 
 /**
 ## SYSTEM ARCHITECTURE CONFIGURATION, MODIFICARE SOLO SE NECESSARIO
 */
 
 //naming convension
 Config::get()->NC_CLASS_SUBFIX = "class.php";
 Config::get()->NC_CONFIG_SUBFIX = "config.php";
 Config::get()->NC_ABSTRACT_SUBFIX = "class.php";
 Config::get()->NC_DESCRIPTOR_SUBFIX = "class.php";
 Config::get()->NC_UTILITY_SUBFIX = "class.php";
 
 //system dir - width / last
 Config::get()->ACTIONS_DIR = "actions/";      															//ACTIONS DIR
 Config::get()->MODULES_DIR = "modules/";      															//MODULES DIR
 Config::get()->CSS_DIR = "css";               															//CSS DIR
 Config::get()->JS_DIR = "js";                 															//JS DIR
 Config::get()->LIB_DIR = "lib/";              															//LIB DIR
 Config::get()->CLASS_DIR = "class/";          															//CLASS DIR
 Config::get()->CORE_DIR = Config::get()->CLASS_DIR . "core/";                         					//CORE DIR
 Config::get()->UTILITY_DIR = Config::get()->CLASS_DIR . "utility/";                   					//UTILITY DIR
 Config::get()->DESCRIPTOR_DIR = Config::get()->CLASS_DIR . "descriptor/";             					//DESCRIPTOR DIR
 Config::get()->DESCRIPTOR_FILE_DIR = "config/";                                 						//DESCRIPTOR FILE DIR
 Config::get()->QUEUE_DIR =  Config::get()->CORE_DIR . "queue/";       									//QUEUE DIR
 Config::get()->TASK_DIR =  Config::get()->CORE_DIR . "task/";       									//TASK DIR
 Config::get()->LANGS_DIR = "langs/";          															//LANGS DIR
 
 //include
 /**
 ## IMPORTANTE: NON MODIFICARE L'ORDINE DI CARICAMENTO DELLE CLASSI CORE.
 ## SE LO SI DESIDERA E' POSSIBILE AGGIUNGERE CLASSI IN CODA.
 */
 Config::get()->INCLUDES = array(
  //classes
  "class" => array(
	   "descriptor" => array(
			"defines" => "defines.class.php",
//			"mainTaskDesc" => "mainTask.class.php", // era mainTaskDesc.class.php, l'unico file esistente si chiama mainTask.class.php
			"vars" => "vars.class.php",
//			"pages" => "pages.class.php",
//			"actions" => "actions.class.php"
	   ),
	   "core" => array(
			"header" => "header.class.php",
			"parser" => "parser.class.php",
			"layout" => "layout.class.php",
			"lang" => "lang.class.php",
			"queue" => "queue.class.php",
			"task" => "task.class.php",
			"utility" => "utility.class.php",
			"protocol" => "protocol.class.php",
			"url" => "url.class.php",
			"descriptorManager" => "descriptorManager.class.php",
			"protocolManager" => "protocolManager.class.php",
			"actionsManager" => "actionsManager.class.php",
			"modulesManager" => "modulesManager.class.php",
			"routerManager" => "routerManager.class.php",
			"pagesManager" => "pagesManager.class.php",
			"actions_abs" => "actions.abstract.class.php",
			"modules_abs" => "modules.abstract.class.php",
			"main" => "main.class.php"
	   )
  ),
  
  //libs
  "lib" => array(
	    "smarty" => "smarty/Smarty.class.php",
	    "phpmailer" => "phpmailer/class.phpmailer.php",
   	    "adodb" => "adodb/adodb.inc.php"
  )
 );
 
 //queue task define
 Config::get()->QUEUE_DEFAULT = "mainTaskQueue";
 Config::get()->QUEUE_REQUEST_P = "queue";
 //queue class - url più di due caratteri (condizione rewrite)
 Config::get()->QUEUE_KEY = array(
  "mainTaskQueue" => array(
   "url" => "",
   "taskDescriptor" => "mainTask"
  ),
  /*"debugToolQueue" => array(
   "url" => "debug/",
   "taskDescriptor" => "debugTool"
  ),*/
  "adminQueue" => array(
   "url" => "admin/",
   "taskDescriptor" => "adminTask"
  ),
  "webServicesQueue" => array(
   "url" => "ws/",
   "taskDescriptor" => "webServicesTask"
  )
 );
 
 //web services define
 
 
 //protocol define
 Config::get()->PROTOCOL_STATE_S = "success";
 Config::get()->PROTOCOL_STATE_E = "error";
 Config::get()->PROTOCOL_STATE_C = "crash";
 Config::get()->PROTOCOL_TYPE_N = "generic task";
 Config::get()->PROTOCOL_TYPE_AG = "action global";
 Config::get()->PROTOCOL_TYPE_AP = "action page";
 Config::get()->PROTOCOL_TYPE_MG = "module global";
 Config::get()->PROTOCOL_TYPE_MP = "module page";
 Config::get()->PROTOCOL_ERROR_TYPE_301 = "301";
 Config::get()->PROTOCOL_ERROR_TYPE_403 = "403";
 Config::get()->PROTOCOL_ERROR_TYPE_404 = "404";
 Config::get()->PROTOCOL_ERROR_TYPE_410 = "410";
 Config::get()->PROTOCOL_ERROR_TYPE_500 = "500";
 Config::get()->PROTOCOL_ERROR_TYPE_DB = "Database error";
 Config::get()->PROTOCOL_ERROR_TYPE_MISSING_PARAM = "Missing parameters";
 Config::get()->PROTOCOL_ERROR_TYPE_SINTAX = "Sintax error";
 
 //smarty
 Config::get()->SMARTY_TPL_DIR = "templates/";
 Config::get()->SMARTY_TPL_COMPILER_DIR = "templates_c/";
 Config::get()->SMARTY_TPL_G = "tpl/";
 Config::get()->SMARTY_TPL_WBS = "ws/";
 Config::get()->SMARTY_TPL_ADMIN = "admin/";
 Config::get()->SMARTY_TPL_M = "modules/";
 Config::get()->SMARTY_TPL_I = "include/";
 Config::get()->SMARTY_TPL_P = "pages/";