Subversion Repositories eFlore/Applications.cel

Compare Revisions

Regard whitespace Rev 1559 → Rev 1560

/trunk/widget/modules/saisie/squelettes/florileges/css/florileges.css
150,6 → 150,11
width: 65.9574%;
}
}
@media (min-width: 1600px) {
.container {
width: 1580px;
}
}
/*+--------------------------------------------------------------------------------------------------------+*/
/* Spécifique Florilèges */
.page-header .intro {
214,16 → 219,32
label.error {
font-weight: bold;
color: #B94A48;
padding: 2px 8px;
margin-top: 2px;
padding: 0 8px;
}
.error .horizontal-slider{
background: #B94A48;
}
.slider-holder + select + label.error {
clear: both;
}
#form-date .input-prepend input {
vertical-align:top;
}
#form-date .input-prepend input + label.error {
display: block;
}
/*+--------------------------------------------------------------------------------------------------------+*/
/* SLIDERs */
.slider-on {
display: none;
display:inline;
height:0;
width:0;
margin:0;
padding:0;
visibility: hidden;
}
.slider-holder {
height: 65px;
height: 25px;
margin-left: -20px;
margin-right: 20px;
padding-left: 40px;
255,6 → 276,7
.slider-holder .slider-legend p {
padding-top:5px;
overflow: hidden;
word-wrap: break-word;
}
.horizontal-slider a.ui-slider-handle {
background: url("../img/icones/selecteur.png") no-repeat scroll 23px 20px transparent;
/trunk/widget/modules/saisie/squelettes/florileges/florileges.tpl.html
203,34 → 203,44
</div>
</div>
<div id="zone-prenom-nom" class="row-fluid hidden">
<div class="span6">
<div class="span6 control-group">
<label for="prenom">
<strong class="obligatoire">*</strong>
Prénom
</label>
<input id="prenom" name="prenom" class="span12" type="text"/>
</div>
<div class="span6">
<div class="span6 control-group">
<label for="nom">
<strong class="obligatoire">*</strong>
Nom
</label>
<div class="controls">
<input id="nom" name="nom" class="span12" type="text"/>
</div>
</div>
</div>
<div id="zone-personne-complement" class="forcer-colonne">
<div class="row-fluid">
<div class="span6">
<label for="structure">
<div class="span6 control-group">
<label for="structure" class="control-label">
<strong class="obligatoire">*</strong>
Structure
</label>
<div class="controls">
<input id="structure" name="personneStructure" class="span12 " type="text"/>
</div>
<div class="span6">
<label for="service">
</div>
<div class="span6 control-group">
<label for="service" class="control-label">
<strong class="obligatoire">*</strong>
Service
</label>
<div class="controls">
<input id="service" name="personneService" class="span12" type="text"/>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<label for="fonction">
269,6 → 279,7
</div>
<div class="row-fluid">
<div class="span12">
<form id="form-site">
<div class="well">
<div class="row-fluid">
<div class="span4">
278,23 → 289,26
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Nom du site." >
<label for="station">Nom</label>
<div>
<input type="text" id="station" class="span12" name="station"/>
<label for="station" class="control-label">
<strong class="obligatoire">*</strong>
Nom
</label>
<div class="controls">
<input id="station" class="span12" name="station" type="text"/>
</div>
</div>
</div>
<div class="forcer-colonne well">
<div class="forcer-colonne well control-group">
<div class="row-fluid">
<div class="span4">
<label for="map_canvas" title="Veuillez localiser l'observation">
<div class="span12">
<label for="map_canvas" class="control-label"
title="Veuillez localiser l'observation">
<strong class="obligatoire">*</strong>
Géolocalisation
</label>
</div>
<div class="span8 droite">
<form id="form-carte-recherche" class="form-search form-horizontal">
<div class="form-search form-horizontal">
<div class="control-group">
<input id="carte-recherche" class="search-query" type="text" value=""
rel="tooltip"
301,9 → 315,9
title="Permet de centrer la carte sur le lieu recherché. Il est nécessaire de sélectionner le lieu dans la liste déroulante."
placeholder="Centrer la carte sur un lieu..."/>
</div>
</form>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div id="map-canvas" rel="tooltip"
336,19 → 350,25
</div>
</div>
<div id="coordonnees-geo" class="row-fluid" style="display:none;">
<form id="form-station" class="control-group form-inline">
<div id="coord-lat" class="span4">
<label>
<div class="form-inline">
<div id="coord-lat" class="span4 control-group">
<label for="latitude" class="control-label">
<strong class="obligatoire">*</strong>
Latitude
</label>
<div class="controls">
<input id="latitude" class="input-mini" name="latitude" type="text" value=""/>
</label>
</div>
</div>
<div id="coord-lng" class="span4">
<label>
<label for="longitude" class="control-label">
<strong class="obligatoire">*</strong>
Longitude
</label>
<div class="controls">
<input id="longitude" class="input-mini" name="longitude" type="text" value=""/>
</label>
</div>
</div>
<div class="span4">
<button id="geolocaliser" class="btn"
rel="tooltip"
356,10 → 376,10
Voir sur la carte
</button>
</div>
</form>
</div>
</div>
</div>
</div>
<div class="span4">
<div class="row-fluid">
<div class="span12">
367,11 → 387,15
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Typologie du site. Vous pouvez en cliquant dans la zone de saisie puis en appuyant sur la touche «flêche bas», ouvrir la liste des choix disponibles." >
<label>
<label for="typo-urbaine" class="control-label">
<strong class="obligatoire">*</strong>
Typologie
</label>
<div class="controls">
<select id="typo-urbaine" class="span12" name="typoUrbaine">
<option selected value="">Sélectionnez une typologie</option>
<option>centre ville</option>
<option>faubourg</option>
<option>quartier résidentiel</option>
378,15 → 402,19
<option>zone commerciale</option>
<option>zone d'activités</option>
</select>
</label>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Type de revêtement de sol." >
<label>
<label for="revetement-sol" class="control-label">
<strong class="obligatoire">*</strong>
Revêtement de sol
</label>
<div class="controls">
<select id="revetement-sol" class="span12" name="revetementSol">
<option selected value="">Sélectionnez un revêtement de sol</option>
<option>asphalte et enrobés</option>
<option>pavés</option>
<option>stabilisés, aires sablées</option>
393,9 → 421,9
<option>graviers</option>
<option>terre</option>
</select>
</label>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
title="Présence de zones végétalisés autour du site (haie, aménagement paysager, parcs et jardins, ...)." >
402,6 → 430,7
<label>
Présence de zones végétalisés
<select id="presence-zone-vegetalise">
<option selected value=""></option>
<option>nulle</option>
<option>faible</option>
<option>moyenne</option>
416,6 → 445,7
<label>
Hauteur des bâtiments
<select id="hauteur-batiment-avoisinant">
<option selected value=""></option>
<option>0</option>
<option>1</option>
<option>2</option>
434,34 → 464,42
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Intensité de gestion." >
<label>
<label for="intensite-gestion" class="control-label">
<strong class="obligatoire">*</strong>
Intensité de gestion
<select id="intensite-gestion" class="span12">
</label>
<div class="controls">
<select id="intensite-gestion" name="intensiteGestion" class="span12">
<option selected value="">Sélectionnez l'intensité</option>
<option>extensive</option>
<option>intermédiaire</option>
<option>intensive</option>
</select>
</label>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Utilisation de produits phytosanitaires sur le site." >
<label>
<label for="periodicite-traitement-phyto" class="control-label">
<strong class="obligatoire">*</strong>
Utilisation de produits phytosanitaires
<select id="periodicite-traitement-phyto">
</label>
<div class="controls">
<select id="periodicite-traitement-phyto" name="periodiciteTraitementPhyto">
<option selected value=""></option>
<option value="régulière">régulière</option>
<option value="occasionnelle">occasionnelle</option>
<option value="rare">rare</option>
<option value="jamais">jamais</option>
</select>
</label>
</div>
</div>
</div>
<div id="datp-zone" class="row-fluid hidden">
<div class="span12" rel="tooltip"
title="Date approximative de l'arrêt des traitements.
481,12 → 519,14
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Description de l'itinéraire de gestion (type de traitement, matériel utilisé, fréquence de passage, ...)." >
<label>
<label for="itineraire-gestion" class="control-label">
<strong class="obligatoire">*</strong>
Description de l'itinéraire de gestion
</label>
<div class="controls">
<textarea id="itineraire-gestion" class="span12" rows="7" name="itineraireGestion"></textarea>
</label>
</div>
</div>
</div>
493,19 → 533,23
</div>
</div>
</div>
</form>
</div>
</div>
<div class="row-fluid">
<div class="span12 well">
<div class="row-fluid">
<div class="span4">
<div class="span3">
<h2 id="obs-titre">Observations</h2>
</div>
<div class="span8">
<div class="span9">
<form id="form-date" class="form-inline">
<div class="span6" rel="tooltip"
<div class="span5 control-group" rel="tooltip"
title="Vous pouvez cliquer sur l'icône de calendrier pour
sélectionner une date dans un calendrier.">
<label title="Veuillez indiquer la date du relevé au format jj/mm/aaaa">
sélectionner une date dans un calendrier. La date doit être au format :
jj/mm/aaaa">
<label class="control-label">
<strong class="obligatoire">*</strong>
Date du relevé
<div class="input-prepend">
<span id="date-icone" class="add-on"></span>
514,11 → 558,13
</div>
</label>
</div>
<div class="span6" rel="tooltip"
<div class="span7 control-group" rel="tooltip"
title="Date approximative de la dernière intervention." >
<label>
<label class="span12 control-label">
<strong class="obligatoire">*</strong>
Dernière intervention
<select id="date-derniere-intervention">
<select id="date-derniere-intervention" class="span8" name="dateDerniereIntervention">
<option selected value="">Sélectionnez la date d'intervention</option>
<option value="inconnue">ne sais pas</option>
<option>plus de 3 ans</option>
<option>entre 1 et 3 ans</option>
574,7 → 620,7
title="Sélectionnez une espèce dans la liste déroulante pour lier
votre nom au référentiel. Si vous le désirez vous pouvez aussi saisir
un nom absent du référentiel (Ex. : 'fleur violette' ou 'viola sinensis???')." >
<label class="control-label" for="taxon" title="Choisissez l'espèce rencontrée.">
<label for="taxon" class="control-label" title="Choisissez l'espèce rencontrée.">
Autre espèce
</label>
<div class="controls">
586,11 → 632,13
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Sélectionner un ou plusieurs milieux dans lesquels l'espèce est présente sur le site.">
<label class="span2">
<label class="span2 control-label">
<strong class="obligatoire">*</strong>
Milieux
</label>
<div class="controls">
<div class="input-prepend">
<div class="btn-group">
<button class="btn dropdown-toggle" data-toggle="dropdown">
646,14 → 694,16
</div>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Hauteur maximum en centimètre de la plante sur le site.">
<label >
<label class="control-label">
<strong class="obligatoire">*</strong>
Hauteux max. (en cm) de la plante
<input id="hauteur-plante" class="span2" name="hauteurPlante"
type="number" min="0" step="1" />
type="number" min="0" step="5" />
</label>
</div>
</div>
671,11 → 721,15
<div class="span6">
<div class="well">
<div class="row-fluid">
<div class="span12" rel="tooltip"
<div class="span12 control-group" rel="tooltip"
title="Résistance/Résilience face aux traitements utilisés." >
<label>
<label class="control-label">
<strong class="obligatoire">*</strong>
Résistance/Résilience
</label>
<div class="controls">
<select id="resistance-traitement-phyto" name="resistanceTraitementPhyto">
<option selected value=""></option>
<option>Pas de traitement</option>
<option>faible</option>
<option>intermédiaire</option>
682,9 → 736,9
<option>forte</option>
<option>très forte</option>
</select>
</label>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12" rel="tooltip"
692,6 → 746,7
<label>
Croissance
<select id="vitesse-croissance" name="vitesseCroissance">
<option selected value=""></option>
<option>nulle</option>
<option>lente</option>
<option>moyenne</option>
719,31 → 774,31
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
<li>
<label class="checkbox">
<input name="milieux" type="checkbox" value="ne connaissais pas la plante avant l'étude"/>
<input name="perceptionTechnicien" type="checkbox" value="ne connaissais pas la plante avant l'étude"/>
ne connaissais pas la plante avant l'étude
</label>
</li>
<li>
<label class="checkbox">
<input name="milieux" type="checkbox" value="discrète ne pose pas de problème"/>
<input name="perceptionTechnicien" type="checkbox" value="discrète ne pose pas de problème"/>
discrète ne pose pas de problème
</label>
</li>
<li>
<label class="checkbox">
<input name="milieux" type="checkbox" value="visible et esthétique"/>
<input name="perceptionTechnicien" type="checkbox" value="visible et esthétique"/>
visible et esthétique
</label>
</li>
<li>
<label class="checkbox">
<input name="milieux" type="checkbox" value="gênante, difficile à gérer"/>
<input name="perceptionTechnicien" type="checkbox" value="gênante, difficile à gérer"/>
gênante, difficile à gérer
</label>
</li>
<li>
<label class="checkbox">
<input name="milieux" type="checkbox" value="envahissante, cause des dégâts"/>
<input name="perceptionTechnicien" type="checkbox" value="envahissante, cause des dégâts"/>
envahissante, cause des dégâts
</label>
</li>
769,8 → 824,8
</div>
</div>
</div>
</form>
</form>
<form id="form-upload" class="form-horizontal" action="<?=$url_base?>saisie?projet=sauvages&amp;service=upload-image"
method="post" enctype="multipart/form-data">
<div class="row-fluid">
927,6 → 982,5
})();
//]]>
</script>
</div>
</body>
</html>
/trunk/widget/modules/saisie/squelettes/florileges/js/florileges.js
488,7 → 488,7
// add the slider to each element
var slider = $( '<div class="slider-holder"><div class="horizontal-slider"></div></div>' ).
insertAfter( el ).find('.horizontal-slider').slider({
insertBefore( el ).find('.horizontal-slider').slider({
min: 1,
max: el.options.length,
range: 'min',
523,7 → 523,7
// if there are too many options so that the text is wider than the width, then hide the text
var lastChild = slider.parent().find('.slider-legend p:last-child');
if (lastChild[0].clientWidth < lastChild[0].scrollWidth) {
slider.parent().find('.slider-legend p').css('text-indent', '200%');
slider.parent().find('.slider-legend p');//.css('text-indent', '200%');
}
});
}
535,14 → 535,29
return value == '' || (/^[0-9]{2}[-\/][0-9]{2}[-\/][0-9]{4}$/.test(value));
},
'Format : jj/mm/aaaa. Date incomplète, utiliser 0, exemple : 00/12/2011.');
$.validator.addMethod(
'chckMilieux',
function(value, element) {
var ok = $('input[name="milieux"]:checked').length > 0 ? true : false;
console.log('Check Milieux : ' + ok);
return ok;
},
'Veuillez sélectionner au moins une case à cocher.');
$.extend($.validator.defaults, {
highlight: function(element) {
$(element).closest('.control-group').removeClass('success').addClass('error');
console.log('KO:'+$(element).attr('name')+' / nbre: '+$(element).length);
},
success: function(element) {
element.text('OK!').addClass('valid')
.closest('.control-group').removeClass('error').addClass('success');
console.log('OK:'+element.before+' / nbre: '+$(element).length);
console.log(element);
element.text('OK!').addClass('valid');
element.closest('.control-group').removeClass('error').addClass('success');
if (element.attr('id') == 'taxon' && $('#taxon').val() != '') {
// Si le taxon n'est pas lié au référentiel, on vide le data associé
if ($('#taxon').data('value') != $('#taxon').val()) {
565,21 → 580,59
email: true},
courriel_confirmation: {
required: true,
equalTo: '#courriel'}
equalTo: '#courriel'},
prenom: {
required: true},
nom: {
required: true},
personneStructure: {
required: true},
personneService: {
required: true}
}
});
$('#form-station').validate({
$('#form-site').validate({
rules: {
station: {
required: true},
latitude : {
required: true,
range: [-90, 90]},
longitude: {
range: [-180, 180]}
required: true,
range: [-180, 180]},
typoUrbaine: {
required: true},
revetementSol: {
required: true},
intensiteGestion: {
required: true},
periodiciteTraitementPhyto: {
required: true},
itineraireGestion: {
required: true}
}
});
$('#form-date').validate({
rules: {
date: {
required: true,
'dateCel' : true},
dateDerniereIntervention: {
required: true}
}
});
$('#form-obs').validate({
rules: {
date: 'dateCel',
'taxon-liste': 'required'
'taxon-liste': {
required: true},
milieux: {
chckMilieux:true},
hauteurPlante: {
required: true,
digits: true},
resistanceTraitementPhyto: {
required: true}
}
});
}
793,6 → 846,7
'image_nom' : getNomsImgsOriginales(),
'image_b64' : getB64ImgsOriginales()
});
console.log($('#liste-obs').data('obsId'+obsNbre));
}
 
function surChangementReferentiel() {
904,10 → 958,11
}
 
function validerFormulaire() {
$observateur = $('#form-observateur').valid();
$station = $('#form-station').valid();
$obs = $('#form-obs').valid();
return ($observateur == true && $station == true && $obs == true) ? true : false;
var observateur = $('#form-observateur').valid(),
station = $('#form-site').valid(),
date = $('#form-date').valid(),
obs = $('#form-obs').valid();
return (observateur == true && station == true && obs == true && date == true) ? true : false;
}
 
function getNomsImgsOriginales() {