Subversion Repositories Applications.framework

Compare Revisions

Ignore whitespace Rev 127 → Rev 128

/trunk/exemple/modeles/ListeAdmin.php
3,6 → 3,18
/**
* Modèle d'accès à la base de données des administrateurs
* de papyrus
*
* PHP Version 5
*
* @package Framework
* @category Class
* @author aurelien <aurelien@tela-botanica.org>
* @copyright 2009 Tela-Botanica
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $$Id$$
* @link /doc/framework/
*
*/
class listeAdmin extends Modele {
 
73,18 → 85,18
" AND ga_id_administrateur != $id ";
if ($res_nb = $this->requete($query_verif_mail)) {
$ligne = $res_nb->fetch();
$nb_admin = $ligne['nb_admin'] ;
$nb_admin = $ligne['nb_admin'];
} else {
$res['bdd'] = 'Erreur dans la base de données' ;
$res['bdd'] = 'Erreur dans la base de données';
return $res;
}
 
if($nb_admin != 0) {
$res['mail'] = 'Cet email est déjà utilisé par un autre utilisateur' ;
$res['mail'] = 'Cet email est déjà utilisé par un autre utilisateur';
}
 
$query = 'UPDATE gen_annuaire SET ga_ce_i18n='.$this->proteger($lang).', ga_nom='.$this->proteger($nom).',ga_prenom='.
$this->proteger($prenom).',ga_mail='.$this->proteger($mail) ;
$this->proteger($prenom).',ga_mail='.$this->proteger($mail);
 
// si on a entré quelque chose dans les deux champs de mot de passe
if($pass != '' || $pass_conf != '') {
91,23 → 103,23
// on vérifie si les deux concordent
if($pass == $pass_conf) {
// si oui, on les modifie
$query .= ',ga_mot_de_passe='.$this->proteger(md5($pass)) ;
$query .= ',ga_mot_de_passe='.$this->proteger(md5($pass));
} else {
// si non, on notifiera l'utilisateur
$res['pass'] = 'mot de passe invalide' ;
$res['pass'] = 'mot de passe invalide';
}
}
 
$query .= ' WHERE ga_id_administrateur='.$id ;
$query .= ' WHERE ga_id_administrateur='.$id;
 
if(count($res) != 0) {
return $res ;
return $res;
}
 
if($req_maj = $this->requete($query)) {
 
} else {
$res['bdd'] = 'Erreur de la requête dans la base de données' ;
$res['bdd'] = 'Erreur de la requête dans la base de données';
}
 
return $res;
120,24 → 132,24
*/
function suppAdmin($id) {
 
$nb_admin = 0 ;
$res = '' ;
$nb_admin = 0;
$res = '';
 
$query_verif = 'SELECT COUNT(*) AS nb_admin FROM gen_annuaire' ;
$query_verif = 'SELECT COUNT(*) AS nb_admin FROM gen_annuaire';
if($res_nb = $this->requete($query_verif)) {
$ligne = $res_nb->fetch();
$nb_admin = $ligne['nb_admin'] ;
$nb_admin = $ligne['nb_admin'];
} else {
$res = 'Erreur dans la base de donn�es' ;
$res = 'Erreur dans la base de donn�es';
return $res ;
}
 
if($nb_admin == 2) {
$res = 'Impossible de supprimer le dernier administrateur' ;
$res = 'Impossible de supprimer le dernier administrateur';
return $res ;
}
 
$query = 'DELETE FROM gen_annuaire WHERE ga_id_administrateur='.$id ;
$query = 'DELETE FROM gen_annuaire WHERE ga_id_administrateur='.$id;
 
if($res_supp = $this->requete($query)) {
return $res ;
159,25 → 171,25
*/
function ajoutAdmin($nom,$prenom,$mail,$lang,$pass,$pass_conf) {
 
$nouvel_id = 0 ;
$nb_admin = 0 ;
$res = array() ;
$nouvel_id = 0;
$nb_admin = 0;
$res = array();
 
if(!$this->validerMail($mail)) {
$res['mail'] = 'adresse mail invalide' ;
$res['mail'] = 'adresse mail invalide';
}
 
$query_verif_mail = 'SELECT COUNT(*) AS nb_admin FROM gen_annuaire WHERE ga_mail = '.$this->proteger($mail) ;
$query_verif_mail = 'SELECT COUNT(*) AS nb_admin FROM gen_annuaire WHERE ga_mail = '.$this->proteger($mail);
if($res_nb = $this->requete($query_verif_mail)) {
$ligne = $res_nb->fetch() ;
$nb_admin = $ligne['nb_admin'] ;
$ligne = $res_nb->fetch();
$nb_admin = $ligne['nb_admin'];
} else {
$res['bdd'] = 'Erreur dans la base de données' ;
return $res ;
$res['bdd'] = 'Erreur dans la base de données';
return $res;
}
 
if($nb_admin != 0) {
$res['mail'] = 'Cet email est déjà utilisé par un autre utilisateur' ;
$res['mail'] = 'Cet email est déjà utilisé par un autre utilisateur';
}
 
if($pass != '' || $pass_conf != '') {
186,16 → 198,16
 
} else {
// si non, on notifiera l'utilisateur
$res['pass'] = 'mot de passe invalide' ;
$res['pass'] = 'mot de passe invalide';
}
}
 
$query = 'SELECT MAX(ga_id_administrateur) as nouvel_id FROM gen_annuaire' ;
$query = 'SELECT MAX(ga_id_administrateur) as nouvel_id FROM gen_annuaire';
 
if($res_requete_id = $this->requete($query)) {
 
$ligne = $res_requete_id->fetch() ;
$nouvel_id = $ligne['nouvel_id'] + 1 ;
$nouvel_id = $ligne['nouvel_id'] + 1;
} else {
return $res ;
}
202,19 → 214,19
 
$query = 'INSERT INTO gen_annuaire VALUES ('.$nouvel_id.','.$this->proteger($lang).','.
$this->proteger($nom).','.$this->proteger($prenom).','.$this->proteger(md5($pass)).','.
$this->proteger($mail).')' ;
$this->proteger($mail).')';
 
if(count($res) != 0) {
return $res ;
return $res;
}
 
if($res_ajout = $this->requete($query)) {
 
} else {
$res['bdd'] = 'Erreur de la requête dans la base de données' ;
$res['bdd'] = 'Erreur de la requête dans la base de données';
}
 
return $res ;
return $res;
}
 
/**
/trunk/exemple/admin_administrateur.php
1,14 → 1,20
<?php
// declare(encoding='UTF-8');
/**
* @category PHP
* @package Framework
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @copyright Tela-Botanica 2009
* @link /doc/framework/
* Ceci est un exemple d'application qui permet d'illustrer le fonctionnement du framework, il montre comment
* une application peut être dans papyrus, ou bien utilisée en stand alone.
*/
* Ceci est un exemple d'application qui permet d'illustrer le fonctionnement du framework, il montre comment
* une application peut être dans papyrus, ou bien utilisée en stand alone.
*
* PHP version 5
*
* @category PHP
* @package Framework
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @copyright Tela-Botanica 2009
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $$Id$$
* @link /doc/framework/
*/
 
// La fonction autolad doit être appelée avant tout autre chose dans l'application.
// Sinon, rien ne sera chargé.
22,7 → 28,7
// Si l'utilisateur est authentifié
if (Config::get('identification')) {
// on renvoie la vue principale de l'application
$methode = '' ;
$methode = '';
 
if (isset($_GET['m'])) {
$methode = $_GET['m'];
/trunk/exemple/squelettes/modif_admin.tpl.html
1,5 → 1,7
<h2>Modification d'un administrateur</h2>
<form id="modif_admin" action="<?=$base_url.'?m=modif_admin_va&id_admin='.$admin['ga_id_administrateur'];?>" method="post">
<form id="modif_admin" action="<? $url_form = clone($base_url);
$url_form->setVariablesRequete(array('m'=>'modif_admin','id_admin'=>$admin['ga_id_administrateur']));
echo $url_form; ?>" method="post">
<fieldset>
<ul>
<li>
38,5 → 40,5
</ul>
</fieldset>
<input type="submit" id="valider_modif_admin" name="valider_modif_admin" tabindex="7" value="Modifier" />
<a href="<?=$base_url.'?m=liste_admin';?>">Annuler</a>
<a href="<? $url_annul = clone($base_url); $url_annul->setVariableRequete('m','liste_admin'); echo $url_annul; ?>">Annuler</a>
</form>
/trunk/exemple/squelettes/liste_admin.tpl.html
12,8 → 12,14
<td><?=$element['ga_nom'] ?></td>
<td><?=$element['ga_prenom'] ?></td>
<td><?=$element['ga_ce_i18n'] ?></td>
<td><a href="<?=$base_url.'?m=modif_admin&id_admin='.$element['ga_id_administrateur'];?>">Modifier</a></td>
<td><a href="<?=$base_url.'?m=suppr_admin&id_admin='.$element['ga_id_administrateur'];?>">Supprimer</a></td>
<td><a href="<?php $url_mod = clone($base_url);
$url_mod->setVariablesRequete(array('m' => 'modif_admin', 'id_admin' => $element['ga_id_administrateur']));
echo $url_mod;
?>">Modifier</a></td>
<td><a href="<?php
$url_mod->setVariableRequete('m','supp_admin');
echo $url_mod;
?>">Supprimer</a></td>
</tr>
<?php endforeach; ?>
</table>
20,4 → 26,4
<?php if (isset($erreurs['supp'])): ?>
<span class="symbole_obligatoire"> <?=$erreurs['supp'];?> </span>
<?php endif; ?>
<p><a href="<?=$base_url.'?&m=ajout_admin';?>"> Ajouter un administrateur </a></p>
<p><a href="<?php $base_url->setVariableRequete('m','ajout_admin') ; echo $base_url ;?>"> Ajouter un administrateur </a></p>
/trunk/exemple/squelettes/ajout_admin.tpl.html
1,5 → 1,7
<h2>Ajout d'un administrateur</h2>
<form id="modif_admin" method="post" action="<?=$base_url.'?&m=ajout_admin_va';?>">
<form id="modif_admin" method="post" action="<? $url_form = clone($base_url);
$url_form->setVariableRequete('m','ajout_admin');
echo $url_form; ?>">
<fieldset>
<?php if (isset($erreurs['champs'])): ?>
<p class="symbole_obligatoire"> <?=$erreurs['champs'] ?> </p>
41,5 → 43,5
</ul>
</fieldset>
<input type="submit" id="valider_ajout_admin" name="valider_ajout_admin" tabindex="7" value="Ajouter" />
<a href="<?=$base_url.'?m=liste_admin';?>">Annuler</a>
<a href="<? $url_annul = clone($base_url); $url_annul->setVariableRequete('m','liste_admin'); echo $url_annul; ?>">Annuler</a>
</form>
/trunk/exemple/controleurs/AdminAdministrateur.php
1,7 → 1,19
<?php
// declare(encoding='UTF-8');
/**
* Classe controleur pour l'application administration des administrateurs
* classe Controleur, pour l'application d'administration des administrateurs
*
* PHP Version 5
*
* @package Framework
* @category Class
* @author aurelien <aurelien@tela-botanica.org>
* @copyright 2009 Tela-Botanica
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $$Id$$
* @link /doc/framework/
*
*/
class AdminAdministrateur extends Controleur {
 
45,7 → 57,7
* des détails d'un administrateurs. Elle modifie les détails dans la base
* de données. S'il y a une erreur et rappelle la formulaire et notifie l'erreur,
* sinon elle charge la liste des administrateurs
* @param string l'identifiant de l'administrateur*
* @param string l'identifiant de l'administrateur
* @param string le nom
* @param string le prénom
* @param string le mail
55,10 → 67,10
*/
public function modifAdminVa($id,$nom,$prenom,$mail,$lang,$pass,$pass_conf) {
$this->chargerModele('ListeAdmin') ;
$res = $this->ListeAdmin->modifDetailsAdmin($id,$nom,$prenom,$mail,$lang,$pass,$pass_conf) ;
$res = $this->ListeAdmin->modifDetailsAdmin($id,$nom,$prenom,$mail,$lang,$pass,$pass_conf);
 
if (count($res) == 0) {
return $this->chargerAdmin() ;
return $this->chargerAdmin();
} else {
$admin['ga_id_administrateur'] = $id;
$admin['ga_nom'] = $nom;
121,7 → 133,7
*/
public function ajoutAdminVa($nom,$prenom,$mail,$lang,$pass,$pass_conf) {
if (empty($nom) || empty($prenom) || empty($mail) || empty($pass) || empty($pass_conf)) {
$res = array('champs' => 'Tous les champs sont obligatoires') ;
$res = array('champs' => 'Tous les champs sont obligatoires');
$data['erreurs'] = $res;
$admin['ga_nom'] = $nom;
$admin['ga_prenom'] = $prenom;