Subversion Repositories eFlore/Archives.eflore-consultation-v2

Rev

Rev 170 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
116 jpm 1
<?php
2
class VERNACULAIRE_RECHERCHE extends macroElement {
3
    function getSQL()
4
    {
5
        $contexte = array();
173 jpm 6
        echo '<pre>'.print_r($this->contexteRef, true).'</pre>';
7
        if (array_key_exists('radical', $this->contexteRef) AND array_key_exists('nvp', $this->contexteRef)) {
8
            $contexte['radical'] = $this->contexteRef['radical'];
9
            $contexte['nvp'] = $this->contexteRef['nvp'];
10
            if(!empty($contexte['radical']) AND !empty($contexte['nvp'])) {
11
                return
12
                'SELECT DISTINCT
13
                langue.el_nom_langue_principal,
14
                langue.el_code_langue,
15
                zg.ezg_intitule_principal_zg,
16
                zg.ezg_code_zg,
17
                vernaculaire.ev_id_nom_vernaculaire,
18
                vernaculaire.ev_intitule_nom_vernaculaire,
19
                selection.esn_id_version_projet_taxon,
20
                selection.esn_ce_statut,
21
                intitule.eni_intitule_nom,
22
                nom.en_id_nom
23
 
24
                FROM
25
                eflore_langue AS langue,
26
                eflore_zg AS zg,
27
                eflore_vernaculaire AS vernaculaire,
28
                eflore_vernaculaire_attribution AS attribution,
29
                eflore_selection_nom AS selection,
30
                eflore_nom AS nom,
31
                eflore_nom_intitule AS intitule
32
 
33
                WHERE
34
                vernaculaire.ev_intitule_nom_vernaculaire LIKE "'.$contexte['radical'].'"
35
                AND attribution.eva_ce_zone_geo = zg.ezg_id_zone_geo
36
                AND attribution.eva_ce_version_projet_zg = zg.ezg_id_version_projet_zg
37
                AND vernaculaire.ev_ce_langue = langue.el_id_langue
38
                AND vernaculaire.ev_ce_version_projet_langue = langue.el_id_version_projet_langue
39
                AND attribution.eva_id_nom_vernaculaire = vernaculaire.ev_id_nom_vernaculaire
40
                AND attribution.eva_id_version_projet_taxon_ref = '.$contexte['nvp'].'
41
                AND selection.esn_ce_statut = 3
42
                AND selection.esn_id_version_projet_taxon = attribution.eva_id_version_projet_taxon_ref
43
                AND selection.esn_id_taxon = attribution.eva_id_taxon_ref
44
                AND nom.en_id_nom = selection.esn_id_nom
45
                AND intitule.eni_id_nom = nom.en_id_nom
46
                AND intitule.eni_id_valeur_format = 4
47
                AND intitule.eni_id_categorie_format = 3
48
                AND nom.en_id_nom NOT IN
49
                    (
50
                        SELECT nom_relation.enr_id_nom_1
51
                        FROM eflore_nom_relation AS nom_relation
52
                        WHERE nom_relation.enr_id_nom_1 = nom_relation.enr_id_nom_2
53
                        AND nom_relation.enr_id_categorie_relation = 10
54
                        AND nom_relation.enr_id_valeur_relation = 3
55
                    )
56
 
57
                ORDER BY vernaculaire.ev_intitule_nom_vernaculaire ASC';
58
            }
59
        }
116 jpm 60
        if (array_key_exists('radical', $this->contexteRef)) {
61
            $contexte['radical'] = $this->contexteRef['radical'];
62
            if(!empty($contexte['radical'])) {
63
                return
64
                'SELECT DISTINCT
65
                langue.el_nom_langue_principal,
66
                langue.el_code_langue,
67
                zg.ezg_intitule_principal_zg,
68
                zg.ezg_code_zg,
69
                vernaculaire.ev_id_nom_vernaculaire,
70
                vernaculaire.ev_intitule_nom_vernaculaire,
71
                taxon.et_id_version_projet_taxon,
170 jpm 72
                selection.esn_ce_statut,
116 jpm 73
                intitule.eni_intitule_nom,
74
                nom.en_id_nom
75
 
76
                FROM
77
                eflore_langue AS langue,
78
                eflore_zg AS zg,
79
                eflore_vernaculaire AS vernaculaire,
80
                eflore_vernaculaire_attribution AS attribution,
81
                eflore_taxon AS taxon,
82
                eflore_selection_nom AS selection,
120 jpm 83
                eflore_selection_nom_statut AS statut,
116 jpm 84
                eflore_nom AS nom,
85
                eflore_nom_intitule AS intitule
86
 
87
                WHERE
88
                intitule.eni_id_categorie_format = 3
89
                AND intitule.eni_id_valeur_format = 4
90
                AND intitule.eni_id_nom = nom.en_id_nom
120 jpm 91
                AND nom.en_id_nom NOT IN
92
                    (
93
                        SELECT nom_relation.enr_id_nom_1
94
                        FROM eflore_nom_relation AS nom_relation
95
                        WHERE nom_relation.enr_id_nom_1 = nom_relation.enr_id_nom_2
96
                        AND nom_relation.enr_id_categorie_relation = 10
97
                        AND nom_relation.enr_id_valeur_relation = 3
98
                    )
116 jpm 99
                AND nom.en_id_nom = selection.esn_id_nom
100
                AND selection.esn_id_taxon = taxon.et_id_taxon
101
                AND selection.esn_id_version_projet_taxon = taxon.et_id_version_projet_taxon
120 jpm 102
                AND selection.esn_ce_statut = statut.esns_id_statut
103
                AND statut.esns_id_statut = 3
116 jpm 104
                AND taxon.et_id_version_projet_taxon  = attribution.eva_id_version_projet_taxon_ref
105
                AND taxon.et_id_taxon = attribution.eva_id_taxon_ref
106
                AND attribution.eva_id_nom_vernaculaire = vernaculaire.ev_id_nom_vernaculaire
107
                AND vernaculaire.ev_ce_langue = langue.el_id_langue
108
                AND vernaculaire.ev_ce_version_projet_langue = langue.el_id_version_projet_langue
109
                AND attribution.eva_ce_zone_geo = zg.ezg_id_zone_geo
110
                AND attribution.eva_ce_version_projet_zg = zg.ezg_id_version_projet_zg
111
                AND vernaculaire.ev_intitule_nom_vernaculaire LIKE "'.$contexte['radical'].'"
112
                ORDER BY vernaculaire.ev_intitule_nom_vernaculaire ASC';
113
            }
114
        }
115
        return null;
116
    }
117
}
118
?>