Subversion Repositories Sites.obs-saisons.fr

Compare Revisions

Ignore whitespace Rev 210 → Rev 209

/trunk/applications/saisie/controleurs/Export.php
File deleted
\ No newline at end of file
/trunk/applications/saisie/controleurs/Station.php
161,28 → 161,6
}
}
public function supprimerStation() {
$id_station_a_supprimer = $_POST['id_station_a_supprimer'];
$individus_station = $this->getIndividusStation($id_station_a_supprimer);
if(count($individus_station) > 0) {
$donnees = array();
$donnees['erreurs'] = 'Impossible de supprimer une station qui contient des données';
$this->id_station_en_cours = $id_station_a_supprimer;
$this->afficherInformationsStation($donnees);
} else {
$station_dao = new StationDao();
$retour_suppression = $station_dao->supprimerStation($id_station_a_supprimer);
$this->setNavigation();
$this->executerActionParDefaut();
}
}
// +---------------------------------------------------------------------------------------------------------------+
// METHODES D'AFFICHAGES D'INFORMATION
194,26 → 172,17
$this->setSortie(self::RENDU_CORPS, $this->getVue('listes/station_liste', $donnees));
}
public function getFicheInformationsStation($donnees = array()) {
public function afficherInformationsStation() {
$id_station = $this->id_station_en_cours;
$donnees['id_station'] = $id_station;
$donnees['infos_station'] = $this->getInformationsStation($id_station);
$donnees['milieux'] = $this->getListeMilieux();
return $this->getVue('fiches/station_fiche', $donnees);
$this->setSortie(self::RENDU_CORPS, $this->getVue('fiches/station_fiche', $donnees));
}
public function afficherInformationsStation($donnees = array()) {
$infos_station = $this->getFicheInformationsStation($donnees);
$this->setSortie(self::RENDU_CORPS, $infos_station);
}
// +---------------------------------------------------------------------------------------------------------------+
// METHODES POUR FABRIQUER LE MENU
/trunk/applications/saisie/controleurs/DrupalUtilisateur.php
1,16 → 1,10
<?php
class DrupalUtilisateur extends Utilisateur {
public function getNomUtilisateurPourId($id) {
return db_result(db_query("SELECT name FROM {users} WHERE uid = %d", $id));
}
public function getIdUtilisateurPourNom($nom) {
return db_result(db_query("SELECT uid FROM {users} WHERE name = '%s'", $nom));
}
public function getIdentifiantNumerique() {
return $GLOBALS['user']->uid;
}
public function getEmail() {
26,7 → 20,7
}
public function estAdmin() {
return in_array('3',array_keys($GLOBALS['user']->roles)) || in_array('3',array_keys($GLOBALS['user']->roles)) ;
return in_array('3',array_keys($GLOBALS['user']->roles));
}
public function estIdentifie() {
/trunk/applications/saisie/controleurs/Liens.php
100,12 → 100,6
public static function getUrlBaseComplete() {
return 'http://'.$_SERVER['SERVER_NAME'].str_replace(realpath($_SERVER['DOCUMENT_ROOT']),'',realpath(Application::getChemin())).'/';
}
public static function getUrlDefaut() {
$params = array();
return self::construireUrl($params);
}
public static function getUrlConsultationFicheStation($id_station) {
153,15 → 147,6
return self::construireUrl($params);
}
public static function getUrlFormulaireSuppressionStation() {
$params = array(
'module' => 'Station',
'action' => 'supprimerStation'
);
return self::construireUrl($params);
}
public static function getUrlFormulaireAjoutEspece($id_station) {
 
$params = array(
220,40 → 205,6
);
return self::construireUrl($params);
}
public static function getUrlFormulaireModificationIndividu($id_station, $id_espece, $id_individu) {
$params = array(
'module' => 'Individu',
'action' => 'afficherFormulaireModificationIndividu',
'id_station' => $id_station,
'id_espece' => $id_espece,
'id_individu' => $id_individu
);
return self::construireUrl($params);
}
public static function getUrlValidationFormulaireModificationIndividu($id_station, $id_espece, $id_individu) {
 
$params = array(
'module' => 'Individu',
'action' => 'validerFormulaireModificationIndividu',
'id_station' => $id_station,
'id_espece' => $id_espece,
'id_individu' => $id_individu
);
return self::construireUrl($params);
}
public static function getUrlSuppressionIndividu($id_station, $id_espece, $id_individu) {
 
$params = array(
'module' => 'Individu',
'action' => 'supprimerIndividu',
'id_station' => $id_station
);
return self::construireUrl($params);
}
public static function getUrlConsultationEspeceStation($id_station, $id_espece, $annee = null) {
271,7 → 222,7
return self::construireUrl($params);
}
public static function getUrlFormulaireModificationObservation($id_station,$id_espece, $id_individu, $annee = null) {
if($annee == null) {
308,21 → 259,6
return self::construireUrl($params);
}
public static function getUrlExportDonneesObservations() {
return Config::get('url_jrest').'OdsExport/FichierExportObservationCSV/';
}
public static function getUrlExportDonneesObservationsPourUtilisateur() {
$params = array(
'module' => 'Export',
'action' => 'envoyerFichierCSVExportObservation'
);
return self::construireUrl($params);
}
public static function renvoyerStylesInclus() {
$styles = '';
336,18 → 272,11
public static function renvoyerScriptsInclus() {
$scripts = '<script type="text/javascript" language="javascript">'.
' var urlBaseJrest = "'.Config::get('url_jrest').'"; '.
'</script>';
$scripts = '';
$scripts .= '<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>';
$scripts .= '<script type="text/javascript" src="'.self::getUrlScript().'jquery-1.4.4.min.js"></script>';
$scripts .= '<script type="text/javascript" src="'.self::getUrlScript().'jquery_ui/jquery-ui-1.8.6.custom.min.js"></script>';
$scripts .= '<script type="text/javascript" src="'.self::getUrlScript().'saisie.js"></script>';
if(AppControleur::getUtilisateur()->estAdmin()) {
$scripts .= '<script type="text/javascript" src="'.self::getUrlScript().'saisie_admin.js"></script>';
}
$scripts .= '<script type="text/javascript" src="'.self::getUrlScript().'jquery_ui/jquery.ui.datepicker.js"></script>';
$scripts .= '<script type="text/javascript" src="'.self::getUrlScript().'jquery_ui/jquery.ui.datepicker-fr.js"></script>';
/trunk/applications/saisie/controleurs/Utilisateur.php
2,14 → 2,7
abstract class Utilisateur extends aControleur {
public function setIdentite($identite) {
$id_identite = $this->getIdUtilisateurPourNom($identite);
if($id_identite) {
$_SESSION['ods_saisie']['identite'] = $id_identite;
} else {
$_SESSION['ods_saisie']['identite'] = $this->getIdentifiantNumerique();
}
$_SESSION['ods_saisie']['identite'] = $identite;
}
public function getIdentite() {
23,25 → 16,6
}
}
public function getIdentiteNom() {
if($this->estAdmin()) {
if(!isset($_SESSION['ods_saisie']['identite']) || $_SESSION['ods_saisie']['identite'] == '') {
return $this->getNom();
}
return $this->getNomUtilisateurPourId($_SESSION['ods_saisie']['identite']);
} else {
return $this->getNom();
}
}
public function getNomUtilisateurPourId($id) {
return '';
}
public function getIdUtilisateurPourNom($nom) {
return 0;
}
public function getIdentifiantNumerique() {
return 0;
}
/trunk/applications/saisie/controleurs/Individu.php
41,10 → 41,6
public function getFormulaireSaisieIndividu($donnees = array()) {
if($donnees == array()) {
$donnees['individu_nom'] = '';
}
$donnees['id_station'] = $_GET['id_station'];
if(!isset($donnees['id_espece'])) {
56,22 → 52,9
$donnees['informations_espece'] = $espece_dao->getInformationsEspece($donnees['id_espece']);
return $this->getVue('formulaires/individu_saisie',$donnees);
}
public function afficherFormulaireModificationIndividu($donnees = array()) {
$individu_dao = new IndividuDao();
$id_individu = $_GET['id_individu'];
$donnees['infos_individu'] = $individu_dao->getInformationsIndividu($id_individu);
$donnees['id_station'] = $_GET['id_station'];
$donnees['id_espece'] = $_GET['id_espece'];
$espece_dao = new EspeceDao();
$donnees['informations_espece'] = $espece_dao->getInformationsEspece($donnees['id_espece']);
$this->setSortie(self::RENDU_CORPS,$this->getVue('formulaires/individu_modification',$donnees));
}
 
// +---------------------------------------------------------------------------------------------------------------+
// METHODES GENERIQUES
public function afficherListeIndividu() {
$this->setSortie(self::RENDU_CORPS, $this->getListeIndividu());
99,10 → 82,6
$observation = new Observation();
if(trim($individu['nom']) == '') {
$individu['nom'] = 'Individu sans nom';
}
$individu['observations'] = $observation->getListeObservationsPourIndividu($individu['id_individu']);
$individu['url'] = Liens::getUrlConsultationFicheIndividu($id_station, $id_espece, $individu['id_individu']);
}
115,7 → 94,7
return $this->getVue('listes/evenement_liste', $donnees);
}
public function afficherInformationsIndividu($donnees = array()) {
public function afficherInformationsIndividu() {
$id_individu = $_GET['id_individu'];
$id_espece = $_GET['id_espece'];
134,21 → 113,8
// METHODES DE VALIDATION DE FORMULAIRE
public function validerFormulaireSaisieIndividu() {
$valeurs_collectees = $this->collecterValeursFormulaireSaisieIndividu();
$valeurs_verifiees = $this->collecterValeursFormulaireSaisieIndividu();
$verification_ou_erreurs = $this->verifierValeursIndividu($valeurs_collectees);
if($verification_ou_erreurs !== true) {
$donnees = $valeurs_collectees;
$donnees['erreurs'] = $verification_ou_erreurs;
$this->afficherFormulaireSaisieIndividu($donnees);
return;
}
$valeurs_verifiees = $valeurs_collectees;
$individu_dao = new IndividuDao();
$retour_ajout_individu = $individu_dao->ajouterIndividu($valeurs_verifiees);
156,7 → 122,7
$this->afficherListeIndividu();
$this->setNavigation();
} else {
$this->afficherFormulaireSaisieIndividu($donnees);
$this->afficherFormulaireSaisieIndividu();
}
}
174,90 → 140,13
$valeurs_verifiees['id_station'] = $_POST['station'];
$valeurs_verifiees['id_espece'] = $_POST['espece'];
$valeurs_verifiees['individu_nom'] = $_POST['individu_nom'];
//TODO: verifier valeurs plus complètement
return $valeurs_verifiees;
}
private function collecterValeursFormulaireModificationIndividu() {
$valeurs_verifiees['id_station'] = $_POST['id_station'];
$valeurs_verifiees['id_espece'] = $_POST['id_espece'];
$valeurs_verifiees['individu_nom'] = $_POST['individu_nom'];
$valeurs_verifiees['id_individu'] = $_POST['id_individu'];
return $valeurs_verifiees;
}
private function verifierValeursIndividu($valeurs_a_verifier) {
$erreurs = array();
foreach($valeurs_a_verifier as $champ => $valeur) {
if(trim($valeur) == '') {
$erreurs[$champ] .= ' Ce champ ne peut pas être vide';
}
}
if(!empty($erreurs)) {
return $erreurs;
}
return true;
}
public function validerFormulaireModificationIndividu() {
$valeurs_collectees = $this->collecterValeursFormulaireModificationIndividu();
$verification_ou_erreurs = $this->verifierValeursIndividu($valeurs_collectees);
if($verification_ou_erreurs !== true) {
$donnees = $valeurs_collectees;
$donnees['erreurs'] = $verification_ou_erreurs;
$this->afficherFormulaireModificationIndividu($donnees);
return;
}
$valeurs_verifiees = $valeurs_collectees;
$id_individu = $valeurs_collectees['id_individu'];
$individu_dao = new IndividuDao();
$retour_modification_individu = $individu_dao->modifierIndividu($id_individu, $valeurs_verifiees);
$this->afficherInformationsIndividu();
}
public function supprimerIndividu() {
$id_individu_a_supprimer = $_POST['id_individu_a_supprimer'];
$observations_individu = $this->getObservationsPourIndividu($id_individu_a_supprimer);
if(count($observations_individu) > 0) {
$donnees = array();
$donnees['erreurs'] = 'Impossible de supprimer un individu pour lequel on a saisi des données';
$this->id_individu_en_cours = $id_individu_a_supprimer;
$this->afficherInformationsIndividu($donnees);
} else {
$individu_dao = new IndividuDao();
$individu_dao->supprimerIndividu($id_individu_a_supprimer);
$gestion_station = new Station();
$_GET['id_station'] = $_POST['id_station'];
$this->setSortie(self::RENDU_CORPS, $gestion_station->getFicheInformationsStation());
}
}
// +---------------------------------------------------------------------------------------------------------------+
// METHODES POUR FABRIQUER LE MENU
public function setNavigation() {
/trunk/applications/saisie/controleurs/AppControleur.php
105,11 → 105,6
self::$utilisateur = new $classe_utilisateur();
if(self::$utilisateur->estAdmin()) {
if($nouvelle_identite = self::changementIdentiteDemande()) {
self::getUtilisateur()->setIdentite($nouvelle_identite);
}
self::afficherBarreAdmin();
}
}
129,15 → 124,6
return self::getUtilisateur()->estIdentifie();
}
public static function changementIdentiteDemande() {
if(self::getUtilisateur()->estAdmin() && isset($_POST['identite_utilisateur'])) {
return $_POST['identite_utilisateur'];
}
return false;
}
private static function afficherFormulaireIdentification() {
$donnees['formulaire_identification'] = self::getUtilisateur()->getFormulaireidentification();