Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 3455 → Rev 3456

/trunk/scripts/modules/nettoyage/Nettoyage.php
49,6 → 49,7
$this->unifierCertitude();
$this->supprimerCertitudeAutre();
$this->unifierUtilisateur();
$this->unifierPhenologie();
$this->verifierCodeInsee();
$this->verifierGeodatum();
$this->supprimerInfosLiesObsInexistante();
102,6 → 103,9
case 'unifierInfosEspece' :
$this->unifierUtilisateur();
break;
case 'unifierPhenologie' :
$this->unifierPhenologie();
break;
default :
$msg = "Erreur : la commande '$cmd' n'existe pas!\n".
"Commandes existantes : regenererMotsClesTexteObs, regenererMotsClesTexteImages"
132,7 → 136,7
private function supprimerAntislash() {
foreach ($this->colonnes as $id=>$colonne) {
echo "Suppression des antislash dans la colonne ".$colonne['column_name']." ...";
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\\", "")';
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET ".$colonne['column_name']." = REPLACE(".$colonne['column_name'].', "\\\", "")';
$this->bdd->requeter($requete);
echo "effectuée \n";
}
244,6 → 248,311
if ($verif != array()) print_r($verif);
}
private function unifierPhenologie() {
echo "Uniformisation du champ phenologie";
$phenologie = array("2" => "00-09: germination, développement des bourgeons",
"5" => "00-09: germination, développement des bourgeons",
"5" => "00-09: germination, développement des bourgeons",
"8" => "00-09: germination, développement des bourgeons",
"8" => "00-09: germination, développement des bourgeons",
"9" => "00-09: germination, développement des bourgeons",
"00-09" => "00-09: germination, développement des bourgeons",
"Germination, développement des bourgeons" => "00-09: germination, développement des bourgeons",
"10" => "10-19: développement des feuilles",
"11" => "10-19: développement des feuilles",
"12" => "10-19: développement des feuilles",
"14" => "10-19: développement des feuilles",
"15" => "10-19: développement des feuilles",
"16" => "10-19: développement des feuilles",
"17" => "10-19: développement des feuilles",
"18" => "10-19: développement des feuilles",
"19" => "10-19: développement des feuilles",
"10-19" => "10-19: développement des feuilles",
"10-19: développement des feui" => "10-19: développement des feuilles",
"10-19: développement des feuilles" => "10-19: développement des feuilles",
"15: environ % des feuilles épanouies" => "10-19: développement des feuilles",
"19 environ 50% des feuilles épanouies" => "10-19: développement des feuilles",
"en feuilles" => "10-19: développement des feuilles",
"Feuille" => "10-19: développement des feuilles",
"feuille peu dvt, a confirmer" => "10-19: développement des feuilles",
"feuilles seulement" => "10-19: développement des feuilles",
"20" => "20-29: formation de pousses latérales, tallage",
"Formation de pousses latérales, tallage" => "20-29: formation de pousses latérales, tallage",
"30" => "30-39: développement des tiges, croissance des rosettes",
"35" => "30-39: développement des tiges, croissance des rosettes",
"36" => "30-39: développement des tiges, croissance des rosettes",
"38" => "30-39: développement des tiges, croissance des rosettes",
"39" => "30-39: développement des tiges, croissance des rosettes",
"3: développement des tiges, croissance des rosettes" => "30-39: développement des tiges, croissance des rosettes",
"Développement des tiges, croissance des rosettes" => "30-39: développement des tiges, croissance des rosettes",
"40" => "40-49: développement des organes de propagation végétative",
"43" => "40-49: développement des organes de propagation végétative",
"45" => "40-49: développement des organes de propagation végétative",
"46" => "40-49: développement des organes de propagation végétative",
"48" => "40-49: développement des organes de propagation végétative",
"49" => "40-49: développement des organes de propagation végétative",
"40-49" => "40-49: développement des organes de propagation végétative",
"40-49: développement des organes de propagation végétative" => "40-49: développement des organes de propagation végétative",
"40-49: développement des organes de propagation végétativegt" => "40-49: développement des organes de propagation végétative",
"40-49: développement des organes de propagation végétativepas d'inflorescence" => "40-49: développement des organes de propagation végétative",
"50" => "50-59 : apparition de l’inflorescence",
"56" => "50-59 : apparition de l’inflorescence",
"57" => "50-59 : apparition de l’inflorescence",
"58" => "50-59 : apparition de l’inflorescence",
"59" => "50-59 : apparition de l’inflorescence",
"10x En bouton" => "50-59 : apparition de l’inflorescence",
"14x En bouton" => "50-59 : apparition de l’inflorescence",
"20x En bouton" => "50-59 : apparition de l’inflorescence",
"30-39" => "50-59 : apparition de l’inflorescence",
"50-59" => "50-59 : apparition de l’inflorescence",
"50-59: apparition de l'inflorescence, épiais" => "50-59 : apparition de l’inflorescence",
"50-59: apparition de l'inflorescence, épiaison" => "50-59 : apparition de l’inflorescence",
"59: apparition de l'inflorescence, épiaison" => "50-59 : apparition de l’inflorescence",
"8x En bouton" => "50-59 : apparition de l’inflorescence",
"60" => "60-69 : floraison",
"62" => "60-69 : floraison",
"63" => "60-69 : floraison",
"64" => "60-69 : floraison",
"66" => "60-69 : floraison",
"67" => "60-69 : floraison",
"68" => "60-69 : floraison",
"69" => "60-69 : floraison",
" floraison " => "60-69 : floraison",
"-69: floraison" => "60-69 : floraison",
"10x Fin de floraison" => "60-69 : floraison",
"12x Pleine floraison" => "60-69 : floraison",
"14x Début de floraison" => "60-69 : floraison",
"150x Pleine floraison" => "60-69 : floraison",
"17x Fin de floraison" => "60-69 : floraison",
"1x Début de floraison" => "60-69 : floraison",
"1x En fleur" => "60-69 : floraison",
"1x Fin de floraison" => "60-69 : floraison",
"1x Pleine floraison" => "60-69 : floraison",
"20x Début de floraison" => "60-69 : floraison",
"20x Pleine floraison" => "60-69 : floraison",
"25x Pleine floraison" => "60-69 : floraison",
"27x En fleur" => "60-69 : floraison",
"30x Fin de floraison" => "60-69 : floraison",
"35x Début de floraison" => "60-69 : floraison",
"35x Fin de floraison" => "60-69 : floraison",
"35x Pleine floraison" => "60-69 : floraison",
"3x Fin de floraison" => "60-69 : floraison",
"3x Pleine floraison" => "60-69 : floraison",
"40x Début de floraison" => "60-69 : floraison",
"44x Pleine floraison" => "60-69 : floraison",
"48x Pleine floraison" => "60-69 : floraison",
"4x Pleine floraison" => "60-69 : floraison",
"50x Pleine floraison" => "60-69 : floraison",
"5x Pleine floraison" => "60-69 : floraison",
"6: floraison" => "60-69 : floraison",
"60 : floraison en amorce, pétales jaunes, corolle non ouverte encore" => "60-69 : floraison",
"60-" => "60-69 : floraison",
"60-6: floraison" => "60-69 : floraison",
"60-65" => "60-69 : floraison",
"60-69" => "60-69 : floraison",
"60-69 floraison" => "60-69 : floraison",
"60-69 floraison +70-79: fructification" => "60-69 : floraison",
"60-69: florai" => "60-69 : floraison",
"60-69: florais" => "60-69 : floraison",
"60-69: floraison" => "60-69 : floraison",
"60-69: floraison - fructification" => "60-69 : floraison",
"60-69: floraison (8" => "60-69 : floraison",
"60-69: floraison 1 individu fleuri sur une trentaine" => "60-69 : floraison",
"60-69: floraison à 50 pour" => "60-69 : floraison",
"60-69: floraison Fleurs déjà fanées ou en cours de l'être" => "60-69 : floraison",
"60-69: floraison floraison" => "60-69 : floraison",
"60-69: floraison pour le 09/04/2019" => "60-69 : floraison",
"60-69: floraison5" => "60-69 : floraison",
"60-69: floraison6" => "60-69 : floraison",
"60-69: floraisondi" => "60-69 : floraison",
"60-69: floraisonentre les pierres du mur des quai" => "60-69 : floraison",
"60-69: floraisonfleurs et fruit" => "60-69 : floraison",
"60-69: floraisonl" => "60-69 : floraison",
"60-69: floraisonvi" => "60-69 : floraison",
"60-69: fructification" => "60-69 : floraison",
"60: floraison" => "60-69 : floraison",
"63: floraison" => "60-69 : floraison",
"63: environ 3% des fleurs épanouies" => "60-69 : floraison",
"64: floraison" => "60-69 : floraison",
"66, avec quelques fruits" => "60-69 : floraison",
"66: floraison" => "60-69 : floraison",
"67 : floraison" => "60-69 : floraison",
"67 Nbses fleurs épanouies," => "60-69 : floraison",
"67: floraison" => "60-69 : floraison",
"67: environ 70% des fleurs épanouies + formation de gousses." => "60-69 : floraison",
"68: environ 0% des fleurs épanouies" => "60-69 : floraison",
"68: floraison" => "60-69 : floraison",
"68: environ 50% des fleurs épanouies" => "60-69 : floraison",
"68: environ 80% des fleurs épanouies + formation des gousses." => "60-69 : floraison",
"68floraison" => "60-69 : floraison",
"69 (floraison de toutes fleurs)" => "60-69 : floraison",
"69-70" => "60-69 : floraison",
"69-70: fin de floraisonfructification" => "60-69 : floraison",
"69-70n" => "60-69 : floraison",
"69: 100% des fleurs épanouies" => "60-69 : floraison",
"69s" => "60-69 : floraison",
"82x Pleine floraison" => "60-69 : floraison",
"9: floraison" => "60-69 : floraison",
"début de ffloraison" => "60-69 : floraison",
"début floraison" => "60-69 : floraison",
"en fleurs" => "60-69 : floraison",
"environ 30% des fleurs épanouies" => "60-69 : floraison",
"environ 950% des fleurs épanouies" => "60-69 : floraison",
"fin d floraison" => "60-69 : floraison",
"fin de floraison" => "60-69 : floraison",
"fin floraison" => "60-69 : floraison",
"fl" => "60-69 : floraison",
"fl2" => "60-69 : floraison",
"fleur" => "60-69 : floraison",
"Fleurs" => "60-69 : floraison",
"fleurs épanouies; fin" => "60-69 : floraison",
"floraison" => "60-69 : floraison",
"Nombreux plants en début de floraison" => "60-69 : floraison",
"61" => "61: environ 10% des fleurs épanouies",
"10% des fleurs épanouies" => "61: environ 10% des fleurs épanouies",
"61 :" => "61: environ 10% des fleurs épanouies",
"61 : environ 10% des fleurs épanouies" => "61: environ 10% des fleurs épanouies",
"61: début defloraison" => "61: environ 10% des fleurs épanouies",
"61: floraison" => "61: environ 10% des fleurs épanouies",
"61: environ 10% des fleurs épanouie" => "61: environ 10% des fleurs épanouies",
"61: environ 10% des fleurs épanouies" => "61: environ 10% des fleurs épanouies",
"61: environ 10% des fleurs épanouies63" => "61: environ 10% des fleurs épanouies",
"61: environ 10% des fleurs épanouies68" => "61: environ 10% des fleurs épanouies",
"61: environ 2% des fleurs épanouies" => "61: environ 10% des fleurs épanouies",
"61: environ20% des fleurs épanouies" => "61: environ 10% des fleurs épanouies",
"Fleurs (environ 10% des fleurs épanouies)" => "61: environ 10% des fleurs épanouies",
"65" => "65: environ 50% des fleurs épanouies",
"65" => "65: environ 50% des fleurs épanouies",
"6: environ 50% des fleurs épanouies" => "65: environ 50% des fleurs épanouies",
"65 , avec quelques fruits" => "65: environ 50% des fleurs épanouies",
"65 : environ 80% des fleurs épanouies" => "65: environ 50% des fleurs épanouies",
"65 : environ 10% des fleurs ép" => "65: environ 50% des fleurs épanouies",
"65 : environ 50% des fleurs épa" => "65: environ 50% des fleurs épanouies",
"65 : environ 50% des fleurs épanouies" => "65: environ 50% des fleurs épanouies",
"65 : environ 50% des fleurs épanouies-75" => "65: environ 50% des fleurs épanouies",
"65-6: floraison" => "65: environ 50% des fleurs épanouies",
"65-69: floraison" => "65: environ 50% des fleurs épanouies",
"65-7: floraison" => "65: environ 50% des fleurs épanouies",
"65-72" => "65: environ 50% des fleurs épanouies",
"65:" => "65: environ 50% des fleurs épanouies",
"65: floraison" => "65: environ 50% des fleurs épanouies",
"65: environ 10% des fleurs épanouies" => "65: environ 50% des fleurs épanouies",
"65: environ 50% des fleurs épanoui" => "65: environ 50% des fleurs épanouies",
"65: environ 50% des fleurs épanouie6" => "65: environ 50% des fleurs épanouies",
"65: environ 50% des fleurs épanouies" => "65: environ 50% des fleurs épanouies",
"65: environ 50% des fleurs épanouies et fructification" => "65: environ 50% des fleurs épanouies",
"65: environ 50% des fleurs épanouies75" => "65: environ 50% des fleurs épanouies",
"65: environ 50% des fleurs épanouies78" => "65: environ 50% des fleurs épanouies",
"65:-70" => "65: environ 50% des fleurs épanouies",
"65:-75" => "65: environ 50% des fleurs épanouies",
"avec quelques fruits, 65" => "65: environ 50% des fleurs épanouies",
"nviron 50% des fleurs épanouies" => "65: environ 50% des fleurs épanouies",
"70" => "70-79: fructification",
"71" => "70-79: fructification",
"72" => "70-79: fructification",
"73" => "70-79: fructification",
"74" => "70-79: fructification",
"75" => "70-79: fructification",
"76" => "70-79: fructification",
"77" => "70-79: fructification",
"78" => "70-79: fructification",
"79" => "70-79: fructification",
"7: fructification" => "70-79: fructification",
"70-: fructification" => "70-79: fructification",
"70-71" => "70-79: fructification",
"70-79" => "70-79: fructification",
"70-79: floraison" => "70-79: fructification",
"70-79: fructification" => "70-79: fructification",
"70-79: fructification ?" => "70-79: fructification",
"70-79: fructification +floraison" => "70-79: fructification",
"70-79: fructification Entre autre" => "70-79: fructification",
"70-79: fructification, mais fruits verts" => "70-79: fructification",
"70-79: fructificationfleurs et fruit" => "70-79: fructification",
"70-79:fin floraison fructification" => "70-79: fructification",
"709: fructification" => "70-79: fructification",
"75: fructification" => "70-79: fructification",
"Début de ruits" => "70-79: fructification",
"fin floraison et fructification" => "70-79: fructification",
"fleur, fruit" => "70-79: fructification",
"fleurs e fructification" => "70-79: fructification",
"Fleurs et début fruits" => "70-79: fructification",
"Fleurs et début ruits" => "70-79: fructification",
"Fleurs et fructification" => "70-79: fructification",
"floraison - fructification" => "70-79: fructification",
"floraison zet fructification" => "70-79: fructification",
"Floraison, fructification" => "70-79: fructification",
"floraison(fin) fructification" => "70-79: fructification",
"floraison+ ou - finie" => "70-79: fructification",
"fr1" => "70-79: fructification",
"quelques fruits rares" => "70-79: fructification",
"stérile70-79: fructification" => "70-79: fructification",
"toutes les fleurs épanouies et début fructification" => "70-79: fructification",
"fleurs et fruits" => "70-79: fructification",
"Fleurs et jeunes fruits" => "70-79: fructification",
"floraison + fructification" => "70-79: fructification",
"Fructificaiton" => "70-79: fructification",
"fleurs et quelques fruits" => "70-79: fructification",
"Fleurs et surtout début defruits" => "70-79: fructification",
"floraison et fructification" => "70-79: fructification",
"fructification" => "70-79: fructification",
"Fleurs/fruits" => "70-79: fructification",
"fructification ?" => "70-79: fructification",
"80" => "80-89: maturité des fruits et des graines",
"81" => "80-89: maturité des fruits et des graines",
"82" => "80-89: maturité des fruits et des graines",
"83" => "80-89: maturité des fruits et des graines",
"84" => "80-89: maturité des fruits et des graines",
"86" => "80-89: maturité des fruits et des graines",
"87" => "80-89: maturité des fruits et des graines",
"88" => "80-89: maturité des fruits et des graines",
"89" => "80-89: maturité des fruits et des graines",
"-89: maturité des fruits et des graines" => "80-89: maturité des fruits et des graines",
"80-89" => "80-89: maturité des fruits et des graines",
"80-89: maturité des fruits et des graines" => "80-89: maturité des fruits et des graines",
"80-89: maturité des fruits et des graines,début sénescence" => "80-89: maturité des fruits et des graines",
"80-95" => "80-89: maturité des fruits et des graines",
"88 maturité des fruits et des graines" => "80-89: maturité des fruits et des graines",
"89: maturité des fruits et des graines" => "80-89: maturité des fruits et des graines",
"floraison et fructification, graines mûres" => "80-89: maturité des fruits et des graines",
"floraison et maturation des graines" => "80-89: maturité des fruits et des graines",
"fructification passée" => "80-89: maturité des fruits et des graines",
"Fruit" => "80-89: maturité des fruits et des graines",
"Fruits" => "80-89: maturité des fruits et des graines",
"85" => "85: 50% des fruits matures",
"50% des fruits matures (fructification d'Août)î" => "85: 50% des fruits matures",
"85, mais avec encore des fleurs" => "85: 50% des fruits matures",
"85:" => "85: 50% des fruits matures",
"85: fruits matures 20" => "85: 50% des fruits matures",
"85: 50% des fruits mature8" => "85: 50% des fruits matures",
"85: 50% des fruits matures" => "85: 50% des fruits matures",
"85: 50% des fruits matures0" => "85: 50% des fruits matures",
"85: 50% des fruits matures56" => "85: 50% des fruits matures",
"85: 50% des fruits matures88" => "85: 50% des fruits matures",
"88: 50% des fruits matures" => "85: 50% des fruits matures",
"90" => "90-99: sénescence et dormance",
"91" => "90-99: sénescence et dormance",
"92" => "90-99: sénescence et dormance",
"94" => "90-99: sénescence et dormance",
"95" => "90-99: sénescence et dormance",
"97" => "90-99: sénescence et dormance",
"98" => "90-99: sénescence et dormance",
"99" => "90-99: sénescence et dormance",
"100% de feuilles jaunes" => "90-99: sénescence et dormance",
"80% feuillage d'automne" => "90-99: sénescence et dormance",
"90-99" => "90-99: sénescence et dormance",
"90-99: sénescence et dormance" => "90-99: sénescence et dormance",
"95: environ 9% des feuilles jaunes" => "90-99: sénescence et dormance"
);
foreach ($phenologie as $valeur=>$saisie) {
$requete = 'UPDATE '.$this->bd_cel.'.cel_obs SET commentaire = concat(commentaire, " Certitude : ", certitude), phenologie = "'.$saisie.'" WHERE phenologie ="'.$valeur.'"';
$this->bdd->requeter($requete);
echo "effectuée \n";
}
$requete_verif = "SELECT certitude FROM ".$this->bd_cel.".cel_obs WHERE certitude NOT IN ('douteux', 'certain', 'à déterminer', '') and certitude is not NULL";
$verif = $this->bdd->recupererTous($requete_verif);
if ($verif != array()) print_r($verif);
}
private function unifierUtilisateur() {
echo "vérification de la présence de l'annuaire \n";
$requete = "SELECT * FROM ".$this->bd_cel.".`users`;";
258,9 → 567,9
$this->bdd->requeter($requete);
$requete = "ALTER TABLE ".$this->bd_cel.".cel_obs DROP INDEX ordre;";
$this->bdd->requeter($requete);
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` DROP `ordre`;";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` DROP IF EXISTS `ordre`;";
$this->bdd->requeter($requete);
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD pseudo varchar(250);";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD IF NOT EXISTS pseudo varchar(250);";
$this->bdd->requeter($requete);
echo "modification des observations ayant une adresse mail en identifiant";
276,11 → 585,11
echo "modification des observations ayant un identifiant";
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` join ".$this->bd_cel.".`users` ON ID = ce_utilisateur SET pseudo = user_nicename,
`courriel_utilisateur` = `user_email` WHERE (ce_utilisateur IS NOT NULL OR LENGTH(ce_utilisateur) > 6) and (courriel_utilisateur is null or courriel_utilisateur='')";
`courriel_utilisateur` = `user_email` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6) and (courriel_utilisateur is null or courriel_utilisateur='')";
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
echo "suppression des autres valeurs ce_utilisateur";
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` SET ce_utilisateur = NULL WHERE ce_utilisateur IS NOT NULL AND LENGTH(ce_utilisateur) > 6";
$requete_annu_mail = "UPDATE ".$this->bd_cel.".`cel_obs` SET ce_utilisateur = NULL, courriel_utilisateur = if (ce_utilisateur like '%@%'and (courriel_utilisateur is null or courriel_utilisateur='') , ce_utilisateur, courriel_utilisateur) WHERE ce_utilisateur IS NOT NULL AND LENGTH(ce_utilisateur) > 6";
$utilisateur_mail = $this->bdd->recupererTous($requete_annu_mail);
echo "suppression des obs anonymes";
293,18 → 602,48
$verif = $this->bdd->recupererTous($requete_verif);
if ($verif != array()) print_r($verif);
echo "effectuée \n";
$this->unifierUtilisateurTag("cel_arbre_mots_cles_obs");
$this->unifierUtilisateurTag("cel_arbre_mots_cles_images");
}
private function unifierUtilisateurTag($table) {
echo "séparation des identifiants en ce_utilisateur et courriel";
$requete = "ALTER TABLE ".$this->bd_cel.".".$table." ADD courriel varchar(255);";
$this->bdd->requeter($requete);
$requete = "UPDATE ".$this->bd_cel.".".$table." SET courriel = ce_utilisateur,
ce_utilisateur = NULL WHERE ce_utilisateur like '%@%';";
$this->bdd->requeter($requete);
echo "recherche des identifiants pour les tags ayant que des courriels dans users";
$requete = "UPDATE ".$this->bd_cel.".".$table." join ".$this->bd_cel.".`users` ON `user_email` = courriel SET `ce_utilisateur` = `ID`
WHERE courriel like '%@%';";
$this->bdd->requeter($requete);
echo "recherche des identifiants pour les tags ayant que des courriels dans obs";
$requete = "UPDATE ".$this->bd_cel.".".$table." t join ".$this->bd_cel.".`cel_obs` o ON
`courriel` = courriel_utilisateur SET t.`ce_utilisateur` = o.`ce_utilisateur`
WHERE courriel_utilisateur like '%@%';";
$this->bdd->requeter($requete);
echo "suppression des tags sans identifiant";
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".".$table." WHERE ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6";
$this->bdd->requeter($requete_anonyme);
if ($table == "cel_arbre_mots_cles_obs") {
$requete_anonyme = "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`)
OR `id_mot_cle` NOT IN (SELECT `id_mot_cle` FROM ".$this->bd_cel.".`cel_arbre_mots_cles_obs`);";
$this->bdd->requeter($requete_anonyme);
} else {
$requete_anonyme = "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`)
OR `id_mot_cle` NOT IN (SELECT `id_mot_cle` FROM ".$this->bd_cel.".`cel_arbre_mots_cles_images`);";
$this->bdd->requeter($requete_anonyme);
}
}
private function supprimerImagesetTagAnonymes() {
echo "suppression des images anonymes";
$requete_anonyme = "DELETE FROM ".$this->bd_cel.".`cel_images` WHERE (ce_utilisateur IS NULL OR LENGTH(ce_utilisateur) > 6
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%')";
$this->bdd->requeter($requete_anonyme);
echo "suppression des tags images anonymes";
$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
OR ce_utilisateur = 0) and (`courriel_utilisateur` is null or `courriel_utilisateur` not like '%@%'))";
$this->bdd->requeter($requete_anonyme);
echo "suppression des tags obs anonymes";
/* echo "suppression des tags obs anonymes";
$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
(SELECT distinct id_utilisateur FROM ".$this->bd_cel.".cel_arbre_mots_cles_obs WHERE id_utilisateur in
(select distinct ce_utilisateur from ".$this->bd_cel.".cel_obs) or
318,22 → 657,21
$this->bdd->requeter($requete_anonyme);
$requete_anonyme = "UPDATE ".$this->bd_cel.".`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
WHERE b.ce_utilisateur IS NOT NULL AND b.ce_utilisateur != ''";
$this->bdd->requeter($requete_anonyme);
$requete_anonyme = "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`) OR `id_mot_cle` NOT IN (SELECT `id_mot_cle` FROM ".$this->bd_cel.".`cel_arbre_mots_cles_obs`);";
$this->bdd->requeter($requete_anonyme);
$this->bdd->requeter($requete_anonyme);*/
}
private function unifierNomReferentiel() {
echo "Uniformisation du nom de référentiel";
$referentiels = array("BDTFX", "BDTRE", "BDTXA", "APD", "LBF", "ISFAN");
$referentiels = array("bdtfx", "bdtre", "bdtxa", "apd", "lbf", "isfan");
foreach ($referentiels as $referentiel) {
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = '".$referentiel."' WHERE nom_referentiel like '".$referentiel."%'";
$this->bdd->requeter($requete);
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_sel_nn IS NULL or nom_sel_nn = '0'";
$this->bdd->requeter($requete);
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'APD' WHERE nom_referentiel like 'bdtao%'";
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'apd' WHERE nom_referentiel like 'bdtao%'";
$this->bdd->requeter($requete);
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'BDTFX' WHERE nom_referentiel like 'bdnff%'";
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'bdtfx' WHERE nom_referentiel like 'bdnff%'";
$this->bdd->requeter($requete);
echo "effectuée \n";
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET nom_referentiel = 'autre' WHERE nom_referentiel IS NULL or nom_referentiel = ''";
351,13 → 689,13
$this->bdd->requeter($requete);
$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);";
$this->bdd->requeter($requete);
$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`);";
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_obs_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM ".$this->bd_cel.".`cel_arbre_mots_cles_obs`);";
$this->bdd->requeter($requete);
$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)";
$requete = "DELETE FROM ".$this->bd_cel.".`cel_images` WHERE `ce_observation` is not null and `ce_observation` not in (select id_observation from ".$this->bd_cel.".cel_obs)";
$this->bdd->requeter($requete);
$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);";
$this->bdd->requeter($requete);
$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`);";
$requete = "DELETE FROM ".$this->bd_cel.".`cel_mots_cles_images_liaison` WHERE `id_mot_cle` not in (SELECT `id_mot_cle` FROM ".$this->bd_cel.".`cel_arbre_mots_cles_images`);";
$this->bdd->requeter($requete);
echo "effectuée \n";
}
369,11 → 707,26
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET geodatum = NULL WHERE (latitude IS NULL or latitude = '0.00000')";
$this->bdd->requeter($requete);
echo "effectuée \n";
echo "Suppression des coordonnées fausses : ";
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET latitude = NULL, longitude = NULL WHERE latitude < -90 OR latitude > 90 OR longitude < -180 OR longitude > 180";
$this->bdd->requeter($requete);
echo "effectuée \n";
}
private function verifierCodeInsee() {
echo "Mise à jour des valeurs code_insee";
$requete = 'UPDATE `cel_obs` SET `ce_zone_geo` = NULL,
commentaire = concat(if(commentaire is null, "", concat(commentaire, ", ")), if(ce_zone_geo is null, "", concat("Zone geo : ",ce_zone_geo))) where `ce_zone_geo` not like "insee-c%"';
$this->bdd->requeter($requete);
$requete = 'UPDATE `cel_obs` SET `ce_zone_geo` = substr(`ce_zone_geo`, 9, 5) where `ce_zone_geo` like "insee-c:%"';
$this->bdd->requeter($requete);
$requete = 'UPDATE `cel_obs` SET `ce_zone_geo` = NULL where trim(`ce_zone_geo`) = ""';
$this->bdd->requeter($requete);
echo "effectuée \n";
echo "Vérification du code insee";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `locality_consistency` INT(1) ;";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD IF NOT EXISTS `locality_consistency` INT(1) ;";
$this->bdd->requeter($requete);
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET locality_consistency = '0' WHERE
393,7 → 746,7
private function analyserMotsCles(){
echo "Input source \n";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `input_source` VARCHAR(15)";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD IF NOT EXISTS `input_source` VARCHAR(15)";
$this->bdd->requeter($requete);
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET input_source = 'plantnet' WHERE `mots_cles_texte` like '%plantnet%'";
454,7 → 807,7
private function changerSensible(){
echo "Sensible \n";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD `published_location` varchar(50)";
$requete = "ALTER TABLE ".$this->bd_cel.".`cel_obs` ADD IF NOT EXISTS `published_location` varchar(50)";
$this->bdd->requeter($requete);
$requete = "UPDATE ".$this->bd_cel.".cel_obs SET published_location = 'localité' WHERE `mots_cles_texte` like '%sensible%'";