Subversion Repositories Applications.gtt

Rev

Rev 95 | Rev 110 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 95 Rev 103
Line 10... Line 10...
10
 
10
 
11
	public function executer()
11
	public function executer()
12
    {
12
    {
Line 13... Line 13...
13
    	$aso_admin_utilisateur = array();
13
    	$aso_admin_utilisateur = array();
14
 
14
 
Line 15... Line 15...
15
		// Récupération des utilisateur
15
		// Récupération des utilisateur
16
		$Utilisateur = new Utilisateur();
16
		$Utilisateur = new Utilisateur();
17
 
17
 
18
		// Vérification si l'utilisateur est admin
18
		// Vérification si l'utilisateur est admin
19
		$aso_admin_utilisateur['bool_mark_admin'] = false;
19
		$aso_admin_utilisateur['bool_mark_admin'] = false;
20
		if ($Utilisateur->getMarkAdmin() == 1) {
20
		if ($Utilisateur->getMarkAdmin() == 1) {
21
			$aso_admin_utilisateur['bool_mark_admin'] = true;
21
			$aso_admin_utilisateur['bool_mark_admin'] = true;
22
		}
22
		}
23
		// Vérification si l'utilisateur doit apparaître dans le récapitulatif
23
		// Vérification si l'utilisateur doit apparaître dans le récapitulatif
24
		$aso_admin_utilisateur['bool_mark_recapitulatif'] = false;
24
		$aso_admin_utilisateur['bool_mark_recapitulatif'] = false;
Line 25... Line 25...
25
		if ($Utilisateur->getMarkRecapitulatif() == 1) {
25
		if ($Utilisateur->getMarkRecapitulatif() == 1) {
26
			$aso_admin_utilisateur['bool_mark_recapitulatif'] = true;
26
			$aso_admin_utilisateur['bool_mark_recapitulatif'] = true;
Line 27... Line 27...
27
		}
27
		}
28
 
28
 
29
		// Utilisateur vide par défaut
29
		// Utilisateur vide par défaut
30
		$aso_admin_utilisateur['Utilisateur'] = clone $Utilisateur;
30
		$aso_admin_utilisateur['Utilisateur'] = clone $Utilisateur;
31
 
31
 
32
		// Recherche des utilisateurs existant
32
		// Recherche des utilisateurs existant
33
    	$tab_u = $Utilisateur->consulter(Utilisateur::GU_TOUS);
33
    	$tab_u = $Utilisateur->consulter(Utilisateur::GU_TOUS);
34
    	foreach ($tab_u as $u) {
34
    	foreach ($tab_u as $u) {
35
    		// Nous récupérons tous les statuts sauf le null (=0)
35
    		// Nous récupérons tous les statuts sauf le null (=0)
Line 42... Line 42...
42
 
42
 
43
		// Recherche des statuts des utilisateurs
43
		// Recherche des statuts des utilisateurs
44
		$UtilisateurStatut = new UtilisateurStatut();
44
		$UtilisateurStatut = new UtilisateurStatut();
45
		$tab_us = $UtilisateurStatut->consulter(UtilisateurStatut::GUS_TOUS);
45
		$tab_us = $UtilisateurStatut->consulter(UtilisateurStatut::GUS_TOUS);
46
    	foreach ($tab_us as $us) {
46
    	foreach ($tab_us as $us) {
47
    		// Nous récupérons tous les statuts sauf le null (=0)
47
    		// Nous récupérons tous les statuts sauf le null (=0)
48
    		if ($us->getIdUtilisateurStatut() != 0) {
48
    		if ($us->getIdUtilisateurStatut() != 0) {
49
    			$aso_us['id'] = $us->getIdUtilisateurStatut();
49
    			$aso_us['id'] = $us->getIdUtilisateurStatut();
50
    			$aso_us['libelle'] = $us->getLibelle();
50
    			$aso_us['libelle'] = $us->getLibelle();
51
    			$aso_admin_utilisateur['utilisateur_statuts'][] = $aso_us;
51
    			$aso_admin_utilisateur['utilisateur_statuts'][] = $aso_us;
52
    		}
52
    		}
Line 53... Line 53...
53
    	}
53
    	}
54
 
54
 
55
		// Modification des titres, légendes et bouton
55
		// Modification des titres, légendes et bouton
56
		$aso_admin_utilisateur['form_legend'] = 'Ajouter un utilisateur';
56
		$aso_admin_utilisateur['form_legend'] = 'Ajouter un utilisateur';
57
		$aso_admin_utilisateur['form_bouton_value'] = 'Ajouter';
57
		$aso_admin_utilisateur['form_bouton_value'] = 'Ajouter';
Line 66... Line 66...
66
    {
66
    {
67
		if (isset($_POST['btn_utilisateur_annuler'])) {
67
		if (isset($_POST['btn_utilisateur_annuler'])) {
68
			// Action suivante
68
			// Action suivante
69
    		$this->setSuivant('__defaut__');
69
    		$this->setSuivant('__defaut__');
70
    	} else if (isset($_POST['btn_utilisateur_ajouter'])) {
70
    	} else if (isset($_POST['btn_utilisateur_ajouter'])) {
71
			// Vérification de l'utilisateur à ajouter
71
			// Vérification de l'utilisateur à ajouter
72
			$bool_ajouter = true;
72
			$bool_ajouter = true;
73
			$Utilisateur = new Utilisateur();
73
			$Utilisateur = new Utilisateur();
74
			$UtMail = $Utilisateur->consulter(Utilisateur::GU_MAIL, array($_POST['ut_email']));
74
			$UtMail = $Utilisateur->consulter(Utilisateur::GU_MAIL, array($_POST['ut_email']));
75
			if ((is_array($UtMail) && count($UtMail) > 1) || $UtMail instanceof Utilisateur) {
75
			if ((is_array($UtMail) && count($UtMail) > 1) || $UtMail instanceof Utilisateur) {
76
				$aso_admin_utilisateur['messages'][] = 'Un utilisateur avec le même courriel existe déjà !';
76
				$aso_admin_utilisateur['messages'][] = 'Un utilisateur avec le même courriel existe déjà !';
77
				$bool_ajouter = false;
77
				$bool_ajouter = false;
78
			}
78
			}
79
			$this->verifierChampsCommuns(&$aso_admin_utilisateur, &$bool_ajouter);
79
			$this->verifierChampsCommuns(&$aso_admin_utilisateur, &$bool_ajouter);
80
			if ($bool_ajouter) {
80
			if ($bool_ajouter) {
81
				// Action suivante
81
				// Action suivante
Line 92... Line 92...
92
	{
92
	{
93
		if (isset($_POST['btn_utilisateur_annuler'])) {
93
		if (isset($_POST['btn_utilisateur_annuler'])) {
94
			// Action suivante
94
			// Action suivante
95
    		$this->setSuivant('__defaut__');
95
    		$this->setSuivant('__defaut__');
96
    	} else if (isset($_POST['btn_utilisateur_modifier'])) {
96
    	} else if (isset($_POST['btn_utilisateur_modifier'])) {
97
			// Vérification de l'utilisateur à modifier
97
			// Vérification de l'utilisateur à modifier
98
			$bool_modifier = true;
98
			$bool_modifier = true;
99
			$Utilisateur = new Utilisateur();
99
			$Utilisateur = new Utilisateur();
100
			$UtMail = $Utilisateur->consulter(Utilisateur::GU_MAIL, array($_POST['ut_email']));
100
			$UtMail = $Utilisateur->consulter(Utilisateur::GU_MAIL, array($_POST['ut_email']));
101
			if ((is_array($UtMail) && count($UtMail) > 1) || ($UtMail instanceof Utilisateur && $UtMail->getIdUtilisateur() != $_POST['ut_id_utilisateur'])) {
101
			if ((is_array($UtMail) && count($UtMail) > 1) || ($UtMail instanceof Utilisateur && $UtMail->getIdUtilisateur() != $_POST['ut_id_utilisateur'])) {
102
				$aso_admin_utilisateur['messages'][] = 'Un utilisateur avec le même courriel existe déjà !';
102
				$aso_admin_utilisateur['messages'][] = 'Un utilisateur avec le même courriel existe déjà !';
103
				$bool_modifier = false;
103
				$bool_modifier = false;
104
			}
104
			}
105
			$this->verifierChampsCommuns(&$aso_admin_utilisateur, &$bool_modifier);
105
			$this->verifierChampsCommuns(&$aso_admin_utilisateur, &$bool_modifier);
106
			if ($bool_modifier) {
106
			if ($bool_modifier) {
107
				// Action suivante
107
				// Action suivante
Line 117... Line 117...
117
	}
117
	}
Line 118... Line 118...
118
 
118
 
119
	public function verifierChampsCommuns(&$aso_admin_utilisateur, &$bool)
119
	public function verifierChampsCommuns(&$aso_admin_utilisateur, &$bool)
120
	{
120
	{
121
		if (!preg_match('/^\w{6,}$/', $_POST['ut_mot_de_passe'])) {
121
		if (!preg_match('/^\w{6,}$/', $_POST['ut_mot_de_passe'])) {
122
			$aso_admin_utilisateur['messages'][] = 'Le mot de passe doit contenir au moins 6 caractères !';
122
			$aso_admin_utilisateur['messages'][] = 'Le mot de passe doit contenir au moins 6 caractères !';
123
			$bool = false;
123
			$bool = false;
124
		}
124
		}
125
		if ($_POST['ut_mot_de_passe'] != $_POST['ut_mot_de_passe_confirmation']) {
125
		if ($_POST['ut_mot_de_passe'] != $_POST['ut_mot_de_passe_confirmation']) {
126
			$aso_admin_utilisateur['messages'][] = 'Les mots de passe saisies ne sont pas identique !';
126
			$aso_admin_utilisateur['messages'][] = 'Les mots de passe saisies ne sont pas identique !';
127
			$bool = false;
127
			$bool = false;
128
		}
128
		}
129
		if ($_POST['ut_temps_de_travail_jour'] > 24) {
129
		if ($_POST['ut_temps_de_travail_jour'] > 24) {
130
			$aso_admin_utilisateur['messages'][] = 'Il est impossible que le temps de travail soit supérieur à 24h !';
130
			$aso_admin_utilisateur['messages'][] = 'Il est impossible que le temps de travail soit supérieur à 24h !';
131
			$bool = false;
131
			$bool = false;
132
		}
132
		}
133
		$aso_champs_obligatoires = array('ut_nom' => 'Nom', 'ut_prenom' => 'Prénom', 'ut_email' => 'Courriel', 'ut_mot_de_passe' => 'Mot de passe');
133
		$aso_champs_obligatoires = array('ut_nom' => 'Nom', 'ut_prenom' => 'Prénom', 'ut_email' => 'Courriel', 'ut_mot_de_passe' => 'Mot de passe');
134
		foreach ($aso_champs_obligatoires as $champ_id => $libelle) {
134
		foreach ($aso_champs_obligatoires as $champ_id => $libelle) {
135
			if (empty($_POST[$champ_id])) {
135
			if (empty($_POST[$champ_id])) {
136
				$aso_admin_utilisateur['messages'][] = "Le champ $libelle ne doit pas être vide !";
136
				$aso_admin_utilisateur['messages'][] = "Le champ $libelle ne doit pas être vide !";
137
				$bool = false;
137
				$bool = false;
138
			}
138
			}
139
		}
139
		}
Line 140... Line 140...
140
	}
140
	}
141
 
141
 
142
	public function executerEditer()
142
	public function executerEditer()
143
    {
143
    {
144
		// Ajout du statut d'utilisateur
144
		// Ajout du statut d'utilisateur
145
		if (isset($_POST['btn_utilisateur_modifier'])) {
145
		if (isset($_POST['btn_utilisateur_modifier'])) {
146
			// Récupération des données de l'utilisateur à modifier
146
			// Récupération des données de l'utilisateur à modifier
147
			$Utilisateur = new Utilisateur();
147
			$Utilisateur = new Utilisateur();
148
			$Utilisateur->consulter(Utilisateur::GU_ID, $_POST['utsu_id'], true);
148
			$Utilisateur->consulter(Utilisateur::GU_ID, $_POST['utsu_id'], true);
149
			$aso_admin_utilisateur['Utilisateur'] = $Utilisateur;
149
			$aso_admin_utilisateur['Utilisateur'] = $Utilisateur;
150
			// Vérification si l'utilisateur est admin
150
			// Vérification si l'utilisateur est admin
151
			$aso_admin_utilisateur['bool_mark_admin'] = false;
151
			$aso_admin_utilisateur['bool_mark_admin'] = false;
152
			if ($Utilisateur->getMarkAdmin() == 1) {
152
			if ($Utilisateur->getMarkAdmin() == 1) {
153
				$aso_admin_utilisateur['bool_mark_admin'] = true;
153
				$aso_admin_utilisateur['bool_mark_admin'] = true;
154
			}
154
			}
155
			// Vérification si l'utilisateur doit apparaître dans le récapitulatif
155
			// Vérification si l'utilisateur doit apparaître dans le récapitulatif
156
			$aso_admin_utilisateur['bool_mark_recapitulatif'] = false;
156
			$aso_admin_utilisateur['bool_mark_recapitulatif'] = false;
157
			if ($Utilisateur->getMarkRecapitulatif() == 1) {
157
			if ($Utilisateur->getMarkRecapitulatif() == 1) {
158
				$aso_admin_utilisateur['bool_mark_recapitulatif'] = true;
158
				$aso_admin_utilisateur['bool_mark_recapitulatif'] = true;
159
			}
159
			}
160
			// Modification des titres, légendes et bouton
160
			// Modification des titres, légendes et bouton
161
			$aso_admin_utilisateur['form_legend'] = 'Modifier un utilisateur';
161
			$aso_admin_utilisateur['form_legend'] = 'Modifier un utilisateur';
162
			$aso_admin_utilisateur['form_bouton_value'] = 'Modifier';
162
			$aso_admin_utilisateur['form_bouton_value'] = 'Modifier';
Line 232... Line 232...
232
	}
232
	}
Line 233... Line 233...
233
 
233
 
234
    public function executerSupprimer()
234
    public function executerSupprimer()
235
    {
235
    {
236
		$aso_admin_utilisateur = array();
236
		$aso_admin_utilisateur = array();
237
		// Vérif du nombre d'utilisateur admin (doit être supérieur à 1)
237
		// Vérif du nombre d'utilisateur admin (doit être supérieur à 1)
238
		$Utilisateur = new Utilisateur();
238
		$Utilisateur = new Utilisateur();
239
		$nbre_admin = $Utilisateur->consulter(Utilisateur::GU_ADMIN);
239
		$nbre_admin = $Utilisateur->consulter(Utilisateur::GU_ADMIN);
240
		if (count($nbre_admin) > 1) {
240
		if (count($nbre_admin) > 1) {
241
			trigger_error('Utilisateur admin > 1 -> OK', E_USER_NOTICE);
241
			trigger_error('Utilisateur admin > 1 -> OK', E_USER_NOTICE);
242
			// Vérif des travail_projets
242
			// Vérif des travail_projets
243
			$TravailProjet = new TravailProjet();
243
			$TravailProjet = new TravailProjet();
244
			$bool_existe = $TravailProjet->consulter(TravailProjet::GTP_UTILISATEUR, array($_POST['utsu_id']));
244
			$bool_existe = $TravailProjet->consulter(TravailProjet::GTP_UTILISATEUR, array($_POST['utsu_id']));
245
			if ($bool_existe == false) {
245
			if ($bool_existe == false) {
246
				trigger_error('TravailProjet -> OK', E_USER_NOTICE);
246
				trigger_error('TravailProjet -> OK', E_USER_NOTICE);
247
				// Vérif des absences
247
				// Vérif des absences
248
				$Absence = new Absence();
248
				$Absence = new Absence();
249
				$bool_existe = $Absence->consulter(Absence::GA_ID_UTILISATEUR, array($_POST['utsu_id']));
249
				$bool_existe = $Absence->consulter(Absence::GA_ID_UTILISATEUR, array($_POST['utsu_id']));
250
				if ($bool_existe == false) {
250
				if ($bool_existe == false) {
251
					trigger_error('Absence -> OK', E_USER_NOTICE);
251
					trigger_error('Absence -> OK', E_USER_NOTICE);
252
					// Suppression de l'utilisateur
252
					// Suppression de l'utilisateur
253
					$Utilisateur = new Utilisateur();
253
					$Utilisateur = new Utilisateur();
254
					$Utilisateur->setIdUtilisateur($_POST['utsu_id']);
254
					$Utilisateur->setIdUtilisateur($_POST['utsu_id']);
255
			    	if ($Utilisateur->supprimer()) {
255
			    	if ($Utilisateur->supprimer()) {
256
			    		$aso_admin_utilisateur['messages'][] = "L'utilisateur a été supprimé.";
256
			    		$aso_admin_utilisateur['messages'][] = "L'utilisateur a été supprimé.";
257
			    	}
257
			    	}
258
				}		
258
				}		
259
			}
259
			}
260
		} else {
260
		} else {
261
			$aso_admin_utilisateur['messages'][] = "Il n'est pas possible de supprimer le seul administrateur!";
261
			$aso_admin_utilisateur['messages'][] = "Il n'est pas possible de supprimer le seul administrateur!";
Line 262... Line 262...
262
		}
262
		}
263
		
263
		
264
		// Message d'erreur si l'utilisateur contient des données
264
		// Message d'erreur si l'utilisateur contient des données
265
		if (isset($bool_existe) && $bool_existe != false) {
265
		if (isset($bool_existe) && $bool_existe != false) {
Line 266... Line 266...
266
			$aso_admin_utilisateur['messages'][] = "Il n'est pas possible de supprimer un utilisateur contenant des données!";
266
			$aso_admin_utilisateur['messages'][] = "Il n'est pas possible de supprimer un utilisateur contenant des données!";
267
		}
267
		}