X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=update.php;h=8f937752599535f34bd58d941ca5e2c4a231a751;hb=73e163100c108caee1e295d00ac8433ea62405be;hp=176747057199e26fff2da3d5f41eed1124e19b24;hpb=23a8245fb066d2b64ced49b50dd10f40ffabba1e;p=friendica.git diff --git a/update.php b/update.php index 1767470571..8f93775259 100644 --- a/update.php +++ b/update.php @@ -1,6 +1,6 @@ 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() @@ -1132,4 +1138,109 @@ function update_1497() { DBA::e("UPDATE `user` SET `last-activity` = DATE(`login_date`) WHERE `last-activity` IS NULL"); return Update::SUCCESS; -} \ No newline at end of file +} + +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; +} + +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'); +}