[NBM] Step 2: Add new table user_mail_notification (update, install, constants, delete user

+ Correction delete user (table user_feed missing, table sessions must be removed)

git-svn-id: http://piwigo.org/svn/trunk@1028 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
rub 2006-02-06 22:59:30 +00:00
commit 687a7ca122
4 changed files with 91 additions and 9 deletions

View file

@ -2,7 +2,7 @@
// +-----------------------------------------------------------------------+
// | PhpWebGallery - a PHP based picture gallery |
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
// | Copyright (C) 2003-2005 PhpWebGallery Team - http://phpwebgallery.net |
// | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net |
// +-----------------------------------------------------------------------+
// | branch : BSF (Best So Far)
// | file : $RCSfile$
@ -274,8 +274,8 @@ DELETE FROM '.IMAGES_TABLE.'
// - all the access linked to this user
// - all the links to any group
// - all the favorites linked to this user
// - all sessions linked to this user
// - calculated permissions linked to the user
// - all datas about notifications for the user
function delete_user($user_id)
{
global $conf;
@ -287,6 +287,20 @@ DELETE FROM '.USER_ACCESS_TABLE.'
;';
pwg_query($query);
// destruction of data notification by mail for this user
$query = '
DELETE FROM '.USER_MAIL_NOTIFICATION_TABLE.'
WHERE user_id = '.$user_id.'
;';
pwg_query($query);
// destruction of data RSS notification for this user
$query = '
DELETE FROM '.USER_FEED_TABLE.'
WHERE user_id = '.$user_id.'
;';
pwg_query($query);
// destruction of the group links for this user
$query = '
DELETE FROM '.USER_GROUP_TABLE.'
@ -301,13 +315,6 @@ DELETE FROM '.FAVORITES_TABLE.'
;';
pwg_query($query);
// destruction of the sessions linked with the user
$query = '
DELETE FROM '.SESSIONS_TABLE.'
WHERE user_id = '.$user_id.'
;';
pwg_query($query);
// deletion of calculated permissions linked to the user
$query = '
DELETE FROM '.USER_CACHE_TABLE.'
@ -1192,6 +1199,7 @@ SELECT user_id
// table
$tables =
array(
USER_MAIL_NOTIFICATION_TABLE,
USER_FEED_TABLE,
USER_INFOS_TABLE,
USER_ACCESS_TABLE,

View file

@ -2,7 +2,7 @@
// +-----------------------------------------------------------------------+
// | PhpWebGallery - a PHP based picture gallery |
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
// | Copyright (C) 2003-2005 PhpWebGallery Team - http://phpwebgallery.net |
// | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net |
// +-----------------------------------------------------------------------+
// | branch : BSF (Best So Far)
// | file : $RCSfile$
@ -61,4 +61,6 @@ define('USER_CACHE_TABLE', $prefixeTable.'user_cache');
define('CADDIE_TABLE', $prefixeTable.'caddie');
define('UPGRADE_TABLE', $prefixeTable.'upgrade');
define('SEARCH_TABLE', $prefixeTable.'search');
define('USER_MAIL_NOTIFICATION_TABLE', $prefixeTable.'user_mail_notification');
?>

58
install/db/6-database.php Normal file
View file

@ -0,0 +1,58 @@
<?php
// +-----------------------------------------------------------------------+
// | PhpWebGallery - a PHP based picture gallery |
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
// | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net |
// | Copyright (C) 2006 Ruben ARNAUD - team@phpwebgallery.net |
// +-----------------------------------------------------------------------+
// | branch : BSF (Best So Far)
// | file : $RCSfile$
// | last update : $Date: 2005-09-21 00:04:57 +0200 (mer, 21 sep 2005) $
// | last modifier : $Author: plg $
// | revision : $Revision: 870 $
// +-----------------------------------------------------------------------+
// | This program is free software; you can redistribute it and/or modify |
// | it under the terms of the GNU General Public License as published by |
// | the Free Software Foundation |
// | |
// | This program is distributed in the hope that it will be useful, but |
// | WITHOUT ANY WARRANTY; without even the implied warranty of |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
// | General Public License for more details. |
// | |
// | You should have received a copy of the GNU General Public License |
// | along with this program; if not, write to the Free Software |
// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
// | USA. |
// +-----------------------------------------------------------------------+
if (!defined('PHPWG_ROOT_PATH'))
{
die('Hacking attempt!');
}
$upgrade_description = 'Table #user_mail_notification is required for NBM';
// +-----------------------------------------------------------------------+
// | Upgrade content |
// +-----------------------------------------------------------------------+
// Creating table user_mail_notification
$query = '
CREATE TABLE '.PREFIX_TABLE.'user_mail_notification
(
user_id smallint(5) NOT NULL default \'0\',
check_key varchar(128) binary NOT NULL,
enabled enum(\'true\',\'false\') NOT NULL default \'false\',
last_send datetime default NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `uidx_check_key` (`check_key`)
) TYPE=MyISAM;';
pwg_query($query);
echo
"\n"
.'Table '.PREFIX_TABLE.'user_mail_notification created'
."\n"
;
?>

View file

@ -324,3 +324,17 @@ CREATE TABLE `phpwebgallery_waiting` (
PRIMARY KEY (`id`)
) TYPE=MyISAM;
--
-- Table structure for table `phpwebgallery_user_mail_notification`
--
DROP TABLE IF EXISTS `phpwebgallery_user_mail_notification`;
CREATE TABLE `phpwebgallery_user_mail_notification`
(
`user_id` smallint(5) NOT NULL default '0',
`check_key` varchar(128) binary NOT NULL,
`enabled` enum('true','false') NOT NULL default 'false',
`last_send` datetime default NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `uidx_check_key` (`check_key`)
) TYPE=MyISAM;