$group_id, $uid);
}
- static public function unsubscribe($group_id, $uid)
+ static public function unsubscribe($group_id, $uid, $remember)
{
- XDB::execute('INSERT INTO group_former_members (asso_id, uid, unsubsciption_date)
- VALUES ({?}, {?}, NOW())',
- $group_id, $uid);
+ XDB::execute('INSERT INTO group_former_members (asso_id, uid, remember, unsubsciption_date)
+ VALUES ({?}, {?}, {?}, NOW())',
+ $group_id, $uid, $remember);
XDB::execute('DELETE FROM group_members
WHERE uid = {?} AND asso_id = {?}',
$uid, $group_id);
$page->assign('users', $users);
}
- function unsubscribe(PlUser $user)
+ function unsubscribe(PlUser $user, $remember = false)
{
global $globals;
- Group::unsubscribe($globals->asso('id'), $user->id());
+ Group::unsubscribe($globals->asso('id'), $user->id(), $remember);
if ($globals->asso('notif_unsub')) {
$mailer = new PlMailer('xnetgrp/unsubscription-notif.mail.tpl');
$hasSingleGroup = ($user->groupCount() == 1);
- if ($this->unsubscribe($user)) {
+ if ($this->unsubscribe($user, Post::b('remember'))) {
$page->trigSuccess('Tu as été désinscrit du groupe avec succès.');
} else {
$page->trigWarning('Tu as été désinscrit du groupe, mais des erreurs se sont produites lors des désinscriptions des alias et des listes de diffusion.');
et le désabonner de toutes les listes de diffusion du groupe ?
{/if}
</p>
+ {if $self}
+ <label><input type="checkbox" name="remember" />Empêcher ma réinscription au groupe par un animateur.</label><br /><br />
+ {/if}
<input type="submit" name="confirm" value="Oui, je {if $self}me{else}le{/if} désinscris complètement du groupe !" />
</div>
</form>
+DROP TABLE IF EXISTS group_former_members;
+
CREATE TABLE group_former_members (
asso_id SMALLINT(5) UNSIGNED NOT NULL DEFAULT 0,
uid INT(11) UNSIGNED NOT NULL DEFAULT 0,
+ remember BOOLEAN NOT NULL DEFAULT FALSE,
unsubsciption_date DATE NOT NULL,
PRIMARY KEY (asso_id, uid),
KEY uid (uid),