From cb1f54082d5a67f390b69f56eae9b8d3a81aa41c Mon Sep 17 00:00:00 2001 From: =?utf8?q?St=C3=A9phane=20Jacob?= Date: Sat, 7 Aug 2010 17:34:20 +0200 Subject: [PATCH] Ask for account deletion when a xnet user unsubscribes from her la st group. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Stéphane Jacob --- modules/xnetgrp.php | 18 +++++++++++++----- templates/xnetgrp/membres-del.tpl | 10 ++++++++-- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/modules/xnetgrp.php b/modules/xnetgrp.php index b962b4e..2ec9e2c 100644 --- a/modules/xnetgrp.php +++ b/modules/xnetgrp.php @@ -790,12 +790,11 @@ class XnetGrpModule extends PLModule { $page->changeTpl('xnetgrp/membres-del.tpl'); $user = S::user(); - $uid = S::user()->id(); - if (empty($uid)) { + if (empty($user)) { return PL_NOT_FOUND; } $page->assign('self', true); - $page->assign('user', $uid); + $page->assign('user', $user); if (!Post::has('confirm')) { return; @@ -803,10 +802,18 @@ class XnetGrpModule extends PLModule S::assert_xsrf_token(); } + $hasSingleGroup = $user->hasSingleGroup(); + if ($this->unsubscribe($user)) { - $page->trigSuccess('Vous avez été désinscrit du groupe avec succès.'); + $page->trigSuccess('Tu as été désinscrit du groupe avec succès.'); } else { - $page->trigWarning('Vous avez été désinscrit du groupe, mais des erreurs se sont produites lors des désinscriptions des alias et des listes de diffusion.'); + $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.'); + } + if ($user->type == 'xnet' && $hasSingleGroup && Post::has('accountDeletion')) { + XDB::execute('DELETE FROM acounts + WHERE uid = {?}', + $user->id()); + $page->trigSuccess('Ton compte a bien été supprimé.'); } $page->assign('is_member', is_member(true)); } @@ -818,6 +825,7 @@ class XnetGrpModule extends PLModule if (empty($user)) { return PL_NOT_FOUND; } + $page->assign('self', false); $page->assign('user', $user); if (!Post::has('confirm')) { diff --git a/templates/xnetgrp/membres-del.tpl b/templates/xnetgrp/membres-del.tpl index 30ca337..0b29f52 100644 --- a/templates/xnetgrp/membres-del.tpl +++ b/templates/xnetgrp/membres-del.tpl @@ -20,7 +20,7 @@ {* *} {**************************************************************************} -{if $smarty.post.confirm} +{if t($smarty.post.confirm)}

{if !$self} @@ -46,13 +46,19 @@ {if $self} Êtes-vous sûr de vouloir vous désinscrire du groupe {$asso->nom} et de toutes les listes de diffusion associées ? + {if $user->type eq 'xnet' && $user->hasSingleGroup()} +
C'est le seul groupe auquel tu es actuellement inscrit sur polytechnique.net. + Si, malgré cela, tu souhaites garder ton accès à Polytechnique.net, décoche la case + ci-dessous.
+ + {/if} {else} Êtes-vous sûr de vouloir supprimer {$user->fullName()} du groupe, lui retirer tous les droits associés à son statut de membre et le désabonner de toutes les listes de diffusion du groupe ? {/if}

- + -- 2.1.4