2 |
jpm |
1 |
<?php
|
|
|
2 |
// +------------------------------------------------------------------------------------------------------+
|
|
|
3 |
// | PHP version 4.1 |
|
|
|
4 |
// +------------------------------------------------------------------------------------------------------+
|
|
|
5 |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) |
|
|
|
6 |
// +------------------------------------------------------------------------------------------------------+
|
|
|
7 |
// | This library is free software; you can redistribute it and/or |
|
|
|
8 |
// | modify it under the terms of the GNU Lesser General Public |
|
|
|
9 |
// | License as published by the Free Software Foundation; either |
|
|
|
10 |
// | version 2.1 of the License, or (at your option) any later version. |
|
|
|
11 |
// | |
|
|
|
12 |
// | This library is distributed in the hope that it will be useful, |
|
|
|
13 |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
|
|
14 |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|
|
|
15 |
// | Lesser General Public License for more details. |
|
|
|
16 |
// | |
|
|
|
17 |
// | You should have received a copy of the GNU Lesser General Public |
|
|
|
18 |
// | License along with this library; if not, write to the Free Software |
|
|
|
19 |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
|
|
20 |
// +------------------------------------------------------------------------------------------------------+
|
|
|
21 |
// |@author ABDOOL RAHEEM shaheen shaheenar50@hotmail.com |
|
|
|
22 |
// |@version 3 |
|
|
|
23 |
|
|
|
24 |
// +------------------------------------------------------------------------------------------------------+
|
|
|
25 |
/*
|
28 |
jpm |
26 |
*fichier contenant le menu principal de l'application de gestion du temps de travail
|
2 |
jpm |
27 |
*@package gtt_general
|
|
|
28 |
//Auteur original :
|
|
|
29 |
*@author Dorian Bannier <dbannier@aol.com>
|
|
|
30 |
//Autres auteurs :
|
|
|
31 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
|
|
32 |
*@copyright Copyright (C) 2003 Tela-Botanica
|
|
|
33 |
*/
|
|
|
34 |
// +------------------------------------------------------------------------------------------------------+
|
|
|
35 |
// | INCLUSION DE FICHIERS |
|
|
|
36 |
// +------------------------------------------------------------------------------------------------------+
|
5 |
jpm |
37 |
|
|
|
38 |
// Fichiers de la bibliotheque PEAR
|
27 |
jpm |
39 |
include 'gtt_config.inc.php';
|
58 |
jpm |
40 |
if (!file_exists('config.inc.php')) {
|
104 |
jpm |
41 |
die('Veuillez configurer la base de données de la Gestion du Temps de travail en complétant puis en renommant en config.inc.php le fichier config.inc.defaut.php.');
|
58 |
jpm |
42 |
}
|
|
|
43 |
include 'config.inc.php';
|
138 |
jpm |
44 |
include GTT_CHEMIN_LANGUE.'gtt_langue_'.GTT_LANGUE.'.inc.php';
|
2 |
jpm |
45 |
|
123 |
jpm |
46 |
// Gestion de l'action à executer par défaut
|
|
|
47 |
if (empty($_GET['action'])) {
|
|
|
48 |
$_GET['action'] = 'identification';
|
2 |
jpm |
49 |
}
|
124 |
jpm |
50 |
// Gestion du format du template
|
123 |
jpm |
51 |
if (empty($_GET['format'])) {
|
|
|
52 |
$_GET['format'] = 'html';
|
|
|
53 |
}
|
124 |
jpm |
54 |
// Gestion du type de sortie par défaut
|
|
|
55 |
if (empty($_GET['sortie'])) {
|
|
|
56 |
$_GET['sortie'] = $_GET['format'];
|
|
|
57 |
}
|
123 |
jpm |
58 |
|
118 |
jpm |
59 |
// Initialisation du Gestionnaire d'erreurs
|
65 |
jpm |
60 |
$GLOBALS['_GTT_']['erreur'] = new GestionnaireErreur(GTT_DEBOGAGE_CONTEXTE);
|
|
|
61 |
$GLOBALS['_GTT_']['erreur']->setNiveauErreurCourrant(GTT_DEBOGAGE_NIVEAU);
|
44 |
jpm |
62 |
|
118 |
jpm |
63 |
// Initialisation du Chronomêtre
|
|
|
64 |
$GLOBALS['_GTT_']['chrono'] = new Chronometre();
|
|
|
65 |
|
104 |
jpm |
66 |
// Connexion à la base de données
|
56 |
jpm |
67 |
$GLOBALS['db'] = DB::connect(GTT_BDD_DSN);
|
|
|
68 |
if (PEAR::isError($GLOBALS['db'])) {
|
104 |
jpm |
69 |
trigger_error("Échec connexion à la base de données : ".$GLOBALS['db']->getMessage(), E_USER_ERROR);
|
56 |
jpm |
70 |
}
|
104 |
jpm |
71 |
// Utilisation de l'utf-8
|
|
|
72 |
if (PEAR::isError($GLOBALS['db']->query('SET NAMES "utf8"'))) {
|
|
|
73 |
trigger_error("Échec de l'utilisation d'UTF-8 : ".$GLOBALS['db']->getMessage(), E_USER_WARNING);
|
|
|
74 |
}
|
48 |
jpm |
75 |
|
104 |
jpm |
76 |
// Utilisation du mécanisme MVC avec Squelette PHP et objet
|
124 |
jpm |
77 |
$Controlleur = new ControlleurFrontal($_GET['action'], $_GET['format'], $_GET['sortie']);
|
|
|
78 |
$Controlleur->executer();
|
44 |
jpm |
79 |
|
56 |
jpm |
80 |
/**
|
104 |
jpm |
81 |
* La fonction __autoload() charge dynamiquement les classes trouvées dans le code.
|
56 |
jpm |
82 |
*
|
104 |
jpm |
83 |
* Cette fonction est appelée par php5 quand il trouve une instanciation de classe dans le code.
|
56 |
jpm |
84 |
*
|
104 |
jpm |
85 |
*@param string le nom de la classe appelée.
|
|
|
86 |
*@return void le fichier contenant la classe doit être inclu par la fonction.
|
56 |
jpm |
87 |
*/
|
|
|
88 |
function __autoload($classe)
|
|
|
89 |
{
|
|
|
90 |
$fichier_classe_pear = GTT_CHEMIN_PEAR.str_replace('_', '/', $classe).'.php';
|
|
|
91 |
if (file_exists($fichier_classe_pear)) {
|
|
|
92 |
require_once $fichier_classe_pear;
|
|
|
93 |
} else {
|
|
|
94 |
$nom_classe_gtt = $classe.'.class.php';
|
|
|
95 |
foreach ($GLOBALS['_GTT_']['tab_chemin_autoload'] as $chemin) {
|
|
|
96 |
$fichier = $chemin.$nom_classe_gtt;
|
|
|
97 |
if (file_exists($fichier)) {
|
|
|
98 |
require_once $fichier;
|
|
|
99 |
}
|
9 |
jpm |
100 |
}
|
|
|
101 |
}
|
2 |
jpm |
102 |
}
|
56 |
jpm |
103 |
|
5 |
jpm |
104 |
?>
|