From 3af5a31e4e6d5655fa43b218dc3c8ba15c53592e Mon Sep 17 00:00:00 2001 From: =?utf8?q?St=C3=A9phane=20Jacob?= Date: Mon, 15 Jun 2009 22:37:48 +0200 Subject: [PATCH] Fixes a SQL error in the creation of a .net group. --- modules/xnet.php | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/modules/xnet.php b/modules/xnet.php index c76bf3a..2c04835 100644 --- a/modules/xnet.php +++ b/modules/xnet.php @@ -114,12 +114,24 @@ class XnetModule extends PLModule if (Post::has('diminutif')) { S::assert_xsrf_token(); - XDB::query('INSERT INTO groupex.asso (id,diminutif) - VALUES(NULL,{?})', Post::v('diminutif')); - pl_redirect('../'.Post::v('diminutif').'/edit'); + $res = XDB::query('SELECT COUNT(*) + FROM groupex.asso + WHERE diminutif = {?}', + Post::v('diminutif')); + + if ($res->fetchOneCell() == 0) { + XDB::execute('INSERT INTO groupex.asso (id, diminutif) + VALUES (NULL, {?})', + Post::v('diminutif')); + pl_redirect('../' . Post::v('diminutif') . '/edit'); + } else { + $page->trigError('Le diminutif demandé est déjà pris.'); + } } - $res = XDB::query('SELECT nom,diminutif FROM groupex.asso ORDER by NOM'); + $res = XDB::query('SELECT nom, diminutif + FROM groupex.asso + ORDER BY nom'); $page->assign('assos', $res->fetchAllAssoc()); } -- 2.1.4