Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 3438 Rev 3439
Line 21... Line 21...
21
 */
21
 */
22
class Nettoyage extends Script {
22
class Nettoyage extends Script {
Line 23... Line 23...
23
 
23
 
24
	protected $bdd;
24
	protected $bdd;
-
 
25
	protected $colonnes;
-
 
26
	protected $bd_cel = "tb_nettoye_cel";
Line 25... Line 27...
25
	protected $colonnes;
27
	protected $bd_del = "tb_del";
26
 
28
 
27
 
29
 
-
 
30
	public function __construct($script_nom, $parametres_cli) {
-
 
31
		parent::__construct($script_nom, $parametres_cli);
28
	public function __construct($script_nom, $parametres_cli) {
32
		$this->bdd = new Bdd();
Line 29... Line 33...
29
		parent::__construct($script_nom, $parametres_cli);
33
		$this->bd_cel = Config::get('nettoyage.cel_nettoye');
30
		$this->bdd = new Bdd();
34
		$this->bd_del = Config::get('nettoyage.del');
31
	}
35
	}
32
 
36
 
33
	public function executer() {
37
	public function executer() {
34
		$cmd = $this->getParametre('a');
38
		$cmd = $this->getParametre('a');
35
		$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = 'tb_nettoye_cel.cel_obs' AND table_schema='tb_cel';";
39
		$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = '".$this->bd_cel."cel_obs' AND table_schema='tb_cel';";
36
		$this->colonnes = $this->bdd->recupererTous($requete_colonnes);
40
		$this->colonnes = $this->bdd->recupererTous($requete_colonnes);
Line 114... Line 118...
114
	
118
	
115
 
119
 
116
	private function supprimerRetourLigne() {		
120
	private function supprimerRetourLigne() {		
117
		foreach ($this->colonnes as $id=>$colonne) {
121
		foreach ($this->colonnes as $id=>$colonne) {
118
			echo "Suppression des retour ligne dans la colonne ".$colonne['column_name']." ...";
122
			echo "Suppression des retour ligne dans la colonne ".$colonne['column_name']." ...";
119
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\n", "")';
123
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\n", "")';
120
			$this->bdd->requeter($requete);
124
			$this->bdd->requeter($requete);
121
			echo "effectuée \n";
125
			echo "effectuée \n";
Line 122... Line 126...
122
		}
126
		}
123
	}
127
	}
124
	
128
	
125
	private function supprimerAntislash() {
129
	private function supprimerAntislash() {
126
		foreach ($this->colonnes as $id=>$colonne) {
130
		foreach ($this->colonnes as $id=>$colonne) {
127
			echo "Suppression des antislash dans la colonne ".$colonne['column_name']." ...";
131
			echo "Suppression des antislash dans la colonne ".$colonne['column_name']." ...";
128
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\", "")';
132
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\", "")';
129
			$this->bdd->requeter($requete);
133
			$this->bdd->requeter($requete);
Line 130... Line 134...
130
			echo "effectuée \n";
134
			echo "effectuée \n";
131
		}
135
		}
132
	}
136
	}
133
	
137
	
134
	private function supprimerGuillemet() {
138
	private function supprimerGuillemet() {
135
		foreach ($this->colonnes as $id=>$colonne) {
139
		foreach ($this->colonnes as $id=>$colonne) {
136
			echo "Suppression des guillements dans la colonne ".$colonne['column_name']." ...";
140
			echo "Suppression des guillements dans la colonne ".$colonne['column_name']." ...";
137
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].',"\"", "")';
141
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].',"\"", "")';
Line 138... Line 142...
138
			$this->bdd->requeter($requete);
142
			$this->bdd->requeter($requete);
139
			echo "effectuée \n";
143
			echo "effectuée \n";
140
		}
144
		}
141
	}
145
	}
142
	
146
	
143
	private function unifierNull() {
147
	private function unifierNull() {
144
		$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = 'tb_nettoye_cel.cel_obs' AND table_schema='tb_cel';";
148
		$requete_colonnes = "SELECT column_name FROM information_schema.columns WHERE table_name = '".$this->bd_cel.".cel_obs' AND table_schema='tb_cel';";
145
		$colonnes = $this->bdd->recupererTous($requete_colonnes);
149
		$colonnes = $this->bdd->recupererTous($requete_colonnes);
146
		foreach ($colonnes as $colonne) {
150
		foreach ($colonnes as $colonne) {
147
			echo "Suppression des vides dans la colonne ".$colonne['column_name']." ...";
151
			echo "Suppression des vides dans la colonne ".$colonne['column_name']." ...";
148
			$dsl = array( 'transmission', 'altitude');
152
			$dsl = array( 'transmission', 'altitude');
149
			if (isset($dsl[$colonne['column_name']])) {
153
			if (isset($dsl[$colonne['column_name']])) {
150
				$requete = "UPDATE tb_nettoye_cel.cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= ''";
154
				$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= ''";
151
			} else {
155
			} else {
152
				$requete = "UPDATE tb_nettoye_cel.cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= '' OR ".$colonne['column_name']." IN ('INSEE-C:', '0000-00-00 00:00:00', '0.00000')";
156
				$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = NULL WHERE ".$colonne['column_name']."= '' OR ".$colonne['column_name']." IN ('INSEE-C:', '0000-00-00 00:00:00', '0.00000')";
Line 215... Line 219...
215
		    "subsp à vérifier" => "douteux",
219
		    "subsp à vérifier" => "douteux",
216
		    "subsp. microphyllum ?" => "douteux",
220
		    "subsp. microphyllum ?" => "douteux",
217
		    "très douteuse" => "douteux",
221
		    "très douteuse" => "douteux",
218
		    "Très probable" => "douteux");
222
		    "Très probable" => "douteux");
219
		foreach ($certitude as $valeur=>$saisie) {
223
		foreach ($certitude as $valeur=>$saisie) {
220
			$requete = 'UPDATE tb_nettoye_cel.cel_obs SET commentaire = concat(commentaire, " Certitude : ", certitude), certitude = "'.$saisie.'" WHERE certitude ="'.$valeur.'"';
224
			$requete = 'UPDATE ".$this->bd_cel.".cel_obs SET commentaire = concat(commentaire, " Certitude : ", certitude), certitude = "'.$saisie.'" WHERE certitude ="'.$valeur.'"';
221
			$this->bdd->requeter($requete);
225
			$this->bdd->requeter($requete);
222
			echo "effectuée \n";
226
			echo "effectuée \n";
223
		}
227
		}
224
		$requete_verif = "SELECT certitude FROM tb_nettoye_cel.cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
228
		$requete_verif = "SELECT certitude FROM ".$this->bd_cel.".cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
225
		$verif = $this->bdd->recupererTous($requete_verif);
229
		$verif = $this->bdd->recupererTous($requete_verif);
226
		if ($verif != array()) print_r($verif);
230
		if ($verif != array()) print_r($verif);
227
	}
231
	}
Line 228... Line 232...
228
	
232
	
229
	private function supprimerCertitudeAutre() {
233
	private function supprimerCertitudeAutre() {
230
	    echo "suppression des valeurs non compréhensible du champ certitude/identification";
234
	    echo "suppression des valeurs non compréhensible du champ certitude/identification";
231
	    $requete = "UPDATE tb_nettoye_cel.cel_obs 
235
	    $requete = "UPDATE ".$this->bd_cel.".cel_obs 
232
	        SET commentaire = case isnull(commentaire) when 1 THEN certitude ELSE concat(commentaire, ' Certitude : ', certitude) END, 
236
	        SET commentaire = case isnull(commentaire) when 1 THEN certitude ELSE concat(commentaire, ' Certitude : ', certitude) END, 
233
	        certitude = '' WHERE `certitude` NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
237
	        certitude = '' WHERE `certitude` NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
234
	    $this->bdd->requeter($requete);
238
	    $this->bdd->requeter($requete);
235
	        echo "effectuée \n";
239
	        echo "effectuée \n";
236
	    $requete_verif = "SELECT certitude FROM tb_nettoye_cel.cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'aDeterminer', '') and certitude is not NULL";
240
	    $requete_verif = "SELECT certitude FROM ".$this->bd_cel.".cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'aDeterminer', '') and certitude is not NULL";
237
	    $verif = $this->bdd->recupererTous($requete_verif);
241
	    $verif = $this->bdd->recupererTous($requete_verif);
238
	    if ($verif != array()) print_r($verif);
242
	    if ($verif != array()) print_r($verif);
Line 239... Line 243...
239
	}
243
	}
240
	
244
	
241
	private function unifierUtilisateur() {
245
	private function unifierUtilisateur() {
242
	    echo "vérification de la présence de l'annuaire \n";
246
	    echo "vérification de la présence de l'annuaire \n";
243
	    $requete = "SELECT * FROM tb_nettoye_cel.`users`;";
247
	    $requete = "SELECT * FROM ".$this->bd_cel.".`users`;";
244
	    $result = $this->bdd->requeter($requete); 
248
	    $result = $this->bdd->requeter($requete); 
245
	    if ($result === NULL) {
249
	    if ($result === NULL) {echo $requete;
246
	        echo "Il manque la table annuaire (à recopier de telaorg users\n";
250
	        echo "Il manque la table annuaire (à recopier de telaorg users\n";
Line 247... Line 251...
247
	        exit;
251
	        exit;
248
	    }
252
	    }
249
	    
253
	    
250
	    echo "suppression de le colonne ordre \n";
254
	    echo "suppression de le colonne ordre \n";
251
	    $requete = "ALTER TABLE tb_nettoye_cel.cel_obs DROP INDEX id_obs;";
255
	    $requete = "ALTER TABLE ".$this->bd_cel.".cel_obs DROP INDEX id_obs;";
252
	    $this->bdd->requeter($requete);
256
	    $this->bdd->requeter($requete);
253
	    $requete = "ALTER TABLE tb_nettoye_cel.cel_obs DROP INDEX ordre;";
257
	    $requete = "ALTER TABLE ".$this->bd_cel.".cel_obs DROP INDEX ordre;";
254
	    $this->bdd->requeter($requete);
258
	    $this->bdd->requeter($requete);
255
	    $requete = "ALTER TABLE tb_nettoye_cel.`cel_obs` DROP `ordre`;";
259
	    $requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` DROP `ordre`;";
Line 256... Line 260...
256
	    $this->bdd->requeter($requete);
260
	    $this->bdd->requeter($requete);
257
	    $requete = "ALTER TABLE tb_nettoye_cel.`cel_obs` ADD pseudo  varchar(250);";
261
	    $requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD pseudo  varchar(250);";
258
	    $this->bdd->requeter($requete);
262
	    $this->bdd->requeter($requete);
259
	    
263
	    
Line 260... Line 264...
260
	    echo "modification des observations ayant une adresse mail en identifiant";
264
	    echo "modification des observations ayant une adresse mail en identifiant";
261
	    $requete_annu_mail = "UPDATE tb_nettoye_cel.`cel_obs` join tb_nettoye_cel.`users` ON `user_email` = ce_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename, 
265
	    $requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON `user_email` = ce_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename, 
262
	        `courriel_utilisateur` =  `user_email`  WHERE ce_utilisateur like '%@%'";
266
	        `courriel_utilisateur` =  `user_email`  WHERE ce_utilisateur like '%@%'";
263
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
267
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
264
	    
268
	    
Line 265... Line 269...
265
	    echo "modification des observations ayant une adresse mail mais pas d'identifiant";
269
	    echo "modification des observations ayant une adresse mail mais pas d'identifiant";
266
	    $requete_annu_mail = "UPDATE tb_nettoye_cel.`cel_obs` join tb_nettoye_cel.`users` ON `user_email` = courriel_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename,
270
	    $requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON `user_email` = courriel_utilisateur SET `ce_utilisateur` = `ID`, pseudo = user_nicename,
267
	        `courriel_utilisateur` =  `user_email`  WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
271
	        `courriel_utilisateur` =  `user_email`  WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
268
	        OR ce_utilisateur = 0) and courriel_utilisateur like '%@%'";
272
	        OR ce_utilisateur = 0) and courriel_utilisateur like '%@%'";
Line 269... Line 273...
269
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
273
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
270
	    
274
	    
271
	    echo "modification des observations ayant un identifiant";
275
	    echo "modification des observations ayant un identifiant";
Line 272... Line 276...
272
	    $requete_annu_mail = "UPDATE tb_nettoye_cel.`cel_obs` join tb_nettoye_cel.`users` ON ID = ce_utilisateur SET pseudo = user_nicename,
276
	    $requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON ID = ce_utilisateur SET pseudo = user_nicename,
273
	        `courriel_utilisateur` =  `user_email` WHERE (ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6) and (courriel_utilisateur is null or courriel_utilisateur='')";
277
	        `courriel_utilisateur` =  `user_email` WHERE (ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6) and (courriel_utilisateur is null or courriel_utilisateur='')";
274
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
278
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
275
	    
279
	    
Line 276... Line 280...
276
	    echo "suppression des autres valeurs ce_utilisateur";
280
	    echo "suppression des autres valeurs ce_utilisateur";
277
	    $requete_annu_mail = "UPDATE tb_nettoye_cel.`cel_obs` SET ce_utilisateur = NULL WHERE ce_utilisateur IS NOT NULL AND LENGTH(ce_utilisateur) > 6";
281
	    $requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` SET ce_utilisateur = NULL WHERE ce_utilisateur IS NOT NULL AND LENGTH(ce_utilisateur) > 6";
278
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
282
	    $utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
279
	    
283
	    
280
	    echo "suppression des obs anonymes";
284
	    echo "suppression des obs anonymes";
281
	    $requete_anonyme = "DELETE FROM tb_nettoye_cel.`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
285
	    $requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
Line 282... Line 286...
282
	        OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
286
	        OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
283
	    $this->bdd->requeter($requete_anonyme);	   
287
	    $this->bdd->requeter($requete_anonyme);	   
284
	    
288
	    
285
	    $requete_verif = "SELECT `ce_utilisateur`, `prenom_utilisateur`, `nom_utilisateur`, `courriel_utilisateur`  FROM tb_nettoye_cel.cel_obs 
289
	    $requete_verif = "SELECT `ce_utilisateur`, `prenom_utilisateur`, `nom_utilisateur`, `courriel_utilisateur`  FROM ".$this->bd_cel.".cel_obs 
286
	            WHERE ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6";
290
	            WHERE ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6";
287
	    $verif = $this->bdd->recupererTous($requete_verif);
291
	    $verif = $this->bdd->recupererTous($requete_verif);
288
	    if ($verif != array()) print_r($verif);
292
	    if ($verif != array()) print_r($verif);
289
	    echo "effectuée \n";
293
	    echo "effectuée \n";
290
	}
294
	}
291
	
295
	
292
	private function supprimerImagesetTagAnonymes() {
296
	private function supprimerImagesetTagAnonymes() {
293
	    echo "suppression des images anonymes";
297
	    echo "suppression des images anonymes";
294
	    $requete_anonyme = "DELETE FROM tb_nettoye_cel.`cel_images` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
298
	    $requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_images` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
295
	        OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
299
	        OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
296
	    $this->bdd->requeter($requete_anonyme);
300
	    $this->bdd->requeter($requete_anonyme);
297
	    echo "suppression des tags images anonymes";
301
	    echo "suppression des tags images anonymes";
298
	    $requete_anonyme = "DELETE FROM tb_nettoye_cel.`cel_arbre_mots_cles_images` WHERE id_utilisateur in (select ce_utilisateur FROM tb_nettoye_cel.`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
302
	    $requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_arbre_mots_cles_images` WHERE id_utilisateur in (select ce_utilisateur FROM ".$this->bd_cel.".`cel_obs` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
299
	        OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%'))";
303
	        OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%'))";
300
	    $this->bdd->requeter($requete_anonyme);
304
	    $this->bdd->requeter($requete_anonyme);
301
	    echo "suppression des tags obs anonymes";
305
	    echo "suppression des tags obs anonymes";
302
	    $requete_create = "CREATE TABLE tb_nettoye_cel.user_mot_cle_absent AS SELECT distinct id_utilisateur FROM tb_nettoye_cel.cel_arbre_mots_cles_obs WHERE id_utilisateur not in
306
	    $requete_create = "CREATE TABLE ".$this->bd_cel.".user_mot_cle_absent AS SELECT distinct id_utilisateur FROM ".$this->bd_cel.".cel_arbre_mots_cles_obs WHERE id_utilisateur not in
303
	            (SELECT distinct id_utilisateur FROM tb_nettoye_cel.cel_arbre_mots_cles_obs WHERE id_utilisateur in
307
	            (SELECT distinct id_utilisateur FROM ".$this->bd_cel.".cel_arbre_mots_cles_obs WHERE id_utilisateur in
304
	            (select distinct ce_utilisateur from tb_nettoye_cel.cel_obs) or
308
	            (select distinct ce_utilisateur from ".$this->bd_cel.".cel_obs) or
305
	            id_utilisateur in (SELECT distinct courriel_utilisateur FROM tb_nettoye_cel.cel_obs))";
309
	            id_utilisateur in (SELECT distinct courriel_utilisateur FROM ".$this->bd_cel.".cel_obs))";
306
	    $this->bdd->requeter($requete_create);
310
	    $this->bdd->requeter($requete_create);
307
	    $requete_index = "ALTER TABLE `user_mot_cle_absent` ADD PRIMARY KEY(`id_utilisateur`);";
311
	    $requete_index = "ALTER TABLE `user_mot_cle_absent` ADD PRIMARY KEY(`id_utilisateur`);";
308
	    $this->bdd->requeter($requete_index);
312
	    $this->bdd->requeter($requete_index);
Line 309... Line 313...
309
	    $requete_anonyme = "DELETE FROM tb_nettoye_cel.`cel_arbre_mots_cles_obs` WHERE `id_utilisateur` in (SELECT * FROM `user_mot_cle_absent`);";
313
	    $requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_arbre_mots_cles_obs` WHERE `id_utilisateur` in (SELECT * FROM `user_mot_cle_absent`);";
310
	    $this->bdd->requeter($requete_anonyme);
314
	    $this->bdd->requeter($requete_anonyme);
311
	    $requete_anonyme = "DROP TABLE user_mot_cle_absent;";
315
	    $requete_anonyme = "DROP TABLE user_mot_cle_absent;";
312
	    $this->bdd->requeter($requete_anonyme);
316
	    $this->bdd->requeter($requete_anonyme);
313
	    $requete_anonyme = "UPDATE `cel_arbre_mots_cles_obs` a join tb_nettoye_cel.cel_obs b on a.`id_utilisateur` = b.courriel_utilisateur SET a.`id_utilisateur` = b.ce_utilisateur
317
	    $requete_anonyme = "UPDATE `cel_arbre_mots_cles_obs` a join ".$this->bd_cel.".cel_obs b on a.`id_utilisateur` = b.courriel_utilisateur SET a.`id_utilisateur` = b.ce_utilisateur
314
	        WHERE b.ce_utilisateur IS NOT NULL AND b.ce_utilisateur != ''";
318
	        WHERE b.ce_utilisateur IS NOT NULL AND b.ce_utilisateur != ''";
315
	    $this->bdd->requeter($requete_anonyme);
319
	    $this->bdd->requeter($requete_anonyme);
316
	    $requete_anonyme = "DELETE FROM `cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (SELECT `id_observation` FROM `cel_obs`) OR `id_mot_cle` NOT IN (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
320
	    $requete_anonyme = "DELETE FROM `cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (SELECT `id_observation` FROM `cel_obs`) OR `id_mot_cle` NOT IN (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
317
	    $this->bdd->requeter($requete_anonyme);
321
	    $this->bdd->requeter($requete_anonyme);
318
	}
322
	}
319
	
323
	
320
	private function unifierNomReferentiel() {
324
	private function unifierNomReferentiel() {
321
		echo "Uniformisation du nom de référentiel";
325
		echo "Uniformisation du nom de référentiel";
322
		$referentiels = array("BDTFX", "BDTRE", "BDTXA", "APD", "LBF", "ISFAN");
326
		$referentiels = array("BDTFX", "BDTRE", "BDTXA", "APD", "LBF", "ISFAN");
323
		foreach ($referentiels as $referentiel) {
327
		foreach ($referentiels as $referentiel) {
324
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET nom_referentiel = '".$referentiel."' WHERE nom_referentiel like '".$referentiel."%'";
328
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = '".$referentiel."' WHERE nom_referentiel like '".$referentiel."%'";
325
			$this->bdd->requeter($requete);
329
			$this->bdd->requeter($requete);
326
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET nom_referentiel = 'autre' WHERE nom_sel_nn = '' or nom_sel_nn = '0'";
330
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_sel_nn = '' or nom_sel_nn = '0'";
327
			$this->bdd->requeter($requete);
331
			$this->bdd->requeter($requete);
328
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET nom_referentiel = 'APD' WHERE nom_referentiel like 'bdtao%'";
332
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'APD' WHERE nom_referentiel like 'bdtao%'";
329
			$this->bdd->requeter($requete);
333
			$this->bdd->requeter($requete);
Line 330... Line 334...
330
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET nom_referentiel = 'BDTFX' WHERE nom_referentiel like 'bdnff%'";
334
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'BDTFX' WHERE nom_referentiel like 'bdnff%'";
331
			$this->bdd->requeter($requete);
335
			$this->bdd->requeter($requete);
332
			echo "effectuée \n";
336
			echo "effectuée \n";
333
			$requete = "UPDATE tb_nettoye_cel.cel_obs SET nom_referentiel = 'autre' WHERE nom_referentiel IS NULL or nom_referentiel = ''";
337
			$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_referentiel IS NULL or nom_referentiel = ''";
334
			$this->bdd->requeter($requete);
338
			$this->bdd->requeter($requete);
335
			echo "effectuée \n";
339
			echo "effectuée \n";
336
		}
340
		}
337
		$requete_verif = "SELECT nom_referentiel FROM tb_nettoye_cel.cel_obs WHERE nom_referentiel NOT IN ('".implode("', '", $referentiels)."', 'autre')";
341
		$requete_verif = "SELECT nom_referentiel FROM ".$this->bd_cel.".cel_obs WHERE nom_referentiel NOT IN ('".implode("', '", $referentiels)."', 'autre')";
338
		$verif = $this->bdd->recupererTous($requete_verif);
342
		$verif = $this->bdd->recupererTous($requete_verif);
339
		if ($verif != array()) print_r($verif);
343
		if ($verif != array()) print_r($verif);
340
	}
344
	}
341
	
345
	
342
	private function supprimerInfosLiesObsInexistante() {
346
	private function supprimerInfosLiesObsInexistante() {
343
	    echo "Supprimer infos liés à obs inexistante";
347
	    echo "Supprimer infos liés à obs inexistante";
344
	    $requete = "DELETE FROM tb_nettoye_cel.`cel_obs_etendues` WHERE `id_observation` not in (select `id_observation` from tb_nettoye_cel.cel_obs);";
348
	    $requete = "DELETE FROM ".$this->bd_cel.".`cel_obs_etendues` WHERE `id_observation` not in (select `id_observation` from ".$this->bd_cel.".cel_obs);";
345
	    $this->bdd->requeter($requete);
349
	    $this->bdd->requeter($requete);
Line 346... Line 350...
346
	    $requete = "DELETE FROM tb_nettoye_cel.`cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (select `id_observation` from tb_nettoye_cel.cel_obs);";
350
	    $requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_obs_liaison` WHERE `id_element_lie` not in (select `id_observation` from ".$this->bd_cel.".cel_obs);";
347
	    $this->bdd->requeter($requete);
351
	    $this->bdd->requeter($requete);
348
	    $requete = "DELETE FROM tb_nettoye_cel.`cel_mots_cles_obs_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
352
	    $requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_obs_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_obs`);";
349
	    $this->bdd->requeter($requete);
353
	    $this->bdd->requeter($requete);
350
	    $requete = "DELETE FROM tb_nettoye_cel.`cel_images`  WHERE `ce_observation` is not null and tb_nettoye_cel.`ce_observation` not in (select id_observation from tb_nettoye_cel.cel_obs)";
354
	    $requete = "DELETE FROM ".$this->bd_cel.".`cel_images`  WHERE `ce_observation` is not null and ".$this->bd_cel.".`ce_observation` not in (select id_observation from ".$this->bd_cel.".cel_obs)";
351
	    $this->bdd->requeter($requete);
355
	    $this->bdd->requeter($requete);
352
	    $requete = "DELETE FROM tb_nettoye_cel.`cel_mots_cles_images_liaison` WHERE `id_element_lie` not in (select `id_image` from tb_nettoye_cel.cel_images);";
356
	    $requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_images_liaison` WHERE `id_element_lie` not in (select `id_image` from ".$this->bd_cel.".cel_images);";
353
	    $this->bdd->requeter($requete);
357
	    $this->bdd->requeter($requete);
Line 354... Line 358...
354
	    $requete = "DELETE FROM tb_nettoye_cel.`cel_mots_cles_images_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_images`);";
358
	    $requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_images_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM `cel_arbre_mots_cles_images`);";
355
	    $this->bdd->requeter($requete);
359
	    $this->bdd->requeter($requete);
356
	    echo "effectuée \n";
360
	    echo "effectuée \n";
357
	}
361
	}
Line 358... Line 362...
358
	
362
	
359
	private function verifierGeodatum() {
363
	private function verifierGeodatum() {
360
		echo "Uniformisation du geodatum";
364
		echo "Uniformisation du geodatum";
361
		$requete = "UPDATE tb_nettoye_cel.cel_obs SET geodatum = 'WGS84' WHERE (latitude IS NOT NULL or latitude != '0.00000') AND geodatum IS NULL";
365
		$requete = "UPDATE ".$this->bd_cel.".cel_obs SET geodatum = 'WGS84' WHERE (latitude IS NOT NULL or latitude != '0.00000') AND geodatum IS NULL";
362
		$this->bdd->requeter($requete);
366
		$this->bdd->requeter($requete);
363
		$requete = "UPDATE tb_nettoye_cel.cel_obs SET geodatum = NULL WHERE (latitude IS NULL or latitude = '0.00000')";
367
		$requete = "UPDATE ".$this->bd_cel.".cel_obs SET geodatum = NULL WHERE (latitude IS NULL or latitude = '0.00000')";
364
		$this->bdd->requeter($requete);
368
		$this->bdd->requeter($requete);
365
		echo "effectuée \n";
369
		echo "effectuée \n";
Line 366... Line 370...
366
	}
370
	}
Line 385... Line 389...
385
	    echo "effectuée \n";
389
	    echo "effectuée \n";
386
	}
390
	}
Line 387... Line 391...
387
	
391
	
388
	private function analyserMotsCles(){
392
	private function analyserMotsCles(){
389
	    echo "Input source \n";
393
	    echo "Input source \n";
390
	    $requete = "ALTER TABLE tb_nettoye_cel`cel_obs` ADD `input_source` VARCHAR(15)";
394
	    $requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `input_source` VARCHAR(15)";
Line 391... Line 395...
391
	    $this->bdd->requeter($requete);
395
	    $this->bdd->requeter($requete);
392
	    
396
	    
Line 393... Line 397...
393
	    $requete = "UPDATE tb_nettoye_cel.cel_obs SET input_source = 'plantnet' WHERE `mots_cles_texte` like '%plantnet%'";
397
	    $requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'plantnet' WHERE `mots_cles_texte` like '%plantnet%'";
394
	    $this->bdd->requeter($requete);
398
	    $this->bdd->requeter($requete);
Line 395... Line 399...
395
	    
399
	    
396
	    $requete = "UPDATE tb_nettoye_cel.cel_obs SET input_source = 'autre' WHERE `mots_cles_texte` like '%MobileSauvages%'";
400
	    $requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'autre' WHERE `mots_cles_texte` like '%MobileSauvages%'";
Line 397... Line 401...
397
	    $this->bdd->requeter($requete);
401
	    $this->bdd->requeter($requete);
398
	    
402
	    
Line 399... Line 403...
399
	    $requete = "UPDATE tb_nettoye_cel.cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%Projets coopératifs%' and input_source = ''";
403
	    $requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%Projets coopératifs%' and input_source = ''";
400
	    $this->bdd->requeter($requete);
404
	    $this->bdd->requeter($requete);
Line 401... Line 405...
401
	    
405
	    
402
	    $requete = "UPDATE tb_nettoye_cel.cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%widget%' and input_source = ''";
406
	    $requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'widget' WHERE `mots_cles_texte` like '%widget%' and input_source = ''";
403
	    $this->bdd->requeter($requete);
407
	    $this->bdd->requeter($requete);
Line 404... Line 408...
404
	    
408
	    
405
	    $requete = "UPDATE tb_nettoye_cel.cel_obs SET input_source = 'cel' WHERE input_source = ''";
409
	    $requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'cel' WHERE input_source = ''";
Line 406... Line 410...
406
	    $this->bdd->requeter($requete);
410
	    $this->bdd->requeter($requete);
407
	    
411
	    
408
	    echo "Suppression motcle du chemin \n";
412
	    echo "Suppression motcle du chemin \n";
409
	    $requete = "UPDATE tb_nettoye_cel.`cel_arbre_mots_cles_obs` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
413
	    $requete = "UPDATE ".$this->bd_cel.".`cel_arbre_mots_cles_obs` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
410
	    $this->bdd->requeter($requete);
414
	    $this->bdd->requeter($requete);
411
	    
415
	    
412
	    $requete = "UPDATE tb_nettoye_cel.`cel_arbre_mots_cles_images` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
416
	    $requete = "UPDATE ".$this->bd_cel.".`cel_arbre_mots_cles_images` SET chemin = substr(`chemin`, 1, CHAR_LENGTH(chemin)-CHAR_LENGTH(`mot_cle`)-1)";
413
	    $this->bdd->requeter($requete);
417
	    $this->bdd->requeter($requete);
Line 414... Line 418...
414
	    
418
	    
415
	    echo "Certitude à certaine quand obs validée sur ip \n";
419
	    echo "Certitude à certaine quand obs validée sur ip \n";
416
	    $requete = "UPDATE tb_nettoye_cel.`cel_obs` c left join 
420
	    $requete = "UPDATE ".$this->bd_cel.".`cel_obs` c left join 
417
	        (SELECT distinct `ce_observation`, `nom_sel_nn` 
421
	        (SELECT distinct `ce_observation`, `nom_sel_nn` 
418
	        FROM tb_del.`del_commentaire` WHERE `proposition_retenue` = 1) d on 
422
	        FROM ".$this->bd_del.".`del_commentaire` WHERE `proposition_retenue` = 1) d on 
419
	        `ce_observation` = `id_observation` SET `certitude` = 'certain' 
423
	        `ce_observation` = `id_observation` SET `certitude` = 'certain' 
420
	        WHERE (c.`mots_cles_texte` LIKE '%adeterminer%' 
424
	        WHERE (c.`mots_cles_texte` LIKE '%adeterminer%' 
421
	        or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` = d.`nom_sel_nn`";
425
	        or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` = d.`nom_sel_nn`";
Line 422... Line 426...
422
	    $this->bdd->requeter($requete);
426
	    $this->bdd->requeter($requete);
423
	    
427
	    
424
	    echo "Certitude à douteux quand obs validée sur ip mais num_nom diff entre ip et cel \n";
428
	    echo "Certitude à douteux quand obs validée sur ip mais num_nom diff entre ip et cel \n";
425
	    $requete = "UPDATE tb_nettoye_cel.`cel_obs` c left join
429
	    $requete = "UPDATE ".$this->bd_cel.".`cel_obs` c left join
426
	        (SELECT distinct `ce_observation`, `nom_sel_nn`
430
	        (SELECT distinct `ce_observation`, `nom_sel_nn`
Line 427... Line 431...
427
	        FROM tb_del.`del_commentaire`  WHERE `proposition_retenue` = 1 ) d on
431
	        FROM ".$this->bd_del.".`del_commentaire`  WHERE `proposition_retenue` = 1 ) d on
428
	        `ce_observation` = `id_observation` SET `certitude` = 'douteux'
432
	        `ce_observation` = `id_observation` SET `certitude` = 'douteux'
429
	        WHERE (c.`mots_cles_texte` LIKE '%adeterminer%'
433
	        WHERE (c.`mots_cles_texte` LIKE '%adeterminer%'
430
	        or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` != d.`nom_sel_nn`";
434
	        or c.`certitude` = 'aDeterminer') and c.`nom_sel_nn` != d.`nom_sel_nn`";
Line 446... Line 450...
446
	
450
	
447
 
451
 
448
	
452
	
449
	private function changerSensible(){
453
	private function changerSensible(){
Line 450... Line 454...
450
	    echo "Sensible \n";
454
	    echo "Sensible \n";
451
	    $requete = "ALTER TABLE tb_nettoye_cel.`cel_obs` ADD `published_location` varchar(50)";
455
	    $requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `published_location` varchar(50)";
452
	    $this->bdd->requeter($requete);
456
	    $this->bdd->requeter($requete);
453
	    
457
	    
454
	    $requete = "UPDATE tb_nettoye_cel.cel_obs SET published_location = 'localité' WHERE `mots_cles_texte` like '%sensible%'";
458
	    $requete = "UPDATE ".$this->bd_cel.".cel_obs SET published_location = 'localité' WHERE `mots_cles_texte` like '%sensible%'";