Line 39... |
Line 39... |
39 |
$p['abreviation'] = "'%'";
|
39 |
$p['abreviation'] = "'%'";
|
40 |
}
|
40 |
}
|
Line 41... |
Line 41... |
41 |
|
41 |
|
42 |
$p['type'] = trim($p['type'], "'");
|
42 |
$p['type'] = trim($p['type'], "'");
|
43 |
switch ($p['type']) {
|
43 |
switch ($p['type']) {
|
44 |
case 'identifiant' :
|
44 |
case 'identifiant' :
|
45 |
// Nous avons un identifiant de liste, nous récupérons seulement les valeurs de cette liste
|
45 |
// Nous avons un identifiant de liste, nous récupérons seulement les valeurs de cette liste
|
46 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
46 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
47 |
'FROM coel_meta_liste_valeur '.
|
47 |
'FROM coel_meta_liste_valeur '.
|
48 |
"WHERE cmlv_id_valeur = {$p['idValeur']} ".
|
48 |
"WHERE cmlv_id_valeur = {$p['idValeur']} ".
|
49 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
49 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
50 |
$requete_compte = $requete;
|
50 |
$requete_compte = $requete;
|
51 |
break;
|
51 |
break;
|
52 |
case 'id' :
|
52 |
case 'id' :
|
53 |
// Nous avons un identifiant de liste, nous récupérons seulement les valeurs de cette liste
|
53 |
// Nous avons un identifiant de liste, nous récupérons seulement les valeurs de cette liste
|
54 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
54 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
55 |
'FROM coel_meta_liste_valeur '.
|
55 |
'FROM coel_meta_liste_valeur '.
|
56 |
"WHERE cmlv_ce_parent = {$p['ceParent']} ".
|
56 |
"WHERE cmlv_ce_parent = {$p['ceParent']} ".
|
57 |
"AND cmlv_id_valeur LIKE {$p['idValeur']} ".
|
57 |
"AND cmlv_id_valeur LIKE {$p['idValeur']} ".
|
58 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
58 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
59 |
$requete_compte = $requete;
|
59 |
$requete_compte = $requete;
|
60 |
$requete .= "LIMIT $this->start,$this->limit ";
|
60 |
$requete .= "LIMIT $this->start,$this->limit ";
|
61 |
break;
|
61 |
break;
|
62 |
case 'idv' :
|
62 |
case 'idv' :
|
63 |
// Nous avons un ou plusieurs identifiants de valeurs, nous les récupérons
|
63 |
// Nous avons un ou plusieurs identifiants de valeurs, nous les récupérons
|
Line 64... |
Line 64... |
64 |
$p = $this->traiterParametresUrl(array('type', 'idValeur'), $param);
|
64 |
$p = $this->traiterParametresUrl(array('type', 'idValeur'), $param);
|
65 |
|
65 |
|
66 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
66 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
67 |
'FROM coel_meta_liste_valeur '.
|
67 |
'FROM coel_meta_liste_valeur '.
|
68 |
'WHERE cmlv_id_valeur IN ('.$this->traiterBddClauseIn($p['idValeur']).') '.
|
68 |
'WHERE cmlv_id_valeur IN ('.$this->traiterBddClauseIn($p['idValeur']).') '.
|
69 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' '.
|
69 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' '.
|
70 |
"LIMIT $this->start,$this->limit ";
|
70 |
"LIMIT $this->start,$this->limit ";
|
71 |
break;
|
71 |
break;
|
72 |
case 'ab' :
|
72 |
case 'ab' :
|
73 |
// Nous avons une abréviation de liste, nous récupérons seulement les valeurs de cette liste
|
73 |
// Nous avons une abréviation de liste, nous récupérons seulement les valeurs de cette liste
|
74 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' v.* '.
|
74 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' v.* '.
|
75 |
'FROM coel_meta_liste_valeur AS l LEFT JOIN coel_meta_liste_valeur AS v ON (l.cmlv_id_valeur = v.cmlv_ce_parent) '.
|
75 |
'FROM coel_meta_liste_valeur AS l LEFT JOIN coel_meta_liste_valeur AS v ON (l.cmlv_id_valeur = v.cmlv_ce_parent) '.
|
76 |
'WHERE l.cmlv_ce_parent = 0 '.
|
76 |
'WHERE l.cmlv_ce_parent = 0 '.
|
77 |
"AND l.cmlv_abreviation LIKE {$p['abreviation']} ".
|
77 |
"AND l.cmlv_abreviation LIKE {$p['abreviation']} ".
|
78 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'v.cmlv_id_valeur ASC').' ';
|
78 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'v.cmlv_id_valeur ASC').' ';
|
79 |
$requete_compte = $requete;
|
79 |
$requete_compte = $requete;
|
80 |
$requete .= "LIMIT $this->start,$this->limit ";
|
80 |
$requete .= "LIMIT $this->start,$this->limit ";
|
81 |
break;
|
81 |
break;
|
82 |
case 'abv' :
|
82 |
case 'abv' :
|
83 |
// Nous avons une abréviation de valeur, nous récupérons toutes les valeurs correspondantes
|
83 |
// Nous avons une abréviation de valeur, nous récupérons toutes les valeurs correspondantes
|
- |
|
84 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
- |
|
85 |
'FROM coel_meta_liste_valeur '.
|
- |
|
86 |
"WHERE ";
|
- |
|
87 |
|
- |
|
88 |
// spécial outre-mer française
|
- |
|
89 |
if($p['abreviation'] == "'FR%'" && $p['ceParent'] == "'1078'") {
|
84 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
90 |
$requete .= "cmlv_abreviation REGEXP '^(FR|RE|YT|GP|MQ|GF|NC)...$' ";
|
- |
|
91 |
} else {
|
- |
|
92 |
$requete .= "cmlv_abreviation LIKE {$p['abreviation']} ";
|
85 |
'FROM coel_meta_liste_valeur '.
|
93 |
}
|
86 |
"WHERE cmlv_abreviation LIKE {$p['abreviation']} ".
|
94 |
|
87 |
(isset($p['ceParent']) ? " AND cmlv_ce_parent = {$p['ceParent']} " : '').
|
95 |
$requete .= isset($p['ceParent']) ? " AND cmlv_ce_parent = {$p['ceParent']} " : ''.
|
88 |
" AND cmlv_id_valeur LIKE {$p['idValeur']}".
|
96 |
" AND cmlv_id_valeur LIKE {$p['idValeur']}".
|
89 |
' ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
97 |
' ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
90 |
$requete_compte = $requete;
|
98 |
$requete_compte = $requete;
|
91 |
$requete .= "LIMIT $this->start,$this->limit ";
|
99 |
$requete .= "LIMIT $this->start,$this->limit ";
|
92 |
break;
|
100 |
break;
|
93 |
case 'nom' :
|
101 |
case 'nom' :
|
94 |
// Nous avons une abréviation de valeur, nous récupérons toutes les valeurs correspondantes
|
102 |
// Nous avons une abréviation de valeur, nous récupérons toutes les valeurs correspondantes
|
95 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
103 |
$requete = (($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
|
96 |
'FROM coel_meta_liste_valeur '.
|
104 |
'FROM coel_meta_liste_valeur '.
|
97 |
'WHERE ';
|
105 |
'WHERE ';
|
98 |
if (isset($p['nom']) && $p['nom'] != "") $requete .= "cmlv_nom LIKE {$p['nom']} AND ";
|
106 |
if (isset($p['nom']) && $p['nom'] != "") $requete .= "cmlv_nom LIKE {$p['nom']} AND ";
|
99 |
if (isset($p['ceParent'])) $requete .= " cmlv_ce_parent = {$p['ceParent']} AND ";
|
107 |
if (isset($p['ceParent'])) $requete .= " cmlv_ce_parent = {$p['ceParent']} AND ";
|
100 |
$requete .= " cmlv_id_valeur LIKE {$p['idValeur']} ".
|
108 |
$requete .= " cmlv_id_valeur LIKE {$p['idValeur']} ".
|
101 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
109 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'cmlv_id_valeur ASC').' ';
|
102 |
$requete_compte = $requete;
|
110 |
$requete_compte = $requete;
|
103 |
$requete .= "LIMIT $this->start,$this->limit ";
|
111 |
$requete .= "LIMIT $this->start,$this->limit ";
|
104 |
break;
|
112 |
break;
|
105 |
default :
|
113 |
default :
|
Line 106... |
Line 114... |
106 |
$this->messages[] = sprintf("Valeur '%s' pour le paramêtre 'type' inconnue (valeurs disponibles : id, ab, abv)!", $p['type']);
|
114 |
$this->messages[] = sprintf("Valeur '%s' pour le paramêtre 'type' inconnue (valeurs disponibles : id, ab, abv)!", $p['type']);
|
107 |
}
|
115 |
}
|
108 |
|
116 |
|