Subversion Repositories Applications.annuaire

Compare Revisions

Ignore whitespace Rev 29 → Rev 30

/trunk/controleurs/VerificationControleur.php
13,8 → 13,6
 
class VerificationControleur extends Controleur {
 
 
// TODO: utiliser les fonction de mappage définies plus haut
/**
* Vérifie que les valeurs pour des champs de mappage d'un annuaire donné
* sont correctes
26,49 → 24,64
$erreurs = false;
 
if(!$this->mailValide($valeurs['champ_mail'])) {
$erreurs['text_'.$tableau_mappage[1]['champ_mail']] = 'mail invalide';
$erreurs[$tableau_mappage[1]['champ_mail']] = 'mail invalide';
}
 
$this->chargerModele('AnnuaireModele');
if($this->AnnuaireModele->utilisateurExisteParMail($id_annuaire, $valeurs['champ_mail'])) {
$erreurs['text_'.$tableau_mappage[1]['champ_mail']] = 'cet email est déjà utilisé par quelqu\'un d\'autre';
$erreurs[$tableau_mappage[1]['champ_mail']] = 'cet email est déjà utilisé par quelqu\'un d\'autre';
}
 
if(trim($valeurs['champ_pass']) == ''
|| $valeurs['champ_pass'] != $valeurs['champ_pass_conf']) {
$erreurs['password_'.$tableau_mappage[1]['champ_pass']] = 'mot de passe invalide';
$erreurs[$tableau_mappage[1]['champ_pass']] = 'mot de passe invalide';
}
 
if(trim($valeurs['champ_nom']) == '') {
$erreurs['text_'.$tableau_mappage[1]['champ_prenom']] = 'le nom est obligatoire';
$erreurs[$tableau_mappage[1]['champ_prenom']] = 'le nom est obligatoire';
}
 
if(trim($valeurs['champ_prenom']) == '') {
$erreurs['text_'.$tableau_mappage[1]['champ_nom']] = 'le prénom est obligatoire';
$erreurs[$tableau_mappage[1]['champ_nom']] = 'le prénom est obligatoire';
}
 
return $erreurs;
}
 
public function verifierErreurChampModification($id_annuaire, $id_utilisateur ,$valeurs, $tableau_mappage) {
/**
* Vérifie les valeurs des champs pour la modification d'un formulaire
*/
public function verifierErreurChampModification($id_annuaire, $id_utilisateur, $type ,$valeur, $confirmation = false) {
 
if(!$this->mailValide($valeurs['champ_mail'])) {
$erreurs['text_'.$tableau_mappage[1]['champ_mail']] = 'mail invalide';
}
$retour = array(true,false);
 
$this->chargerModele('AnnuaireModele');
$ancien_mail = $this->AnnuaireModele->obtenirMailParId($id_annuaire,$id_utilisateur);
switch($type) {
case 'mail':
if(!$this->mailValide($valeur)) {
$retour[0] = false;
$retour[1] = 'mail invalide';
break;
}
 
if($ancien_mail != $valeurs['champ_mail'] && $this->AnnuaireModele->utilisateurExisteParMail($id_annuaire, $valeurs['champ_mail'])) {
$erreurs['text_'.$tableau_mappage[1]['champ_mail']] = 'cet email est déjà utilisé par quelqu\'un d\'autre';
}
$this->chargerModele('AnnuaireModele');
$ancien_mail = $this->AnnuaireModele->obtenirMailParId($id_annuaire,$id_utilisateur);
 
if(trim($valeurs['champ_pass']) == ''
|| $valeurs['champ_pass'] != $valeurs['champ_pass_conf']) {
$erreurs['password_'.$tableau_mappage[1]['champ_pass']] = 'mot de passe invalide';
if($ancien_mail != $valeur && $this->AnnuaireModele->utilisateurExisteParMail($id_annuaire, $valeur)) {
$retour[0] = false;
$retour[1] = 'cet email est déjà utilisé par quelqu\'un d\'autre';
}
 
break;
 
case 'password':
 
if(trim($valeur) != trim($confirmation)) {
$retour[0] = false;
$retour[1] = 'mot de passe invalide';
}
}
 
return $erreurs;
return $retour;
}
 
public function remplacerValeurChampPourInsertion($type, $valeur, $mail_utilisateur) {
115,6 → 128,7
} else {
$valeur_modifiee = 0;
}
break;
 
default:
$valeur_modifiee = $valeur;
124,7 → 138,7
return $valeur_modifiee;
}
 
public function remplacerValeurChampPourModification($type, $valeur, $mail_utilisateur) {
public function remplacerValeurChampPourModification($id_annuaire, $id_utilisateur, $type, $valeur, $mail_utilisateur) {
 
$valeur_modifiee = $valeur;
 
164,13 → 178,32
// Si c'est une inscription à la lettre d'actualité, on appelle la fonction d'inscription
$lettre_controleur = new LettreControleur();
 
$this->chargerModele('AnnuaireModele');
$ancien_mail = $this->AnnuaireModele->obtenirMailParId($id_annuaire, $id_utilisateur);
 
$changement_mail = false;
 
if($ancien_mail != $mail_utilisateur) {
$changement_mail = true;
}
 
if($valeur == 'on') {
// sinon on stocke 1 pour indique que la case est cochée (cas de la checkbox oui/non)
$valeur_modifiee = 1;
$lettre_controleur->inscriptionLettreActualite($mail_utilisateur);
 
if($changement_mail) {
$lettre_controleur->ModificationInscriptionLettreActualite($ancien_mail, $mail_utilisateur);
} else {
$lettre_controleur->inscriptionLettreActualite($mail_utilisateur);
}
 
} else {
$valeur_modifiee = 0;
$lettre_controleur->desinscriptionLettreActualite($mail_utilisateur);
$mail_a_desinscrire = $mail_utilisateur;
if($changement_mail) {
$mail_a_desinscrire = $ancien_mail;
}
$lettre_controleur->desinscriptionLettreActualite($mail_a_desinscrire);
}
break;