Overview
SHA1 Hash:85db5abb1b17b1f7e788fe7733f17e97b5368072
Date: 2016-04-25 14:37:06
User: bohwaz
Comment:Cacher les membres des catégories cachées dans la liste des cotisations
Timelines: family | ancestors | descendants | both | trunk
Downloads: Tarball | ZIP archive
Other Links: files | file ages | folders | manifest
Tags And Properties
Context
2016-04-26
10:51
[9b134e65d8] Embryon de doc (user: bohwaz, tags: trunk)
2016-04-25
14:37
[85db5abb1b] Cacher les membres des catégories cachées dans la liste des cotisations (user: bohwaz, tags: trunk)
13:52
[163573d69f] Patch de @freepius ré-adapté pour permettre la réinitialisation des squelettes modifiés (user: bohwaz, tags: trunk)
Changes

Modified src/include/lib/Garradin/Membres/Cotisations.php from [7d0abf176b] to [948561ccc7].

229
230
231
232
233
234
235
236


237

238
239
240
241
242
243
244
...
265
266
267
268
269
270
271
272
273
274
275
276

277
278

279
280
281
282
283
284
285
	 * Nombre de membres pour une cotisation
	 * @param  integer $id Numéro de la cotisation
	 * @return integer     Nombre d'événements pour cette cotisation
	 */
	public function countMembersForCotisation($id)
	{
		$db = DB::getInstance();
		return $db->simpleQuerySingle('SELECT COUNT(DISTINCT id_membre) FROM cotisations_membres 


			WHERE id_cotisation = ?;',

			false, (int)$id);
	}

	/**
	 * Liste des membres qui sont inscrits à une cotisation
	 * @param  integer $id Numéro de la cotisation
	 * @return array     Liste des membres
................................................................................
				$order = 'cm.id_membre';
				break;
		}

		$desc = $desc ? 'DESC' : 'ASC';

		return $db->simpleStatementFetch('SELECT cm.id_membre, cm.date, cm.id,
			(SELECT '.$champ_id.' FROM membres WHERE id = cm.id_membre) AS nom, c.montant,
			CASE WHEN c.duree IS NOT NULL THEN date(cm.date, \'+\'||c.duree||\' days\') >= date()
			WHEN c.fin IS NOT NULL THEN c.fin >= date() ELSE 1 END AS a_jour
			FROM cotisations_membres AS cm
				INNER JOIN cotisations AS c ON c.id = cm.id_cotisation

			WHERE
				cm.id_cotisation = ?

			GROUP BY cm.id_membre ORDER BY '.$order.' '.$desc.' LIMIT ?,?;',
			\SQLITE3_ASSOC, (int)$id, $begin, self::ITEMS_PER_PAGE);
	}

	/**
	 * Liste des événements d'un membre
	 * @param  integer $id Numéro de membre







|
>
>
|
>







 







|




>


>







229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
...
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
	 * Nombre de membres pour une cotisation
	 * @param  integer $id Numéro de la cotisation
	 * @return integer     Nombre d'événements pour cette cotisation
	 */
	public function countMembersForCotisation($id)
	{
		$db = DB::getInstance();
		return $db->simpleQuerySingle('SELECT COUNT(DISTINCT cm.id_membre)
			FROM cotisations_membres  AS cm
				INNER JOIN membres AS m ON m.id = cm.id_membre
			WHERE cm.id_cotisation = ?
			AND m.id_categorie NOT IN (SELECT id FROM membres_categories WHERE cacher = 1);',
			false, (int)$id);
	}

	/**
	 * Liste des membres qui sont inscrits à une cotisation
	 * @param  integer $id Numéro de la cotisation
	 * @return array     Liste des membres
................................................................................
				$order = 'cm.id_membre';
				break;
		}

		$desc = $desc ? 'DESC' : 'ASC';

		return $db->simpleStatementFetch('SELECT cm.id_membre, cm.date, cm.id,
			m.'.$champ_id.' AS nom, c.montant,
			CASE WHEN c.duree IS NOT NULL THEN date(cm.date, \'+\'||c.duree||\' days\') >= date()
			WHEN c.fin IS NOT NULL THEN c.fin >= date() ELSE 1 END AS a_jour
			FROM cotisations_membres AS cm
				INNER JOIN cotisations AS c ON c.id = cm.id_cotisation
				INNER JOIN membres AS m ON m.id = cm.id_membre
			WHERE
				cm.id_cotisation = ?
				AND m.id_categorie NOT IN (SELECT id FROM membres_categories WHERE cacher = 1)
			GROUP BY cm.id_membre ORDER BY '.$order.' '.$desc.' LIMIT ?,?;',
			\SQLITE3_ASSOC, (int)$id, $begin, self::ITEMS_PER_PAGE);
	}

	/**
	 * Liste des événements d'un membre
	 * @param  integer $id Numéro de membre

Modified src/templates/admin/membres/cotisations/voir.tpl from [539c22c274] to [e845d60b27].

17
18
19
20
21
22
23

24


25
26
27
28
29
30
31
            du {$cotisation.debut|format_sqlite_date_to_french} au {$cotisation.fin|format_sqlite_date_to_french}
        {else}
            ponctuelle
        {/if}
        — {$cotisation.montant|escape_money} {$config.monnaie|escape}
    </dd>
    <dt>Nombre de membres ayant cotisé</dt>

    <dd>{$cotisation.nb_membres|escape}</dd>


</dl>

{if !empty($liste)}
    <table class="list">
        <thead class="userOrder">
            <tr>
                <td class="{if $order == "id"} cur {if $desc}desc{else}asc{/if}{/if}"><a href="?id={$cotisation.id|escape}&amp;o=id&amp;a" class="icn up">&uarr;</a><a href="?id={$cotisation.id|escape}&amp;o=id&amp;d" class="icn dn">&darr;</a></td>







>
|
>
>







17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
            du {$cotisation.debut|format_sqlite_date_to_french} au {$cotisation.fin|format_sqlite_date_to_french}
        {else}
            ponctuelle
        {/if}
        — {$cotisation.montant|escape_money} {$config.monnaie|escape}
    </dd>
    <dt>Nombre de membres ayant cotisé</dt>
    <dd>
        {$cotisation.nb_membres|escape}
        <small class="help">(incluant les membres des catégories cachées)</small>
    </dd>
</dl>

{if !empty($liste)}
    <table class="list">
        <thead class="userOrder">
            <tr>
                <td class="{if $order == "id"} cur {if $desc}desc{else}asc{/if}{/if}"><a href="?id={$cotisation.id|escape}&amp;o=id&amp;a" class="icn up">&uarr;</a><a href="?id={$cotisation.id|escape}&amp;o=id&amp;d" class="icn dn">&darr;</a></td>

Modified src/www/admin/static/admin.css from [24d6bcd7d6] to [9ad2881e00].

382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
}

h3.warning {
    margin: 1em;
    color: red;
}

dd.help {
    color: #666;
}

ul.gallery {
    text-align: center;
}








|







382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
}

h3.warning {
    margin: 1em;
    color: red;
}

dd.help, small.help {
    color: #666;
}

ul.gallery {
    text-align: center;
}