diff --git a/_nav.html b/_nav.html index e2e6170..dfdf9ef 100644 --- a/_nav.html +++ b/_nav.html @@ -60,7 +60,9 @@ {{/if}} diff --git a/config.html b/config.html index f5bb3ec..9927c5e 100644 --- a/config.html +++ b/config.html @@ -12,21 +12,14 @@ {{/if}} {{* lecture config (défaut ou enregistrée) *}} -{{:include file="./_get_config.html" keep="config_defaut, config, directions"}} - -{{* interdire la modification et la suppression des types de mouvement prédéfinis *}} -{{#foreach from=$directions key="direction"}} - {{:assign var="nature" from="config_defaut.%ss"|args:$direction}} - {{#foreach from=$nature item="elem"}} - {{:assign var="default_keys." value=$key}} - {{/foreach}} -{{/foreach}} +{{:include file="./_get_config.html" keep="config, directions"}} {{#foreach from=$directions key="direction" item="item"}} {{* types de mouvements qui ne peuvent être supprimés *}} {{#load type="movement" where="$$.direction='%s'"|args:$direction group="$$.operation"}} - {{:assign var="locked." value=$operation}} + {{:assign var="op_label" from="config.%s_nature.%s.label"|args:$direction:$operation}} + {{:assign var="locked_%ss."|args:$direction value=$op_label}} {{/load}}

{{$item|ucfirst}}s

@@ -45,12 +38,11 @@ {{$label}} {{$type}} - {{if ! $default_keys|has:$key && ! $locked|has:$key}} + {{:assign var="locked" from="locked_%ss"|args:$direction}} + {{if ! $locked|has:$label}} {{:linkbutton label="Supprimer" shape="delete" href="config/delete_movement_type.html?dir=%s&op_key=%s"|args:$direction:$key target="_dialog"}} {{/if}} - {{if ! $default_keys|has:$key}} {{:linkbutton label="Modifier" shape="edit" href="config/modify_movement_type.html?dir=%s&op_key=%s"|args:$direction:$key target="_dialog"}} - {{/if}} {{/foreach}} diff --git a/config/add_movement_type.html b/config/add_movement_type.html index c5e827f..06881dc 100644 --- a/config/add_movement_type.html +++ b/config/add_movement_type.html @@ -12,28 +12,18 @@ {{* lecture config *}} {{:include file="../_get_config.html" keep="config, directions, config_defaut"}} -{{if ! $directions|has_key:$_GET.dir}} - {{:error message="Direction « %s » inconnue !"|args:$_GET.dir}} -{{/if}} - {{#form on="save"}} - {{if $_POST.output_fields.type == "temporaire"}} - {{* vérifier si le tarif a été choisi *}} - {{if $_POST.tarif == null}} - {{:error message="Vous n'avez pas choisi le tarif"}} - {{/if}} - {{/if}} - {{* vérifier s'il existe un libellé de même nom dans la même direction *}} {{#foreach from=$directions key="direction"}} {{:assign var="nature" from="config.%s_nature"|args:$direction}} - {{#foreach from=$nature key="key" item="elem"}} + {{#foreach from=$nature key="key"}} {{:assign var="fields" from="_POST.%s_fields"|args:$_GET.dir}} - {{if $_GET.dir == $direction && $fields.label|trim|tolower == $elem.label|trim|tolower}} - {{:error message="Le libellé « %s » est déjà présent"|args:$fields.label}} + {{if $_GET.dir == $direction && $label|trim|tolower == $fields.label|trim|tolower}} + {{:error message="Ce libellé est déjà présent"}} {{/if}} - {{:assign var="%s_nature"|args:$direction value=$elem}} {{:assign var="%s_nature.key"|args:$direction value=$key}} + {{:assign var="%s_nature.label"|args:$direction value=$label}} + {{:assign var="%s_nature.type"|args:$direction value=$type}} {{:assign var="%s_natures."|args:$direction from="%s_nature"|args:$direction}} {{/foreach}} @@ -44,13 +34,6 @@ {{:assign var="%s_nature.key"|args:$direction value=""|uuid}} {{:assign var="%s_nature.label"|args:$direction value=$newlabel}} {{:assign var="%s_nature.type"|args:$direction from="_POST.%s_fields.type"|args:$direction}} - {{if $_POST.output_fields != null}} - {{if $_POST.output_fields.type == "temporaire"}} - {{:assign var="output_nature.fee" value=$_POST.tarif}} - {{else}} - {{:assign var="output_nature.fee" value=null}} - {{/if}} - {{/if}} {{:assign var="%s_natures."|args:$direction from="%s_nature"|args:$direction}} {{/if}} {{/foreach}} @@ -121,28 +104,28 @@
Type de sortie
- {{:input type="select" - label="Type de sortie" - name="output_fields[type]" - options=$output_types - default=$type - required=true - default_empty="— Choisir un type —"}} - {{:input - type="text" - label="Libellé de la sortie" - name="output_fields[label]" + + {{:input type="select" + label="Type de sortie" + name="output_fields[type]" + options=$output_types + default=$type + required=true + default_empty="— Choisir un type —"}} + + + {{:input + type="text" + label="Libellé de la sortie" + name="output_fields[label]" required=true}} -
- {{:input type="radio-btn" name="tarif" value="gratuit" label="Gratuit" required=true prefix_title="Tarification"}} - {{:input type="radio-btn" name="tarif" value="payant" label="Payant" required=true}} -
+

Signification du type de sortie

@@ -152,23 +135,3 @@

{{/if}} - - diff --git a/config/delete_movement_type.html b/config/delete_movement_type.html index 801f821..4f0ddaa 100644 --- a/config/delete_movement_type.html +++ b/config/delete_movement_type.html @@ -10,28 +10,16 @@ {{* lecture config (défaut ou enregistrée) *}} -{{:include file="../_get_config.html" keep="config_defaut, config, directions"}} - -{{if ! $directions|has_key:$_GET.dir}} - {{:error message="Direction « %s » inconnue !"|args:$_GET.dir}} -{{/if}} - -{{* interdire la suppression des types de mouvement prédéfinis *}} -{{:assign var="nature" from="config_defaut.%ss"|args:$_GET.dir}} -{{#foreach from=$nature item="elem"}} - {{:assign var="default_keys." value=$key}} -{{/foreach}} -{{if $default_keys|has:$_GET.op_key}} - {{:error message="Ce type de mouvement ne peut être supprimé"}} -{{/if}} +{{:include file="../_get_config.html" keep="config, directions"}} {{#form on="delete"}} {{#foreach from=$directions key="direction"}} {{:assign var="nature" from="config.%s_nature"|args:$direction}} - {{#foreach from=$nature key="key" item="elem"}} + {{#foreach from=$nature key="key"}} {{if $_GET.dir == $direction && $key != $_GET.op_key || $_GET.dir != $direction}} - {{:assign var="%s_nature"|args:$direction value=$elem}} {{:assign var="%s_nature.key"|args:$direction value=$key}} + {{:assign var="%s_nature.label"|args:$direction value=$label}} + {{:assign var="%s_nature.type"|args:$direction value=$type}} {{:assign var="%s_natures."|args:$direction from="%s_nature"|args:$direction}} {{/if}} {{/foreach}} diff --git a/config/misc.html b/config/misc.html index f58c655..d49ef65 100644 --- a/config/misc.html +++ b/config/misc.html @@ -2,53 +2,27 @@ {{#restrict block=true section="accounting" level="write"}}{{/restrict}} -{{* lecture config (défaut ou enregistrée) *}} -{{:include file="../_get_config.html" keep="loan_duration"}} +{{:admin_header title="Configuration" current="module_equipment"}} {{#form on="save"}} - {{* vérifier si les boutons ont été cochés *}} - {{#foreach from=$module.config.output_nature item="elem"}} - {{if $elem.type == 'temporaire'}} - {{if $_POST|has_key:$elem.key}} - {{:assign var="fee" from="_POST.%s"|args:$elem.key}} - {{:assign var="elem" key=$elem.key label=$elem.label type=$elem.type fee=$fee}} - {{else}} - {{:error message="Vous n'avez pas fait de choix pour la sortie « %s »"|args:$elem.label}} - {{/if}} - {{/if}} - {{:assign var="output_nature." value=$elem}} - {{/foreach}} - {{:save - key="config" - output_nature=$output_nature - loan_duration=$_POST.loan_duration + key="config" + loan_duration=$_POST.loan_duration }} - {{/form}} +{{* barre de navigation *}} {{:include file="../_nav.html" current="config" subcurrent="divers"}} -{{:admin_header title="Configuration" current="module_equipment"}} -{{:form_errors}} {{if $_GET.ok}}

Configuration enregistrée.

{{/if}} +{{* lecture config (défaut ou enregistrée) *}} +{{:include file="../_get_config.html" keep="loan_duration"}} +
-
- Sorties temporaires -

Pour chaque sortie temporaire, indiquer si elle est gratuite ou payante

-
- {{#foreach from=$module.config.output_nature}} - {{if $type == 'temporaire'}} - {{:input type="radio-btn" name=$key value="gratuit" label="Gratuit" required=true prefix_title=$label default=$fee}} - {{:input type="radio-btn" name=$key value="payant" label="Payant" required=true default=$fee}} - {{/if}} - {{/foreach}} -
-
-
+
Autres paramètres
{{:input type="number" name="loan_duration" label="Durée de prêt par défaut" min=1 required=true default=$loan_duration help="Durée en nombre de jours"}} diff --git a/config/modify_movement_type.html b/config/modify_movement_type.html index 5d99d4d..89d9970 100644 --- a/config/modify_movement_type.html +++ b/config/modify_movement_type.html @@ -11,34 +11,21 @@ {{* lecture config (défaut ou enregistrée) *}} {{:include file="../_get_config.html" keep="config, directions"}} -{{if ! $directions|has_key:$_GET.dir}} - {{:error message="Direction « %s » inconnue !"|args:$_GET.dir}} -{{/if}} - -{{* interdire la modification des types de mouvement prédéfinis *}} -{{:assign var="nature" from="config_defaut.%ss"|args:$_GET.dir}} -{{#foreach from=$nature item="elem"}} - {{:assign var="default_keys." value=$key}} -{{/foreach}} -{{if $default_keys|has:$_GET.op_key}} - {{:error message="Ce type de mouvement ne peut être modifié"}} -{{/if}} - {{#form on="save"}} {{#foreach from=$directions key="direction"}} {{:assign var="nature" from="config.%s_nature"|args:$direction}} - {{#foreach from=$nature key="key" item="elem"}} - {{if $_GET.dir == $direction && $_POST.name|trim|tolower == $elem.label|trim|tolower}} - {{:error message="Le libellé « %s » est déjà présent"|args:$_POST.name}} - {{/if}} - {{if $_GET.dir == $direction && $key == $_GET.op_key}} - {{:assign label=$_POST.name|trim}} - {{else}} - {{:assign label=$elem.label}} - {{/if}} - {{:assign var="%s_nature"|args:$direction value=$elem}} - {{:assign var="%s_nature.label"|args:$direction value=$label}} + {{#foreach from=$nature key="key"}} {{:assign var="%s_nature.key"|args:$direction value=$key}} + {{if $_GET.dir == $direction}} + {{if $key == $_GET.op_key}} + {{:assign var="%s_nature.label"|args:$direction value=$_POST.name|trim}} + {{else}} + {{:assign var="%s_nature.label"|args:$direction value=$label}} + {{/if}} + {{else}} + {{:assign var="%s_nature.label"|args:$direction value=$label}} + {{/if}} + {{:assign var="%s_nature.type"|args:$direction value=$type}} {{:assign var="%s_natures."|args:$direction from="%s_nature"|args:$direction}} {{/foreach}} {{/foreach}} diff --git a/movements/output_equipment.html b/movements/output_equipment.html index e5f0a8a..95ac3cd 100644 --- a/movements/output_equipment.html +++ b/movements/output_equipment.html @@ -5,7 +5,6 @@ {{* paramètres : - key : clé du matériel à sortir - - output_type : loan (prêt), rent (location), rien (cas général) *}} {{* récupérer la config des entrées/sorties *}} @@ -13,17 +12,7 @@ {{* types de sorties *}} {{#foreach from=$config.output_nature key=key}} - {{if $type == 'retour'}} - {{:continue}} - {{/if}} - {{if $type == 'temporaire' && $fee == 'payant'}} - {{:assign var="paid_keys." value=$key}} - {{/if}} - {{if $_GET.output_type == null}} - {{:assign var="output_labels.%s"|args:$key value=$label}} - {{elseif $type == 'temporaire' && $_GET.output_type == "loan" && $fee != 'payant'}} - {{:assign var="output_labels.%s"|args:$key value=$label}} - {{elseif $type == 'temporaire' && $_GET.output_type == "rent" && $fee == 'payant'}} + {{if $type != 'retour'}} {{:assign var="output_labels.%s"|args:$key value=$label}} {{/if}} {{/foreach}} @@ -211,36 +200,19 @@ {{/if}} {{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}} {{:input type="number" name="amount" label="Quantité" required=true default=1 min=1 max=$dispo}} -
- {{if $_GET.output_type == null || $_GET.output_type == "rent"}} - {{:input - type="list" - name="user" - label="Membre destinataire" - target="!users/selector.php" - multiple=true - max=1 - required=true - }} - {{/if}} -
Informations facultatives
-
- {{if $_GET.output_type != "rent"}} - {{:input - type="list" - name="user" - label="Membre destinataire" - target="!users/selector.php" - multiple=true - max=1 - }} - {{/if}} -
+ {{:input + type="list" + name="user" + label="Membre destinataire" + target="!users/selector.php" + multiple=true + max=1 + }} {{:input type="list" name="transactions" label="Écritures liées" target="!acc/transactions/selector.php" multiple=true help="par exemple écriture avec facture"}} {{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}} {{: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"}} @@ -262,10 +234,7 @@ {{:admin_footer}} -