Location: PHPKode > projects > CLIGRAPHCRM > cligraphcrm/params_init.php
<?php
/*******************************************************************************
* Nom original du logiciel : CLIGRAPHCRM.
* Copyright (C) Gérald Boudaud et Frédéric Paillé
* Les auteurs initiaux du code original sont Gérald Boudaud et Frédéric Paillé.
* Les parties créées par CLIGRAPHCRM sont sous Copyright (C) Gérald Boudaud
* et Frédéric Paillé
* Tous droits réservés.
* http://www.cligraphcrm.com       hide@address.com
*
*
* Ce logiciel est un programme informatique de Gestion Relation Client aussi 
* nommé GRC ou CRM en anglais.
* 
* Ce logiciel est régi par la licence CeCILL-C soumise au droit français et 
* respectant les principes de diffusion des logiciels libres.
* Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous les 
* conditions de la licence CeCILL-C telle que diffusée par le CEA, le CNRS et
* l'INRIA sur le site "http://www.cecill.info".
* 
* En contrepartie de l'accessibilité au code source et des droits de copie,
* de modification et de redistribution accordés par cette licence, il n'est
* offert aux utilisateurs qu'une garantie limitée.  Pour les mêmes raisons,
* seule une responsabilité restreinte pèse sur l'auteur du programme,  le
* titulaire des droits patrimoniaux et les concédants successifs.
* 
* A cet égard  l'attention de l'utilisateur est attirée sur les risques
* associés au chargement, à l'utilisation, à la modification et/ou au
* développement et à la reproduction du logiciel par l'utilisateur étant 
* donné sa spécificité de logiciel libre, qui peut le rendre complexe à 
* manipuler et qui le réserve donc à des développeurs et des professionnels
* avertis possédant  des  connaissances  informatiques approfondies.  Les
* utilisateurs sont donc invités à charger  et  tester  l'adéquation  du
* logiciel à leurs besoins dans des conditions permettant d'assurer la
* sécurité de leurs systèmes et ou de leurs données et, plus généralement, 
* à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. 
* 
* Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris
* connaissance de la licence CeCILL-C, et que vous en avez accepté les termes.
* 
* Informations complémentaires :
* Licence-fr.txt
* Licence_CeCILL-C_V1-fr.txt
********************************************************************************
* Complément à la licence CECILL-C : 
*
* Cette licence n'accorde aucun droit d'employer les marques déposées
* « CLIGRAPHCRM » et le logo « CLIGRAPHCRM » même si de telles marques sont 
* incluses dans le code original ou les modifications.
*
* English version license :
* Licence_encart-en.txt
* Licence-en.txt
* Licence_CeCILL-C_V1-en.txt
*******************************************************************************/
?>
<?php
@session_start();
include_once("fonctions/htmlpath.php");
include("var/confprg.php");//laisser a include et pas include_once car force l'init des variables
################################################################################
#  Fonction de retour a la page index en cas de probleme
################################################################################
if (!function_exists('fct_retour_index'))
{
  function fct_retour_index($page="index.php")
  {
  	//connaitre ou se trouve le fichier a lancer
  	if (function_exists('fct_lien_page_custom'))
    {
    	$chemin=fct_lien_page_custom($page);
    	$chemin2=fct_lien_page_custom($page,"abs");
    }
    else
    {
      $chemin=$chemin2=CHEMIN_RELATIF."/".$page;
    }
    //determiner la var statique INIT_CHEM_CRM
    fct_init_chem_crm(2);
    //ajoute la var init_chem_crm afin d'eviter au maximum la perte du chemin d'acces en mode dedie
    if($page=="err_navig.php" || $page=="index.php")
    {
      $chemin."?init_chem_crm=".INIT_CHEM_CRM;
    }
        
  	//destruction du session_id a faire apres la fonction fct_lien_page_custom
    $_SESSION=array();
    session_unset();
    session_destroy();
    if(file_exists($chemin2))
    {
      header("Location: ".$chemin); // Redirige le client en erreur generale 
    }
    else//essai un ultime test pour rediriger vers la page d'erreur
    {
    	if (file_exists("err_navig.php"))
    	{
        header("Location: err_navig.php?init_chem_crm=".INIT_CHEM_CRM);
    	}
    	elseif (file_exists("../err_navig.php"))
    	{
        header("Location: ../err_navig.php?init_chem_crm=".INIT_CHEM_CRM);
    	}
    }
    exit(); // Garantie que le code ci-dessous n'est jamais execute.
  }
}
################################################################################
//Infos chemin du crm
if ( !isset($_SESSION['init_infos']->chem_crm) )
{
  //if(TYPE_DOC=="accueil") {  print_r($_SERVER); exit; }
  
  $_SESSION['init_infos']->racine_crm=dirname(__FILE__);
  $_SESSION['init_infos']->chem_crm=htmlpath($_SESSION['init_infos']->racine_crm);
}

//Definition du chemin relatif
if(!defined("CHEMIN_RELATIF"))
{
  preg_match("#".str_replace("\\","/",$_SESSION['init_infos']->racine_crm)."(.+)#",str_replace("\\","/",realpath('.')),$matches_racine);
  if ( empty($matches_racine[1]) )
    define("CHEMIN_RELATIF",".");
  else
    define("CHEMIN_RELATIF","..");
}
################################################################################
//version de php 4 ou 5+
if (empty($_SESSION['VERSIONPHP']))
{
  if ( version_compare( phpversion(), '5', '<' ) )
  {
    $_SESSION['VERSIONPHP']="4";
  }
  else
  {
    $_SESSION['VERSIONPHP']="5";
  }
}

$file_dedie="var/dedie.csv";

################################################################################
//if(empty($_SESSION['init_infos']->chem_config))
if(!isset($_SESSION['init_infos']->chem_config))
{
  if(defined("INIT_CHEM_CRM"))
  {
    $_SESSION['init_infos']->chem_config=INIT_CHEM_CRM;
  }
  else
  {
    if (!file_exists($file_dedie))
    {
      $_SESSION['init_infos']->chem_config=$_SESSION['init_infos']->chem_crm;
    }
    else
    {
      $_SESSION['init_infos']->chem_config="";
    }
  }
}
else
{
  if (file_exists($_SESSION['init_infos']->doc_root.$_SESSION['init_infos']->chem_config."/config.php"))
  {include_once($_SESSION['init_infos']->doc_root.$_SESSION['init_infos']->chem_config."/config.php");}
  else { }
}
/*******************************************************************************
 * Test pour declarer les variables de session principale et configurer
 * SI inexistante (dans le cas d'une install)
 * on les redeclare en dur en fonction du besoin ex :crm_url
 ******************************************************************************/ 
if(empty($_SESSION['init_infos']->crm_url))
{
  if (file_exists($_SESSION['init_infos']->doc_root.$_SESSION['init_infos']->chem_config."/var/init_crm.inc"))
  {include_once($_SESSION['init_infos']->doc_root.$_SESSION['init_infos']->chem_config."/var/init_crm.inc");}
  else
  {
    $_SESSION['init_infos']->crm_url="http://";
  }
}

if(empty($_SESSION['init_infos']->crm_serveur)) $_SESSION['init_infos']->crm_serveur=$_SERVER['SERVER_NAME'];

################################################################################
# Test la presence de variables cle pour eviter toute erreur de redirection incomplete
if ( strtoupper($_SERVER['PHP_SELF']) == strtoupper($_SESSION['init_infos']->chem_crm."/connect.php") ||
strtoupper($_SERVER['PHP_SELF']) == strtoupper($_SESSION['init_infos']->chem_crm."/verif.php") )
{
  if (!file_exists("config.php") && ( file_exists($file_dedie) && filesize($file_dedie)>0 ) )
  {
    if ( empty($_SESSION['init_infos']->chem_crm) )
    {
      fct_retour_index();
    }
    elseif ( $_SESSION['init_infos']->chem_config=="" || $_SESSION['init_infos']->chem_config==$_SESSION['init_infos']->chem_crm )
    {
      fct_retour_index();
    }
  }
}
################################################################################
# configure chemin url pour les sources et config
if (!empty($_SESSION['agentid']))
{
  if(!defined("RACINE_URL_SRC"))
  {
    define("RACINE_URL_SRC",$_SESSION['init_infos']->crm_url.$_SESSION['init_infos']->crm_serveur.$_SESSION['init_infos']->chem_crm."/");
    define("RACINE_URL_CONF",$_SESSION['init_infos']->crm_url.$_SESSION['init_infos']->crm_serveur.$_SESSION['init_infos']->chem_config."/");
  }
}
else
{
  if(!defined("RACINE_URL_SRC"))
  {
    define("RACINE_URL_SRC","./");
    define("RACINE_URL_CONF","./");
  }
}
################################################################################

if(empty($header_nonactiv))
  include_once("inter_pages/header.php");

include_once("fonctions/fonctions_gen.php");

if(empty($_SESSION['init_infos']->bdd_lib))
{
  if(empty($_SESSION['init_infos']->bdd_lib_dft)) $_SESSION['init_infos']->bdd_lib="mysql";
  else $_SESSION['init_infos']->bdd_lib=$_SESSION['init_infos']->bdd_lib_dft;
}
if(empty($flag_params_trt))
  require_once("fonctions/bdd_".$_SESSION['init_infos']->bdd_lib.".class.php");


include_once($_SESSION['init_infos']->racine_crm."/fonctions/controle.class.php");
require_once("fonctions/histo_action_agent_trt.php");

################################################################################
/*if ( empty($_SESSION['agentid'])
&& strtoupper($_SERVER['PHP_SELF']) != strtoupper($_SESSION['init_infos']->chem_crm."/connect.php")
&& strtoupper($_SERVER['PHP_SELF']) != strtoupper($_SESSION['init_infos']->chem_crm."/verif.php")
&& strtoupper($_SERVER['PHP_SELF']) != strtoupper($_SESSION['init_infos']->chem_crm."/out.php")
&& strtoupper($_SERVER['PHP_SELF']) != strtoupper($_SESSION['init_infos']->chem_crm."/index.php") )
{
  fct_retour_index("err_navig.php");
}*/
################################################################################
//Langue
if(empty($PROGRAM_LANG))
{
  $PROGRAM_LANG="FR";
}
if(empty($_SESSION['agent_langue']))
{
  $_SESSION['agent_langue']=$PROGRAM_LANG;
}

switch($_SESSION['agent_langue'])
{
  case "FR" : $_SESSION['agent_langue_extend']="french"; break;
  case "EN" : $_SESSION['agent_langue_extend']="english"; break;
  case "IT" : $_SESSION['agent_langue_extend']="italian"; break;
  case "GE" : $_SESSION['agent_langue_extend']="german"; break;
  case "SP" : $_SESSION['agent_langue_extend']="spanish"; break;
  case "SW" : $_SESSION['agent_langue_extend']="swedish"; break;
  case "DA" : $_SESSION['agent_langue_extend']="danish"; break;
  case "DU" : $_SESSION['agent_langue_extend']="dutch"; break;
  case "FI" : $_SESSION['agent_langue_extend']="finnish"; break;
  case "NO" : $_SESSION['agent_langue_extend']="norwegian"; break;
  case "SC" : $_SESSION['agent_langue_extend']="schi"; break;
  case "TC" : $_SESSION['agent_langue_extend']="tchi"; break;
  default : $_SESSION['agent_langue_extend']="french"; break;
}

//Theme
if (empty($_SESSION['agent_theme']))
{
  $liste_theme=fct_choix_theme();
  $_SESSION['agent_theme']=$liste_theme[0];
}
if(!defined("CHEMIN_STYLES"))
{
  define("CHEMIN_STYLES","themes/".$_SESSION['agent_theme']."/styles/");
}
if (!defined("CHEMIN_IMAGES"))
{
  define("CHEMIN_IMAGES","themes/".$_SESSION['agent_theme']."/images/");
}

//Declaration de la classe table pour requete BDD
$cligraph=new table;
$_SESSION['cligraph']=$cligraph;

//Stockage des selects generaux + langue dans variables PHP
if ( !empty($_SESSION['agentid']))
{
	include_once(fct_lien_page_custom("langue/".$_SESSION['agent_langue']."_centrale.php","abs"));
  include_once(fct_lien_page_custom("fonctions/select_generaux.class.php","abs"));
  $SELECT_GENERAUX=new select_generaux;
	//fct_select_generaux();
}
else
{
  include_once("langue/".$_SESSION['agent_langue']."_centrale.php");
}
?>
Return current item: CLIGRAPHCRM