Subversion Repositories Applications.gtt

Rev

Rev 103 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 103 Rev 122
1
<?php
1
<?php
2
class GttCtrlActionAdminCategorie extends aControlleurAction {
2
class GttCtrlActionAdminCategorie extends aControlleurAction {
3
 
3
 
4
	public function __construct(Registre $Registre)
4
	public function __construct(Registre $Registre)
5
	{
5
	{
6
		$Registre->ajouterEspace('AdminCategorie', 'admin_categorie');
6
		$Registre->ajouterEspace('AdminCategorie', 'admin_categorie');
7
		$Registre->ajouterSquelette('admin_categorie', 'admin_categorie.tpl.html');
-
 
8
		$Registre->setTitre('Administrer les catégories des projets');
7
		$Registre->setTitre('Administrer les catégories des projets');
9
	}
8
	}
10
 
9
 
11
	public function executer()
10
	public function executer()
12
    {
11
    {
13
    	$aso_admin_categ = array();
12
    	$aso_admin_categ = array();
14
 
13
 
15
		// Récupération des catégories
14
		// Récupération des catégories
16
		$ProjetCategorie = new ProjetCategorie();
15
		$ProjetCategorie = new ProjetCategorie();
17
 
16
 
18
		// Ajout de la catégorie par défaut
17
		// Ajout de la catégorie par défaut
19
		$aso_admin_categ['ProjetCategorie'] = $ProjetCategorie;
18
		$aso_admin_categ['ProjetCategorie'] = $ProjetCategorie;
20
		
19
		
21
		// Récupération des infos sur les categories existantes 
20
		// Récupération des infos sur les categories existantes 
22
    	$tab_pc = $ProjetCategorie->consulter(ProjetCategorie::GPC_TOUS);
21
    	$tab_pc = $ProjetCategorie->consulter(ProjetCategorie::GPC_TOUS);
23
    	if (false == $tab_pc) {
22
    	if (false == $tab_pc) {
24
    		$aso_admin_categ['categories'] = false;
23
    		$aso_admin_categ['categories'] = false;
25
    	} else {
24
    	} else {
26
	    	foreach ($tab_pc as $pc) {
25
	    	foreach ($tab_pc as $pc) {
27
	    		if ($pc->getIdCategorie() != 0) {
26
	    		if ($pc->getIdCategorie() != 0) {
28
	    			$aso_categ['id'] = $pc->getIdCategorie();
27
	    			$aso_categ['id'] = $pc->getIdCategorie();
29
	    			$aso_categ['libelle'] = $pc->getLibelle();
28
	    			$aso_categ['libelle'] = $pc->getLibelle();
30
	    			$aso_admin_categ['categories'][] = $aso_categ;
29
	    			$aso_admin_categ['categories'][] = $aso_categ;
31
	    		}
30
	    		}
32
	    	}
31
	    	}
33
    	}
32
    	}
34
		// Modification des titres, légendes et bouton
33
		// Modification des titres, légendes et bouton
35
		$aso_admin_categ['form_legend'] = 'Ajouter une categorie';
34
		$aso_admin_categ['form_legend'] = 'Ajouter une categorie';
36
		$aso_admin_categ['form_bouton_value'] = 'Ajouter';
35
		$aso_admin_categ['form_bouton_value'] = 'Ajouter';
37
		$aso_admin_categ['form_bouton_id'] = 'btn_categorie_ajouter';
36
		$aso_admin_categ['form_bouton_id'] = 'btn_categorie_ajouter';
38
		$aso_admin_categ['form_url'] = 'index.php?action=admin-categorie_valider-ajouter';
37
		$aso_admin_categ['form_url'] = 'index.php?action=admin-categorie_valider-ajouter';
39
		
38
		
40
    	//echo '<pre>'.print_r($aso_admin_categ, true).'</pre>';
39
    	//echo '<pre>'.print_r($aso_admin_categ, true).'</pre>';
41
		$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ);
40
		$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ);
42
    }
41
    }
43
 
42
 
44
	public function executerEditer()
43
	public function executerEditer()
45
    {
44
    {
46
		// Ajout du statut d'utilisateur
45
		// Ajout du statut d'utilisateur
47
		if (isset($_POST['btn_categorie_modifier'])) {
46
		if (isset($_POST['btn_categorie_modifier'])) {
48
			// Récupération des données de la categorie à modifier
47
			// Récupération des données de la categorie à modifier
49
			$ProjetCategorie = new ProjetCategorie();
48
			$ProjetCategorie = new ProjetCategorie();
50
			$ProjetCategorie->consulter(ProjetCategorie::GPC_ID, $_POST['casu_id'], true);
49
			$ProjetCategorie->consulter(ProjetCategorie::GPC_ID, $_POST['casu_id'], true);
51
			$aso_admin_categ['ProjetCategorie'] = $ProjetCategorie;
50
			$aso_admin_categ['ProjetCategorie'] = $ProjetCategorie;
52
 
51
 
53
			// Modification des titres, légendes et bouton
52
			// Modification des titres, légendes et bouton
54
			$aso_admin_categ['form_legend'] = 'Modifier une categorie';
53
			$aso_admin_categ['form_legend'] = 'Modifier une categorie';
55
			$aso_admin_categ['form_bouton_value'] = 'Modifier';
54
			$aso_admin_categ['form_bouton_value'] = 'Modifier';
56
			$aso_admin_categ['form_bouton_id'] = 'btn_categorie_modifier';
55
			$aso_admin_categ['form_bouton_id'] = 'btn_categorie_modifier';
57
			$aso_admin_categ['form_url'] = 'index.php?action=admin-categorie_valider-modifier';
56
			$aso_admin_categ['form_url'] = 'index.php?action=admin-categorie_valider-modifier';
58
 
57
 
59
			$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ);
58
			$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ);
60
		} else if (isset($_POST['btn_categorie_supprimer'])) {
59
		} else if (isset($_POST['btn_categorie_supprimer'])) {
61
			// Action suivante
60
			// Action suivante
62
    		$this->setSuivant('ValiderSupprimer');
61
    		$this->setSuivant('ValiderSupprimer');
63
		}
62
		}
64
    }
63
    }
65
 
64
 
66
	public function executerValiderModifier()
65
	public function executerValiderModifier()
67
	{
66
	{
68
		if (isset($_POST['btn_categorie_annuler'])) {
67
		if (isset($_POST['btn_categorie_annuler'])) {
69
			// Action suivante
68
			// Action suivante
70
    		$this->setSuivant('__defaut__');
69
    		$this->setSuivant('__defaut__');
71
    	} else if (isset($_POST['btn_categorie_modifier'])) {
70
    	} else if (isset($_POST['btn_categorie_modifier'])) {
72
			$ProjetCategorie = new ProjetCategorie();
71
			$ProjetCategorie = new ProjetCategorie();
73
			$ProjetCategorie->setIdCategorie($_POST['caaj_id_categorie']);
72
			$ProjetCategorie->setIdCategorie($_POST['caaj_id_categorie']);
74
			$ProjetCategorie->setLibelle($_POST['caaj_libelle']);
73
			$ProjetCategorie->setLibelle($_POST['caaj_libelle']);
75
			$ProjetCategorie->setAbreviation($_POST['caaj_abreviation']);
74
			$ProjetCategorie->setAbreviation($_POST['caaj_abreviation']);
76
	    	$ProjetCategorie->modifier();
75
	    	$ProjetCategorie->modifier();
77
		}
76
		}
78
	}
77
	}
79
	
78
	
80
    public function executerValiderAjouter()
79
    public function executerValiderAjouter()
81
    {
80
    {
82
		// Ajout de la catégorie
81
		// Ajout de la catégorie
83
		$ProjetCategorie = new ProjetCategorie();
82
		$ProjetCategorie = new ProjetCategorie();
84
		$bool_existe = $ProjetCategorie->consulter(ProjetCategorie::GPC_LIBELLE, array($_POST['caaj_libelle']));
83
		$bool_existe = $ProjetCategorie->consulter(ProjetCategorie::GPC_LIBELLE, array($_POST['caaj_libelle']));
85
		if ($bool_existe == false) {
84
		if ($bool_existe == false) {
86
			$ProjetCategorie->setLibelle($_POST['caaj_libelle']);
85
			$ProjetCategorie->setLibelle($_POST['caaj_libelle']);
87
			$ProjetCategorie->setAbreviation($_POST['caaj_abreviation']);
86
			$ProjetCategorie->setAbreviation($_POST['caaj_abreviation']);
88
    		$ProjetCategorie->ajouter();
87
    		$ProjetCategorie->ajouter();
89
		} else {
88
		} else {
90
			$aso_admin_categ['message'] = 'Cette catégorie existe déjà !';
89
			$aso_admin_categ['message'] = 'Cette catégorie existe déjà !';
91
			$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ);
90
			$this->getRegistre()->ajouterDonnee('admin_categorie', $aso_admin_categ);
92
		}
91
		}
93
 
92
 
94
		// Action suivante
93
		// Action suivante
95
    	$this->setSuivant('__defaut__');
94
    	$this->setSuivant('__defaut__');
96
    }
95
    }
97
 
96
 
98
    public function executerValiderSupprimer()
97
    public function executerValiderSupprimer()
99
    {
98
    {
100
		// Suppression de la catégorie
99
		// Suppression de la catégorie
101
		$ProjetCategorie = new ProjetCategorie();
100
		$ProjetCategorie = new ProjetCategorie();
102
		$ProjetCategorie->setIdCategorie($_POST['casu_id']);
101
		$ProjetCategorie->setIdCategorie($_POST['casu_id']);
103
    	$ProjetCategorie->supprimer();
102
    	$ProjetCategorie->supprimer();
104
 
103
 
105
		// Mise à jour des projets appartenant à la catégorie
104
		// Mise à jour des projets appartenant à la catégorie
106
		$Projet = new Projet();
105
		$Projet = new Projet();
107
		$tab_p = $Projet->consulter(Projet::GP_CE_CATEGORIE, $_POST['casu_id']);
106
		$tab_p = $Projet->consulter(Projet::GP_CE_CATEGORIE, $_POST['casu_id']);
108
		if ($tab_p != false) {
107
		if ($tab_p != false) {
109
			foreach ($tab_p as $p) {
108
			foreach ($tab_p as $p) {
110
	    		$Ancien = clone $p;
109
	    		$Ancien = clone $p;
111
	    		$p->setCeCategorie(0);
110
	    		$p->setCeCategorie(0);
112
	    		$p->modifier($Ancien);
111
	    		$p->modifier($Ancien);
113
	    	}
112
	    	}
114
		}
113
		}
115
 
114
 
116
		// Action suivante
115
		// Action suivante
117
    	$this->setSuivant('__defaut__');
116
    	$this->setSuivant('__defaut__');
118
    }
117
    }
119
}
118
}
120
?>
119
?>