Subversion Repositories eFlore/Archives.eflore-consultation-v2

Rev

Rev 170 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 170 Rev 173
1
<?php
1
<?php
2
class NOM_RECHERCHE extends macroElement {
2
class NOM_RECHERCHE extends macroElement {
3
    function getSQL()
3
    function getSQL()
4
    {
4
    {
5
        $contexte = array();
5
        $contexte = array();
6
        if (array_key_exists('radical', $this->contexteRef) and array_key_exists('rang', $this->contexteRef) ) {
6
        if (array_key_exists('radical', $this->contexteRef) AND array_key_exists('rang', $this->contexteRef) ) {
7
            $contexte['radical'] = $this->contexteRef['radical'];
7
            $contexte['radical'] = $this->contexteRef['radical'];
8
            $contexte['rang'] = $this->contexteRef['rang'];
8
            $contexte['rang'] = $this->contexteRef['rang'];
9
            if(!empty($contexte['radical']) and !empty($contexte['rang']) ) {
9
            if(!empty($contexte['radical']) AND !empty($contexte['rang']) ) {
10
                return 
10
                return 
11
                'SELECT 
11
                'SELECT 
12
                nom.en_id_nom,
12
                nom.en_id_nom,
13
                nom.en_nom_supra_generique,
13
                nom.en_nom_supra_generique,
14
                nom.en_nom_genre,
14
                nom.en_nom_genre,
15
                nom.en_epithete_infra_generique,
15
                nom.en_epithete_infra_generique,
16
                nom.en_epithete_espece,
16
                nom.en_epithete_espece,
17
                nom. en_epithete_infra_specifique,
17
                nom. en_epithete_infra_specifique,
18
                auteur_bex. enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_basio_ex,
18
                auteur_bex. enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_basio_ex,
19
                auteur_b. enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_basio,
19
                auteur_b. enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_basio,
20
                auteur_mex.enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_modif_ex,
20
                auteur_mex.enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_modif_ex,
21
                auteur_m.enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_modif,
21
                auteur_m.enaia_intitule_naturaliste_abrege AS intitule_abrege_auteur_modif,
22
                citation.enci_intitule_complet_citation,
22
                citation.enci_intitule_complet_citation,
23
                intitule.eni_intitule_nom ,
23
                intitule.eni_intitule_nom ,
24
                commentaire.enic_intitule_cn_complet
24
                commentaire.enic_intitule_cn_complet
25
                
25
                
26
                FROM 
26
                FROM 
27
                eflore_nom_intitule AS intitule,
27
                eflore_nom_intitule AS intitule,
28
                eflore_nom AS nom,
28
                eflore_nom AS nom,
29
                eflore_naturaliste_intitule_abreviation AS auteur_bex,
29
                eflore_naturaliste_intitule_abreviation AS auteur_bex,
30
                eflore_naturaliste_intitule_abreviation AS auteur_b,
30
                eflore_naturaliste_intitule_abreviation AS auteur_b,
31
                eflore_naturaliste_intitule_abreviation AS auteur_mex,
31
                eflore_naturaliste_intitule_abreviation AS auteur_mex,
32
                eflore_naturaliste_intitule_abreviation AS auteur_m,
32
                eflore_naturaliste_intitule_abreviation AS auteur_m,
33
                eflore_nom_citation AS citation,
33
                eflore_nom_citation AS citation,
34
                eflore_nom_intitule_commentaire AS commentaire
34
                eflore_nom_intitule_commentaire AS commentaire
35
                
35
                
36
                WHERE 
36
                WHERE 
37
                intitule.eni_intitule_nom LIKE "'.$contexte['radical'].'" 
37
                intitule.eni_intitule_nom LIKE "'.$contexte['radical'].'" 
38
                AND intitule.eni_id_categorie_format = 3 
38
                AND intitule.eni_id_categorie_format = 3 
39
                AND intitule.eni_id_valeur_format = 5 
39
                AND intitule.eni_id_valeur_format = 5 
40
                AND intitule.eni_id_nom = nom.en_id_nom 
40
                AND intitule.eni_id_nom = nom.en_id_nom 
41
                AND nom.en_ce_auteur_basio_ex = auteur_bex.enaia_id_intitule_naturaliste_abrege 
41
                AND nom.en_ce_auteur_basio_ex = auteur_bex.enaia_id_intitule_naturaliste_abrege 
42
                AND nom.en_ce_auteur_basio = auteur_b.enaia_id_intitule_naturaliste_abrege 
42
                AND nom.en_ce_auteur_basio = auteur_b.enaia_id_intitule_naturaliste_abrege 
43
                AND nom.en_ce_auteur_modif_ex = auteur_mex.enaia_id_intitule_naturaliste_abrege 
43
                AND nom.en_ce_auteur_modif_ex = auteur_mex.enaia_id_intitule_naturaliste_abrege 
44
                AND nom.en_ce_auteur_modif = auteur_m.enaia_id_intitule_naturaliste_abrege 
44
                AND nom.en_ce_auteur_modif = auteur_m.enaia_id_intitule_naturaliste_abrege 
45
                AND nom.en_ce_citation_initiale = citation.enci_id_citation 
45
                AND nom.en_ce_citation_initiale = citation.enci_id_citation 
46
                AND nom.en_ce_intitule_cn = commentaire.enic_id_intitule_cn 
46
                AND nom.en_ce_intitule_cn = commentaire.enic_id_intitule_cn 
47
                AND nom.en_id_nom = commentaire.enic_id_intitule_cn 
47
                AND nom.en_id_nom = commentaire.enic_id_intitule_cn 
48
                AND nom.en_ce_rang = '.$contexte['rang'];
48
                AND nom.en_ce_rang = '.$contexte['rang'];
49
            }
49
            }
50
        }
50
        }
51
        if (array_key_exists('radical', $this->contexteRef) and array_key_exists('nvp', $this->contexteRef) ) {
51
        if (array_key_exists('radical', $this->contexteRef) AND array_key_exists('nvp', $this->contexteRef) ) {
52
            $contexte['radical'] = $this->contexteRef['radical'];
52
            $contexte['radical'] = $this->contexteRef['radical'];
53
            $contexte['nvp'] = $this->contexteRef['nvp'];
53
            $contexte['nvp'] = $this->contexteRef['nvp'];
54
            if(!empty($contexte['nvp']) ) {
54
            if(!empty($contexte['radical']) AND !empty($contexte['nvp']) ) {
55
                return 
55
                return 
56
                    'SELECT 
56
                    'SELECT 
57
                    nom.*, 
57
                    nom.*, 
58
                    intitule.eni_intitule_nom, 
58
                    intitule.eni_intitule_nom, 
59
                    selection.esn_ce_statut, 
59
                    selection.esn_ce_statut, 
60
                    selection.esn_id_version_projet_taxon 
60
                    selection.esn_id_version_projet_taxon 
61
                    
61
                    
62
                    FROM 
62
                    FROM 
63
                    eflore_nom_intitule AS intitule, 
63
                    eflore_nom_intitule AS intitule, 
64
                    eflore_nom AS nom, 
64
                    eflore_nom AS nom, 
65
                    eflore_selection_nom AS selection 
65
                    eflore_selection_nom AS selection 
66
                    
66
                    
67
                    WHERE 
67
                    WHERE 
68
                    intitule.eni_intitule_nom LIKE "'.$contexte['radical'].'"
68
                    intitule.eni_intitule_nom LIKE "'.$contexte['radical'].'"
69
                    AND intitule.eni_id_categorie_format = 3 
69
                    AND intitule.eni_id_categorie_format = 3 
70
                    AND intitule.eni_id_valeur_format = 4 
70
                    AND intitule.eni_id_valeur_format = 4 
71
                    AND nom.en_id_nom = intitule.eni_id_nom 
71
                    AND nom.en_id_nom = intitule.eni_id_nom 
72
                    AND nom.en_id_nom = selection.esn_id_nom 
72
                    AND nom.en_id_nom = selection.esn_id_nom 
73
                    AND selection.esn_id_version_projet_taxon = '.$contexte['nvp'];
73
                    AND selection.esn_id_version_projet_taxon = '.$contexte['nvp'];
74
            }
74
            }
75
        }
75
        }
76
        if (array_key_exists('radical', $this->contexteRef) ) {
76
        if (array_key_exists('radical', $this->contexteRef) ) {
77
            $contexte['radical'] = $this->contexteRef['radical'];
77
            $contexte['radical'] = $this->contexteRef['radical'];
78
            if(!empty($contexte['radical']) ) {
78
            if(!empty($contexte['radical']) ) {
79
                return 
79
                return 
80
                    'SELECT 
80
                    'SELECT 
81
                    nom.*, intitule.eni_intitule_nom 
81
                    nom.*, intitule.eni_intitule_nom 
82
                    
82
                    
83
                    FROM 
83
                    FROM 
84
                    eflore_nom_intitule AS intitule, 
84
                    eflore_nom_intitule AS intitule, 
85
                    eflore_nom AS nom 
85
                    eflore_nom AS nom 
86
                    
86
                    
87
                    WHERE 
87
                    WHERE 
88
                    intitule.eni_intitule_nom LIKE "'.$contexte['radical'].'"
88
                    intitule.eni_intitule_nom LIKE "'.$contexte['radical'].'"
89
                    AND intitule.eni_id_categorie_format = 3 
89
                    AND intitule.eni_id_categorie_format = 3 
90
                    AND intitule.eni_id_valeur_format = 4 
90
                    AND intitule.eni_id_valeur_format = 4 
91
                    AND nom.en_id_nom = intitule.eni_id_nom';
91
                    AND nom.en_id_nom = intitule.eni_id_nom';
92
            }
92
            }
93
        }
93
        }
94
        return null;
94
        return null;
95
    }
95
    }
96
}
96
}
97
?>
97
?>