Subversion Repositories Applications.framework

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5 aurelien 1
<?php
105 aurelien 2
// declare(encoding='UTF-8');
5 aurelien 3
/**
4
 * Classe controleur pour l'application administration des administrateurs
5
 */
6
class AdminAdministrateur extends Controleur {
100 jpm 7
 
5 aurelien 8
	/**
105 aurelien 9
	 * Fonction d'affichage par défaut, elle appelle la liste des administrateurs
5 aurelien 10
	 */
83 jpm 11
	public function index() {
5 aurelien 12
		$this->charger_admin();
13
	}
100 jpm 14
 
5 aurelien 15
	/**
105 aurelien 16
	 * Charge la liste des administrateurs et l'envoie à la vue
17
	 * @param array un tableau contenant les erreurs à afficher s'il y en a
5 aurelien 18
	 * @return string la vue correspondante
19
	 */
83 jpm 20
	public function chargerAdmin($erreurs = array()) {
5 aurelien 21
		$this->chargerModele('ListeAdmin');
22
		$data['erreurs'] = $erreurs;
23
		$data['admin'] = $this->ListeAdmin->chargerAdmin();
120 aurelien 24
 
88 jpm 25
		$this->chargerVue('liste_admin', $data);
5 aurelien 26
 
27
		return $this->liste_admin;
28
	}
100 jpm 29
 
5 aurelien 30
	/**
105 aurelien 31
	 * Charge les détails d'un administrateur demandé et l'envoi à la
5 aurelien 32
	 * vue qui permet de les modifier
105 aurelien 33
	 * @id string l'id de l'administrateur à modifier
5 aurelien 34
	 * @return string la vue correspondante
35
	 */
83 jpm 36
	public function modifAdmin($id) {
5 aurelien 37
		$this->chargerModele('ListeAdmin');
38
		$data['admin'] = $this->ListeAdmin->loadDetailsAdmin($id);
39
		$this->chargerVue('modif_admin',$data);
100 jpm 40
 
41
		return $this->modif_admin;
5 aurelien 42
	}
100 jpm 43
 
5 aurelien 44
	/**
105 aurelien 45
	 * Fonction appelée lors de la validation du formulaire de modification
46
	 * des détails d'un administrateurs. Elle modifie les détails dans la base
47
	 * de données. S'il y a une erreur et rappelle la formulaire et notifie l'erreur,
5 aurelien 48
	 * sinon elle charge la liste des administrateurs
49
	 * @param string l'identifiant de l'administrateur*
50
	 * @param string le nom
105 aurelien 51
	 * @param string le prénom
5 aurelien 52
	 * @param string le mail
53
	 * @param string le mot de passe
54
	 * @param string la confirmation du mot de passe
55
	 * @return string la vue correspondante
56
	 */
83 jpm 57
	public function modifAdminVa($id,$nom,$prenom,$mail,$lang,$pass,$pass_conf) {
58
		$this->chargerModele('ListeAdmin') ;
59
		$res = $this->ListeAdmin->modifDetailsAdmin($id,$nom,$prenom,$mail,$lang,$pass,$pass_conf) ;
100 jpm 60
 
5 aurelien 61
		if (count($res) == 0) {
100 jpm 62
			return $this->chargerAdmin() ;
5 aurelien 63
		} else {
64
			$admin['ga_id_administrateur'] = $id;
65
			$admin['ga_nom'] = $nom;
66
			$admin['ga_prenom'] = $prenom;
100 jpm 67
			$admin['ga_mail']  = $mail;
5 aurelien 68
			$admin['ga_ce_i18n'] = $lang;
69
			$data['admin'] = $admin;
70
			$data['erreurs'] = $res;
71
			$this->chargerVue('modif_admin',$data);
100 jpm 72
 
73
			return $this->modif_admin;
5 aurelien 74
		}
75
	}
100 jpm 76
 
5 aurelien 77
	/**
105 aurelien 78
	 * Supprime un administrateur dans la base de données,
5 aurelien 79
	 * renvoie la liste des administrateurs, en affichant des erreurs
80
	 * s'il y en a.
81
	 * @return string la vue contenant la liste des administrateurs
100 jpm 82
	 *
5 aurelien 83
	 */
83 jpm 84
	public function supprAdmin($id) {
5 aurelien 85
		$this->chargerModele('ListeAdmin');
86
		$res = $this->ListeAdmin->suppAdmin($id);
100 jpm 87
		if ($res == '') {
88
			return $this->chargerAdmin();
5 aurelien 89
		} else {
90
			$erreurs['supp'] = $res;
91
			return $this->chargerAdmin($erreurs);
100 jpm 92
		}
5 aurelien 93
	}
100 jpm 94
 
5 aurelien 95
	/**
96
	 * Appelle la vue contenant le formulaire d'ajout d'un administrateur
100 jpm 97
	 * @return string la vue contenant le formulaire d'ajout
5 aurelien 98
	 */
99
	function ajoutAdmin() {
100
		$admin['ga_id_administrateur'] = '';
101
		$admin['ga_nom'] = '';
102
		$admin['ga_prenom'] = '';
100 jpm 103
		$admin['ga_mail']  = '';
5 aurelien 104
		$admin['ga_ce_i18n'] = '';
105
		$data['admin'] = $admin;
100 jpm 106
		$this->chargerVue('ajout_admin',$data);
107
 
108
		return $this->ajout_admin;
5 aurelien 109
	}
100 jpm 110
 
5 aurelien 111
	/**
105 aurelien 112
	 * Fonction appelée lors de la validation du formulaire d'ajout d'un administrateur.
113
	 * Elle ajoute celui-ci les dans la base de données
5 aurelien 114
	 * S'il y a une erreur et rappelle la formulaire et notifie l'erreur,
115
	 * sinon elle charge la liste des administrateurs
116
	 * @param string le nom
105 aurelien 117
	 * @param string le prénom
5 aurelien 118
	 * @param string le mail
119
	 * @param string le mot de passe
120
	 * @param string la confirmation du mot de passe
121
	 * @return string la vue correspondante
122
	 */
83 jpm 123
	public function ajoutAdminVa($nom,$prenom,$mail,$lang,$pass,$pass_conf) {
124
		if (empty($nom) || empty($prenom) || empty($mail) || empty($pass) || empty($pass_conf)) {
125
			$res = array('champs' => 'Tous les champs sont obligatoires') ;
100 jpm 126
			$data['erreurs'] = $res;
83 jpm 127
			$admin['ga_nom'] = $nom;
128
			$admin['ga_prenom'] = $prenom;
100 jpm 129
			$admin['ga_mail']  = $mail;
83 jpm 130
			$admin['ga_ce_i18n'] = $lang;
131
			$data['admin'] = $admin;
132
			$this->chargerVue('ajout_admin',$data);
100 jpm 133
 
83 jpm 134
			return $this->ajout_admin;
135
		}
100 jpm 136
 
137
		$this->chargerModele('ListeAdmin');
83 jpm 138
		$res = $this->ListeAdmin->ajoutAdmin($nom,$prenom,$mail,$lang,$pass,$pass_conf);
5 aurelien 139
		if (count($res) == 0) {
100 jpm 140
			return $this->chargerAdmin();
5 aurelien 141
		} else {
142
			$admin['ga_nom'] = $nom;
143
			$admin['ga_prenom'] = $prenom;
100 jpm 144
			$admin['ga_mail']  = $mail;
5 aurelien 145
			$admin['ga_ce_i18n'] = $lang;
146
			$data['admin'] = $admin;
147
			$data['erreurs'] = $res;
148
			$this->chargerVue('ajout_admin',$data);
100 jpm 149
 
150
			return $this->ajout_admin;
151
		}
5 aurelien 152
	}
100 jpm 153
 
105 aurelien 154
	 /** Apelle le formulaire d'identification (dans le cas où l'utilisateur n'est pas identifié)
5 aurelien 155
	  * @return string la vue permettant de s'identifier
156
	 */
83 jpm 157
	public function demanderIdent() {
88 jpm 158
		$this->chargerVue('ident_admin', null);
5 aurelien 159
		return $this->ident_admin;
160
	}
100 jpm 161
 
5 aurelien 162
	/**
122 aurelien 163
	 * Renvoie la tête de page de l'application
5 aurelien 164
	 * @return string la tete de page de l'application
165
	 */
83 jpm 166
	public function adminTete() {
5 aurelien 167
		$tete = '<h1>Gestion des administrateurs de Papyrus</h1>';
168
		return $tete;
169
	}
100 jpm 170
 
5 aurelien 171
	/**
172
	 * Renvoie le pied de page de l'application
173
	 * @return string le pied de page de l'application
174
	 */
83 jpm 175
	public function adminPied() {
5 aurelien 176
		$pied = '';
177
		return $pied;
178
	}
179
}
83 jpm 180
?>