Line 27... |
Line 27... |
27 |
public function getElement($param = array()) {
|
27 |
public function getElement($param = array()) {
|
28 |
// Initialisation des variables
|
28 |
// Initialisation des variables
|
29 |
$info = array();
|
29 |
$info = array();
|
Line 30... |
Line 30... |
30 |
|
30 |
|
31 |
// Pré traitement des paramêtres
|
31 |
// Pré traitement des paramêtres
|
Line 32... |
Line 32... |
32 |
$p = $this->traiterParametresUrl(array('id_structure', 'id_role'), $param);
|
32 |
$p = $this->traiterParametresUrl(array('id_structure', 'id_role', 'id_personne'), $param);
|
33 |
|
33 |
|
34 |
// Construction de la requête
|
34 |
// Construction de la requête
|
- |
|
35 |
$requete = (($this->distinct) ? 'SELECT DISTINCT ' : 'SELECT ').
|
35 |
$requete = (($this->distinct) ? 'SELECT DISTINCT ' : 'SELECT ').
|
36 |
' csap.*, '.
|
36 |
' csap.*, '.
|
37 |
(isset($p['id_personne']) ? ' cs_nom, ' : '').
|
37 |
' cp_ce_projet, cp_fmt_nom_complet, cp_prenom, cp_nom, cp_truk_telephone, cp_truk_courriel, cp_ce_truk_specialite '.
|
38 |
' cp_ce_projet, cp_fmt_nom_complet, cp_prenom, cp_nom, cp_truk_telephone, cp_truk_courriel, cp_ce_truk_specialite '.
|
38 |
'FROM coel_structure_a_personne AS csap '.
|
39 |
'FROM coel_structure_a_personne AS csap '.
|
- |
|
40 |
' LEFT JOIN coel_meta_historique_ligne ON (csap_ce_meta = cmhl_id_historique_ligne) '.
|
39 |
' LEFT JOIN coel_meta_historique_ligne ON (csap_ce_meta = cmhl_id_historique_ligne) '.
|
41 |
' LEFT JOIN coel_personne ON (csap_id_personne = cp_id_personne) '.
|
40 |
' LEFT JOIN coel_personne ON (csap_id_personne = cp_id_personne) '.
|
42 |
(isset($p['id_personne']) ? ' LEFT JOIN coel_structure ON (csap_id_structure = cs_id_structure) ' : '').
|
41 |
((count($p) != 0) ? 'WHERE ' : '').
|
43 |
((count($p) != 0) ? 'WHERE ' : '').
|
- |
|
44 |
(isset($p['id_structure']) ? "AND csap_id_structure = {$p['id_structure']} " : '').
|
42 |
(isset($p['id_structure']) ? "AND csap_id_structure = {$p['id_structure']} " : '').
|
45 |
(isset($p['id_role']) ? "AND csap_id_role = {$p['id_role']} " : '').
|
43 |
(isset($p['id_role']) ? "AND csap_id_role = {$p['id_role']} " : '').
|
46 |
(isset($p['id_personne']) ? "AND csap_id_personne = {$p['id_personne']} " : '').
|
44 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'csap_ce_meta DESC').' ';
|
47 |
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'csap_ce_meta DESC').' ';
|
45 |
$requete = str_replace('WHERE AND', 'WHERE', $requete);
|
48 |
$requete = str_replace('WHERE AND', 'WHERE', $requete);
|
Line 46... |
Line 49... |
46 |
$requeteCount = $requete;
|
49 |
$requeteCount = $requete;
|
Line 47... |
Line 50... |
47 |
$requete .= "LIMIT $this->start, $this->limit ";
|
50 |
$requete .= "LIMIT $this->start, $this->limit ";
|
48 |
|
51 |
|
- |
|
52 |
$this->debug[] = $requete;
|
49 |
$this->debug[] = $requete;
|
53 |
|
50 |
|
54 |
// Récupération des résultats
|
51 |
// Récupération des résultats
|
55 |
try {
|
- |
|
56 |
$nbElements = 0;
|
- |
|
57 |
$donnees = $this->bdd->query($requete)->fetchAll(PDO::FETCH_ASSOC);
|
52 |
try {
|
58 |
if ($donnees === false) {
|
53 |
$donnees = $this->bdd->query($requete)->fetchAll(PDO::FETCH_ASSOC);
|
- |
|
54 |
if ($donnees === false) {
|
- |
|
55 |
$this->messages[] = "La requête a retourné aucun résultat.";
|
- |
|
56 |
}
|
59 |
$this->messages[] = "La requête a retourné aucun résultat.";
|
57 |
|
60 |
} else {
|
58 |
$nbElements = $this->bdd->query($requeteCount)->rowCount();
|
- |
|
59 |
|
61 |
$nbElements = $this->bdd->query($requeteCount)->rowCount();
|
60 |
$info['nbElements'] = $nbElements;
|
62 |
}
|
61 |
$info['structuresAPersonne'] = $donnees;
|
63 |
$info['nbElements'] = $nbElements;
|
Line 62... |
Line 64... |
62 |
|
64 |
$info['structuresAPersonne'] = $donnees;
|