Subversion Repositories Applications.referentiel

Compare Revisions

Ignore whitespace Rev 275 → Rev 276

/trunk/interfaces/controleurs/AppliControleur.php
202,10 → 202,10
$menu['activite'] = (($this->getModulePrincipalCourant() == 'Versionnage') ? 'actif' : 'inactif securise');
$menu['title'] = "Réservé aux coordinateurs. Générer une version de la base.";
$donnees['menus'][] = $menu;
$menu['nom'] = 'Informations';
$menu['nom'] = 'Informations et téléchargements';
$menu['url'] = $this->obtenirUrlMenuInformations($referentiel);
$menu['activite'] = (($this->getModulePrincipalCourant() == 'Informations') ? 'actif' : 'inactif');
$menu['title'] = "Informations sur le projet.";
$menu['title'] = "Informations sur le projet et téléchargements.";
$donnees['menus'][] = $menu;
$this->setSortie(self::RENDU_MENU, $this->getVue('menu', $donnees), false);
}
455,6 → 455,52
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES FICHIERS A TELECHARGER
/**
* Crée la liste d'url des fichiers à télécharger pour un traitement donné
* @param Array $infos_traitement tableau contenant les informations du traitement
*
* @return Array un tableau contenant la liste des urls des fichiers à télécharger
*/
protected function obtenirUrlsZipPourTraitement($infos_traitement) {
$urls_zip = null;
if (isset($infos_traitement['script']) && $infos_traitement['script'] == 'versionnage') {
$meta = unserialize($infos_traitement['script_parametres']);
$projet = strtolower($infos_traitement['referentiel_code']);
$version = str_replace('.', '_', $meta['version']);
$fichier_zip_bdnt = $projet.'_v'.$version.'.zip';
$url_zip_bdnt = sprintf(Config::get('url_zip_tpl'), $fichier_zip_bdnt);
if ($this->testerUrl($url_zip_bdnt)) {
$urls_zip[$fichier_zip_bdnt] = $url_zip_bdnt;
}
$fichier_zip_partiel_ancien = $projet.'_v'.$version.'_partiel.zip';
$url_zip_partiel_ancienne = sprintf(Config::get('url_zip_tpl'), $fichier_zip_partiel_ancien);
$fichier_zip_partiel = $projet.'_v'.$version.$this->manuel['suffixe_partiel'].'.zip';
$url_zip_partiel = sprintf(Config::get('url_zip_tpl'), $fichier_zip_partiel);
if ($this->testerUrl($url_zip_partiel)) {
$urls_zip[$fichier_zip_partiel] = $url_zip_partiel;
} else if ($this->testerUrl($url_zip_partiel_ancienne)) {
$urls_zip[$fichier_zip_partiel_ancien] = $url_zip_partiel_ancienne;
}
}
return $urls_zip;
}
/**
* Teste une url donnée, en tentant de l'ouvrir et de la fermer
*
* @return boolean un booléen indiquant le succès ou non de l'opération
*/
protected function testerUrl($url) {
//TODO: voir si on peut inclure cette fonction dans le framework
ini_set('allow_url_fopen', '1');
return (@fclose(@fopen($url, 'r'))) ? true : false;
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DU CLIENT REST
protected function getRestClient() {