Subversion Repositories Sites.obs-saisons.fr

Rev

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

Rev 43 Rev 44
Line 54... Line 54...
54
    	
54
    	
55
    	$individus = $station->getIndividusStationPourEspece($id_station,$id_espece);
55
    	$individus = $station->getIndividusStationPourEspece($id_station,$id_espece);
Line 56... Line 56...
56
    	foreach($individus as &$individu) {
56
    	foreach($individus as &$individu) {
57
    		
57
    		
58
    		$observation = new Observation();
58
    		$observation = new Observation();
-
 
59
    		$individu['observations'] = $observation->getListeObservationsPourIndividu($individu['id_individu']);
59
    		$individu['observations'] = $observation->getListeObservationsPourIndividu($individu['id']);
60
    		$individu['url'] = aControleur::getUrlConsultationFicheIndividu($id_station,$id_espece, $individu['id_individu']);
60
    		$individu['url'] = aControleur::getUrlConsultationFicheIndividu($individu['id'],$individu['id']);
61
    		
61
    	}
62
    	}
-
 
63
    	
62
 
64
    	$donnees['evenements'] = $evenements;
63
    	$donnees['evenements'] = $evenements;
65
    	$donnees['stades'] = $this->aplatirListeEvenementHierachiseeEnListeParStades($evenements);
64
    	$donnees['individus'] = $individus;
66
    	$donnees['individus'] = $individus;
-
 
67
    	$donnees['id_station'] = $_GET['id_station'];
-
 
68
    	$donnees['id_espece'] = $_GET['id_espece'];
-
 
69
    	
-
 
70
    	if(isset($_GET['annee'])) {
-
 
71
    		$donnees['annee'] = $_GET['annee'];
-
 
72
    	} else {
-
 
73
    		$donnees['annee'] = date('Y');
65
    	$donnees['id_station'] = $_GET['id_station'];
74
    	}
Line 66... Line 75...
66
    	$donnees['id_espece'] = $_GET['id_espece'];
75
    	
67
    	$donnees['id_individu_a_modifier_observation'] = $id_individu_a_modifier_observation;
76
    	$donnees['id_individu_a_modifier_observation'] = $id_individu_a_modifier_observation;
Line 85... Line 94...
85
    	
94
    	
Line 86... Line 95...
86
    	$valeurs_verifiees = array();
95
    	$valeurs_verifiees = array();
87
    	
96
    	
-
 
97
    	$observation_dao = new ObservationDao();
88
    	$observation_dao = new ObservationDao();
98
    	$observation_dao->ajouterObservation($valeurs_verifiees);
Line 89... Line 99...
89
    	$observation_dao->ajouterObservation($valeurs_verifiees);
99
    	
-
 
100
    }
-
 
101
    
Line 90... Line 102...
90
    }
102
    public function validerFormulaireModificationObservation() {
-
 
103
    	    	
Line 91... Line 104...
91
    
104
    	$valeurs_verifiees = $this->collecterValeursFormulaireModificationObservation();
92
    public function validerFormulaireModificationObservation() {
-
 
Line 93... Line 105...
93
    	
105
    	
Line -... Line 106...
-
 
106
    	$observation_dao = new ObservationDao();
-
 
107
    	$observation_dao->modifierObservation($valeurs_verifiees['id_individu'], $valeurs_verifiees);
-
 
108
    	
-
 
109
    	$individu = new Individu();
-
 
110
    	
-
 
111
    	$this->setSortie(self::RENDU_CORPS, $individu->getListeIndividu());
-
 
112
    	
-
 
113
    }
-
 
114
    
-
 
115
	private function collecterValeursFormulaireModificationObservation() {
-
 
116
		
-
 
117
		$valeurs_verifiees = array();
-
 
118
		
-
 
119
		foreach($_POST as $nom_champ => $valeur) {
-
 
120
			
94
    	$valeurs_formulaires = $_POST;
121
			$id_si_est_champ_observation = $this->renvoyerIdEvenementSiChampDeFormulaireObservation($nom_champ);
-
 
122
			
-
 
123
			if($id_si_est_champ_observation && trim($valeur) != '') {
-
 
124
				$valeurs_verifiees[$nom_champ] = $valeur;
-
 
125
			}
95
    	
126
		}
Line 96... Line 127...
96
    	Debug::printr($valeurs_formulaires);
127
		
Line -... Line 128...
-
 
128
    	$valeurs_verifiees['id_individu'] = $_POST['id_individu'];
-
 
129
	    $valeurs_verifiees['annee_en_cours'] =  $_POST['annee_en_cours'];
-
 
130
	    
-
 
131
	    //TODO: verifier valeurs plus complètement
-
 
132
	    
-
 
133
	    return $valeurs_verifiees;
-
 
134
    	
-
 
135
    }
-
 
136
    
-
 
137
    private function renvoyerIdEvenementSiChampDeFormulaireObservation($champ) {
-
 
138
    	    	
97
    	exit;
139
    	$tab_champ = split('observation_',$champ);
98
    	
140
    	
99
    	$valeurs_verifiees = array();
141
    	if(count($tab_champ) > 1 && is_numeric($tab_champ[1])) {
Line 100... Line 142...
100
    	
142
    		return $tab_champ[1];
101
    	$observation_dao = new ObservationDao();
143
    	}
Line 102... Line 144...
102
    	$observation_dao->modifierObservation($valeurs_verifiees);
144
    	
103
    	
145
    	return false;
-
 
146
    }
-
 
147
    
-
 
148
    // +---------------------------------------------------------------------------------------------------------------+
-
 
149
    // METHODES DE RECHERCHE DE DONNEES    
-
 
150
    public function getListeObservationsPourIndividu($id_individu, $annee = null) {
-
 
151
    	
-
 
152
    	$observation_dao = new ObservationDao();
-
 
153
    	$observations_pour_individu = $observation_dao->getListeObservationsPourIndividu($id_individu, $annee);
-
 
154
    	
-
 
155
    	return $observations_pour_individu;
-
 
156
    }
-
 
157
    
-
 
158
        
-
 
159
    private function aplatirListeEvenementHierachiseeEnListeParStades($liste_evenements_hierarchisee) {
-
 
160
    	
-
 
161
    	$liste_evenements_plate_par_stade = array();
-
 
162
    	
-
 
163
    	foreach($liste_evenements_hierarchisee as $evenement_hierarchise) {
-
 
164
    		foreach($evenement_hierarchise['stades'] as $id_stade => $stade) {
-
 
165
    			$liste_evenements_plate_par_stade[$id_stade] = $stade;
-
 
166
    		}
-
 
167
    	}
-
 
168
    	
-
 
169
    	return $liste_evenements_plate_par_stade;
-
 
170
    }
-
 
171
    
-
 
172
    // +---------------------------------------------------------------------------------------------------------------+
-
 
173
    // METHODES UTILITAIRES STATIQUES (UTILES POUR LES FORMULAIRES)
-
 
174
    public static function individuAObservationValidePourStade($individu, $annee, $evenement, $id_stade) {
-
 
175
    	
104
    }
176
    	return (isset($individu['observations'][$annee][$evenement][$id_stade]) && trim($individu['observations'][$annee][$evenement][$id_stade]) != '');
105
    
177
    }