Rev 416 | Rev 892 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php/**David Delon david.delon@clapas.net 2007Ce logiciel est r�gi par la licence CeCILL soumise au droit fran�ais etrespectant les principes de diffusion des logiciels libres. Vous pouvezutiliser, modifier et/ou redistribuer ce programme sous les conditionsde la licence CeCILL telle que diffus�e par le CEA, le CNRS et l'INRIAsur le site "http://www.cecill.info".En contrepartie de l'accessibilit� au code source et des droits de copie,de modification et de redistribution accord�s par cette licence, il n'estoffert aux utilisateurs qu'une garantie limit�e. Pour les m�mes raisons,seule une responsabilit� restreinte p�se sur l'auteur du programme, letitulaire des droits patrimoniaux et les conc�dants successifs.A cet �gard l'attention de l'utilisateur est attir�e sur les risquesassoci�s au chargement, � l'utilisation, � la modification et/ou aud�veloppement et � la reproduction du logiciel par l'utilisateur �tantdonn� sa sp�cificit� de logiciel libre, qui peut le rendre complexe �manipuler et qui le r�serve donc � des d�veloppeurs et des professionnelsavertis poss�dant des connaissances informatiques approfondies. Lesutilisateurs sont donc invit�s � charger et tester l'ad�quation dulogiciel � leurs besoins dans des conditions permettant d'assurer las�curit� de leurs syst�mes et ou de leurs donn�es et, plus g�n�ralement,� l'utiliser et l'exploiter dans les m�mes conditions de s�curit�.Le fait que vous puissiez acc�der � cet en-t�te signifie que vous avezpris connaissance de la licence CeCILL, et que vous en avez accept� lestermes.*/// in : utf8// out : utf8/** Name.php** Cas d'utilisation :* Service recherche nom retenu depuis un numero nomenclatural pour la BDNFF** 1 : L'application recoit un numero nomenclatural* 2 : L'application retourne le nom retenu associ�*/Class Name extends DBAccessor {var $config;function Name($config) {$this->config=$config;}function getElement($uid){$value=array();// Num nomenclaturalif (isset($uid[0])) {$DB=$this->connectDB($this->config);$query = "SELECT DISTINCT en_nom_genre, en_epithete_espece, en_nom_supra_generique, en_epithete_infra_generique,"." auteur_bex.enaia_intitule_abrege AS abreviation_auteur_basio_ex "." , auteur_b.enaia_intitule_abrege AS abreviation_auteur_basio "." , auteur_mex.enaia_intitule_abrege AS abreviation_auteur_modif_ex "." , auteur_m.enaia_intitule_abrege AS abreviation_auteur_modif "." , en_epithete_espece, en_epithete_infra_specifique, enrg_abreviation_rang, en_id_nom" ." FROM eflore_nom, eflore_nom_rang, eflore_selection_nom a, " ." eflore_naturaliste_intitule_abreviation AS auteur_bex "." , eflore_naturaliste_intitule_abreviation AS auteur_b "." , eflore_naturaliste_intitule_abreviation AS auteur_mex "." , eflore_naturaliste_intitule_abreviation AS auteur_m "." WHERE a.esn_id_nom= '".$uid[0]. "'"." AND a.esn_id_version_projet_taxon = 25 "." AND en_ce_rang = enrg_id_rang" ." AND en_id_nom = a.esn_id_nom" ." AND en_ce_auteur_basio_ex = auteur_bex.enaia_id_intitule_naturaliste_abrege "." AND en_ce_auteur_basio = auteur_b.enaia_id_intitule_naturaliste_abrege "." AND en_ce_auteur_modif_ex = auteur_mex.enaia_id_intitule_naturaliste_abrege "." AND en_ce_auteur_modif = auteur_m.enaia_id_intitule_naturaliste_abrege "." AND a.esn_id_version_projet_taxon=en_id_version_projet_nom ";}else {print "[\"null\"]";return ;}$res =& $DB->query($query);if (DB::isError($res)) {die($res->getMessage());}$value=array("null");while ($row =& $res->fetchrow(DB_FETCHMODE_ASSOC)) {$value=array(($this->formaterNom($row)));}$output = json_encode($value);print($output);}function getRessource(){print "[\"null\"]";return;}function formaterNom($rawnom) {// Constitution du nom:$nom = '';if ($rawnom['en_nom_supra_generique'] != '') {$nom .= $rawnom['en_nom_supra_generique'];} else if ($rawnom['en_epithete_infra_generique'] != '') {$nom .= $rawnom['en_epithete_infra_generique'];} else {if ($rawnom['en_nom_genre'] != '') {$nom .= $rawnom['en_nom_genre'];}if ($rawnom['en_epithete_espece']!= '') {$nom .= ' '.$rawnom['en_epithete_espece'];}if ($rawnom['en_epithete_infra_specifique'] != '') {if (!empty($rawnom['enrg_abreviation_rang'])) {$nom .= ' '.$rawnom['enrg_abreviation_rang'].'';}$nom .= ' '.$rawnom['en_epithete_infra_specifique'];}}return $nom .retournerAuteur($rawnom) ;}}function retournerAuteur($rawnom) {$auteurs = '';$auteur_basio = '';$auteur_modif = '';if (!empty($rawnom['abreviation_auteur_basio_ex']) && $rawnom['abreviation_auteur_basio_ex']!='-' ) {$auteur_basio .= $rawnom['abreviation_auteur_basio_ex'];if (!empty($rawnom['abreviation_auteur_basio']) && $rawnom['abreviation_auteur_basio']!='-') {$auteur_basio .= ' ex '.$rawnom['abreviation_auteur_basio'];}} else if (!empty($rawnom['abreviation_auteur_basio']) && $rawnom['abreviation_auteur_basio']!='-') {$auteur_basio .= $rawnom['abreviation_auteur_basio'];}if (!empty($rawnom['abreviation_auteur_modif_ex']) && $rawnom['abreviation_auteur_modif_ex']!='-') {$auteur_modif .= $rawnom['abreviation_auteur_modif_ex'];if (!empty($rawnom['abreviation_auteur_modif']) && $rawnom['abreviation_auteur_modif']!='-') {$auteur_modif .= ' ex '.$rawnom['abreviation_auteur_modif'];}} else if (!empty($rawnom['abreviation_auteur_modif']) && $rawnom['abreviation_auteur_modif']!='-') {$auteur_modif .= $rawnom['abreviation_auteur_modif'];}if (!empty($auteur_modif)) {$auteurs = ' ('.$auteur_basio.') '.$auteur_modif;} elseif (!empty($auteur_basio)) {$auteurs = ' '.$auteur_basio;}return $auteurs ;}/* +--Fin du code ---------------------------------------------------------------------------------------+* $Log$* Revision 1.3 2008-01-30 08:57:28 ddelon* fin mise en place mygwt** Revision 1.2 2007-05-21 18:13:30 ddelon* Refactoring et documentation***/?>