/trunk/interfaces/configurations/config.default.ini |
---|
12,6 → 12,10 |
info.framework.version = 0.2 |
;Encodage de l'application |
appli_encodage = "UTF-8" |
; Paramêtres indiquant que l'on est en français pour permettre l'affichage des dates en français. |
i18n_locale_systeme = "php:setlocale(LC_TIME, 'fr_FR.UTF-8')" |
; Paramêtres indiquant la zone horaire locale |
i18n_zone_horaire_systeme = "php:date_default_timezone_set('Europe/Paris')" |
; Nom de domaine pour l'URL de base de l'application : 162.38.234.6 |
domaine = "localhost" |
; URL de base de l'application, si elle est laissée vide, l'application fonctionnera en Stand-alone |
/trunk/interfaces/configurations/referentiel_v2.1.ini |
---|
73,4 → 73,11 |
; Liste des statuts d'introduction |
codes_statuts_introduction = "ISDECAX" |
; Liste des statuts de culture |
codes_statuts_culture = "CISDECX" |
codes_statuts_culture = "CISDECX" |
; Liste des domaines géographiques |
domaine_geo="France métro & Corse;Océan Indien;Martinique;Guadeloupe;Guyane;Nouvelle-Calédonie;Polynésie française;St Martin & St Barth;St Pierre et Miquelon;Terres Australes" |
; Liste des domaines taxonomiques |
domaine_taxo="Trachéophytes;Bryophytes;Champignons;Lichens;Algues" |
; Liste des codes de nomenclatures |
domaine_code="CINB;CINPC" |
/trunk/interfaces/index.php |
---|
15,8 → 15,8 |
<meta name="description" content="<?php echo Referentiel::getMetaDescription();?>" /> |
<meta name="keywords" content="<?php echo Referentiel::getMetaTags();?>" /> |
<meta name="revisit-after" content="15 days" /> |
<meta name="robots" content="index,follow" /> |
<meta name="revisit-after" content="150 days" /> |
<meta name="robots" content="noindex,nofollow" /> |
<meta name="author" content="Tela Botanica" /> |
<link rel="shortcut icon" type="image/x-icon" href="http://www.tela-botanica.org/favicon.ico" /> |
/trunk/interfaces/squelettes/css/referentiel/referentiel.css |
---|
16,12 → 16,25 |
background-color:#E9584C !important;} |
.espace{ |
background-color:yellow !important;} |
.case-a-cocher-scroll { |
height:6em; |
padding:2px; |
overflow:auto; |
border:1px solid #ccc} |
.liste-simple li, ul.liste-simple{ |
list-style-type:none; |
padding:0; |
margin:0 !important;} |
.liste-champs li, ul.liste-champs{ |
list-style-type:none; |
padding:0; |
margin:0 !important;} |
.liste-champs li{ |
padding:2px;} |
/*--------------------------------------------------------------------------------------------------------------*/ |
/* Demande de traitements */ |
#zone-form form{ |
display:inline;} |
/*--------------------------------------------------------------------------------------------------------------*/ |
/* Traitement */ |
#resultats { |
41,4 → 54,6 |
width:800px; |
padding:5px;} |
#ref-resultat .message p{ |
background-color:#f0f0f0;} |
background-color:#f0f0f0;} |
/trunk/interfaces/squelettes/form_version.tpl.html |
---|
New file |
0,0 → 1,141 |
<!-- REF - DEBUT VERSIONNAGE --> |
<script type="text/javascript"> |
$(document).ready(function() { |
$('#ref-dem-ok').click(function(e) { |
var ok = false; |
if (confirm('Êtes vous sûr de vouloir versionner le référentiel actuellement en cours de travail ?')) { |
ok = true; |
} |
return ok; |
}); |
}); |
</script> |
<h1>Versionnage du référentiel « <?=$ref;?> »</h1> |
<?php if (isset($messages)) : ?> |
<h2>Messages</h2> |
<?php foreach ($messages as $message) : ?> |
<p class="information"><?=$message;?></p> |
<?php endforeach; ?> |
<?php endif; ?> |
<div id="zone-form-version"> |
<form id="ref-demande-versionnage" name="ref-demande-versionnage" action="<?=$url_form;?>" method="get"> |
<input name="module" type="hidden" value="<?=$url_module;?>" /> |
<input name="action" type="hidden" value="<?=$url_action_demande;?>" /> |
<input name="ref" type="hidden" value="<?=$ref;?>" /> |
<fieldset> |
<legend>Général</legend> |
<ul class="liste-champs"> |
<li> |
<label for="titre">Titre</label> |
<input id="titre" type="text" value=""/> |
</li> |
<li> |
<label for="acronyme">Acronyme</label> |
<input id="acronyme" type="text" value=""/> |
</li> |
<li> |
<label for="version">Version</label> |
<input id="version" type="text" value=""/> |
</li> |
</ul> |
</fieldset> |
<fieldset> |
<legend>Date</legend> |
<label for="date_prod">Date de production</label> |
<input id="date_prod" name="date_prod" type="text" value="<?=$date_prod?>" readonly="readonly"/> |
</fieldset> |
<fieldset> |
<legend>Domaines couverts par le référentiel</legend> |
<p> Vous pouvez choisir plusieurs éléments par liste.</p> |
<label for="ref-ver-dom-tax">Domaine taxonomique</label> |
<div id="ref-ver-dom-tax" class="case-a-cocher-scroll" style="width:150px;"/> |
<ul class="liste-simple"> |
<? foreach ($domaine_taxo as $taxo) : ?> |
<li><label><input type="checkbox" name="dom_tax" value="<?=$taxo?>" /><?=$taxo?></label></li> |
<? endforeach; ?> |
</ul> |
</div> |
<label for="ref-ver-dom-geo">Domaine géographique</label> |
<div id="ref-ver-dom-geo" class="case-a-cocher-scroll" style="width:250px;"/> |
<ul class="liste-simple"> |
<? foreach ($domaine_geo as $geo) : ?> |
<li><label><input type="checkbox" name="dom_geo" value="<?=$geo?>" /><?=$geo?></label></li> |
<? endforeach; ?> |
</ul> |
</div> |
<label for="ref-ver-dom-code">Codes botaniques utilisés</label> |
<div id="ref-ver-dom-code" class="case-a-cocher-scroll" style="width:150px;"/> |
<ul class="liste-simple"> |
<? foreach ($domaine_code as $code) : ?> |
<li><label><input type="checkbox" name="dom_code" value="<?=$code?>" /><?=$code?></label></li> |
<? endforeach; ?> |
</ul> |
</div> |
</fieldset> |
<fieldset> |
<legend>Contacts</legend> |
<ul class="liste-champs"> |
<li> |
<label for="auteur_principal">Auteur principal</label> |
<input type="text" id="auteur_principal" name="auteur_principal" value="" /> |
</li> |
<li> |
<label for="coordinateur">Coordinateur</label> |
<input type="text" id="coordinateur" name="coordinateur" value="" /> |
</li> |
<li> |
<label for="contributeur">Auteurs/Contributeurs</label> |
<textarea id="contributeur" name="contributeur" rows="5" cols="50"></textarea> |
</li> |
<li> |
<label for="editeur">Éditeur</label> |
<input type="text" id="editeur" name="editeur" value="" /> |
</li> |
<li> |
<label for="contact">Courriel de contact</label> |
<input type="text" name="contact" value="" /> |
</li> |
</ul> |
</fieldset> |
<fieldset> |
<legend>Citation</legend> |
<ul class="liste-champs"> |
<li> |
<label for="source">Source</label> |
<textarea id="source" name="source" rows="5" cols="50"></textarea> |
</li> |
<li> |
<label for="mention_legale">Mention légale</label> |
<input type="text" id="mention_legale" name="mention_legale" value="" /> |
</li> |
<li> |
<label for="ref-ver-licence">Licence</label> |
<div class="case-a-cocher-scroll" style="width:350px;"> |
<ul id="ref-ver-licence" class="liste-simple"> |
<? foreach ($licences as $licence) : ?> |
<li><label><input type="checkbox" name="licence" value="<?=$licence['url']?>" /><a href="<?=$licence['url']?>" onclick="window.open(this.href); return false;"><?=$licence['nom']?></a></label></li> |
<? endforeach; ?> |
</ul> |
</div> |
</li> |
<li> |
<label for="referencement">Comment citer ce référentiel?</label> |
<textarea id="referencement" name="referencement" rows="5" cols="50"></textarea> |
</li> |
</ul> |
</fieldset> |
<input id="ref-versionnage-ok" type="submit" value="Versionner" /> |
</form> |
</div> |
<!-- REF - FIN VERSIONNAGE --> |
/trunk/interfaces/squelettes/form_traitement.tpl.html |
---|
19,7 → 19,7 |
<input name="module" type="hidden" value="<?=$url_module;?>" /> |
<input name="action" type="hidden" value="<?=$url_action_demande;?>" /> |
<input name="ref" type="hidden" value="<?=$ref;?>" /> |
<label id="ref-dem-label"for="ref-dem-ok">Faire une demande de traitement</label> |
<label id="ref-dem-label" for="ref-dem-ok">Faire une demande de traitement</label> |
<input id="ref-dem-ok" type="submit" value="Demander" /> |
</form> |
<form id="ref-rafraichir" name="ref-rafraichir" action="<?=$url_form;?>" method="get"> |
38,6 → 38,29 |
<?php endforeach; ?> |
<?php endif; ?> |
<h2>Traitements en attente <?=strftime('à %H:%M:%S le %d %B %Y')?></h2> |
<?php if (isset($traitements_en_attente)) : ?> |
<table> |
<caption>Traitements en attente</caption> |
<thead> |
<tr> |
<th>Nom (#)</th> |
<th>Date de la demande</th> |
</tr> |
</thead> |
<tbody> |
<?php foreach ($traitements_en_attente as $traitement) : ?> |
<tr> |
<td><?=$traitement['nom']?> <span class="discretion">(id:<?=$traitement['id_traitement']?>)</span></td> |
<td><?=$traitement['meta_date_creation']?></td> |
</tr> |
<?php endforeach; ?> |
</tbody> |
</table> |
<?php else : ?> |
<p class="information">Aucun traitement en attente.</p> |
<?php endif; ?> |
<h2>Traitements en cours</h2> |
<?php if (isset($traitements_en_cours)) : ?> |
<table> |
/trunk/interfaces/controleurs/Test.php |
---|
53,14 → 53,21 |
// Traitement de l'info sur le code du référentiel |
if (isset($this->referentiel)) { |
$donnees['ref'] = $this->referentiel; |
// Recherche des traitements en attente |
$resultat = $this->traitementDao->getTraitementsEnAttente($this->referentiel); |
if (is_array($resultat)) { |
$donnees['traitements_en_attente'] = $resultat; |
} |
// Recherche des traitements en cours d'éxecution |
$resultat = $this->traitementDao->getTraitementsEnCours($this->referentiel); |
if ($resultat != false) { |
if (is_array($resultat)) { |
$donnees['traitements_en_cours'] = $resultat; |
} |
// Recherche des traitements déjà effectué |
$resultat = $this->traitementDao->getTraitementsTermines($this->referentiel); |
if ($resultat != false) { |
if (is_array($resultat)) { |
// Ajout de l'url vers la fiche du traitement |
foreach ($resultat as &$traitement) { |
$traitement['url'] = $this->obtenirUrlFicheTraitement($this->referentiel, $traitement['id_traitement']); |
92,17 → 99,21 |
if (!isset($this->referentiel)) { |
$this->addMessage("Aucun code de projet de référentiel n'est indiqué (Ex. bdnff)."); |
} else { |
// TODO : vérifier qu'il n'y a pas déjà un traitement en cours pour ce projet. |
$resultat_traitement_en_cours = $this->traitementDao->getTraitementsEnCours($this->referentiel); |
if ($resultat_traitement_en_cours) { |
$this->addMessage("Un traitement est déjà en cours..."); |
$resultat_traitement_en_attente = $this->traitementDao->getTraitementsEnAttente($this->referentiel); |
if ($resultat_traitement_en_attente) { |
$this->addMessage("Un traitement est déjà en attente..."); |
} else { |
$resultat = $this->traitementDao->ajouterTraitement($this->referentiel); |
if ($resultat != false) { |
$this->addMessage("Le traitement #'$resultat' a été ajouté."); |
$this->lancerScript(); |
$resultat_traitement_en_cours = $this->traitementDao->getTraitementsEnCours($this->referentiel); |
if ($resultat_traitement_en_cours) { |
$this->addMessage("Un traitement est déjà en cours..."); |
} else { |
$this->addMessage("Un problème est survenu lors de la tentative d'ajout du traitement."); |
$resultat = $this->traitementDao->ajouterTraitement($this->referentiel); |
if ($resultat != false) { |
$this->addMessage("Le traitement #'$resultat' a été ajouté."); |
$this->lancerScript(); |
} else { |
$this->addMessage("Un problème est survenu lors de la tentative d'ajout du traitement."); |
} |
} |
} |
} |
118,7 → 129,7 |
$projet = $this->referentiel; |
$action = 'tout'; |
$log = Config::get('chemin_script_log'); |
$commande = "$php -f $exe $script -p $projet -a $action > $log &"; |
$commande = "$php -d memory_limit=1073741824 -f $exe $script -p $projet -a $action > $log &"; |
$message_erreur_tpl = "%s\n.". |
"Il est nécessaire de configurer le lancement du script via une tache dans le cron.\n". |
/trunk/interfaces/controleurs/Versionnage.php |
---|
14,6 → 14,7 |
*/ |
class Versionnage extends AppliControleur { |
private $manuel = null; |
private $referentiel = null; |
public function __construct() { |
23,6 → 24,8 |
if (isset($_GET['ref'])) { // code du projet courrant |
$this->referentiel = strtolower($_GET['ref']); |
} |
$this->manuel = parse_ini_file(Config::get('chemin_appli').DS.'..'.DS.'configurations'.DS.'referentiel_v2.1.ini'); |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
31,9 → 34,41 |
* Fonction d'affichage par défaut |
*/ |
public function executerActionParDefaut() { |
return $this->afficherInterface(); |
} |
/** |
* Affiche le formulaire de demande de versionnage |
*/ |
public function afficherInterface() { |
$donnees = array(); |
// Paramêtres pour l'url du formulaire |
$this->url->unsetVariablesRequete(array('module', 'action', 'ref')); |
$donnees['url_form'] = $this->url->getUrl(); |
$donnees['url_module'] = 'Versionnage'; |
$donnees['url_action_demande'] = 'demanderTraitement'; |
$donnees['url_action_rafraichir'] = 'afficherInterface'; |
// Date de production de la version |
$donnees['date_prod'] = date('Y-m-d'); |
// Récupération des paramètres de configuration du manuel des référentiels |
$donnees['domaine_geo'] = explode(';', $this->manuel['domaine_geo']); |
$donnees['domaine_taxo'] = explode(';', $this->manuel['domaine_taxo']); |
$donnees['domaine_code'] = explode(';', $this->manuel['domaine_code']); |
$licences = explode(';', $this->manuel['licences']); |
foreach ($licences as $licence) { |
if (preg_match('/^([^<]+)<([^>]+)>/', $licence, $match)) { |
$info_licence = array(); |
$info_licence['nom'] = $match[1]; |
$info_licence['url'] = $match[2]; |
$donnees['licences'][] = $info_licence; |
} |
} |
$this->setSortie(self::RENDU_CORPS, $this->getVue('form_version', $donnees), false); |
$this->construireMenu($this->referentiel); |
$this->construireFilAriane($this->referentiel); |
$this->setSortie(self::RENDU_CORPS, '<p>En cours de réalisation...</p>', false); |
} |
} |
} |
?> |