db update for abconfig transition

This commit is contained in:
redmatrix 2016-06-23 18:35:01 -07:00
parent b19bbf5473
commit 51e2ef39c2
4 changed files with 40 additions and 4 deletions

View File

@ -47,7 +47,7 @@ define ( 'PLATFORM_NAME', 'hubzilla' );
define ( 'STD_VERSION', '1.9' );
define ( 'ZOT_REVISION', '1.1' );
define ( 'DB_UPDATE_VERSION', 1178 );
define ( 'DB_UPDATE_VERSION', 1179 );
/**

View File

@ -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 '',

View File

@ -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,

View File

@ -1,6 +1,6 @@
<?php
define( 'UPDATE_VERSION' , 1178 );
define( 'UPDATE_VERSION' , 1179 );
/**
*
@ -2325,3 +2325,39 @@ function update_r1177() {
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;
}