diff options
author | redmatrix <git@macgirvin.com> | 2016-06-27 04:00:10 -0700 |
---|---|---|
committer | redmatrix <git@macgirvin.com> | 2016-06-27 04:00:10 -0700 |
commit | 85d2ad4aea106417dc3d8ce2429d13dd858c5201 (patch) | |
tree | 72e03b3fe379829a4e2f9c521366fb14e1eaa970 /install | |
parent | d5d5d78e3aded9a3238ccb7e93b4c6fd4b873331 (diff) | |
parent | 8d298d5a068845856c9827c0d2ea3f02f1399d72 (diff) | |
download | volse-hubzilla-85d2ad4aea106417dc3d8ce2429d13dd858c5201.tar.gz volse-hubzilla-85d2ad4aea106417dc3d8ce2429d13dd858c5201.tar.bz2 volse-hubzilla-85d2ad4aea106417dc3d8ce2429d13dd858c5201.zip |
Merge branch 'dev' into perms
Diffstat (limited to 'install')
-rw-r--r-- | install/schema_mysql.sql | 24 | ||||
-rw-r--r-- | install/schema_postgres.sql | 28 | ||||
-rw-r--r-- | install/update.php | 109 |
3 files changed, 154 insertions, 7 deletions
diff --git a/install/schema_mysql.sql b/install/schema_mysql.sql index a536c3f9a..d2a5ac85e 100644 --- a/install/schema_mysql.sql +++ b/install/schema_mysql.sql @@ -1,7 +1,7 @@ CREATE TABLE IF NOT EXISTS `abconfig` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `chan` char(255) NOT NULL DEFAULT '', + `chan` int(10) unsigned NOT NULL DEFAULT '', `xchan` char(255) NOT NULL DEFAULT '', `cat` char(255) NOT NULL DEFAULT '', `k` char(255) NOT NULL DEFAULT '', @@ -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..64cf37f7e 100644 --- a/install/schema_postgres.sql +++ b/install/schema_postgres.sql @@ -1,6 +1,6 @@ CREATE TABLE "abconfig" ( "id" serial NOT NULL, - "chan" text NOT NULL, + "chan" bigint NOT NULL, "xchan" text NOT NULL, "cat" text NOT NULL, "k" text NOT NULL, @@ -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 908f60498..3cb5010eb 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ <?php -define( 'UPDATE_VERSION' , 1176 ); +define( 'UPDATE_VERSION' , 1179 ); /** * @@ -2254,3 +2254,110 @@ function update_r1175() { return UPDATE_FAILED; } + + +function update_r1176() { + + $r = q("select * from item_id where true"); + if($r) { + foreach($r as $rr) { + \Zotlabs\Lib\IConfig::Set($rr['iid'],'system',$rr['service'],$rr['sid'],true); + } + } + return UPDATE_SUCCESS; + +} + +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; +} + + +function update_r1178() { + + $c2 = null; + + $c1 = q("SELECT channel_id, channel_hash from channel where true"); + if($c1) { + $c2 = q("SELECT id, chan from abconfig where true"); + if($c2) { + for($x = 0; $x < count($c2); $x ++) { + foreach($c1 as $c) { + if($c['channel_hash'] == $c2[$x]['chan']) { + $c2[$x]['chan'] = $c['channel_id']; + break; + } + } + } + } + } + + $r1 = q("ALTER TABLE abconfig CHANGE chan chan int(10) unsigned NOT NULL DEFAULT '0' "); + + if($c2) { + foreach($c2 as $c) { + q("UPDATE abconfig SET chan = %d where id = %d", + intval($c['chan']), + intval($c['id']) + ); + } + } + + if($r1) + return UPDATE_SUCCESS; + return UPDATE_FAILED; +}
\ No newline at end of file |