]> git.mxchange.org Git - friendica.git/blobdiff - update.php
Merge pull request #8079 from ozero/patch-1
[friendica.git] / update.php
index 90018b62d6a9319247bd31c747977f4387a4ea50..924fac54589533d29c12d7dad80c610618e2aa87 100644 (file)
@@ -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;
 
@@ -408,15 +409,26 @@ function update_1327()
        return Update::SUCCESS;
 }
 
-function update_1329()
+function update_1330()
 {
        $currStorage = Config::get('storage', 'class', '');
 
+       // set the name of the storage instead of the classpath as config
        if (!empty($currStorage)) {
-               $storageName = array_key_first(\Friendica\Core\StorageManager::DEFAULT_BACKENDS, $currStorage);
-               Config::set('storage', 'name', $storageName);
+               /** @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;
 }