+ 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;
+}
+
+function update_1512()
+{
+ DI::keyValue()->set('nodeinfo_total_users', DI::config()->get('nodeinfo', 'total_users'));
+ DI::keyValue()->set('nodeinfo_active_users_halfyear', DI::config()->get('nodeinfo', 'active_users_halfyear'));
+ DI::keyValue()->set('nodeinfo_active_users_monthly', DI::config()->get('nodeinfo', 'active_users_monthly'));
+ DI::keyValue()->set('nodeinfo_active_users_weekly', DI::config()->get('nodeinfo', 'active_users_weekly'));
+ DI::keyValue()->set('nodeinfo_local_posts', DI::config()->get('nodeinfo', 'local_posts'));
+ DI::keyValue()->set('nodeinfo_local_comments', DI::config()->get('nodeinfo', 'local_comments'));
+
+ DI::config()->delete('nodeinfo', 'total_users');
+ DI::config()->delete('nodeinfo', 'active_users_halfyear');
+ DI::config()->delete('nodeinfo', 'active_users_monthly');
+ DI::config()->delete('nodeinfo', 'active_users_weekly');
+ 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.
+ rename(dirname(__FILE__) . '/config/node.config.php', dirname(__FILE__) . '/config/node.config.php.bak');
+ }
+
+ return Update::SUCCESS;