Subversion Repositories eFlore/Archives.eflore-consultation-v2

Compare Revisions

Ignore whitespace Rev 67 → Rev 68

/trunk/serveur/eflore_mv/modeles/macro_elements/NOM_RECHERCHE.php
New file
0,0 → 1,61
<?php
class NOM_RECHERCHE extends macroElement {
function getSQL()
{
$contexte = array();
if (array_key_exists('radical', $this->contexteRef) and array_key_exists('rang', $this->contexteRef) ) {
$contexte['radical'] = $this->contexteRef['radical'];
$contexte['rang'] = $this->contexteRef['rang'];
if(!empty($contexte['radical']) and !empty($contexte['rang']) ) {
return
'SELECT
nom.en_id_nom,
nom.en_nom_supra_generique,
nom.en_nom_genre,
nom.en_epithete_infra_generique,
nom.en_epithete_espece,
nom. en_epithete_infra_specifique,
auteur_bex. enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_basio_ex,
auteur_b. enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_basio,
auteur_mex.enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_modif_ex,
auteur_m.enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_modif,
citation.enci_intitule_complet_citation,
intitule.eni_intitule_nom ,
commentaire.enic_intitule_cn_complet
FROM
eflore_nom_intitule AS intitule,
eflore_nom AS nom,
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,
eflore_nom_citation AS citation,
eflore_nom_intitule_commentaire AS commentaire
WHERE
intitule.eni_intitule_nom LIKE "%'.$contexte['radical'].'%"
AND nom.en_ce_auteur_basio_ex = auteur_bex.enaia_id_intitule_naturaliste_abrege
AND nom.en_ce_auteur_basio = auteur_b.enaia_id_intitule_naturaliste_abrege
AND nom.en_ce_auteur_modif_ex = auteur_mex.enaia_id_intitule_naturaliste_abrege
AND nom.en_ce_auteur_modif = auteur_m.enaia_id_intitule_naturaliste_abrege
AND nom.en_ce_citation_initiale = citation.enci_id_citation
AND nom.en_ce_intitule_cn = commentaire.enic_id_intitule_cn
AND nom.en_id_nom = intitule.eni_id_nom
AND nom.en_ce_rang = '.$contexte['rang'];
}
}
if (array_key_exists('radical', $this->contexteRef) ) {
$contexte['radical'] = $this->contexteRef['radical'];
if(!empty($contexte['radical']) ) {
return
'SELECT nom.*, intitule.eni_intitule_nom
FROM eflore_nom_intitule AS intitule, eflore_nom AS nom
WHERE intitule.eni_intitule_nom LIKE "%'.$contexte['radical'].'%"
AND nom.en_id_nom = intitule.eni_id_nom';
}
}
return null;
}
}
?>