]> git.mxchange.org Git - friendica.git/blobdiff - src/Worker/CronJobs.php
Merge pull request #8912 from annando/subscribed-tags
[friendica.git] / src / Worker / CronJobs.php
index 83c85fa440f55706787571a877492901122b82b8..319a369d1fa69a6953059bedb954b81afe8199b2 100644 (file)
@@ -1,7 +1,24 @@
 <?php
 /**
- * @file src/worker/CronJobs.php
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ *
  */
+
 namespace Friendica\Worker;
 
 use Friendica\App;
@@ -67,10 +84,6 @@ class CronJobs
                                self::clearCache($a);
                                break;
 
-                       case 'repair_diaspora':
-                               self::repairDiaspora($a);
-                               break;
-
                        case 'repair_database':
                                self::repairDatabase();
                                break;
@@ -115,6 +128,7 @@ class CronJobs
                while ($user = DBA::fetch($users)) {
                        User::remove($user['uid']);
                }
+               DBA::close($users);
 
                // delete user records for recently removed accounts
                $users = DBA::select('user', ['uid'], ["`account_removed` AND `account_expires_on` < UTC_TIMESTAMP() "]);
@@ -127,6 +141,7 @@ class CronJobs
 
                        DBA::delete('user', ['uid' => $user['uid']]);
                }
+               DBA::close($users);
        }
 
        /**
@@ -227,46 +242,6 @@ class CronJobs
                DI::config()->set('system', 'cache_last_cleared', time());
        }
 
-       /**
-        * Repair missing values in Diaspora contacts
-        *
-        * @param App $a
-        * @throws \Friendica\Network\HTTPException\InternalServerErrorException
-        * @throws \ImagickException
-        */
-       private static function repairDiaspora(App $a)
-       {
-               $starttime = time();
-
-               $r = q("SELECT `id`, `url` FROM `contact`
-                       WHERE `network` = '%s' AND (`batch` = '' OR `notify` = '' OR `poll` = '' OR pubkey = '')
-                               ORDER BY RAND() LIMIT 50", DBA::escape(Protocol::DIASPORA));
-               if (!DBA::isResult($r)) {
-                       return;
-               }
-
-               foreach ($r as $contact) {
-                       // Quit the loop after 3 minutes
-                       if (time() > ($starttime + 180)) {
-                               return;
-                       }
-
-                       if (!GServer::reachable($contact["url"])) {
-                               continue;
-                       }
-
-                       $data = Probe::uri($contact["url"]);
-                       if ($data["network"] != Protocol::DIASPORA) {
-                               continue;
-                       }
-
-                       Logger::log("Repair contact " . $contact["id"] . " " . $contact["url"], Logger::DEBUG);
-                       q("UPDATE `contact` SET `batch` = '%s', `notify` = '%s', `poll` = '%s', pubkey = '%s' WHERE `id` = %d",
-                               DBA::escape($data["batch"]), DBA::escape($data["notify"]), DBA::escape($data["poll"]), DBA::escape($data["pubkey"]),
-                               intval($contact["id"]));
-               }
-       }
-
        /**
         * Do some repairs in database entries
         *