Normalisation attribut (Utils.php) ; ajout onglet Configuration ; préparation choix méthode de génération de reçus
FossilOrigin-Name: 08d84642c176039d5b91135007ba419f5cae36eca6445b55d0ed47b7db362df9
This commit is contained in:
parent
fa590c0d67
commit
a59923348f
@ -1,2 +1,8 @@
|
|||||||
{
|
{
|
||||||
|
"auteur" : "jce",
|
||||||
|
"articlesCGI" : [
|
||||||
|
"Article 200",
|
||||||
|
"Article 228 bis",
|
||||||
|
"Article 978"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
nom="Reçus fiscaux"
|
nom="Reçus fiscaux"
|
||||||
description="Génération de reçus fiscaux pour les dons des membres"
|
description="Génération de reçus fiscaux pour les dons des membres"
|
||||||
auteur="jce"
|
auteur="jce"
|
||||||
url=""
|
url="https://git.roflcopter.fr/lesanges/recus-fiscaux-garradin"
|
||||||
version="0.1"
|
version="0.1"
|
||||||
menu=1
|
menu=1
|
||||||
config=0
|
config=1
|
||||||
min_version="1.1"
|
min_version="1.1"
|
||||||
|
@ -14,7 +14,7 @@ class Utils
|
|||||||
{
|
{
|
||||||
return DB::getInstance()->get(
|
return DB::getInstance()->get(
|
||||||
"SELECT
|
"SELECT
|
||||||
id,
|
id as idActivite,
|
||||||
label,
|
label,
|
||||||
description
|
description
|
||||||
FROM services
|
FROM services
|
||||||
@ -47,9 +47,9 @@ class Utils
|
|||||||
{
|
{
|
||||||
return DB::getInstance()->get(
|
return DB::getInstance()->get(
|
||||||
"SELECT
|
"SELECT
|
||||||
services.id as idService,
|
services.id as idActivite,
|
||||||
services.label as titreService,
|
services.label as titreActivite,
|
||||||
services.description as descService,
|
services.description as descActivite,
|
||||||
services_fees.id as idTarif,
|
services_fees.id as idTarif,
|
||||||
services_fees.label as titreTarif,
|
services_fees.label as titreTarif,
|
||||||
services_fees.description as descTarif
|
services_fees.description as descTarif
|
||||||
@ -66,13 +66,14 @@ class Utils
|
|||||||
{
|
{
|
||||||
return DB::getInstance()->get(
|
return DB::getInstance()->get(
|
||||||
"SELECT
|
"SELECT
|
||||||
services.id as Id,
|
services.id as idActivite,
|
||||||
services.label,
|
services.label as titreActivite,
|
||||||
services.description as descService,
|
services.description as descActivite,
|
||||||
services_fees.label as tarif,
|
services_fees.id as idTarif,
|
||||||
|
services_fees.label as titreTarif,
|
||||||
services_fees.description as descTarif,
|
services_fees.description as descTarif,
|
||||||
acc_accounts.code as numero_cpt,
|
acc_accounts.code as numeroCpt,
|
||||||
acc_accounts.label as nom_cpt
|
acc_accounts.label as nomCpt
|
||||||
FROM services
|
FROM services
|
||||||
LEFT JOIN services_fees ON services_fees.id_service = services.id
|
LEFT JOIN services_fees ON services_fees.id_service = services.id
|
||||||
LEFT JOIN acc_accounts ON services_fees.id_account = acc_accounts.id
|
LEFT JOIN acc_accounts ON services_fees.id_account = acc_accounts.id
|
||||||
@ -164,7 +165,7 @@ class Utils
|
|||||||
public static function getVersementsTotaux($annee) {
|
public static function getVersementsTotaux($annee) {
|
||||||
$sql =
|
$sql =
|
||||||
"SELECT
|
"SELECT
|
||||||
acc_transactions_users.id_user as id,
|
acc_transactions_users.id_user as idUser,
|
||||||
membres.nom as nom,
|
membres.nom as nom,
|
||||||
sum(acc_transactions_lines.credit) AS montant,
|
sum(acc_transactions_lines.credit) AS montant,
|
||||||
membres.adresse as adresse,
|
membres.adresse as adresse,
|
||||||
@ -195,43 +196,54 @@ class Utils
|
|||||||
* @return nom de l'association
|
* @return nom de l'association
|
||||||
*/
|
*/
|
||||||
public static function getNomAsso() {
|
public static function getNomAsso() {
|
||||||
return DB::getInstance()->get(
|
return DB::getInstance()->first(
|
||||||
"SELECT value
|
"SELECT value
|
||||||
FROM config
|
FROM config
|
||||||
WHERE key = 'nom_asso'"
|
WHERE key = 'nom_asso'"
|
||||||
)[0]->value;
|
)->value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return adresse de l'association
|
* @return adresse de l'association
|
||||||
*/
|
*/
|
||||||
public static function getAdresseAsso() {
|
public static function getAdresseAsso() {
|
||||||
return DB::getInstance()->get(
|
return DB::getInstance()->first(
|
||||||
"SELECT value
|
"SELECT value
|
||||||
FROM config
|
FROM config
|
||||||
WHERE key = 'adresse_asso'"
|
WHERE key = 'adresse_asso'"
|
||||||
)[0]->value;
|
)->value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* récupérer l'année du premier exercice
|
* @return liste des années fiscales
|
||||||
*/
|
*/
|
||||||
public static function getPremiereAnnee() {
|
public static function getAnneesFiscales() {
|
||||||
return DB::getInstance()->get(
|
$rows = DB::getInstance()->get(
|
||||||
"SELECT strftime('%Y', start_date) as annee
|
"SELECT strftime('%Y', start_date) as annee
|
||||||
FROM acc_years
|
FROM acc_years
|
||||||
ORDER by start_date"
|
ORDER by start_date DESC"
|
||||||
)[0]->value;
|
);
|
||||||
|
$anneesFiscales = array();
|
||||||
|
foreach ($rows as $row) {
|
||||||
|
$anneesFiscales[] = $row->annee;
|
||||||
|
}
|
||||||
|
return $anneesFiscales;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
// zip archive creation
|
// zip archive creation
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* enregistrer les fichiers dans une archive zip
|
||||||
|
* @param $fileList : liste des fichiers à archiver
|
||||||
|
* @param $year : pour générer le nom de l'archive
|
||||||
|
* @param $archiveDir : ne sert plus
|
||||||
|
*/
|
||||||
static function makeArchive(
|
static function makeArchive(
|
||||||
$fileList,
|
$fileList,
|
||||||
$year,
|
$year,
|
||||||
$archiveDir)
|
$archiveDir = null)
|
||||||
{
|
{
|
||||||
$zipFilename = "recus_dons" . $year . ".zip";
|
$zipFilename = "recus_dons" . $year . ".zip";
|
||||||
header('Content-type: application/zip');
|
header('Content-type: application/zip');
|
||||||
|
@ -7,5 +7,8 @@
|
|||||||
<li{if $current_nav == 'index'} class="current"{/if}><a href="{plugin_url}">Activités et tarifs</a></li>
|
<li{if $current_nav == 'index'} class="current"{/if}><a href="{plugin_url}">Activités et tarifs</a></li>
|
||||||
<li{if $current_nav == 'personne'} class="current"{/if}><a href="{plugin_url file="personne.php"}">Versements totaux par personne</a></li>
|
<li{if $current_nav == 'personne'} class="current"{/if}><a href="{plugin_url file="personne.php"}">Versements totaux par personne</a></li>
|
||||||
<li{if $current_nav == 'versements'} class="current"{/if}><a href="{plugin_url file="versements.php"}">Tous les versements</a></li>
|
<li{if $current_nav == 'versements'} class="current"{/if}><a href="{plugin_url file="versements.php"}">Tous les versements</a></li>
|
||||||
|
{if $session->canAccess($session::SECTION_ACCOUNTING, $session::ACCESS_WRITE)}
|
||||||
|
<li{if $current_nav == 'config'} class="current"{/if}><a href="{plugin_url file="config.php"}">Configuration</a></li>
|
||||||
|
{/if}
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
@ -1,31 +1,117 @@
|
|||||||
<!-- nav bar -->
|
<!-- nav bar -->
|
||||||
{include file="%s/templates/_nav.tpl"|args:$plugin_root current_nav="index"}
|
{include file="%s/templates/_nav.tpl"|args:$plugin_root current_nav="index"}
|
||||||
|
|
||||||
<h2>Liste des activités, cotisations et comptes associés</h2>
|
<h2>Choisir l'année fiscale</h2>
|
||||||
<table class="list">
|
<form>
|
||||||
<thead>
|
<fieldset>
|
||||||
<tr>
|
{* <legend>Choisir l'année fiscale</legend> *}
|
||||||
<th>Nom</th>
|
<select id="annee_recu" name="annee_recu">
|
||||||
<th>Description</th>
|
{foreach from=$anneesFiscales item="annee"}
|
||||||
<th>Tarif</th>
|
<option value="{$annee}" {if $annee == $anneeCourante - 1} selected{/if}>{$annee}
|
||||||
<th>Description</th>
|
</option>
|
||||||
<th>N° Compte</th>
|
{/foreach}
|
||||||
<th>Nom Compte</th>
|
</select>
|
||||||
</tr>
|
</fieldset>
|
||||||
</thead>
|
|
||||||
<tbody>
|
<div id="choix_methode">
|
||||||
{foreach from=$activitesTarifsComptes item="activite"}
|
<h2>Choisir une méthode de génération des reçus</h2>
|
||||||
<tr>
|
|
||||||
<td>{$activite.label}</td>
|
<fieldset>
|
||||||
<td>{$activite.descService}</td>
|
{* <legend>Choisir une des méthodes</legend> *}
|
||||||
<td>{$activite.tarif}</td>
|
<dl>
|
||||||
<td>{$activite.descTarif}</td>
|
<dd class="radio-btn">
|
||||||
<td>{$activite.numero_cpt}</td>
|
<input type="radio" id="radio_tous_versements" name="choix_versements" value="tous_versements"
|
||||||
<td>{$activite.nom_cpt}</td>
|
onclick="afficherMasquer(this.form, '.tous', '.activites');" />
|
||||||
</tr>
|
<label for="radio_tous_versements">
|
||||||
{/foreach}
|
<div>
|
||||||
</tbody>
|
<h5>
|
||||||
</table>
|
Tous les versements des membres font l'objet d'un reçu, sans
|
||||||
|
tenir compte des activités et tarifs
|
||||||
|
</h5>
|
||||||
|
</div>
|
||||||
|
</label>
|
||||||
|
</dd>
|
||||||
|
|
||||||
|
<dd class="radio-btn">
|
||||||
|
<input type="radio" id="radio_versements_activites" name="choix_versements"
|
||||||
|
value="versements_activites"
|
||||||
|
onclick="afficherMasquer(this.form, '.activites', '.tous');" />
|
||||||
|
<label for="radio_versements_activites">
|
||||||
|
<div>
|
||||||
|
<h5>
|
||||||
|
Seuls les versements de certaines activités et tarifs font
|
||||||
|
l'objet d'un reçu
|
||||||
|
</h5>
|
||||||
|
</div>
|
||||||
|
</label>
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
<div id="generer_tous" class="tous hidden">
|
||||||
|
<p class=" submit">
|
||||||
|
{csrf_field key="generer_tous_recus"}
|
||||||
|
{button type="submit" name="generer_tous" label="Générer" shape="right" class="main"}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div id="liste_activites_tarifs" class="activites hidden">
|
||||||
|
<h2>Choisir les activités et tarifs concernés par les reçus ainsi que le taux de réduction</h2>
|
||||||
|
<table class="list">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Cocher</th>
|
||||||
|
<th>Activité et Tarif</th>
|
||||||
|
<th>Taux de réduction</th>
|
||||||
|
<th>Caractéristiques activité</th>
|
||||||
|
<th>N° et Compte</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
{foreach from=$activitesTarifsComptes item="activite"}
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
{input type="checkbox" name="tarifs[]" value=$activite.idTarif}
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span>{$activite.titreActivite} - {$activite.titreTarif}</span>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span class="radio-btn">
|
||||||
|
<input type="radio" id="taux_normal_{$activite.idTarif}"
|
||||||
|
name="taux_reduction_{$activite.idTarif}" value="taux_normal" />
|
||||||
|
<label for="taux_normal_{$activite.idTarif}">normal</label>
|
||||||
|
</span>
|
||||||
|
<span class=" radio-btn">
|
||||||
|
<input type="radio" id="taux_majore_{$activite.idTarif}"
|
||||||
|
name="taux_reduction_{$activite.idTarif}" value="taux_majore" />
|
||||||
|
<label for="taux_majore_{$activite.idTarif}">majoré</label>
|
||||||
|
</span>
|
||||||
|
</td>
|
||||||
|
<td>{if $activite.descActivite != ""}{$activite.descActivite} ; {/if}{$activite.descTarif}</td>
|
||||||
|
<td>{$activite.numeroCpt} : {$activite.nomCpt}</td>
|
||||||
|
</tr>
|
||||||
|
{/foreach}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<p class="help">Si vous ne savez pas quel taux de réduction utiliser, n'en choisissez aucun</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="generer_activites" class="activites hidden">
|
||||||
|
<p class=" submit">
|
||||||
|
{csrf_field key="generer_recus_activites"}
|
||||||
|
{button type="submit" name="generer_activites" label="Générer" shape="right" class="main"}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
<script defer type="text/javascript" src="script.js"></script>
|
||||||
|
{literal}
|
||||||
|
<script type="text/javascript">
|
||||||
|
// function afficherMasquer(formulaire, class1, visible1, class2, visible2) {
|
||||||
|
// afficher(formulaire, elem1, visible1);
|
||||||
|
// afficher(formulaire, elem2, visible2);
|
||||||
|
// }
|
||||||
|
</script>
|
||||||
|
{/literal}
|
||||||
|
|
||||||
<!-- footer -->
|
<!-- footer -->
|
||||||
{include file="admin/_foot.tpl"}
|
{include file="admin/_foot.tpl"}
|
@ -10,10 +10,7 @@
|
|||||||
<thead class="userOrder">
|
<thead class="userOrder">
|
||||||
<tr>
|
<tr>
|
||||||
<th class="check">
|
<th class="check">
|
||||||
<input
|
<input type="checkbox" title="Tout cocher / décocher" id="f_all" />
|
||||||
type="checkbox"
|
|
||||||
title="Tout cocher / décocher"
|
|
||||||
id="f_all" />
|
|
||||||
<label for="f_all"></label>
|
<label for="f_all"></label>
|
||||||
</th>
|
</th>
|
||||||
<th>Id</th>
|
<th>Id</th>
|
||||||
@ -28,12 +25,12 @@
|
|||||||
{foreach from=$lesVersementsTotaux item="versement"}
|
{foreach from=$lesVersementsTotaux item="versement"}
|
||||||
<tr>
|
<tr>
|
||||||
<td class="check">
|
<td class="check">
|
||||||
{input
|
{input
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
name="selected[]"
|
name="selected[]"
|
||||||
value=$versement.id}
|
value=$versement.idUser}
|
||||||
</td>
|
</td>
|
||||||
<td>{$versement.id}</td>
|
<td>{$versement.idUser}</td>
|
||||||
<td>{$versement.nom}</td>
|
<td>{$versement.nom}</td>
|
||||||
<td class="montant">{$versement.montant|raw|money}</td>
|
<td class="montant">{$versement.montant|raw|money}</td>
|
||||||
<td>{$versement.adresse}</td>
|
<td>{$versement.adresse}</td>
|
||||||
|
@ -12,11 +12,7 @@
|
|||||||
<form method="post" action="action.php" class="memberList">
|
<form method="post" action="action.php" class="memberList">
|
||||||
|
|
||||||
<fieldset class="versements" id="versements_global">
|
<fieldset class="versements" id="versements_global">
|
||||||
<input
|
<input type="checkbox" class="check_global" id="check_global" onclick="cocherDecocherTout(check_global)" />
|
||||||
type="checkbox"
|
|
||||||
class="check_global"
|
|
||||||
id="check_global"
|
|
||||||
onclick="cocherDecocherTout(check_global)" />
|
|
||||||
<label for="check_global">Cliquer pour cocher toutes les lignes</label>
|
<label for="check_global">Cliquer pour cocher toutes les lignes</label>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
@ -32,20 +28,21 @@
|
|||||||
{if !empty($activite->description)}
|
{if !empty($activite->description)}
|
||||||
<h4>{$activite->description}</h4>
|
<h4>{$activite->description}</h4>
|
||||||
{/if}
|
{/if}
|
||||||
<h4>tarif « {$tarif->titreTarif} », montant : {if $tarif->montantTarif > 0}{$tarif->montantTarif}
|
<h4>tarif « {$tarif->titreTarif} », montant :
|
||||||
|
{if $tarif->montantTarif > 0}{$tarif->montantTarif|raw|money}
|
||||||
€{else}libre
|
€{else}libre
|
||||||
{/if}
|
{/if}
|
||||||
</h4>
|
</h4>
|
||||||
</summary>
|
</summary>
|
||||||
|
|
||||||
{*
|
{*
|
||||||
Itération sur les versements d'un tarif d'une activité
|
Itération sur les versements d'un tarif d'une activité
|
||||||
présentation : une table pour les versements d'une personne
|
présentation : une table pour les versements d'une personne
|
||||||
*}
|
*}
|
||||||
<?php $currentUser = -1; $firstUser = true; ?>
|
<?php $currentUser = -1; $firstUser = true; ?>
|
||||||
{foreach from=$lesVersements key="rang" item="versement"}
|
{foreach from=$lesVersements key="rang" item="versement"}
|
||||||
{if $versement.idActivite == $activite->id &&
|
{if $versement.idActivite == $activite->idActivite &&
|
||||||
$versement.idTarif == $tarif->idTarif}
|
$versement.idTarif == $tarif->idTarif}
|
||||||
{if $versement.idUser != $currentUser}
|
{if $versement.idUser != $currentUser}
|
||||||
{* changement de personne *}
|
{* changement de personne *}
|
||||||
{if $firstUser}
|
{if $firstUser}
|
||||||
@ -58,34 +55,27 @@
|
|||||||
<?php $idVersements = $versement->idTarif."_".$versement->idUser; ?>
|
<?php $idVersements = $versement->idTarif."_".$versement->idUser; ?>
|
||||||
<h3 class="personne">Versements de {$versement.nom} : <span id="total_{$idVersements}">0,00 €</span></h3>
|
<h3 class="personne">Versements de {$versement.nom} : <span id="total_{$idVersements}">0,00 €</span></h3>
|
||||||
<fieldset class="versements" id="versements_{$idVersements}">
|
<fieldset class="versements" id="versements_{$idVersements}">
|
||||||
<input
|
<input type="checkbox" class="check_{$idVersements}" id="check_{$idVersements}"
|
||||||
type="checkbox"
|
onclick="cocherDecocherPersonne(check_{$idVersements}, total_{$idVersements})" />
|
||||||
class="check_{$idVersements}"
|
|
||||||
id="check_{$idVersements}"
|
|
||||||
onclick="cocherDecocherPersonne(check_{$idVersements}, total_{$idVersements})" />
|
|
||||||
<label for="check_{$idVersements}">Cliquer pour cocher toutes les lignes</label>
|
<label for="check_{$idVersements}">Cliquer pour cocher toutes les lignes</label>
|
||||||
<br />
|
<br />
|
||||||
<hr>
|
<hr>
|
||||||
<?php $currentUser = $versement->idUser; ?>
|
<?php $currentUser = $versement->idUser; ?>
|
||||||
|
{/if}
|
||||||
|
{* afficher les infos du versement de la personne*}
|
||||||
|
<div {if $rang%2==0}class="pair" {else}class="impair" {/if}>
|
||||||
|
<input type="checkbox" class="check_{$idVersements}" id="check_{$idVersements}_{$rang}"
|
||||||
|
name="selected[]" value={$rang}
|
||||||
|
onclick="cocherDecocherVersement(check_{$idVersements}_{$rang}, total_{$idVersements})" />
|
||||||
|
<label for=check_{$idVersements}_{$rang}></label>
|
||||||
|
<span class="montant">{$versement.versement|raw|money}</span>
|
||||||
|
<span>{$versement.date|date_format:"%d/%m/%Y"}</span>
|
||||||
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
{* afficher les infos du versement de la personne*}
|
{/foreach} {* Itération sur les versements *}
|
||||||
<div {if $rang%2==0}class="pair"{else}class="impair"{/if}>
|
|
||||||
<input
|
|
||||||
type="checkbox"
|
|
||||||
class="check_{$idVersements}"
|
|
||||||
id="check_{$idVersements}_{$rang}"
|
|
||||||
name="selected[]"
|
|
||||||
value={$rang}
|
|
||||||
onclick="cocherDecocherVersement(check_{$idVersements}_{$rang}, total_{$idVersements})" />
|
|
||||||
<label for=check_{$idVersements}_{$rang}></label>
|
|
||||||
<span class="montant">{$versement.versement|raw|money}</span>
|
|
||||||
<span>{$versement.date|date_format:"%d/%m/%Y"}</span>
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
{/foreach} {* Itération sur les versements *}
|
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</details>
|
</details>
|
||||||
{/foreach} {* Itération sur les tarifs de l'activité *}
|
{/foreach} {* Itération sur les tarifs de l'activité *}
|
||||||
{/foreach} {* Itération sur les activités *}
|
{/foreach} {* Itération sur les activités *}
|
||||||
|
|
||||||
<input type="submit" value="Générer les reçus" onclick="return verifierChoix(this.form)">
|
<input type="submit" value="Générer les reçus" onclick="return verifierChoix(this.form)">
|
||||||
@ -95,19 +85,19 @@
|
|||||||
<script src="script.js"></script>
|
<script src="script.js"></script>
|
||||||
|
|
||||||
{literal}
|
{literal}
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
// ouvrir/fermer les détails
|
// ouvrir/fermer les détails
|
||||||
document.querySelector('#open_details').onclick = () => {
|
document.querySelector('#open_details').onclick = () => {
|
||||||
document.querySelectorAll('details').forEach((e) => {
|
document.querySelectorAll('details').forEach((e) => {
|
||||||
e.setAttribute('open', 'open');
|
e.setAttribute('open', 'open');
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
document.querySelector('#close_details').onclick = () => {
|
document.querySelector('#close_details').onclick = () => {
|
||||||
document.querySelectorAll('details').forEach((e) => {
|
document.querySelectorAll('details').forEach((e) => {
|
||||||
e.removeAttribute('open');
|
e.removeAttribute('open');
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
{/literal}
|
{/literal}
|
||||||
|
|
||||||
<!-- footer -->
|
<!-- footer -->
|
||||||
|
@ -4,11 +4,21 @@ namespace Garradin;
|
|||||||
|
|
||||||
use Garradin\Plugin\RecusFiscaux\Utils;
|
use Garradin\Plugin\RecusFiscaux\Utils;
|
||||||
|
|
||||||
|
// première année d'exercice
|
||||||
|
$anneeCourante = date("Y");
|
||||||
|
$anneesFiscales = Utils::getAnneesFiscales();
|
||||||
|
if ($anneesFiscales[0] < $anneeCourante) {
|
||||||
|
array_unshift($anneesFiscales, $anneeCourante);
|
||||||
|
}
|
||||||
|
|
||||||
// liste des activités, cotisations et comptes associés
|
// liste des activités, cotisations et comptes associés
|
||||||
$activitesTarifsComptes = Utils::getActivitesTarifsEtComptes();
|
$activitesTarifsComptes = Utils::getActivitesTarifsEtComptes();
|
||||||
|
|
||||||
// préparation de l'affichage
|
// préparation de l'affichage
|
||||||
|
$tpl->assign('anneesFiscales', $anneesFiscales);
|
||||||
|
$tpl->assign('anneeCourante', $anneeCourante);
|
||||||
$tpl->assign('activitesTarifsComptes', $activitesTarifsComptes);
|
$tpl->assign('activitesTarifsComptes', $activitesTarifsComptes);
|
||||||
|
$tpl->assign('plugin_css', ['style.css']);
|
||||||
|
|
||||||
// envoyer au template
|
// envoyer au template
|
||||||
$tpl->display(PLUGIN_ROOT . '/templates/index.tpl');
|
$tpl->display(PLUGIN_ROOT . '/templates/index.tpl');
|
||||||
|
@ -35,7 +35,7 @@ function cocherDecocherTout(idCaseGlobale) {
|
|||||||
* Fonction appelée quand on (dé)coche la case d'une personne
|
* Fonction appelée quand on (dé)coche la case d'une personne
|
||||||
* - (dé)sélectionner toutes les cases à cocher
|
* - (dé)sélectionner toutes les cases à cocher
|
||||||
* - faire le total des cases cochées et l'afficher
|
* - faire le total des cases cochées et l'afficher
|
||||||
*
|
*
|
||||||
* @param id de la case qui a été cochée
|
* @param id de la case qui a été cochée
|
||||||
* @param id de l'élément où afficher le total
|
* @param id de l'élément où afficher le total
|
||||||
*/
|
*/
|
||||||
@ -63,7 +63,7 @@ function cocherDecocherPersonne(idCase, idTotal) {
|
|||||||
* Fonction appelée quand on (dé)coche la case d'un versement
|
* Fonction appelée quand on (dé)coche la case d'un versement
|
||||||
* - (dé)sélectionner cette case (?)
|
* - (dé)sélectionner cette case (?)
|
||||||
* - faire le total des cases cochées et l'afficher
|
* - faire le total des cases cochées et l'afficher
|
||||||
*
|
*
|
||||||
* @param id de la case qui a été cochée
|
* @param id de la case qui a été cochée
|
||||||
* @param id de l'élément où afficher le total
|
* @param id de l'élément où afficher le total
|
||||||
*/
|
*/
|
||||||
@ -118,6 +118,15 @@ function verifierChoix(formulaire)
|
|||||||
return ok;
|
return ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function afficherMasquer(formulaire, nomClasse1, nomClasse2) {
|
||||||
|
for (var elem of formulaire.querySelectorAll(nomClasse1)) {
|
||||||
|
elem.classList.remove('hidden');
|
||||||
|
}
|
||||||
|
for (var elem of formulaire.querySelectorAll(nomClasse2)) {
|
||||||
|
elem.classList.add('hidden');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Associer un écouteur à la première case à cocher de chaque table
|
* Associer un écouteur à la première case à cocher de chaque table
|
||||||
* @remarks : n'est plus utile
|
* @remarks : n'est plus utile
|
||||||
|
@ -27,3 +27,6 @@ summary.activite {
|
|||||||
h3.personne {
|
h3.personne {
|
||||||
background: rgba(var(--gSecondColor), 0.35);
|
background: rgba(var(--gSecondColor), 0.35);
|
||||||
}
|
}
|
||||||
|
input[type="text"] {
|
||||||
|
width: 50em;
|
||||||
|
}
|
||||||
|
@ -12,7 +12,7 @@ $activites = Utils::getActivites();
|
|||||||
foreach ($activites as $num => $activite)
|
foreach ($activites as $num => $activite)
|
||||||
{
|
{
|
||||||
// ajouter les tarifs de l'activité
|
// ajouter les tarifs de l'activité
|
||||||
$activite->{'tarifs'} = Utils::getTarifs($activite->{'id'});
|
$activite->{'tarifs'} = Utils::getTarifs($activite->{'idActivite'});
|
||||||
}
|
}
|
||||||
|
|
||||||
// préparation de l'affichage
|
// préparation de l'affichage
|
||||||
|
Loading…
Reference in New Issue
Block a user