Subversion Repositories eFlore/Projets.eflore-projets

Compare Revisions

Ignore whitespace Rev 533 → Rev 534

/trunk/services/modules/0.1/coste/Images.php
84,9 → 84,55
}
}
/*private function traiterVersion() {
if( isset($this->parametres['version.projet']) ) {
$version = $this->parametres['version.projet'];
if (preg_match('/^([0-9]+(?:[._][0-9]+|))$/', $version, $retour)) {
$this->version[] = $retour[0];
$this->version_projet[] = 'v'.str_replace('.', '_', $this->version[0]);
$this->table_version[] = Config::get('bdd_table').''.$this->version_projet[0];
} elseif ($version == '+') {
$this->obtenirDerniereVersion();
} elseif ($version == '*' && empty($this->ressources) == false ) {
$this->chargerVersions();
$total = count($this->metadonnees);
for($i = 0 ; $i < $total ; $i++) {
$this->version[$i] = $this->metadonnees[$i]['version'];
$this->version_projet[$i] = 'v'.str_replace('.', '_',$this->version[$i]);
$this->table_version[$i] = Config::get('bdd_table').''.$this->version_projet[$i];
}
}else {
$e = 'Erreur parametre version inconnu. ';
$this->renvoyerErreur(RestServeur::HTTP_CODE_MAUVAISE_REQUETE,$e);
}
} else {
$this->obtenirDerniereVersion();
}
}
private function obtenirDerniereVersion(){
$this->chargerVersions();
$this->version[] = $this->metadonnees[0]['version'];
$this->version_projet[] ='v'.str_replace('.', '_',$this->metadonnees[0]['version']);
$this->table_version[] = Config::get('bdd_table').''.$this->version_projet[0];
}
 
private function chargerVersions() {
$requete = "SELECT version ".
"FROM ".Config::get('bdd_table_meta')." ".
"ORDER BY date_creation DESC ";
$resultats = $this->Bdd->recupererTous($requete);
if (!is_array($resultats) || count($resultats) <= 0) {
$message = "Les méta-données n'ont pu être chargée pour la ressource demandée";
$code = RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE;
throw new Exception($message, $code);
}
$this->metadonnees = $resultats;
}*/
 
 
private function analyserMasque($valeur, $type_masque) {
$this->masque[] = "$type_masque=$valeur";
115,8 → 161,16
 
/*public function verifierFormat($format) {
if (in_array($format, $this->formats_supportes)) {
$this->format_retour = $format;
} else {
$e = "Le format $format demandé n'est pas disponible.";
$this->renvoyerErreur(RestServeur::HTTP_CODE_MAUVAISE_REQUETE,$e);
}
}*/
//+-------------------------------------------formatage résultats---------------------------------------------+
 
public function formaterResultat($resultat) {
126,7 → 180,7
$code = RestServeur::HTTP_CODE_MAUVAISE_REQUETE;
throw new Exception($message, $code);
} elseif ($resultat) {
$versionResultat['resultats'] = $this->retournerResultatFormate($resultat);
$versionResultat = $this->retournerResultatFormate($resultat);
} else {
$versionResultat['resultats'] = array();
}
152,8 → 206,13
}
 
/*public function donnerVersionDuneTable($table) {
$version = strstr($table,'v');
$version = str_replace('v','', $version);
$version = str_replace('_','.', $version);
return $version;
}*/
public function formaterEnteteResultat() {
$entete['depart'] = $this->limite_requete['depart'];
$entete['limite'] = $this->limite_requete['limite'];
208,17 → 267,12
$this->calculerTotalResultat();
$requete_limite = '';
if ((count($this->ressources)) == 0) {
if (($this->limite_requete['depart'] <= $this->total_resultat) ){
if (($this->limite_requete['limite'] + $this->limite_requete['depart'] )
< $this->total_resultat ) {
if (($this->limite_requete['depart'] < $this->total_resultat) &&
(($this->limite_requete['limite'] + $this->limite_requete['depart'] )
< $this->total_resultat )) {
$requete_limite = 'LIMIT '.$this->limite_requete['depart'].', '
.$this->limite_requete['limite'];
}
} else {
$e = "Erreur : la valeur pour le paramètre navigation.départ est supérieure".
" au nombre total de résultats.";
throw new Exception($e, RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE);
}
}
}
return $requete_limite;
}