X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=update.php;h=59340eed83c84dfe7281048e7145d5f61964b2a8;hb=35995633ae6f5737a324f9023b0648f01883d1d1;hp=8f937752599535f34bd58d941ca5e2c4a231a751;hpb=b2d7c4ec430d4706e634e982dbb56db45b153aec;p=friendica.git diff --git a/update.php b/update.php index 8f93775259..59340eed83 100644 --- a/update.php +++ b/update.php @@ -59,6 +59,7 @@ use Friendica\Model\Photo; use Friendica\Model\Post; use Friendica\Model\Profile; use Friendica\Model\User; +use Friendica\Protocol\Activity; use Friendica\Protocol\Delivery; use Friendica\Security\PermissionSet\Repository\PermissionSet; @@ -78,7 +79,7 @@ function update_1298() $a = new \stdClass(); $a->strings = []; - // First we get the the localizations + // First we get the localizations if (file_exists('view/lang/$lang/strings.php')) { include 'view/lang/$lang/strings.php'; } @@ -1244,3 +1245,135 @@ function update_1512() DI::config()->delete('nodeinfo', 'local_posts'); DI::config()->delete('nodeinfo', 'local_comments'); } + +function update_1513() +{ + DI::keyValue()->set('git_friendica_version', DI::config()->get('system', 'git_friendica_version')); + DI::keyValue()->set('twitter_application_name', DI::config()->get('twitter', 'application_name')); + + DI::config()->delete('system', 'git_friendica_version'); + DI::config()->delete('twitter', 'application_name'); +} + +function update_1514() +{ + if (file_exists(dirname(__FILE__) . '/config/node.config.php')) { + + $transactionalConfig = DI::config()->beginTransaction(); + $oldConfig = include dirname(__FILE__) . '/config/node.config.php'; + + if (is_array($oldConfig)) { + $categories = array_keys($oldConfig); + + foreach ($categories as $category) { + if (is_array($oldConfig[$category])) { + $keys = array_keys($oldConfig[$category]); + + foreach ($keys as $key) { + $transactionalConfig->set($category, $key, $oldConfig[$category][$key]); + } + } + } + } + + $transactionalConfig->commit(); + + // Rename the node.config.php so it won't get used, but it isn't deleted. + if (rename(dirname(__FILE__) . '/config/node.config.php', dirname(__FILE__) . '/config/node.config.php.bak')) { + return Update::SUCCESS; + } else { + return Update::FAILED; + } + } + + return Update::SUCCESS; +} + +function update_1515() +{ + DBA::update('verb', ['name' => Activity::READ], ['name' => 'https://www.w3.org/ns/activitystreams#read']); + DBA::update('verb', ['name' => Activity::VIEW], ['name' => 'https://joinpeertube.org/view']); + return Update::SUCCESS; +} + +function update_1516() +{ + // Fixes https://github.com/friendica/friendica/issues/12803 + // de-serialize multiple serialized values + $configTrans = DI::config()->beginTransaction(); + $configArray = DI::config()->getCache()->getDataBySource(Cache::SOURCE_DATA); + + foreach ($configArray as $category => $keyValues) { + if (is_array($keyValues)) { + foreach ($keyValues as $key => $value) { + $configTrans->set($category, $key, $value); + } + } + } + + $configTrans->commit(); + + return Update::SUCCESS; +} + +function update_1518() +{ + $users = DBA::select('user', ['uid']); + while ($user = DBA::fetch($users)) { + Contact::updateSelfFromUserID($user['uid']); + } + DBA::close($users); + + return Update::SUCCESS; +} + +function update_1520(): int +{ + DBA::update('user', ['parent-uid' => null], ['parent-uid' => 0]); + + return Update::SUCCESS; +} + +/** + * user-contact.remote_self was wrongly declared as boolean, possibly truncating integer values from contact.remote_self + * + * @return int + * @throws Exception + */ +function update_1524(): int +{ + $contacts = DBA::select('contact', ['uid', 'uri-id', 'remote_self'], ["`uid` != ?", 0]); + while ($contact = DBA::fetch($contacts)) { + Contact\User::insertForContactArray($contact); + } + + return Update::SUCCESS; +} + +function update_1525(): int +{ + // Use expected value for user.username + if (!DBA::e('UPDATE `user` u + JOIN `profile` p + ON p.`uid` = u.`uid` + SET u.`username` = p.`name` + WHERE p.`name` != ""')) { + return Update::FAILED; + } + + // Blank out deprecated field profile.name to avoid future confusion + if (!DBA::e('UPDATE `profile` p + SET p.`name` = ""')) { + return Update::FAILED; + } + + // Update users' self-contact name if needed + if (!DBA::e('UPDATE `contact` c + JOIN `user` u + ON u.`uid` = c.`uid` AND c.`self` = 1 + SET c.`name` = u.`username`')) { + return Update::FAILED; + } + + return Update::SUCCESS; +}