aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xboot.php2
-rw-r--r--install/schema_mysql.sql22
-rw-r--r--install/schema_postgres.sql26
-rw-r--r--install/update.php62
4 files changed, 105 insertions, 7 deletions
diff --git a/boot.php b/boot.php
index 0ce4ab93e..764e81292 100755
--- a/boot.php
+++ b/boot.php
@@ -48,7 +48,7 @@ define ( 'PLATFORM_NAME', 'hubzilla' );
define ( 'STD_VERSION', '1.9' );
define ( 'ZOT_REVISION', 1.1 );
-define ( 'DB_UPDATE_VERSION', 1177 );
+define ( 'DB_UPDATE_VERSION', 1178 );
/**
diff --git a/install/schema_mysql.sql b/install/schema_mysql.sql
index a536c3f9a..13fc54aba 100644
--- a/install/schema_mysql.sql
+++ b/install/schema_mysql.sql
@@ -199,6 +199,26 @@ CREATE TABLE IF NOT EXISTS `cache` (
PRIMARY KEY (`k`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+CREATE TABLE IF NOT EXISTS `cal` (
+ `cal_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `cal_aid` int(10) unsigned NOT NULL DEFAULT '0',
+ `cal_uid` int(10) unsigned NOT NULL DEFAULT '0',
+ `cal_hash` varchar(255) NOT NULL DEFAULT '',
+ `cal_name` varchar(255) NOT NULL DEFAULT '',
+ `uri` varchar(255) NOT NULL DEFAULT '',
+ `logname` varchar(255) NOT NULL DEFAULT '',
+ `pass` varchar(255) NOT NULL DEFAULT '',
+ `ctag` varchar(255) NOT NULL DEFAULT '',
+ `synctoken` varchar(255) NOT NULL DEFAULT '',
+ `cal_types` varchar(255) NOT NULL DEFAULT '',
+ PRIMARY KEY (`cal_id`),
+ KEY `cal_aid` (`cal_aid`),
+ KEY `cal_uid` (`cal_uid`),
+ KEY `cal_hash` (`cal_hash`),
+ KEY `cal_name` (`cal_name`),
+ KEY `cal_types` (`cal_types`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
CREATE TABLE IF NOT EXISTS `channel` (
`channel_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`channel_account_id` int(10) unsigned NOT NULL DEFAULT '0',
@@ -394,6 +414,7 @@ CREATE TABLE IF NOT EXISTS `event` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`aid` int(10) unsigned NOT NULL DEFAULT '0',
`uid` int(11) NOT NULL DEFAULT '0',
+ `cal_id` int(11) unsigned NOT NULL DEFAULT '0',
`event_xchan` char(255) NOT NULL DEFAULT '',
`event_hash` char(255) NOT NULL DEFAULT '',
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
@@ -420,6 +441,7 @@ CREATE TABLE IF NOT EXISTS `event` (
`event_vdata` text NOT NULL,
PRIMARY KEY (`id`),
KEY `uid` (`uid`),
+ KEY `cal_id` (`cal_id`),
KEY `etype` (`etype`),
KEY `dtstart` (`dtstart`),
KEY `dtend` (`dtend`),
diff --git a/install/schema_postgres.sql b/install/schema_postgres.sql
index b637fea43..9473252e6 100644
--- a/install/schema_postgres.sql
+++ b/install/schema_postgres.sql
@@ -193,6 +193,26 @@ CREATE TABLE "cache" (
"updated" timestamp NOT NULL,
PRIMARY KEY ("k")
);
+CREATE TABLE "cal" (
+ "cal_id" serial NOT NULL,
+ "cal_aid" bigint NOT NULL DEFAULT '0',
+ "cal_uid" bigint NOT NULL DEFAULT '0',
+ "cal_hash" text NOT NULL,
+ "cal_name" text NOT NULL,
+ "uri" text NOT NULL,
+ "logname" text NOT NULL,
+ "pass" text NOT NULL,
+ "ctag" text NOT NULL,
+ "synctoken" text NOT NULL,
+ "cal_types" text NOT NULL DEFAULT "0",
+ PRIMARY KEY ("cal_id")
+);
+create index "cal_hash_idx" on cal ("cal_hash");
+create index "cal_name_idx" on cal ("cal_name");
+create index "cal_types_idx" on cal ("cal_types");
+create index "cal_aid_idx" on cal ("cal_aid");
+create index "cal_uid_idx" on cal ("cal_uid");
+
CREATE TABLE "channel" (
"channel_id" serial NOT NULL,
"channel_account_id" bigint NOT NULL DEFAULT '0',
@@ -380,14 +400,11 @@ create index "dreport_xchan" on dreport ("dreport_xchan");
create index "dreport_queue" on dreport ("dreport_queue");
create index "dreport_channel" on dreport ("dreport_channel");
-
-
-
-
CREATE TABLE "event" (
"id" serial NOT NULL,
"aid" bigint NOT NULL DEFAULT '0',
"uid" bigint NOT NULL,
+ "cal_id" bigint NOT NULL DEFAULT '0',
"event_xchan" text NOT NULL DEFAULT '',
"event_hash" text NOT NULL DEFAULT '',
"created" timestamp NOT NULL DEFAULT '0001-01-01 00:00:00',
@@ -415,6 +432,7 @@ CREATE TABLE "event" (
PRIMARY KEY ("id")
);
create index "event_uid_idx" on event ("uid");
+create index "event_cal_idx" on event ("cal_id");
create index "event_etype_idx" on event ("etype");
create index "event_dtstart_idx" on event ("dtstart");
create index "event_dtend_idx" on event ("dtend");
diff --git a/install/update.php b/install/update.php
index e47ebf07f..241de78e1 100644
--- a/install/update.php
+++ b/install/update.php
@@ -1,6 +1,6 @@
<?php
-define( 'UPDATE_VERSION' , 1177 );
+define( 'UPDATE_VERSION' , 1178 );
/**
*
@@ -2266,4 +2266,62 @@ function update_r1176() {
}
return UPDATE_SUCCESS;
-} \ No newline at end of file
+}
+
+function update_r1177() {
+
+ if(ACTIVE_DBTYPE == DBTYPE_POSTGRES) {
+ $r1 = q("alter table event add cal_id bigint NOT NULL DEFAULT '0'");
+ $r2 = q("create index \"event_cal_idx\" on event (\"cal_id\") ");
+
+ $r3 = q("CREATE TABLE \"cal\" (
+ \"cal_id\" serial NOT NULL,
+ \"cal_aid\" bigint NOT NULL DEFAULT '0',
+ \"cal_uid\" bigint NOT NULL DEFAULT '0',
+ \"cal_hash\" text NOT NULL,
+ \"cal_name\" text NOT NULL,
+ \"uri\" text NOT NULL,
+ \"logname\" text NOT NULL,
+ \"pass\" text NOT NULL,
+ \"ctag\" text NOT NULL,
+ \"synctoken\" text NOT NULL,
+ \"cal_types\" text NOT NULL,
+ PRIMARY KEY (\"cal_id\") ");
+ $r4 = q("create index \"cal_hash_idx\" on cal (\"cal_hash\") ");
+ $r5 = q("create index \"cal_name_idx\" on cal (\"cal_name\") ");
+ $r6 = q("create index \"cal_types_idx\" on cal (\"cal_types\") ");
+ $r7 = q("create index \"cal_aid_idx\" on cal (\"cal_aid\") ");
+ $r8 = q("create index \"cal_uid_idx\" on cal (\"cal_uid\") ");
+ $r = $r1 && $r2 && $r3 && $r4 && $r5 && $r6 && $r7 && $r8;
+ }
+ else {
+ $r1 = q("alter table event add cal_id int(10) unsigned NOT NULL DEFAULT '0',
+ add index ( cal_id ) ");
+
+ $r2 = q("CREATE TABLE IF NOT EXISTS `cal` (
+ `cal_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `cal_aid` int(10) unsigned NOT NULL DEFAULT '0',
+ `cal_uid` int(10) unsigned NOT NULL DEFAULT '0',
+ `cal_hash` varchar(255) NOT NULL DEFAULT '',
+ `cal_name` varchar(255) NOT NULL DEFAULT '',
+ `uri` varchar(255) NOT NULL DEFAULT '',
+ `logname` varchar(255) NOT NULL DEFAULT '',
+ `pass` varchar(255) NOT NULL DEFAULT '',
+ `ctag` varchar(255) NOT NULL DEFAULT '',
+ `synctoken` varchar(255) NOT NULL DEFAULT '',
+ `cal_types` varchar(255) NOT NULL DEFAULT '',
+ PRIMARY KEY (`cal_id`),
+ KEY `cal_aid` (`cal_aid`),
+ KEY `cal_uid` (`cal_uid`),
+ KEY `cal_hash` (`cal_hash`),
+ KEY `cal_name` (`cal_name`),
+ KEY `cal_types` (`cal_types`)
+ ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ");
+
+ $r = $r1 && $r2;
+ }
+
+ if($r)
+ return UPDATE_SUCCESS;
+ return UPDATE_FAILED;
+}