X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=update.php;h=924fac54589533d29c12d7dad80c610618e2aa87;hb=7bf00984ec7cb6e085242ff50af7fd2bd1de2711;hp=1690e0434ea7355ba72bec79c3e82a42a907d8a2;hpb=e33733f2977e796f5c3531b45fda9019ca574090;p=friendica.git diff --git a/update.php b/update.php index 1690e0434e..924fac5458 100644 --- a/update.php +++ b/update.php @@ -12,6 +12,7 @@ use Friendica\Model\Contact; use Friendica\Model\GContact; use Friendica\Model\Item; use Friendica\Model\User; +use Friendica\Model\Storage; use Friendica\Util\DateTimeFormat; use Friendica\Worker\Delivery; @@ -22,7 +23,7 @@ use Friendica\Worker\Delivery; * This function is responsible for doing post update changes to the data * (not the structure) in the database. * - * Database structure changes are done in config/dbstructure.config.php + * Database structure changes are done in static/dbstructure.config.php * * If there is a need for a post process to a structure change, update this file * by adding a new function at the end with the number of the new DB_UPDATE_VERSION. @@ -33,8 +34,8 @@ use Friendica\Worker\Delivery; * You are currently on version 4711 and you are preparing changes that demand an update script. * * 1. Create a function "update_4712()" here in the update.php - * 2. Apply the needed structural changes in config/dbStructure.php - * 3. Set DB_UPDATE_VERSION in config/dbstructure.config.php to 4712. + * 2. Apply the needed structural changes in static/dbStructure.php + * 3. Set DB_UPDATE_VERSION in static/dbstructure.config.php to 4712. * * If you need to run a script before the database update, name the function "pre_update_4712()" */ @@ -373,12 +374,61 @@ function update_1309() function update_1315() { DBA::delete('item-delivery-data', ['postopts' => '', 'inform' => '', 'queue_count' => 0, 'queue_done' => 0]); + return Update::SUCCESS; } -function update_1317() +function update_1318() { DBA::update('profile', ['marital' => "In a relation"], ['marital' => "Unavailable"]); DBA::update('profile', ['marital' => "Single"], ['marital' => "Available"]); Worker::add(PRIORITY_LOW, 'ProfileUpdate'); + return Update::SUCCESS; +} + +function update_1323() +{ + $users = DBA::select('user', ['uid']); + while ($user = DBA::fetch($users)) { + Contact::updateSelfFromUserID($user['uid']); + } + DBA::close($users); + + return Update::SUCCESS; +} + +function update_1327() +{ + $contacts = DBA::select('contact', ['uid', 'id', 'blocked', 'readonly'], ["`uid` != ? AND (`blocked` OR `readonly`) AND NOT `pending`", 0]); + while ($contact = DBA::fetch($contacts)) { + Contact::setBlockedForUser($contact['id'], $contact['uid'], $contact['blocked']); + Contact::setIgnoredForUser($contact['id'], $contact['uid'], $contact['readonly']); + } + DBA::close($contacts); + + return Update::SUCCESS; +} + +function update_1330() +{ + $currStorage = Config::get('storage', 'class', ''); + + // set the name of the storage instead of the classpath as config + if (!empty($currStorage)) { + /** @var Storage\IStorage $currStorage */ + if (!Config::set('storage', 'name', $currStorage::getName())) { + return Update::FAILED; + } + + // try to delete the class since it isn't needed. This won't work with config files + Config::delete('storage', 'class'); + } + + // Update attachments and photos + if (!DBA::p("UPDATE `photo` SET `photo`.`backend-class` = SUBSTR(`photo`.`backend-class`, 22) WHERE `photo`.`backend-class` LIKE 'Friendica\\Model\\Storage\\%'") || + !DBA::p("UPDATE `attach` SET `attach`.`backend-class` = SUBSTR(`attach`.`backend-class`, 22) WHERE `attach`.`backend-class` LIKE 'Friendica\\Model\\Storage\\%'")) { + return Update::FAILED; + }; + + return Update::SUCCESS; }