]> git.mxchange.org Git - friendica.git/blobdiff - update.php
Adhere feedback
[friendica.git] / update.php
index c7e2428af9d43f9b5a8b1e6b9465c68defd9d35d..85a06892f04c99a542545221ceba5bdfa4f0ad07 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()
@@ -974,7 +974,7 @@ function update_1429()
                return Update::FAILED;
        }
 
-       if (!DBA::e("UPDATE `fcontact` SET `uri-id` = null WHERE NOT `uri-id` IS NULL")) {
+       if (DBStructure::existsTable('fcontact') && !DBA::e("UPDATE `fcontact` SET `uri-id` = null WHERE NOT `uri-id` IS NULL")) {
                return Update::FAILED;
        }
 
@@ -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;
 }
@@ -1013,6 +1013,10 @@ function update_1438()
 
 function update_1439()
 {
+       if (!DBStructure::existsTable('fcontact')) {
+               return Update::SUCCESS;
+       }
+
        $intros = DBA::select('intro', ['id', 'fid'], ["NOT `fid` IS NULL AND `fid` != ?", 0]);
        while ($intro = DBA::fetch($intros)) {
                $fcontact = DBA::selectFirst('fcontact', ['url'], ['id' => $intro['fid']]);
@@ -1024,6 +1028,8 @@ function update_1439()
                }
        }
        DBA::close($intros);
+
+       return Update::SUCCESS;
 }
 
 function update_1440()
@@ -1121,3 +1127,103 @@ function update_1481()
        DBA::e("UPDATE `post-collection` INNER JOIN `post` ON `post`.`uri-id` = `post-collection`.`uri-id` SET `post-collection`.`author-id` = `post`.`author-id` WHERE `post-collection`.`author-id` IS null");
        return Update::SUCCESS;
 }
+
+function update_1491()
+{
+       DBA::update('contact', ['remote_self' => Contact::MIRROR_OWN_POST], ['remote_self' => Contact::MIRROR_FORWARDED]);
+       return Update::SUCCESS;
+}
+
+function update_1497()
+{
+       DBA::e("UPDATE `user` SET `last-activity` = DATE(`login_date`) WHERE `last-activity` IS NULL");
+       return Update::SUCCESS;
+}
+
+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();
+
+       return Update::SUCCESS;
+}
+
+function update_1509()
+{
+       $addons = DBA::selectToArray('addon');
+
+       $newConfig = DI::config()->beginTransaction();
+
+       foreach ($addons as $addon) {
+               $newConfig->set('addons', $addon['name'], [
+                       'last_update' => $addon['timestamp'],
+                       'admin' => (bool)$addon['plugin_admin'],
+               ]);
+       }
+
+       $newConfig->commit();
+
+       return Update::SUCCESS;
+}
+
+function update_1510()
+{
+       $blocks = DBA::select('pconfig', ['uid', 'v'], ['cat' => 'blockem', 'k' => 'words']);
+       while ($block = DBA::fetch($blocks)) {
+               foreach (explode(',', $block['v']) as $account) {
+                       $id = Contact::getIdForURL(trim($account), 0, false);
+                       if (empty($id)) {
+                               continue;
+                       }
+                       Contact\User::setCollapsed($id, $block['uid'], true);
+               }
+       }
+       return Update::SUCCESS;
+}