From: Stéphane Jacob Date: Tue, 10 Jun 2008 01:09:16 +0000 (+0200) Subject: Keeps hidden validation preferences in the database instead of in a cookie (Closes... X-Git-Tag: core/1.0.0~115 X-Git-Url: http://git.polytechnique.org/?a=commitdiff_plain;h=e0d7c076b6e8f1a54b8f73a7572089414768c8e3;p=platal.git Keeps hidden validation preferences in the database instead of in a cookie (Closes #770), Updates Changelog --- diff --git a/ChangeLog b/ChangeLog index d205829..1e56b3d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -12,7 +12,9 @@ New: Bug/Wish: * Admin: + - #770: Keeps hidden validation preferences in the database -JAC - #811: Improve interface to add medal ranks and avoid losing data -ALK + - #830: Adds admnistration pages for sub-sectors and functions -JAC * Carnet: - #831: Don't be notified of birthdays of the previous day -FRU diff --git a/modules/admin.php b/modules/admin.php index bfb4b27..50a0c94 100644 --- a/modules/admin.php +++ b/modules/admin.php @@ -944,6 +944,8 @@ class AdminModule extends PLModule $page->assign('categories', $categories = explode(',', str_replace("'", '', substr($a['Type'], 5, -1)))); $hidden = array(); + $res = XDB::query('SELECT hidden_requests FROM requests_hidden WHERE user_id = {?}', S::v('uid')); + $hide_requests = $res->fetchOneCell(); if (Post::has('hide')) { $hide = array(); foreach ($categories as $cat) @@ -951,9 +953,11 @@ class AdminModule extends PLModule $hidden[$cat] = 1; $hide[] = $cat; } - setcookie('hide_requests', join(',',$hide), time()+(count($hide)?25920000:(-3600)), '/', '', 0); - } elseif (Env::has('hide_requests')) { - foreach (explode(',',Env::v('hide_requests')) as $hide_type) + $hide_requests = join(',', $hide); + XDB::query('REPLACE INTO requests_hidden (user_id, hidden_requests) VALUES({?}, {?})', + S::v('uid'), $hide_requests); + } elseif ($hide_requests) { + foreach (explode(',', $hide_requests) as $hide_type) $hidden[$hide_type] = true; } $page->assign('hide_requests', $hidden); diff --git a/upgrade/0.9.17/02_requests_hidden.sql b/upgrade/0.9.17/02_requests_hidden.sql new file mode 100644 index 0000000..ba7ade2 --- /dev/null +++ b/upgrade/0.9.17/02_requests_hidden.sql @@ -0,0 +1,7 @@ +CREATE TABLE requests_hidden ( + user_id SMALLINT UNSIGNED NOT NULL, + hidden_requests TEXT NOT NULL, + PRIMARY KEY(user_id) +) CHARSET=utf8; + +# vim:set syntax=mysql: