139 lines
5.3 KiB
PHP
Executable File
139 lines
5.3 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Vue affichant le formulaire permettant d'ajouter, modifier ou encore supprimer une période d'absence
|
|
* + scripts ajax testant la saisie
|
|
*
|
|
**/
|
|
$header_title=SITE_NOM." >> Période d'absence.";
|
|
$header_robots="noindex,nofollow";
|
|
$body_title="Période d'absence.";
|
|
$ariane_items[0]["txt"]="<li><a href='".PAGE_ABSENCES_LISTE."'>Liste des périodes d'absence.</a></li>";
|
|
$ariane_items[0]["form"]=false;
|
|
$ariane_items[0]["actif"]=false;
|
|
$ariane_items[1]["txt"]="<li>Informations de la période d'absence.</li>";
|
|
$ariane_items[1]["form"]=true;
|
|
$ariane_items[1]["actif"]=true;
|
|
$msg_infos[0]="Vous pouvez ici enregistrer les informations d'une période d'abence : date de début & de fin et sélection des abonnements pour lesquels vous ne souhaitez plus recevoir d'email.";
|
|
if((empty($_POST["designation"]))&&(empty($page[2])))//saisie d'une nouvelle période
|
|
{
|
|
$date_exemple=date("d/m/Y");
|
|
$form["nom"]="Nouvelle période d'absence.";
|
|
$form["champs"]="<form method='post' id='maj_periode' action='".PAGE_ABSENCE_MAJ."' role='form' class='form-horizontal'>
|
|
<div class='form-group'>
|
|
<label for='designation' class='col-sm-3 control-label'>Désignation :</label>
|
|
<div class='col-sm-9'><input class='form-control' type='text' maxlength='".AGENDA_MAX_DESIGNATION."' name='designation' id='designation' value=\"".htmlspecialchars($form["designation"])."\" required></div>
|
|
<div class='col-sm-offset-3 col-sm-9'><p class='help-block'><b>Obligatoire</b>.</p></div>
|
|
</div>
|
|
<div class='form-group'>
|
|
<label for='time_debut' class='col-sm-3 control-label'>Date de début :</label>
|
|
<div class='col-sm-9'><input class='form-control' type='text' name='time_debut' id='time_debut' value=\"".htmlspecialchars($form["time_debut"])."\" required></div>
|
|
<div class='col-sm-offset-3 col-sm-9'><p class='help-block'><b>Obligatoire</b>. Le jour où vos abonnements s'arrêteront. Exemple : $date_exemple.</p></div>
|
|
</div>
|
|
<div class='form-group'>
|
|
<label for='time_fin' class='col-sm-3 control-label'>Date de fin :</label>
|
|
<div class='col-sm-9'><input class='form-control' type='text' name='time_fin' id='time_fin' value=\"".htmlspecialchars($form["time_fin"])."\" required></div>
|
|
<div class='col-sm-offset-3 col-sm-9'><p class='help-block'><b>Obligatoire</b>. Le jour où vos abonnements reprendront. Date forcément postérieure à celle de début.</p></div>
|
|
</div>";
|
|
if(!empty($abos))
|
|
{
|
|
$form["champs"].="<div class='form-group'><div class='col-sm-offset-2 col-sm-9'><label for='abo_concerne[]'>Durant cette période, je ne souhaite plus recevoir les actualités de :</label><ul>";
|
|
foreach($abos as $abo_infos)
|
|
$form["champs"].="<li><input type='checkbox' name='abo_concerne[]' value='".$abo_infos["id_abonnement"]."' checked='checked'> <b>".$abo_infos["designation"]."</b></li>";
|
|
$form["champs"].="</ul></div></div>";
|
|
}
|
|
$form["champs"].="<div id='msg_periode'></div>
|
|
<div class='form-group'><div class='col-sm-offset-3 col-sm-9'><button type='submit' class='btn btn-success btn-lg' id='btn_submit1'>Enregistrer.</button></div></div>
|
|
</form>";
|
|
}
|
|
//le code pour ajax
|
|
ob_start();
|
|
?>
|
|
<script src="<?=SITE_URL;?>/themes/seb/assets/js/pickadate/picker.js"></script>
|
|
<script src="<?=SITE_URL;?>/themes/seb/assets/js/pickadate/picker.date.js"></script>
|
|
<script src="<?=SITE_URL;?>/themes/seb/assets/js/pickadate/picker.time.js"></script>
|
|
<script src="<?=SITE_URL;?>/themes/seb/assets/js/pickadate/legacy.js"></script>
|
|
<script src="<?=SITE_URL;?>/themes/seb/assets/js/pickadate/fr_FR.js"></script>
|
|
<script>
|
|
function is_int(value)
|
|
{//source : http://www.inventpartners.com/javascript_is_int
|
|
if((parseFloat(value)==parseInt(value))&&!isNaN(value))
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
function periode_affiche(id_periode)
|
|
{
|
|
if(id_periode!==0)
|
|
{
|
|
$.ajax(
|
|
{
|
|
url:'<?=SITE_URL;?>/JS/compte_absences_affiche',
|
|
type:'GET',
|
|
data:'id_periode='+id_periode+'&ajax=1',
|
|
success:function(code)
|
|
{
|
|
if(code!=="")
|
|
{
|
|
$('#form').html(code);
|
|
$("#time_debut").pickadate();
|
|
$("#time_fin").pickadate();
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
$(document).ready(function()
|
|
{
|
|
$("#time_debut").pickadate();
|
|
$("#time_fin").pickadate();
|
|
$('#form').on('submit','#maj_periode', function(e)
|
|
{
|
|
e.preventDefault();
|
|
var $this=$(this);
|
|
var designation=$('#designation').val();
|
|
var time_debut=$('#time_debut').val();
|
|
var time_fin=$('#time_fin').val();
|
|
if((designation=='')||(time_debut=='')||(time_fin==''))
|
|
{
|
|
$('#msg_periode').html('<?php echo str_replace("'","\"",get_html_alerte_msg((array) ERREUR_UTILISA_CHAMPS_ABSENTS));?>');
|
|
}
|
|
else
|
|
{
|
|
$.ajax(
|
|
{
|
|
url:'<?=SITE_URL;?>/JS/compte_absences_infos_tests',
|
|
type:'POST',
|
|
data:$this.serialize()+'&ajax=1',
|
|
success:function(code)
|
|
{
|
|
if(code!=="")
|
|
{
|
|
if(is_int(code))
|
|
{
|
|
periode_affiche(code);
|
|
var x = setTimeout(function() { $('#msg_periode').html('<?php echo str_replace("'","\"",get_html_alerte_msg((array) MSG_UTILISA_MAJ_INFOS_VALID,"alert-success"));?>'); },500);
|
|
}
|
|
else if(code=="<?php echo str_replace("\"","'",MSG_UTILISA_MAJ_SUPPR_VALID);?>")
|
|
{
|
|
window.location="<?=PAGE_ABSENCES_LISTE;?>";
|
|
}
|
|
else
|
|
{
|
|
$('#msg_periode').html(code);
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
});
|
|
});
|
|
</script>
|
|
<?php
|
|
$footer_JS=ob_get_contents();
|
|
ob_end_clean();
|
|
require(TEMPLATE_REP."/page.php");
|