]> git.mxchange.org Git - friendica.git/blobdiff - update.php
Merge pull request #12606 from nupplaphil/bug/file_put
[friendica.git] / update.php
index 82f4fba58bc847c106cd72f6a9a5f03434aedfc7..1dbf78e06f915647cf6300c4886623fe4ca8fdaa 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2010-2022, the Friendica project
+ * @copyright Copyright (C) 2010-2023, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -59,8 +59,8 @@ use Friendica\Model\Photo;
 use Friendica\Model\Post;
 use Friendica\Model\Profile;
 use Friendica\Model\User;
+use Friendica\Protocol\Delivery;
 use Friendica\Security\PermissionSet\Repository\PermissionSet;
-use Friendica\Worker\Delivery;
 
 // Post-update script of PR 5751
 function update_1298()
@@ -982,7 +982,7 @@ function update_1429()
                return Update::FAILED;
        }
 
-       DI::config()->set('system', 'post_update_version', 1423);
+       DI::keyValue()->set('post_update_version', 1423);
 
        return Update::SUCCESS;
 }
@@ -1145,3 +1145,52 @@ function update_1502()
        DBA::e("UPDATE `pconfig` SET `cat` = 'calendar' WHERE `k` = 'first_day_of_week'");
        return Update::SUCCESS;
 }
+
+function update_1505()
+{
+       if (!DBStructure::existsTable('config')) {
+               return Update::SUCCESS;
+       }
+
+       $conditions = [
+               "((`cat`  = ?) AND ((`k` LIKE ?) OR (`k` = ?) OR (`k` LIKE ?) OR (`k` = ?))) OR " .
+               "((`cat` != ?) AND  (`k` LIKE ?)) OR " .
+               "((`cat`  = ?) AND  (`k` LIKE ?))",
+               "system",
+               "post_update_%",
+               "worker_last_cleaned",
+               "last%",
+               "worker_daemon_mode",
+               "system",
+               "last_%",
+               "database",
+               "update_%",
+       ];
+
+       $postUpdateEntries = DBA::selectToArray('config', ['cat', 'k', 'v'], $conditions);
+
+       foreach ($postUpdateEntries as $postUpdateEntry) {
+               if ($postUpdateEntry['cat'] === 'system') {
+                       DI::keyValue()->set($postUpdateEntry['k'], $postUpdateEntry['v']);
+               } else {
+                       DI::keyValue()->set(sprintf('%s_%s', $postUpdateEntry['cat'], $postUpdateEntry['k']), $postUpdateEntry['v']);
+               }
+       }
+
+       return DBA::delete('config', $conditions) ? Update::SUCCESS : Update::FAILED;
+}
+
+function update_1508()
+{
+       $config = DBA::selectToArray('config');
+
+       $newConfig = DI::config()->beginTransaction();
+
+       foreach ($config as $entry) {
+               $newConfig->set($entry['cat'], $entry['k'], $entry['v']);
+       }
+
+       $newConfig->commit();
+
+       DBA::e("TRUNCATE TABLE `config`");
+}