204 lines
8.3 KiB
Smarty
204 lines
8.3 KiB
Smarty
<!-- nav bar -->
|
|
{include file="%s/templates/_nav.tpl"|args:$plugin_root current_nav="config"}
|
|
|
|
<h2>Configuration</h2>
|
|
|
|
{if $ok && !$form->hasErrors()}
|
|
<p class="block confirm">
|
|
La configuration a bien été enregistrée.
|
|
</p>
|
|
{/if}
|
|
|
|
{form_errors}
|
|
|
|
<form method="post" action="{$self_url}" enctype="multipart/form-data">
|
|
<fieldset>
|
|
<dl class="config">
|
|
<dt><label>Objet (but) de l'association</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
|
|
{input type="textarea" name="objet_asso" source=$plugin.config label="" required="required" cols="100" rows="3" maxlength=300}
|
|
</dl>
|
|
|
|
<dl class="config">
|
|
<dt><label>Articles du code général des impôts concernés par l'association : </label>
|
|
<b title="Champ obligatoire">(obligatoire ; sélectionnez tous les articles qui s'appliquent à
|
|
l'association)</b>
|
|
</dt>
|
|
<div id="articles_cgi">
|
|
{foreach from=$plugin_config->articlesCGI key="key" item="article"}
|
|
{*
|
|
À VÉRIFIER : {input : checked ne fonctionne pas si l'attribut name est un tableau...
|
|
{input type="checkbox" name="articlesCGI[]" value=$key label=$article.titre}
|
|
*}
|
|
<div class="article">
|
|
<input type="checkbox" name="articlesCGI[]" id="article_{$key}" value="{$key}" class="choix"
|
|
{if $article.valeur == 1}checked{/if} />
|
|
<label for="article_{$key}">Article {$article.titre}</label>
|
|
</div>
|
|
{/foreach}
|
|
</div>
|
|
</dl>
|
|
|
|
|
|
<dl class="config">
|
|
<dt><label>Taux de réduction applicables : </label>
|
|
<b title="Champ obligatoire">(obligatoire ; sélectionnez tous les taux qui s'appliquent à
|
|
l'association)</b>
|
|
</dt>
|
|
{foreach from=$plugin_config->reduction key="key" item="taux"}
|
|
<div id="taux_reduction">
|
|
<input type="checkbox" name="tauxReduction[]" id="taux_{$key}" value="{$key}" class="choix"
|
|
{if $taux.valeur == 1}checked{/if} />
|
|
<label for="taux_{$key}">Taux {$taux.taux}, ligne {$taux.ligne} de la déclaration
|
|
{if $taux.remarque !== ""}({$taux.remarque})</label>{/if}
|
|
</div>
|
|
{/foreach}
|
|
</dl>
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
<legend>Nom, fonction et signature du responsable</legend>
|
|
<div id="config_nom_fonction">
|
|
|
|
{* Nom du responsable *}
|
|
<dl class="config">
|
|
{input type="text" name="nom_responsable" source=$plugin.config label="Nom" help="du responsable" required=true maxlength=50}
|
|
</dl>
|
|
|
|
{* Fonction du responsable *}
|
|
<dl class="config">
|
|
{input type="text" name="fonction_responsable" source=$plugin.config label="Fonction" help="du responsable" maxlength=50}
|
|
</dl>
|
|
|
|
{* Ville avant signature *}
|
|
<dl class="config">
|
|
{input type="text" name="ville_asso" source=$plugin.config label="Ville" help="précède la date sur le formulaire" maxlength=50}
|
|
</dl>
|
|
</div>
|
|
|
|
{* Signature *}
|
|
<dl class="config">
|
|
<dt><label>Signature</label></dt>
|
|
<p>L'image de la signature doit être d'une taille « raisonnable » et avoir un fond transparent</p>
|
|
{if $plugin_config.signature != ''}
|
|
<img id="signature" src="/{$plugin_config.signature}" />
|
|
{else}
|
|
<img id="signature" src="{$default_signature}" />
|
|
{/if}
|
|
{linkbutton shape="upload" label="Changer de signature" target="_dialog" href="upload.php?p=%s"|args:$path}
|
|
</dl>
|
|
</fieldset>
|
|
|
|
{* Numérotation des reçus *}
|
|
<fieldset>
|
|
<legend>Numérotation des reçus</legend>
|
|
<details>
|
|
<summary class="help block">
|
|
Sélectionner les éléments qui doivent faire partie du numéro de reçu
|
|
</summary>
|
|
<div class="help block">
|
|
<ul>
|
|
<li>Préfixe : texte qui sera imprimé tel quel au début du numéro (ex : sigle de l'association) ; facultatif</li>
|
|
<li>Année fiscale : numéro de l'année fiscale (ex : 2022) ; facultatif</li>
|
|
<ul>
|
|
Sélectionner au moins un des deux numéros suivants
|
|
<li>Numéro de membre</li>
|
|
<li>Numéro séquentiel (1, 2, ...) : numéro d'ordre du reçu</li>
|
|
</ul>
|
|
<li>Valeur initiale : si vous avez choisi un numéro séquentiel, indiquez le numéro du premier reçu</li>
|
|
</ul>
|
|
</div>
|
|
</details>
|
|
<div id="numero_recus">
|
|
|
|
{* Préfixe *}
|
|
<dl class="config">
|
|
{input type="text" name="prefixe" source=$numerotation label="Préfixe" maxlength=20}
|
|
</dl>
|
|
|
|
{* Autres éléments de la numérotation *}
|
|
<dl class="config">
|
|
{input type="checkbox" name="annee" source=$numerotation label="Année fiscale" value=1}
|
|
</dl>
|
|
|
|
<dl class="config">
|
|
{input type="checkbox" name="membre" source=$numerotation label="N° de membre" value=1}
|
|
</dl>
|
|
|
|
<dl class="config">
|
|
{input type="checkbox" name="sequentiel" source=$numerotation label="N° séquentiel" value=1}
|
|
</dl>
|
|
|
|
<dl class="config">
|
|
{input type="number" name="valeur_init" source=$numerotation label="Valeur initiale"}
|
|
</dl>
|
|
</div>
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
<legend>Autres informations</legend>
|
|
|
|
{* Adresse de courriel *}
|
|
<div id="courriel">
|
|
<dl class="config">
|
|
<dt><label>Adresse de courriel</label></dt>
|
|
{if $plugin.config.imprimerCourriel}
|
|
{input type="checkbox" name="imprimerCourriel" value="1" checked="checked" label="Imprimer" help="Cocher pour imprimer l'adresse de courriel des membres sur les reçus"}
|
|
{else}
|
|
{input type="checkbox" name="imprimerCourriel" value="1" label="Imprimer" help="Cocher pour imprimer l'adresse de courriel des membres sur les reçus"}
|
|
{/if}
|
|
</dl>
|
|
</div>
|
|
|
|
{* les champs de nom *}
|
|
<?php $nbChamps = count($champsNom); ?>
|
|
<dl class="config" {if $nbChamps == 1}hidden{/if}>
|
|
<dt><label>Champs nom et prénom</label></dt>
|
|
<p>Sélectionnez et classez le(s) champ(s) qui représente(nt) le nom et le prénom du donateur</p>
|
|
|
|
<div>
|
|
{foreach from=$champsNom key="nom" item="champ"}
|
|
<div class="champnom">
|
|
<div class="actions"></div>
|
|
<div class="infos">
|
|
<input type="checkbox" name="champsNom[]" id="champ_{$nom}" value={$nom} class="choix"
|
|
{if $nbChamps == 1 || $champ.position != 0}checked{/if} />
|
|
<label for="champ_{$nom}">{$champ.titre}</label>
|
|
</div>
|
|
</div>
|
|
{/foreach}
|
|
</div>
|
|
</dl>
|
|
</fieldset>
|
|
|
|
<h3 class="warning">N'oubliez pas d'enregistrer, sinon les modifications ne seront pas prises en compte !</h3>
|
|
|
|
<p class="submit">
|
|
{csrf_field key="recusfiscaux_config"}
|
|
{button type="submit" name="save" label="Enregistrer" shape="right" class="main" onclick="return verifierConfig(this.form, articles_cgi, taux_reduction)"}
|
|
</p>
|
|
</form>
|
|
|
|
{literal}
|
|
<script type="text/javascript">
|
|
(function() {
|
|
var lesDivs = document.querySelectorAll('.actions');
|
|
for (i = 0; i < lesDivs.length; ++i) {
|
|
var up = document.createElement('a');
|
|
up.className = 'icn up';
|
|
up.innerHTML = '↑';
|
|
up.title = 'Déplacer vers le haut';
|
|
up.onclick = function(e) {
|
|
var field = this.parentNode.parentNode;
|
|
var p = field.previousSibling;
|
|
while (p != null && p.nodeType == 3) { p = p.previousSibling; }
|
|
field.parentNode.insertBefore(field, p);
|
|
return false;
|
|
};
|
|
lesDivs[i].appendChild(up);
|
|
}
|
|
}());
|
|
</script>
|
|
{/literal}
|
|
{* scripts divers *}
|
|
<script src="script.js"></script>
|