Subversion Repositories eFlore/Applications.del

Rev

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

Rev 2060 Rev 2074
Line 110... Line 110...
110
		$this->contexte->setCookie('del_courriel', null);
110
		$this->contexte->setCookie('del_courriel', null);
111
		$this->contexte->setCookie('del_mot_de_passe', null);
111
		$this->contexte->setCookie('del_mot_de_passe', null);
112
	}
112
	}
Line 113... Line 113...
113
 
113
 
114
	public function etreAdmin() {
-
 
115
		//TODO: déplacer ceci dans une classe utilitaire
114
	public function etreAdmin() {
116
		$idUtilisateurP = $this->bdd->proteger($this->utilisateur['id_utilisateur']);
115
		$idUtilisateurP = $this->bdd->proteger($this->utilisateur['id_utilisateur']);
117
		$requete = 'SELECT admin '.
116
		$requete = 'SELECT admin '.
118
			'FROM del_utilisateur_infos '.
117
			'FROM del_utilisateur_infos '.
119
			"WHERE id_utilisateur = $idUtilisateurP ".
118
			"WHERE id_utilisateur = $idUtilisateurP ".
Line 143... Line 142...
143
		$date = $this->bdd->recuperer($requete);
142
		$date = $this->bdd->recuperer($requete);
144
		$date = !empty($date['date_derniere_consultation_evenements']) ? $date['date_derniere_consultation_evenements'] : "0";
143
		$date = !empty($date['date_derniere_consultation_evenements']) ? $date['date_derniere_consultation_evenements'] : "0";
145
		return $date;
144
		return $date;
146
	}
145
	}
Line 147... Line 146...
147
	
146
	
-
 
147
	public function setDerniereDateConsultationEvenements($id_utilisateur, $date) {	
-
 
148
		// Vérification que la ligne correspondant à l'utilisateur dans la table
-
 
149
		// infos existe bien (sinon on la crée)
-
 
150
		$infos_utilisateur = $this->obtenirInfosUtilisateur($id_utilisateur);
-
 
151
		if (empty($infos_utilisateur)) {
-
 
152
			$this->initialiserInfosUtilisateur($id_utilisateur);
-
 
153
		}
148
	public function setDerniereDateConsultationEvenements($id_utilisateur, $date) {
154
		
149
		$requete = "UPDATE del_utilisateur_infos SET date_derniere_consultation_evenements = ".$this->bdd->proteger($date)." ".
155
		$requete = "UPDATE del_utilisateur_infos SET date_derniere_consultation_evenements = ".$this->bdd->proteger($date)." ".
150
					"WHERE id_utilisateur = ".$this->bdd->proteger($id_utilisateur);
156
					"WHERE id_utilisateur = ".$this->bdd->proteger($id_utilisateur);
151
		$this->bdd->executer($requete);
157
		$this->bdd->executer($requete);
Line 152... Line 158...
152
	}
158
	}
153
	
159
	
154
	protected function ajouterEvenements(&$utilisateur) {
160
	protected function ajouterEvenements(&$utilisateur) {
155
		$evenements = $this->getEvenements($utilisateur['id_utilisateur']);
161
		$evenements = $this->getEvenements($utilisateur['id_utilisateur']);
-
 
162
		$utilisateur = array_merge($utilisateur, $evenements);
-
 
163
	}
-
 
164
	
-
 
165
	public function obtenirPreferencesUtilisateur($id_utilisateur) {
-
 
166
		$prefs_utilisateur = $this->obtenirInfosUtilisateur($id_utilisateur);
-
 
167
		if (empty($prefs_utilisateur)) {
-
 
168
			$this->initialiserInfosUtilisateur($id_utilisateur);
-
 
169
			$prefs_utilisateur = $this->renvoyerInfosUtilisateurDefaut($id_utilisateur);
-
 
170
		} else {
-
 
171
			if (empty($prefs_utilisateur['preferences'])) {
-
 
172
				$prefs_utilisateur['preferences'] = $this->obtenirTableauPreferenceDefaut();
-
 
173
			} else {
-
 
174
				$prefs_utilisateur['preferences'] = json_decode($prefs_utilisateur['preferences']);
-
 
175
			}
-
 
176
			$prefs_utilisateur['admin'] = $prefs_utilisateur['admin'];
-
 
177
		}
-
 
178
	
-
 
179
		return $prefs_utilisateur;
-
 
180
	}
-
 
181
	
-
 
182
	private function obtenirTableauPreferenceDefaut() {
-
 
183
		return array('mail_notification_mes_obs' => '1', 'mail_notification_toutes_obs' => '0');
-
 
184
	}
-
 
185
	
-
 
186
	private function renvoyerInfosUtilisateurDefaut($id_utilisateur) {
-
 
187
		return array('id_utilisateur' => $id_utilisateur,
-
 
188
				'admin' => '0',
-
 
189
				'preferences' => $this->obtenirTableauPreferenceDefaut(),
-
 
190
				'date_premiere_utilisation' => date('Y-m-d H:i:s'),
-
 
191
				'date_derniere_consultation_evenements' => '0000-00-00 00:00:00');
-
 
192
	}
-
 
193
	
-
 
194
	public function obtenirInfosUtilisateur($id_utilisateur) {
-
 
195
		$requete = 'SELECT * '.
-
 
196
				'FROM del_utilisateur_infos '.
-
 
197
				'WHERE id_utilisateur = '.$this->bdd->proteger($id_utilisateur).' '.
-
 
198
				' -- '.__FILE__.' : '.__LINE__;
-
 
199
		$prefs_utilisateur = $this->bdd->recuperer($requete);
-
 
200
		return $prefs_utilisateur;
-
 
201
	}
-
 
202
	
-
 
203
	public function initialiserInfosUtilisateur($id_utilisateur) {
-
 
204
		$preferences_defaut = $this->obtenirTableauPreferenceDefaut();
-
 
205
		$prefsEncodeesP = $this->bdd->proteger(json_encode($preferences_defaut));
-
 
206
		$idUtilisateurP = $this->bdd->proteger($id_utilisateur);
-
 
207
		$requete = 'INSERT INTO del_utilisateur_infos '.
-
 
208
				'(id_utilisateur, admin, preferences, date_premiere_utilisation )'.
-
 
209
				"VALUES ($idUtilisateurP, 0, $prefsEncodeesP, NOW()) ".
-
 
210
				'ON DUPLICATE KEY UPDATE date_premiere_utilisation = NOW() '.
-
 
211
				' -- '.__FILE__.' : '.__LINE__;
156
		$utilisateur = array_merge($utilisateur, $evenements);
212
		return $this->bdd->executer($requete);
157
	}
213
	}