X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=update.php;h=fe8052b00ff9106bcc141bb6276e755f9601530a;hb=a7601bc1a6c43221c9d01361e39da52066682c2e;hp=5b4d99603cff24b6d8ce02beb9ef47a7f887cea4;hpb=878067101f09b20014fab4c7f1265656528575d8;p=friendica.git diff --git a/update.php b/update.php index 5b4d99603c..fe8052b00f 100644 --- a/update.php +++ b/update.php @@ -11,24 +11,24 @@ * Each function in this file is named update_nnnn() where nnnn is an increasing number * which began counting at 1000. * - * At the top of the file "boot.php" is a define for BUILD_ID. Any time there is a change + * At the top of the file "boot.php" is a define for DB_UPDATE_VERSION. Any time there is a change * to the database schema or one which requires an upgrade path from the existing application, - * the BUILD_ID is incremented. + * the DB_UPDATE_VERSION is incremented. * - * The current BUILD_ID is stored in the config area of the database. If the application starts up - * and BUILD_ID is greater than the last stored build number, we will process every update function - * in order from the currently stored value to the new BUILD_ID. This is expected to bring the system + * The current DB_UPDATE_VERSION is stored in the config area of the database. If the application starts up + * and DB_UPDATE_VERSION is greater than the last stored build number, we will process every update function + * in order from the currently stored value to the new DB_UPDATE_VERSION. This is expected to bring the system * up to current without requiring re-installation or manual intervention. * - * Once the upgrade functions have completed, the current BUILD_ID is stored as the current value. - * The BUILD_ID will always be one greater than the last numbered script in this file. + * Once the upgrade functions have completed, the current DB_UPDATE_VERSION is stored as the current value. + * The DB_UPDATE_VERSION will always be one greater than the last numbered script in this file. * * If you change the database schema, the following are required: * 1. Update the file database.sql to match the new schema. - * 2. Update this file by adding a new function at the end with the number of the current BUILD_ID. + * 2. Update this file by adding a new function at the end with the number of the current DB_UPDATE_VERSION. * This function should modify the current database schema and perform any other steps necessary * to ensure that upgrade is silent and free from requiring interaction. - * 3. Increment the BUILD_ID in boot.php + * 3. Increment the DB_UPDATE_VERSION in boot.php * 4. TEST the upgrade prior to checkin and filing a pull request. * */ @@ -251,3 +251,129 @@ function update_1025() { q("ALTER TABLE `user` ADD `maxreq` int(11) NOT NULL DEFAULT '10' AFTER `pwdreset` "); } +function update_1026() { + q("CREATE TABLE IF NOT EXISTS `hook` ( + `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , + `hook` CHAR( 255 ) NOT NULL , + `file` CHAR( 255 ) NOT NULL , + `function` CHAR( 255 ) NOT NULL + ) ENGINE = MYISAM DEFAULT CHARSET=utf8 "); +} + + +function update_1027() { + q("CREATE TABLE IF NOT EXISTS `addon` ( + `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , + `name` CHAR( 255 ) NOT NULL , + `version` CHAR( 255 ) NOT NULL , + `installed` TINYINT( 1 ) NOT NULL DEFAULT '0' + ) ENGINE = MYISAM DEFAULT CHARSET=utf8 "); +} + +function update_1028() { + q("ALTER TABLE `user` ADD `openidserver` text NOT NULL AFTER `deny_gid` "); +} + +function update_1029() { + q("ALTER TABLE `contact` ADD `info` MEDIUMTEXT NOT NULL AFTER `reason` "); +} + +function update_1030() { + q("ALTER TABLE `contact` ADD `bdyear` CHAR( 4 ) NOT NULL COMMENT 'birthday notify flag' AFTER `profile-id` "); + + q("CREATE TABLE IF NOT EXISTS `event` ( + `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , + `uid` INT NOT NULL , + `cid` INT NOT NULL , + `created` DATETIME NOT NULL , + `edited` DATETIME NOT NULL , + `start` DATETIME NOT NULL , + `finish` DATETIME NOT NULL , + `desc` TEXT NOT NULL , + `location` TEXT NOT NULL , + `type` CHAR( 255 ) NOT NULL , + `adjust` TINYINT( 1 ) NOT NULL DEFAULT '1', + `allow_cid` MEDIUMTEXT NOT NULL , + `allow_gid` MEDIUMTEXT NOT NULL , + `deny_cid` MEDIUMTEXT NOT NULL , + `deny_gid` MEDIUMTEXT NOT NULL + ) ENGINE = MYISAM DEFAULT CHARSET=utf8 "); + + +} + +function update_1031() { + // Repair any bad links that slipped into the item table + $r = q("SELECT `id`, `object` FROM `item` WHERE `object` != '' "); + if($r && count($r)) { + foreach($r as $rr) { + if(strstr($rr['object'],'type="http')) { + q("UPDATE `item` SET `object` = '%s' WHERE `id` = %d LIMIT 1", + dbesc(str_replace('type="http','href="http',$rr['object'])), + intval($rr['id']) + ); + } + } + } +} + +function update_1032() { + q("ALTER TABLE `profile` ADD `pdesc` CHAR( 255 ) NOT NULL AFTER `name` "); +} + +function update_1033() { + q("CREATE TABLE IF NOT EXISTS `cache` ( + `k` CHAR( 255 ) NOT NULL PRIMARY KEY , + `v` TEXT NOT NULL, + `updated` DATETIME NOT NULL + ) ENGINE = MYISAM DEFAULT CHARSET=utf8;"); +} + + +function update_1034() { + + // If you have any of these parent-less posts they can cause problems, and + // we need to delete them. You can't see them anyway. + // Legitimate items will usually get re-created on the next + // pull from the hub. + // But don't get rid of a post that may have just come in + // and may not yet have the parent id set. + + q("DELETE FROM `item` WHERE `parent` = 0 AND `created` < UTC_TIMESTAMP() - INTERVAL 2 MINUTE"); + +} + + +function update_1035() { + + q("ALTER TABLE `contact` ADD `success_update` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `last-update` "); + +} + +function update_1036() { + + $r = dbq("SELECT * FROM `contact` WHERE `network` = 'dfrn' && `photo` LIKE '%include/photo%' "); + if(count($r)) { + foreach($r as $rr) { + q("UPDATE `contact` SET `photo` = '%s', `thumb` = '%s', `micro` = '%s' WHERE `id` = %d LIMIT 1", + dbesc(str_replace('include/photo','photo',$rr['photo'])), + dbesc(str_replace('include/photo','photo',$rr['thumb'])), + dbesc(str_replace('include/photo','photo',$rr['micro'])), + intval($rr['id'])); + } + } +} + +function update_1037() { + + q("ALTER TABLE `contact` CHANGE `lrdd` `alias` CHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL "); + +} + +function update_1038() { + q("ALTER TABLE `item` ADD `plink` CHAR( 255 ) NOT NULL AFTER `target` "); +} + +function update_1039() { + q("ALTER TABLE `addon` ADD `timestamp` BIGINT NOT NULL DEFAULT '0'"); +}