46,7 → 46,7 |
|
private $champsPrenom = array('du.prenom', 'prenom_utilisateur'); |
private $champsNom = array('du.nom', 'nom_utilisateur'); |
private $champsSousRequeteObs = array('masque.genre', 'masque.famille', 'masque.ns', 'masque.commune', 'masque.milieu'); |
private $champsSousRequeteObs = array('masque.genre', 'masque.famille', 'masque.ns', 'masque.commune', 'masque.milieu', 'masque.pays'); |
|
public function __construct(Conteneur $conteneur) { |
$this->conteneur = $conteneur; |
166,6 → 166,7 |
public function ajouterContraintes() { |
$this->ajouterContrainteAuteur(); |
$this->ajouterContrainteDate(); |
$this->ajouterContraintePays(); |
$this->ajouterContrainteDepartement(); |
$this->ajouterContrainteIdZoneGeo(); |
$this->ajouterContrainteGenre(); |
299,12 → 300,29 |
} |
} |
} |
|
private function ajouterContraintePays() { |
if (isset($this->parametres['masque.pays'])) { |
// Attention le standard contient parfois FX pour la france métropolitaine |
// Dans ce cas particulier on cherche donc FR et FX |
$this->parametres['masque.pays'] = strtoupper($this->parametres['masque.pays']); |
if(strpos($this->parametres['masque.pays'], 'FR') !== false) { |
$this->parametres['masque.pays'] = str_replace('FR', 'FR,FX', $this->parametres['masque.pays']); |
} |
$pays = explode(',', $this->parametres['masque.pays']); |
$pays = implode(',', $this->bdd->proteger($pays)); |
$this->addWhere('masque.pays', "do.pays IN ($pays)"); |
|
if ($this->etreAppliImg()) { |
$this->addJoin('LEFT JOIN del_observation AS do ON (di.ce_observation = do.id_observation) '); |
} |
} |
} |
|
private function ajouterContrainteIdZoneGeo() { |
if (isset($this->parametres['masque.id_zone_geo'])) { |
$idZgMotif = $this->bdd->proteger($this->parametres['masque.id_zone_geo']); |
$this->addWhere('masque.id_zone_geo', "do.ce_zone_geo = $idZgMotif"); |
|
if ($this->etreAppliImg()) { |
$this->addJoin('LEFT JOIN del_observation AS do ON (di.ce_observation = do.id_observation) '); |
} |