Some more foreign keys added
This commit is contained in:
parent
fb568ba462
commit
3af5f6b8ee
5 changed files with 138 additions and 39 deletions
39
database.sql
39
database.sql
|
@ -1,6 +1,6 @@
|
||||||
-- ------------------------------------------
|
-- ------------------------------------------
|
||||||
-- Friendica 2020.12-dev (Red Hot Poker)
|
-- Friendica 2020.12-dev (Red Hot Poker)
|
||||||
-- DB_UPDATE_VERSION 1376
|
-- DB_UPDATE_VERSION 1377
|
||||||
-- ------------------------------------------
|
-- ------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
@ -620,7 +620,7 @@ CREATE TABLE IF NOT EXISTS `inbox-status` (
|
||||||
CREATE TABLE IF NOT EXISTS `intro` (
|
CREATE TABLE IF NOT EXISTS `intro` (
|
||||||
`id` int unsigned NOT NULL auto_increment COMMENT 'sequential ID',
|
`id` int unsigned NOT NULL auto_increment COMMENT 'sequential ID',
|
||||||
`uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
|
`uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
|
||||||
`fid` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
`fid` int unsigned COMMENT '',
|
||||||
`contact-id` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
`contact-id` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
||||||
`knowyou` boolean NOT NULL DEFAULT '0' COMMENT '',
|
`knowyou` boolean NOT NULL DEFAULT '0' COMMENT '',
|
||||||
`duplex` boolean NOT NULL DEFAULT '0' COMMENT '',
|
`duplex` boolean NOT NULL DEFAULT '0' COMMENT '',
|
||||||
|
@ -645,7 +645,7 @@ CREATE TABLE IF NOT EXISTS `item` (
|
||||||
`uri` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
`uri` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
||||||
`uri-id` int unsigned COMMENT 'Id of the item-uri table entry that contains the item uri',
|
`uri-id` int unsigned COMMENT 'Id of the item-uri table entry that contains the item uri',
|
||||||
`uri-hash` varchar(80) NOT NULL DEFAULT '' COMMENT 'RIPEMD-128 hash from uri',
|
`uri-hash` varchar(80) NOT NULL DEFAULT '' COMMENT 'RIPEMD-128 hash from uri',
|
||||||
`parent` int unsigned NOT NULL DEFAULT 0 COMMENT 'item.id of the parent to this item if it is a reply of some form; otherwise this must be set to the id of this item',
|
`parent` int unsigned COMMENT 'item.id of the parent to this item if it is a reply of some form; otherwise this must be set to the id of this item',
|
||||||
`parent-uri` varchar(255) NOT NULL DEFAULT '' COMMENT 'uri of the top-level parent to this item',
|
`parent-uri` varchar(255) NOT NULL DEFAULT '' COMMENT 'uri of the top-level parent to this item',
|
||||||
`parent-uri-id` int unsigned COMMENT 'Id of the item-uri table that contains the top-level parent uri',
|
`parent-uri-id` int unsigned COMMENT 'Id of the item-uri table that contains the top-level parent uri',
|
||||||
`thr-parent` varchar(255) NOT NULL DEFAULT '' COMMENT 'If the parent of this item is not the top-level item in the conversation, the uri of the immediate parent; otherwise set to parent-uri',
|
`thr-parent` varchar(255) NOT NULL DEFAULT '' COMMENT 'If the parent of this item is not the top-level item in the conversation, the uri of the immediate parent; otherwise set to parent-uri',
|
||||||
|
@ -661,7 +661,6 @@ CREATE TABLE IF NOT EXISTS `item` (
|
||||||
`author-id` int unsigned NOT NULL DEFAULT 0 COMMENT 'Link to the contact table with uid=0 of the author of this item',
|
`author-id` int unsigned NOT NULL DEFAULT 0 COMMENT 'Link to the contact table with uid=0 of the author of this item',
|
||||||
`causer-id` int unsigned NOT NULL DEFAULT 0 COMMENT 'Link to the contact table with uid=0 of the contact that caused the item creation',
|
`causer-id` int unsigned NOT NULL DEFAULT 0 COMMENT 'Link to the contact table with uid=0 of the contact that caused the item creation',
|
||||||
`icid` int unsigned COMMENT 'Id of the item-content table entry that contains the whole item content',
|
`icid` int unsigned COMMENT 'Id of the item-content table entry that contains the whole item content',
|
||||||
`iaid` int unsigned COMMENT 'Id of the item-activity table entry that contains the activity data',
|
|
||||||
`vid` smallint unsigned COMMENT 'Id of the verb table entry that contains the activity verbs',
|
`vid` smallint unsigned COMMENT 'Id of the verb table entry that contains the activity verbs',
|
||||||
`extid` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
`extid` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
||||||
`post-type` tinyint unsigned NOT NULL DEFAULT 0 COMMENT 'Post type (personal note, bookmark, ...)',
|
`post-type` tinyint unsigned NOT NULL DEFAULT 0 COMMENT 'Post type (personal note, bookmark, ...)',
|
||||||
|
@ -681,7 +680,8 @@ CREATE TABLE IF NOT EXISTS `item` (
|
||||||
`forum_mode` tinyint unsigned NOT NULL DEFAULT 0 COMMENT '',
|
`forum_mode` tinyint unsigned NOT NULL DEFAULT 0 COMMENT '',
|
||||||
`psid` int unsigned COMMENT 'ID of the permission set of this post',
|
`psid` int unsigned COMMENT 'ID of the permission set of this post',
|
||||||
`resource-id` varchar(32) NOT NULL DEFAULT '' COMMENT 'Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type',
|
`resource-id` varchar(32) NOT NULL DEFAULT '' COMMENT 'Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type',
|
||||||
`event-id` int unsigned NOT NULL DEFAULT 0 COMMENT 'Used to link to the event.id',
|
`event-id` int unsigned COMMENT 'Used to link to the event.id',
|
||||||
|
`iaid` int unsigned COMMENT 'Deprecated',
|
||||||
`attach` mediumtext COMMENT 'Deprecated',
|
`attach` mediumtext COMMENT 'Deprecated',
|
||||||
`allow_cid` mediumtext COMMENT 'Deprecated',
|
`allow_cid` mediumtext COMMENT 'Deprecated',
|
||||||
`allow_gid` mediumtext COMMENT 'Deprecated',
|
`allow_gid` mediumtext COMMENT 'Deprecated',
|
||||||
|
@ -741,6 +741,7 @@ CREATE TABLE IF NOT EXISTS `item` (
|
||||||
INDEX `uid_eventid` (`uid`,`event-id`),
|
INDEX `uid_eventid` (`uid`,`event-id`),
|
||||||
INDEX `icid` (`icid`),
|
INDEX `icid` (`icid`),
|
||||||
INDEX `iaid` (`iaid`),
|
INDEX `iaid` (`iaid`),
|
||||||
|
INDEX `vid` (`vid`),
|
||||||
INDEX `psid_wall` (`psid`,`wall`),
|
INDEX `psid_wall` (`psid`,`wall`),
|
||||||
INDEX `uri-id` (`uri-id`),
|
INDEX `uri-id` (`uri-id`),
|
||||||
INDEX `parent-uri-id` (`parent-uri-id`),
|
INDEX `parent-uri-id` (`parent-uri-id`),
|
||||||
|
@ -749,8 +750,12 @@ CREATE TABLE IF NOT EXISTS `item` (
|
||||||
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
FOREIGN KEY (`parent-uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
FOREIGN KEY (`parent-uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
FOREIGN KEY (`thr-parent-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
FOREIGN KEY (`thr-parent-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`owner-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
|
||||||
|
FOREIGN KEY (`author-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
|
||||||
FOREIGN KEY (`causer-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
|
FOREIGN KEY (`causer-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
|
||||||
|
FOREIGN KEY (`vid`) REFERENCES `verb` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
|
||||||
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`contact-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
FOREIGN KEY (`psid`) REFERENCES `permissionset` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT
|
FOREIGN KEY (`psid`) REFERENCES `permissionset` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT
|
||||||
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Structure for all posts';
|
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Structure for all posts';
|
||||||
|
|
||||||
|
@ -826,8 +831,8 @@ CREATE TABLE IF NOT EXISTS `mail` (
|
||||||
`from-name` varchar(255) NOT NULL DEFAULT '' COMMENT 'name of the sender',
|
`from-name` varchar(255) NOT NULL DEFAULT '' COMMENT 'name of the sender',
|
||||||
`from-photo` varchar(255) NOT NULL DEFAULT '' COMMENT 'contact photo link of the sender',
|
`from-photo` varchar(255) NOT NULL DEFAULT '' COMMENT 'contact photo link of the sender',
|
||||||
`from-url` varchar(255) NOT NULL DEFAULT '' COMMENT 'profile linke of the sender',
|
`from-url` varchar(255) NOT NULL DEFAULT '' COMMENT 'profile linke of the sender',
|
||||||
`contact-id` varchar(255) NOT NULL DEFAULT '' COMMENT 'contact.id',
|
`contact-id` varchar(255) COMMENT 'contact.id',
|
||||||
`convid` int unsigned NOT NULL DEFAULT 0 COMMENT 'conv.id',
|
`convid` int unsigned COMMENT 'conv.id',
|
||||||
`title` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
`title` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
||||||
`body` mediumtext COMMENT '',
|
`body` mediumtext COMMENT '',
|
||||||
`seen` boolean NOT NULL DEFAULT '0' COMMENT 'if message visited it is 1',
|
`seen` boolean NOT NULL DEFAULT '0' COMMENT 'if message visited it is 1',
|
||||||
|
@ -895,8 +900,8 @@ CREATE TABLE IF NOT EXISTS `notify` (
|
||||||
`msg` mediumtext COMMENT '',
|
`msg` mediumtext COMMENT '',
|
||||||
`uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'Owner User id',
|
`uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'Owner User id',
|
||||||
`link` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
`link` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
||||||
`iid` int unsigned NOT NULL DEFAULT 0 COMMENT 'item.id',
|
`iid` int unsigned COMMENT 'item.id',
|
||||||
`parent` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
`parent` int unsigned COMMENT '',
|
||||||
`uri-id` int unsigned COMMENT 'Item-uri id of the related post',
|
`uri-id` int unsigned COMMENT 'Item-uri id of the related post',
|
||||||
`parent-uri-id` int unsigned COMMENT 'Item-uri id of the parent of the related post',
|
`parent-uri-id` int unsigned COMMENT 'Item-uri id of the parent of the related post',
|
||||||
`seen` boolean NOT NULL DEFAULT '0' COMMENT '',
|
`seen` boolean NOT NULL DEFAULT '0' COMMENT '',
|
||||||
|
@ -908,7 +913,11 @@ CREATE TABLE IF NOT EXISTS `notify` (
|
||||||
INDEX `seen_uid_date` (`seen`,`uid`,`date`),
|
INDEX `seen_uid_date` (`seen`,`uid`,`date`),
|
||||||
INDEX `uid_date` (`uid`,`date`),
|
INDEX `uid_date` (`uid`,`date`),
|
||||||
INDEX `uid_type_link` (`uid`,`type`,`link`(190)),
|
INDEX `uid_type_link` (`uid`,`type`,`link`(190)),
|
||||||
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
|
INDEX `uri-id` (`uri-id`),
|
||||||
|
INDEX `parent-uri-id` (`parent-uri-id`),
|
||||||
|
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`parent-uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||||
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='notifications';
|
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='notifications';
|
||||||
|
|
||||||
--
|
--
|
||||||
|
@ -917,15 +926,18 @@ CREATE TABLE IF NOT EXISTS `notify` (
|
||||||
CREATE TABLE IF NOT EXISTS `notify-threads` (
|
CREATE TABLE IF NOT EXISTS `notify-threads` (
|
||||||
`id` int unsigned NOT NULL auto_increment COMMENT 'sequential ID',
|
`id` int unsigned NOT NULL auto_increment COMMENT 'sequential ID',
|
||||||
`notify-id` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
`notify-id` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
||||||
`master-parent-item` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
`master-parent-item` int unsigned COMMENT '',
|
||||||
`master-parent-uri-id` int unsigned COMMENT 'Item-uri id of the parent of the related post',
|
`master-parent-uri-id` int unsigned COMMENT 'Item-uri id of the parent of the related post',
|
||||||
`parent-item` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
`parent-item` int unsigned NOT NULL DEFAULT 0 COMMENT '',
|
||||||
`receiver-uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
|
`receiver-uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
|
||||||
PRIMARY KEY(`id`),
|
PRIMARY KEY(`id`),
|
||||||
|
INDEX `master-parent-item` (`master-parent-item`),
|
||||||
INDEX `master-parent-uri-id` (`master-parent-uri-id`),
|
INDEX `master-parent-uri-id` (`master-parent-uri-id`),
|
||||||
INDEX `receiver-uid` (`receiver-uid`),
|
INDEX `receiver-uid` (`receiver-uid`),
|
||||||
INDEX `notify-id` (`notify-id`),
|
INDEX `notify-id` (`notify-id`),
|
||||||
FOREIGN KEY (`notify-id`) REFERENCES `notify` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
FOREIGN KEY (`notify-id`) REFERENCES `notify` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`master-parent-item`) REFERENCES `item` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`master-parent-uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
FOREIGN KEY (`receiver-uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
|
FOREIGN KEY (`receiver-uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||||
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
|
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
|
||||||
|
|
||||||
|
@ -1349,7 +1361,10 @@ CREATE TABLE IF NOT EXISTS `thread` (
|
||||||
INDEX `uri-id` (`uri-id`),
|
INDEX `uri-id` (`uri-id`),
|
||||||
FOREIGN KEY (`iid`) REFERENCES `item` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
FOREIGN KEY (`iid`) REFERENCES `item` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
|
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`contact-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (`owner-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
|
||||||
|
FOREIGN KEY (`author-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT
|
||||||
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Thread related data';
|
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Thread related data';
|
||||||
|
|
||||||
--
|
--
|
||||||
|
|
|
@ -476,21 +476,30 @@ function notification($params)
|
||||||
$notify_id = 0;
|
$notify_id = 0;
|
||||||
|
|
||||||
if ($show_in_notification_page) {
|
if ($show_in_notification_page) {
|
||||||
$notification = DI::notify()->insert([
|
$fields = [
|
||||||
'name' => $params['source_name'] ?? '',
|
'name' => $params['source_name'] ?? '',
|
||||||
'name_cache' => substr(strip_tags(BBCode::convert($params['source_name'])), 0, 255),
|
'name_cache' => substr(strip_tags(BBCode::convert($params['source_name'])), 0, 255),
|
||||||
'url' => $params['source_link'] ?? '',
|
'url' => $params['source_link'] ?? '',
|
||||||
'photo' => $params['source_photo'] ?? '',
|
'photo' => $params['source_photo'] ?? '',
|
||||||
'link' => $itemlink ?? '',
|
'link' => $itemlink ?? '',
|
||||||
'uid' => $params['uid'] ?? 0,
|
'uid' => $params['uid'] ?? 0,
|
||||||
'iid' => $item_id,
|
|
||||||
'uri-id' => $uri_id,
|
|
||||||
'parent' => $parent_id,
|
|
||||||
'parent-uri-id' => $parent_uri_id,
|
|
||||||
'type' => $params['type'] ?? '',
|
'type' => $params['type'] ?? '',
|
||||||
'verb' => $params['verb'] ?? '',
|
'verb' => $params['verb'] ?? '',
|
||||||
'otype' => $params['otype'] ?? '',
|
'otype' => $params['otype'] ?? '',
|
||||||
]);
|
];
|
||||||
|
if (!empty($item_id)) {
|
||||||
|
$fields['iid'] = $item_id;
|
||||||
|
}
|
||||||
|
if (!empty($uri_id)) {
|
||||||
|
$fields['uri-id'] = $uri_id;
|
||||||
|
}
|
||||||
|
if (!empty($item_id)) {
|
||||||
|
$fields['parent'] = $parent_id;
|
||||||
|
}
|
||||||
|
if (!empty($item_id)) {
|
||||||
|
$fields['parent-uri-id'] = $parent_uri_id;
|
||||||
|
}
|
||||||
|
$notification = DI::notify()->insert($fields);
|
||||||
|
|
||||||
// Notification insertion can be intercepted by an addon registering the 'enotify_store' hook
|
// Notification insertion can be intercepted by an addon registering the 'enotify_store' hook
|
||||||
if (!$notification) {
|
if (!$notification) {
|
||||||
|
|
|
@ -1054,6 +1054,14 @@ class DBStructure
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (self::existsTable('verb') && !DBA::exists('verb', ['id' => 0])) {
|
||||||
|
DBA::insert('verb', ['name' => '']);
|
||||||
|
$lastid = DBA::lastInsertId();
|
||||||
|
if ($lastid != 0) {
|
||||||
|
DBA::update('verb', ['id' => 0], ['id' => $lastid]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (self::existsTable('user') && !DBA::exists('user', ['uid' => 0])) {
|
if (self::existsTable('user') && !DBA::exists('user', ['uid' => 0])) {
|
||||||
$user = [
|
$user = [
|
||||||
"verified" => true,
|
"verified" => true,
|
||||||
|
|
|
@ -55,7 +55,7 @@
|
||||||
use Friendica\Database\DBA;
|
use Friendica\Database\DBA;
|
||||||
|
|
||||||
if (!defined('DB_UPDATE_VERSION')) {
|
if (!defined('DB_UPDATE_VERSION')) {
|
||||||
define('DB_UPDATE_VERSION', 1376);
|
define('DB_UPDATE_VERSION', 1377);
|
||||||
}
|
}
|
||||||
|
|
||||||
return [
|
return [
|
||||||
|
@ -686,7 +686,7 @@ return [
|
||||||
"fields" => [
|
"fields" => [
|
||||||
"id" => ["type" => "int unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1", "comment" => "sequential ID"],
|
"id" => ["type" => "int unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1", "comment" => "sequential ID"],
|
||||||
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "User id"],
|
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "User id"],
|
||||||
"fid" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["fcontact" => "id"], "comment" => ""],
|
"fid" => ["type" => "int unsigned", "relation" => ["fcontact" => "id"], "comment" => ""],
|
||||||
"contact-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id"], "comment" => ""],
|
"contact-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id"], "comment" => ""],
|
||||||
"knowyou" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
"knowyou" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
||||||
"duplex" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
"duplex" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
||||||
|
@ -710,7 +710,7 @@ return [
|
||||||
"uri" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
"uri" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
||||||
"uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table entry that contains the item uri"],
|
"uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table entry that contains the item uri"],
|
||||||
"uri-hash" => ["type" => "varchar(80)", "not null" => "1", "default" => "", "comment" => "RIPEMD-128 hash from uri"],
|
"uri-hash" => ["type" => "varchar(80)", "not null" => "1", "default" => "", "comment" => "RIPEMD-128 hash from uri"],
|
||||||
"parent" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"], "comment" => "item.id of the parent to this item if it is a reply of some form; otherwise this must be set to the id of this item"],
|
"parent" => ["type" => "int unsigned", "relation" => ["item" => "id"], "comment" => "item.id of the parent to this item if it is a reply of some form; otherwise this must be set to the id of this item"],
|
||||||
"parent-uri" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "uri of the top-level parent to this item"],
|
"parent-uri" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "uri of the top-level parent to this item"],
|
||||||
"parent-uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table that contains the top-level parent uri"],
|
"parent-uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table that contains the top-level parent uri"],
|
||||||
"thr-parent" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "If the parent of this item is not the top-level item in the conversation, the uri of the immediate parent; otherwise set to parent-uri"],
|
"thr-parent" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "If the parent of this item is not the top-level item in the conversation, the uri of the immediate parent; otherwise set to parent-uri"],
|
||||||
|
@ -722,12 +722,11 @@ return [
|
||||||
"changed" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => "Date that something in the conversation changed, indicating clients should fetch the conversation again"],
|
"changed" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => "Date that something in the conversation changed, indicating clients should fetch the conversation again"],
|
||||||
"gravity" => ["type" => "tinyint unsigned", "not null" => "1", "default" => "0", "comment" => ""],
|
"gravity" => ["type" => "tinyint unsigned", "not null" => "1", "default" => "0", "comment" => ""],
|
||||||
"network" => ["type" => "char(4)", "not null" => "1", "default" => "", "comment" => "Network from where the item comes from"],
|
"network" => ["type" => "char(4)", "not null" => "1", "default" => "", "comment" => "Network from where the item comes from"],
|
||||||
"owner-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["contact" => "id"], "comment" => "Link to the contact table with uid=0 of the owner of this item"],
|
"owner-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Link to the contact table with uid=0 of the owner of this item"],
|
||||||
"author-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["contact" => "id"], "comment" => "Link to the contact table with uid=0 of the author of this item"],
|
"author-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Link to the contact table with uid=0 of the author of this item"],
|
||||||
"causer-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Link to the contact table with uid=0 of the contact that caused the item creation"],
|
"causer-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Link to the contact table with uid=0 of the contact that caused the item creation"],
|
||||||
"icid" => ["type" => "int unsigned", "relation" => ["item-content" => "id"], "comment" => "Id of the item-content table entry that contains the whole item content"],
|
"icid" => ["type" => "int unsigned", "relation" => ["item-content" => "id"], "comment" => "Id of the item-content table entry that contains the whole item content"],
|
||||||
"iaid" => ["type" => "int unsigned", "relation" => ["item-activity" => "id"], "comment" => "Id of the item-activity table entry that contains the activity data"],
|
"vid" => ["type" => "smallint unsigned", "foreign" => ["verb" => "id", "on delete" => "restrict"], "comment" => "Id of the verb table entry that contains the activity verbs"],
|
||||||
"vid" => ["type" => "smallint unsigned", "relation" => ["verb" => "id"], "comment" => "Id of the verb table entry that contains the activity verbs"],
|
|
||||||
"extid" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
"extid" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
||||||
"post-type" => ["type" => "tinyint unsigned", "not null" => "1", "default" => "0", "comment" => "Post type (personal note, bookmark, ...)"],
|
"post-type" => ["type" => "tinyint unsigned", "not null" => "1", "default" => "0", "comment" => "Post type (personal note, bookmark, ...)"],
|
||||||
"global" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
"global" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
||||||
|
@ -737,7 +736,7 @@ return [
|
||||||
"deleted" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "item has been deleted"],
|
"deleted" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "item has been deleted"],
|
||||||
// User specific fields. Eventually they will move to user-item
|
// User specific fields. Eventually they will move to user-item
|
||||||
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "Owner id which owns this copy of the item"],
|
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "Owner id which owns this copy of the item"],
|
||||||
"contact-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["contact" => "id"], "comment" => "contact.id"],
|
"contact-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id"], "comment" => "contact.id"],
|
||||||
"wall" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "This item was posted to the wall of uid"],
|
"wall" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "This item was posted to the wall of uid"],
|
||||||
"origin" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "item originated at this site"],
|
"origin" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "item originated at this site"],
|
||||||
"pubmail" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
"pubmail" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
||||||
|
@ -748,8 +747,9 @@ return [
|
||||||
"psid" => ["type" => "int unsigned", "foreign" => ["permissionset" => "id", "on delete" => "restrict"], "comment" => "ID of the permission set of this post"],
|
"psid" => ["type" => "int unsigned", "foreign" => ["permissionset" => "id", "on delete" => "restrict"], "comment" => "ID of the permission set of this post"],
|
||||||
// It has to be decided whether these fields belong to the user or the structure
|
// It has to be decided whether these fields belong to the user or the structure
|
||||||
"resource-id" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => "Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type"],
|
"resource-id" => ["type" => "varchar(32)", "not null" => "1", "default" => "", "comment" => "Used to link other tables to items, it identifies the linked resource (e.g. photo) and if set must also set resource_type"],
|
||||||
"event-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["event" => "id"], "comment" => "Used to link to the event.id"],
|
"event-id" => ["type" => "int unsigned", "relation" => ["event" => "id"], "comment" => "Used to link to the event.id"],
|
||||||
// Deprecated fields. Will be removed in upcoming versions
|
// Deprecated fields. Will be removed in upcoming versions
|
||||||
|
"iaid" => ["type" => "int unsigned", "comment" => "Deprecated"],
|
||||||
"attach" => ["type" => "mediumtext", "comment" => "Deprecated"],
|
"attach" => ["type" => "mediumtext", "comment" => "Deprecated"],
|
||||||
"allow_cid" => ["type" => "mediumtext", "comment" => "Deprecated"],
|
"allow_cid" => ["type" => "mediumtext", "comment" => "Deprecated"],
|
||||||
"allow_gid" => ["type" => "mediumtext", "comment" => "Deprecated"],
|
"allow_gid" => ["type" => "mediumtext", "comment" => "Deprecated"],
|
||||||
|
@ -811,6 +811,7 @@ return [
|
||||||
"uid_eventid" => ["uid", "event-id"],
|
"uid_eventid" => ["uid", "event-id"],
|
||||||
"icid" => ["icid"],
|
"icid" => ["icid"],
|
||||||
"iaid" => ["iaid"],
|
"iaid" => ["iaid"],
|
||||||
|
"vid" => ["vid"],
|
||||||
"psid_wall" => ["psid", "wall"],
|
"psid_wall" => ["psid", "wall"],
|
||||||
"uri-id" => ["uri-id"],
|
"uri-id" => ["uri-id"],
|
||||||
"parent-uri-id" => ["parent-uri-id"],
|
"parent-uri-id" => ["parent-uri-id"],
|
||||||
|
@ -890,8 +891,8 @@ return [
|
||||||
"from-name" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "name of the sender"],
|
"from-name" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "name of the sender"],
|
||||||
"from-photo" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "contact photo link of the sender"],
|
"from-photo" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "contact photo link of the sender"],
|
||||||
"from-url" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "profile linke of the sender"],
|
"from-url" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "profile linke of the sender"],
|
||||||
"contact-id" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "relation" => ["contact" => "id"], "comment" => "contact.id"],
|
"contact-id" => ["type" => "varchar(255)", "relation" => ["contact" => "id"], "comment" => "contact.id"],
|
||||||
"convid" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["conv" => "id"], "comment" => "conv.id"],
|
"convid" => ["type" => "int unsigned", "relation" => ["conv" => "id"], "comment" => "conv.id"],
|
||||||
"title" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
"title" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
||||||
"body" => ["type" => "mediumtext", "comment" => ""],
|
"body" => ["type" => "mediumtext", "comment" => ""],
|
||||||
"seen" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "if message visited it is 1"],
|
"seen" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "if message visited it is 1"],
|
||||||
|
@ -958,10 +959,10 @@ return [
|
||||||
"msg" => ["type" => "mediumtext", "comment" => ""],
|
"msg" => ["type" => "mediumtext", "comment" => ""],
|
||||||
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "Owner User id"],
|
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "Owner User id"],
|
||||||
"link" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
"link" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
||||||
"iid" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"], "comment" => "item.id"],
|
"iid" => ["type" => "int unsigned", "relation" => ["item" => "id"], "comment" => "item.id"],
|
||||||
"parent" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"], "comment" => ""],
|
"parent" => ["type" => "int unsigned", "relation" => ["item" => "id"], "comment" => ""],
|
||||||
"uri-id" => ["type" => "int unsigned", "relation" => ["item-uri" => "id"], "comment" => "Item-uri id of the related post"],
|
"uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Item-uri id of the related post"],
|
||||||
"parent-uri-id" => ["type" => "int unsigned", "relation" => ["item-uri" => "id"], "comment" => "Item-uri id of the parent of the related post"],
|
"parent-uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Item-uri id of the parent of the related post"],
|
||||||
"seen" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
"seen" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
||||||
"verb" => ["type" => "varchar(100)", "not null" => "1", "default" => "", "comment" => ""],
|
"verb" => ["type" => "varchar(100)", "not null" => "1", "default" => "", "comment" => ""],
|
||||||
"otype" => ["type" => "varchar(10)", "not null" => "1", "default" => "", "comment" => ""],
|
"otype" => ["type" => "varchar(10)", "not null" => "1", "default" => "", "comment" => ""],
|
||||||
|
@ -973,6 +974,8 @@ return [
|
||||||
"seen_uid_date" => ["seen", "uid", "date"],
|
"seen_uid_date" => ["seen", "uid", "date"],
|
||||||
"uid_date" => ["uid", "date"],
|
"uid_date" => ["uid", "date"],
|
||||||
"uid_type_link" => ["uid", "type", "link(190)"],
|
"uid_type_link" => ["uid", "type", "link(190)"],
|
||||||
|
"uri-id" => ["uri-id"],
|
||||||
|
"parent-uri-id" => ["parent-uri-id"],
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"notify-threads" => [
|
"notify-threads" => [
|
||||||
|
@ -980,14 +983,15 @@ return [
|
||||||
"fields" => [
|
"fields" => [
|
||||||
"id" => ["type" => "int unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1", "comment" => "sequential ID"],
|
"id" => ["type" => "int unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1", "comment" => "sequential ID"],
|
||||||
"notify-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["notify" => "id"], "comment" => ""],
|
"notify-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["notify" => "id"], "comment" => ""],
|
||||||
"master-parent-item" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"], "comment" => ""],
|
"master-parent-item" => ["type" => "int unsigned", "foreign" => ["item" => "id"], "comment" => ""],
|
||||||
"master-parent-uri-id" => ["type" => "int unsigned", "relation" => ["item-uri" => "id"], "comment" => "Item-uri id of the parent of the related post"],
|
"master-parent-uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Item-uri id of the parent of the related post"],
|
||||||
"parent-item" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "comment" => ""],
|
"parent-item" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "comment" => ""],
|
||||||
"receiver-uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"],
|
"receiver-uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"],
|
||||||
"comment" => "User id"],
|
"comment" => "User id"],
|
||||||
],
|
],
|
||||||
"indexes" => [
|
"indexes" => [
|
||||||
"PRIMARY" => ["id"],
|
"PRIMARY" => ["id"],
|
||||||
|
"master-parent-item" => ["master-parent-item"],
|
||||||
"master-parent-uri-id" => ["master-parent-uri-id"],
|
"master-parent-uri-id" => ["master-parent-uri-id"],
|
||||||
"receiver-uid" => ["receiver-uid"],
|
"receiver-uid" => ["receiver-uid"],
|
||||||
"notify-id" => ["notify-id"],
|
"notify-id" => ["notify-id"],
|
||||||
|
@ -1368,9 +1372,9 @@ return [
|
||||||
"comment" => "sequential ID"],
|
"comment" => "sequential ID"],
|
||||||
"uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table entry that contains the item uri"],
|
"uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table entry that contains the item uri"],
|
||||||
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "User id"],
|
"uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "foreign" => ["user" => "uid"], "comment" => "User id"],
|
||||||
"contact-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["contact" => "id"], "comment" => ""],
|
"contact-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id"], "comment" => ""],
|
||||||
"owner-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["contact" => "id"], "comment" => "Item owner"],
|
"owner-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Item owner"],
|
||||||
"author-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["contact" => "id"], "comment" => "Item author"],
|
"author-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Item author"],
|
||||||
"created" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
"created" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
||||||
"edited" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
"edited" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
||||||
"commented" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
"commented" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
||||||
|
|
65
update.php
65
update.php
|
@ -788,11 +788,74 @@ function pre_update_1376()
|
||||||
return Update::FAILED;
|
return Update::FAILED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Photo::delete(["NOT `uid` IN (SELECT `uid` FROM `user`)"]);
|
||||||
|
|
||||||
if (!DBA::e("DELETE FROM `contact` WHERE NOT `uid` IN (SELECT `uid` FROM `user`)")) {
|
if (!DBA::e("DELETE FROM `contact` WHERE NOT `uid` IN (SELECT `uid` FROM `user`)")) {
|
||||||
return Update::FAILED;
|
return Update::FAILED;
|
||||||
}
|
}
|
||||||
|
|
||||||
Photo::delete(["NOT `uid` IN (SELECT `uid` FROM `user`)"]);
|
return Update::SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
function pre_update_1377()
|
||||||
|
{
|
||||||
|
DBStructure::checkInitialValues();
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `item` WHERE NOT `parent` IN (SELECT `id` FROM `item`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `item` WHERE NOT `author-id` IN (SELECT `id` FROM `contact`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `item` WHERE NOT `owner-id` IN (SELECT `id` FROM `contact`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("UPDATE `item` SET `contact-id` = `owner-id` WHERE NOT `contact-id` IN (SELECT `id` FROM `contact`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `thread` WHERE NOT `author-id` IN (SELECT `id` FROM `contact`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `thread` WHERE NOT `owner-id` IN (SELECT `id` FROM `contact`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("UPDATE `thread` SET `contact-id` = `owner-id` WHERE NOT `contact-id` IN (SELECT `id` FROM `contact`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("UPDATE `notify` SET `uri-id` = NULL WHERE `uri-id` = 0")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `notify` WHERE `uri-id` NOT IN (SELECT `id` FROM `item-uri`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("UPDATE `notify` SET `parent-uri-id` = NULL WHERE `parent-uri-id` = 0")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `notify` WHERE `parent-uri-id` NOT IN (SELECT `id` FROM `item-uri`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("UPDATE `notify-threads` SET `master-parent-uri-id` = NULL WHERE `master-parent-uri-id` = 0")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `notify-threads` WHERE `master-parent-uri-id` NOT IN (SELECT `id` FROM `item-uri`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DBA::e("DELETE FROM `notify-threads` WHERE `master-parent-item` NOT IN (SELECT `id` FROM `item`)")) {
|
||||||
|
return Update::FAILED;
|
||||||
|
}
|
||||||
|
|
||||||
return Update::SUCCESS;
|
return Update::SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue