Subversion Repositories Applications.referentiel

Rev

Rev 20 | Rev 24 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 20 Rev 23
1
<?php
1
<?php
2
// declare(encoding='UTF-8');
2
// declare(encoding='UTF-8');
3
/**
3
/**
4
 * Classe Controleur du module Test.
4
 * Classe Controleur du module Test.
5
 * 
5
 * 
6
 * TODO : refactoriser l'ensemble des tests!
6
 * TODO : refactoriser l'ensemble des tests!
7
 *
7
 *
8
 * @package		Referentiel
8
 * @package		Referentiel
9
 * @category	Php5.2
9
 * @category	Php5.2
10
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
10
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
11
 * @copyright	2010 Tela-Botanica
11
 * @copyright	2010 Tela-Botanica
12
 * @license		http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
12
 * @license		http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
13
 * @license		http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
13
 * @license		http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
14
 * @version		SVN: $Id$
14
 * @version		SVN: $Id$
15
 */
15
 */
16
class Test extends AppliControleur {
16
class Test extends AppliControleur {
17
	
17
	
18
	private $projet = null;
-
 
19
	private $tableStructureDao = null;
18
	private $referentiel = null;
20
	private $referentielDao = null;
19
	private $traitementDao = null;
21
	private $manuel = null;
20
	private $messages = null;
22
	
21
	
23
	public function __construct()  {
22
	public function __construct()  {
24
		parent::__construct();
23
		parent::__construct();
25
		
24
		
26
		// Récupération de paramêtres
25
		// Récupération de paramêtres
27
		if (isset($_GET['projet'])) { // code du projet courrant
26
		if (isset($_GET['ref'])) { // code du projet courrant
28
			$this->projet = $_GET['projet'];
27
			$this->referentiel = strtolower($_GET['ref']);
29
		}
28
		}
30
		// Parser le fichier ini contenant certains règles liées à la version du manuel
-
 
31
		$this->manuel = parse_ini_file(Config::get('dossier_configurations').DS.Config::get('manuel'));
-
 
32
		
29
		
33
		// Chargement des DAO nécessaires
-
 
34
		$this->tableStructureDao = $this->getModele('TableStructureDao');
30
		// Chargement des DAO nécessaires
35
		$this->referentielDao = $this->getModele('ReferentielDao');
31
		$this->traitementDao = new TraitementDao();
36
	}
32
	}
37
	
33
	
38
	//+----------------------------------------------------------------------------------------------------------------+
34
	//+----------------------------------------------------------------------------------------------------------------+
39
	// Méthodes
35
	// Méthodes
40
	/**
36
	/**
41
	 * Fonction d'affichage par défaut, elle appelle la liste des administrateurs
37
	 * Fonction d'affichage par défaut, elle appelle la liste des administrateurs
42
	 */
38
	 */
43
	public function executerActionParDefaut() {
39
	public function executerActionParDefaut() {
-
 
40
		return $this->afficherInterface();
-
 
41
	}
-
 
42
	
-
 
43
	/**
-
 
44
	 * Affiche le formulaire de demande de traitement
-
 
45
	 */
-
 
46
	public function afficherInterface() {
-
 
47
		$donnees = array();
-
 
48
		$this->url->unsetVariablesRequete(array('module', 'action', 'ref'));
-
 
49
		$donnees['url_form'] = $this->url->getUrl();
-
 
50
		$donnees['url_module'] = 'Test';
-
 
51
		$donnees['url_action'] = 'demanderTraitement';
-
 
52
		
-
 
53
		// Traitement de l'info sur le code du référentiel
-
 
54
		if (isset($this->referentiel)) {
-
 
55
			$donnees['ref'] = $this->referentiel;
-
 
56
		} else {
-
 
57
			$this->messages[] = "Aucun code de projet de référentiel n'est indiqué (Ex. bdnff).";
-
 
58
		}
-
 
59
		
-
 
60
		$donnees['messages'] = $this->messages;
-
 
61
		$this->setSortie(self::RENDU_CORPS, $this->getVue('form_traitement', $donnees), false);
-
 
62
	}
-
 
63
	
-
 
64
	/**
-
 
65
	 * Lance l'ajout d'un traitement
-
 
66
	 */
-
 
67
	public function demanderTraitement() {
-
 
68
		$this->ajouterTraitement();
-
 
69
		//$this->afficherInterface();
-
 
70
	}
-
 
71
	
-
 
72
	/**
-
 
73
	 * Lance l'ajout d'un traitement
-
 
74
	 */
-
 
75
	private function ajouterTraitement() {
-
 
76
		if (!isset($this->referentiel)) {
-
 
77
			$this->messages[] = "Aucun code de projet de référentiel n'est indiqué (Ex. bdnff).";
44
		return '';
78
		} else {
-
 
79
			$resultat = $this->traitementDao->ajouterTraitement($this->referentiel);
-
 
80
			Debug::printr($resultat);
-
 
81
			if ($resultat != false) {
-
 
82
				$this->messages[] = "Le traitement #'' a été ajouté.";
-
 
83
			} else {
-
 
84
				$this->messages[] = "Un problème est survenu lors de la tentative d'ajout du traitement.";
-
 
85
			}
-
 
86
		}
45
	}
87
	}
46
	
88
	
47
}
89
}
48
?>
90
?>