27,6 → 27,10 |
private $ce_img_url_tpl = null; |
private $del_url_service_tpl = null; |
|
private $id_observation_suivant = null; |
private $id_observation_precedent = null; |
private $id_observation = null; |
|
/** |
* Méthode appelée par défaut pour charger ce widget. |
*/ |
34,18 → 38,20 |
$this->del_url_service_tpl = $this->config['vote']['baseURLServicesDelTpl']; |
$this->ce_img_url_tpl = $this->config['vote']['celImgUrlTpl']; |
|
$donnees = $this->obtenirDonnees(); |
$this->collecterParametres(); |
$ids_observations = $this->obtenirIdsObservation(); |
$donnees = $this->obtenirDonnees($this->id_observation); |
|
$widget['donnees']['titre'] = $this->construireTitreImage($donnees); |
$widget['donnees']['url'] = $this->obtenirUrlImage(&$donnees['images']); |
$widget['donnees']['utilisateur'] = $this->obtenirUtilisateur(); |
$widget['donnees']['images'] = $donnees['images']; |
$widget['donnees']['liste_votes_determination'] = $this->formaterDeterminations($donnees); |
$widget['donnees']['url_css'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/vote/squelettes/css/'); |
$widget['donnees']['url_js'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/vote/squelettes/scripts/'); |
$widget['donnees']['votes_js'] = $this->convertirTableauVotesEnJs($donnees['commentaires']); |
$widget['donnees']['url_service_votes'] = $this->del_url_service_tpl.'observations/726365'; |
$widget['donnees']['url_service_votes'] = $this->del_url_service_tpl.'observations/'.$this->id_observation; |
$widget['donnees']['url_service_utilisateurs'] = $this->del_url_service_tpl.'utilisateurs/'; |
$widget['donnees']['urls_navigation'] = $this->construireUrlsSuivantesEtPrecedentes($ids_observations); |
|
$squelette = dirname(__FILE__).self::DS.'squelettes'.self::DS.'vote.tpl.html'; |
$contenu = $this->traiterSquelettePhp($squelette, $widget['donnees']); |
53,8 → 59,41 |
$this->envoyer($contenu); |
} |
|
private function obtenirDonnees() { |
$donnees = json_decode(file_get_contents($this->del_url_service_tpl.'observations/726365'), true); |
private function collecterParametres() { |
$this->id_observation = (isset($_GET['id_observation'])) ? $_GET['id_observation'] : null; |
} |
|
private function obtenirIdsObservation() { |
$ids = json_decode(file_get_contents($this->del_url_service_tpl.'observations?retour.format=widget'), true); |
if($this->id_observation == null) { |
$this->id_observation = $ids['resultats'][0]; |
} |
return $ids['resultats']; |
} |
|
private function obtenirUrlBaseWidget() { |
return $this->config['chemins']['baseURL'].'vote'; |
} |
|
private function construireUrlsSuivantesEtPrecedentes($tableau_id_observation) { |
|
$indices_id_obs = array_flip($tableau_id_observation); |
$indice_obs_courante = $indices_id_obs[$this->id_observation]; |
$url_base = $this->obtenirUrlBaseWidget(); |
|
$indice_predecent = isset($tableau_id_observation[$indice_obs_courante - 1]) ? $tableau_id_observation[$indice_obs_courante - 1] : ''; |
$indice_suivant = isset($tableau_id_observation[$indice_obs_courante + 1]) ? $tableau_id_observation[$indice_obs_courante + 1] : ''; |
|
$url_suivant = isset($tableau_id_observation[$indice_obs_courante + 1]) ? $url_base.'?id_observation='.$tableau_id_observation[$indice_obs_courante + 1] : null; |
$url_precedent = isset($tableau_id_observation[$indice_obs_courante - 1]) ? $url_base.'?id_observation='.$tableau_id_observation[$indice_obs_courante - 1] : null; |
|
return array('url_suivant' => $url_suivant, |
'url_precedent' => $url_precedent |
); |
} |
|
private function obtenirDonnees($id_observation) { |
$donnees = json_decode(file_get_contents($this->del_url_service_tpl.'observations/'.$id_observation), true); |
$donnees = $donnees; |
return $donnees; |
} |
139,11 → 178,5 |
|
return $tableau_js; |
} |
|
private function obtenirUtilisateur() { |
$donnees = json_decode(file_get_contents($this->del_url_service_tpl.'utilisateurs/'), true); |
$donnees = $donnees['id_utilisateur']; |
return $donnees; |
} |
} |
?> |