+
{{:input type="date" name="return_date" label="Date de retour" default=$return_date}}
-
+
{{/if}}
@@ -327,9 +329,17 @@
{{:admin_footer}}
+
diff --git a/movements/modify_movement.html b/movements/modify_movement.html
index 4738698..82c6e1f 100644
--- a/movements/modify_movement.html
+++ b/movements/modify_movement.html
@@ -15,7 +15,7 @@
{{/load}}
{{* récupérer la config des entrées/sorties *}}
-{{:include file="../_get_config.html" keep="config, directions, loan_duration"}}
+{{:include file="../_get_config.html" keep="config, directions"}}
{{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt_new.direction:$mvt_new.operation}}
{{if $mvt_new.direction == "input"}}
@@ -59,11 +59,11 @@
-------------------- Traiter la saisie --------------------
*}}
{{#form on="save"}}
+ {{* vérifier la validité de la saisie *}}
{{if $_POST.amount <= 0}}
{{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.amount}}
{{/if}}
- {{* vérifier validité des données *}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
@@ -86,8 +86,12 @@
{{:assign var="mvt_new.amount" value=$_POST.amount}}
{{:assign var="mvt_new.date" value=$_POST.date|parse_date}}
{{:assign var="mvt_new.comment" value=$_POST.comment}}
- {{if $_POST.set_return_date != null}}
- {{:assign return_date=$_POST.return_date}}
+
+ {{if $_POST.return_date != null}}
+ {{:assign return_date=$_POST.return_date|parse_date}}
+ {{if $return_date < $_POST.date|parse_date}}
+ {{:error message="La date de retour doit être postérieure à la date de sortie !"}}
+ {{/if}}
{{else}}
{{:assign return_date=null}}
{{/if}}
@@ -222,7 +226,7 @@
user=$user_id
storage=$_POST.storage
transactions=$transactions
- return_date=$return_date|parse_date
+ return_date=$return_date
}}
{{if $_GET.from|substr:0:1 == "l"}}
@@ -250,9 +254,10 @@
{{else}}
{{:assign mvt_label="sortie"}}
{{/if}}
-{{:admin_header title="Modifier une %s"|args:$mvt_label custom_css="./../style.css" current="module_equipment"}}
+{{:admin_header title="Modifier une %s"|args:$mvt_label custom_css="./../style.css" current="module_equipment"}}
{{:form_errors}}
+
{{*
-------------------- Préparer la saisie --------------------
*}}
@@ -315,30 +320,26 @@
max=1
}}
{{/if}}
- {{if $mvt_new.direction == "input"}}
- {{if $storage != null}}
- {{:input type="select" name="storage" label="Lieu de stockage" default=$mvt_new.storage default_empty="— Aucun —" options=$storage required=false}}
- {{/if}}
+ {{if $mvt_new.direction == "input" && $storage != null}}
+ {{:input type="select" name="storage" label="Lieu de stockage" default=$mvt_new.storage default_empty="— Aucun —" options=$storage required=false}}
{{/if}}
{{if $type_mvt != "retour"}}
- {{:input type="list" name="transactions" default=$mvt_new.transactions label="Écritures liées" target="!acc/transactions/selector.php" multiple=true help="par exemple écriture avec facture"}}
+ {{:input type="list" name="transactions" label="Écritures liées" default=$mvt_new.transactions target="!acc/transactions/selector.php" multiple=true help="par exemple écriture avec facture"}}
{{/if}}
{{:input type="textarea" name="comment" label="Remarques" cols="40", rows="3" required=false default=$mvt_new.comment}}
- {{if $mvt_new.direction == "output" && $type_mvt == "temporaire"}}
+ {{if $mvt_new.direction == "output"}}
{{if $mvt_new.return_date != null}}
- {{:assign checked="checked"}}
- {{:assign visibility="visible"}}
{{:assign return_date=$mvt_new.return_date}}
{{else}}
- {{:assign visibility="hidden"}}
- {{:assign ts_sortie=$mvt_new.date|strtotime}}
- {{:assign ts_retour="%d+%d*(60*60*24)"|math:$ts_sortie:$loan_duration}}
- {{:assign return_date=$ts_retour|date_short}}
+ {{if $module.config.loan_duration != null && $module.config.loan_duration > 0}}
+ {{:assign ts_sortie=$mvt_new.date|strtotime}}
+ {{:assign ts_retour="%d+%d*(60*60*24)"|math:$ts_sortie:$module.config.loan_duration}}
+ {{:assign return_date=$ts_retour|date_short}}
+ {{/if}}
{{/if}}
- {{:input id="set_return_date" type="checkbox" value=1 name="set_return_date" label="Fixer une date de retour" help="Cocher pour fixer une date de retour" checked="%s"|args:$checked}}
-
+
{{:input type="date" name="return_date" label="Date de retour" default=$return_date}}
-
+
{{/if}}
@@ -353,9 +354,17 @@
{{:admin_footer}}
+
diff --git a/movements/output_equipment.html b/movements/output_equipment.html
index 7043184..7a1958a 100644
--- a/movements/output_equipment.html
+++ b/movements/output_equipment.html
@@ -9,7 +9,7 @@
*}}
{{* récupérer la config des entrées/sorties *}}
-{{:include file="../_get_config.html" keep="config, loan_duration"}}
+{{:include file="../_get_config.html" keep="config"}}
{{* types de sorties *}}
{{#foreach from=$config.output_nature key=key}}
@@ -33,22 +33,27 @@
{{* Traiter l'envoi du formulaire *}}
{{#form on="save"}}
+ {{* vérifier la validité de la saisie *}}
+
{{* interdire date dans le futur *}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
- {{* vérifier les infos saisies *}}
{{if $_POST.operation == ""}}
{{:error message="Vous devez choisir un type de sortie"}}
{{/if}}
{{:assign var="type_mvt" from="config.output_nature.%s.type"|args:$_POST.operation}}
- {{if $type_mvt != "temporaire" && $_POST.set_return_date != null}}
+ {{if $type_mvt != "temporaire" && $_POST.return_date != null}}
{{:error message="On ne peut associer une date de retour qu'à une sortie temporaire"}}
{{/if}}
- {{if $_POST.set_return_date != null}}
- {{:assign return_date=$_POST.return_date}}
+
+ {{if $_POST.return_date != null}}
+ {{:assign return_date=$_POST.return_date|parse_date}}
+ {{if $return_date < $_POST.date|parse_date}}
+ {{:error message="La date de retour doit être postérieure à la date de sortie !"}}
+ {{/if}}
{{else}}
{{:assign return_date=null}}
{{/if}}
@@ -169,7 +174,7 @@
date=$_POST.date|parse_date
comment=$_POST.remarques|trim
user=$user.id
- return_date=$return_date|parse_date
+ return_date=$return_date
transactions=$transactions
}}
{{:redirect force="../equipment_history.html?ok=1&key=%s&prop=1&msg=sortie"|args:$_GET.key}}
@@ -180,13 +185,16 @@
{{* barre de navigation *}}
{{:include file="../_nav.html" current="sorties"}}
{{/if}}
+{{:form_errors}}
{{#load key=$equipment.category assign="category"}}{{/load}}
{{:assign dispo="%d-%d"|math:$equipment.stock:$equipment.out}}
{{if $dispo > 0}}
- {{:assign ts_retour="%d+%d*(60*60*24)"|math:$now:$loan_duration}}
- {{:assign date_retour=$ts_retour|date_short}}
+ {{if $module.config.loan_duration != null && $module.config.loan_duration > 0}}
+ {{:assign ts_retour="%d+%d*(60*60*24)"|math:$now:$module.config.loan_duration}}
+ {{:assign date_retour=$ts_retour|date_short}}
+ {{/if}}
{{* formulaire de sortie de matériel *}}