]> git.mxchange.org Git - friendica.git/commitdiff
Merge pull request #7195 from MrPetovan/task/7190-remove-defaults-1
authorPhilipp <admin+Github@philipp.info>
Mon, 27 May 2019 05:11:48 +0000 (07:11 +0200)
committerGitHub <noreply@github.com>
Mon, 27 May 2019 05:11:48 +0000 (07:11 +0200)
Remove defaults() from $_SESSION

boot.php
include/conversation.php
mod/network.php
mod/settings.php
src/App.php
src/Content/Nav.php
src/Core/Session.php
src/Module/Login.php
src/Module/Profile.php
src/Object/Post.php
view/theme/frio/theme.php

index dfedcdbbbecd87668ae4d14eca4866f91cd8f08e..9076331290a447c820c10658d9dfa1111551d141 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -334,6 +334,7 @@ function get_app()
  * @param array $args
  * @brief Returns a defaut value if the provided variable or array key is falsy
  * @return mixed
+ * @deprecated since version 2019.06, use native coalesce operator (??) instead
  */
 function defaults(...$args)
 {
index 85938ca0f0d6316e542a5bdb5daf829a7c8ae30c..3b3c7a4c185c5a3e7bb9f2c3672f79988afe8187 100644 (file)
@@ -15,6 +15,7 @@ use Friendica\Core\Logger;
 use Friendica\Core\PConfig;
 use Friendica\Core\Protocol;
 use Friendica\Core\Renderer;
+use Friendica\Core\Session;
 use Friendica\Core\System;
 use Friendica\Database\DBA;
 use Friendica\Model\Contact;
@@ -528,7 +529,7 @@ function conversation(App $a, array $items, Pager $pager, $mode, $update, $previ
 
                if (!$update) {
                        $live_update_div = '<div id="live-display"></div>' . "\r\n"
-                               . "<script> var profile_uid = " . defaults($_SESSION, 'uid', 0) . ";"
+                               . "<script> var profile_uid = " . Session::get('uid', 0) . ";"
                                . " var profile_page = 1; </script>";
                }
        } elseif ($mode === 'community') {
index 30e31cea3c6ec579379b7b44884c90eb9b0ec05d..cbd3071ecefe41085a439dab7da1f84815b2cda0 100644 (file)
@@ -19,6 +19,7 @@ use Friendica\Core\Logger;
 use Friendica\Core\PConfig;
 use Friendica\Core\Protocol;
 use Friendica\Core\Renderer;
+use Friendica\Core\Session;
 use Friendica\Database\DBA;
 use Friendica\Model\Contact;
 use Friendica\Model\Group;
@@ -854,7 +855,7 @@ function networkThreadedView(App $a, $update, $parent)
                        ((time() - $_SESSION['network_last_date_timestamp']) < ($browser_update * 10))) {
                        $bottom_limit = $_SESSION['network_last_date'];
                }
-               $_SESSION['network_last_date'] = defaults($_SESSION, 'network_last_top_limit', $top_limit);
+               $_SESSION['network_last_date'] = Session::get('network_last_top_limit', $top_limit);
                $_SESSION['network_last_date_timestamp'] = time();
 
                if ($last_date > $top_limit) {
index 45f11cdb6c3f3ff89e69ad9899b986ca1e74bcb5..efb601f4d24f1c6e66123cb377387be75169121e 100644 (file)
@@ -14,6 +14,7 @@ use Friendica\Core\L10n;
 use Friendica\Core\Logger;
 use Friendica\Core\PConfig;
 use Friendica\Core\Renderer;
+use Friendica\Core\Session;
 use Friendica\Core\System;
 use Friendica\Core\Theme;
 use Friendica\Core\Worker;
@@ -910,8 +911,8 @@ function settings_content(App $a)
                        }
                }
 
-               $theme_selected        = defaults($_SESSION, 'theme'       , $default_theme);
-               $mobile_theme_selected = defaults($_SESSION, 'mobile-theme', $default_mobile_theme);
+               $theme_selected        = Session::get('theme', $default_theme);
+               $mobile_theme_selected = Session::get('mobile-theme', $default_mobile_theme);
 
                $nowarn_insecure = intval(PConfig::get(local_user(), 'system', 'nowarn_insecure'));
 
index 2e357f8651a6e738aa31ab106429fcfcef6d96c6..7ef4e49195e2b1285664d362c8c8d6fceca8695a 100644 (file)
@@ -1038,10 +1038,11 @@ class App
                                // Valid profile links contain a path with "/profile/" and no query parameters
                                if ((parse_url($_GET['zrl'], PHP_URL_QUERY) == "") &&
                                        strstr(parse_url($_GET['zrl'], PHP_URL_PATH), "/profile/")) {
-                                       if (defaults($_SESSION, "visitor_home", "") != $_GET["zrl"]) {
-                                               $_SESSION['my_url'] = $_GET['zrl'];
-                                               $_SESSION['authenticated'] = 0;
+                                       if (Core\Session::get('visitor_home') != $_GET["zrl"]) {
+                                               Core\Session::set('my_url', $_GET['zrl']);
+                                               Core\Session::set('authenticated', 0);
                                        }
+
                                        Model\Profile::zrlInit($this);
                                } else {
                                        // Someone came with an invalid parameter, maybe as a DDoS attempt
@@ -1066,9 +1067,9 @@ class App
                        header('X-Account-Management-Status: none');
                }
 
-               $_SESSION['sysmsg']       = defaults($_SESSION, 'sysmsg'      , []);
-               $_SESSION['sysmsg_info']  = defaults($_SESSION, 'sysmsg_info' , []);
-               $_SESSION['last_updated'] = defaults($_SESSION, 'last_updated', []);
+               $_SESSION['sysmsg']       = Core\Session::get('sysmsg', []);
+               $_SESSION['sysmsg_info']  = Core\Session::get('sysmsg_info', []);
+               $_SESSION['last_updated'] = Core\Session::get('last_updated', []);
 
                /*
                 * check_config() is responsible for running update scripts. These automatically
index a63244e856a7ffd0d2b0843750f72552ae7a682a..cb4564115aac2fc03bc4f6c63e4fc6ea2f599856 100644 (file)
@@ -9,6 +9,7 @@ use Friendica\Core\Config;
 use Friendica\Core\Hook;
 use Friendica\Core\L10n;
 use Friendica\Core\Renderer;
+use Friendica\Core\Session;
 use Friendica\Core\System;
 use Friendica\Database\DBA;
 use Friendica\Model\Profile;
@@ -172,7 +173,7 @@ class Nav
                // "Home" should also take you home from an authenticated remote profile connection
                $homelink = Profile::getMyURL();
                if (! $homelink) {
-                       $homelink = defaults($_SESSION, 'visitor_home', '');
+                       $homelink = Session::get('visitor_home', '');
                }
 
                if (($a->module != 'home') && (! (local_user()))) {
@@ -241,7 +242,7 @@ class Nav
                        $nav['home'] = ['profile/' . $a->user['nickname'], L10n::t('Home'), '', L10n::t('Your posts and conversations')];
 
                        // Don't show notifications for public communities
-                       if (defaults($_SESSION, 'page_flags', '') != User::PAGE_FLAGS_COMMUNITY) {
+                       if (Session::get('page_flags', '') != User::PAGE_FLAGS_COMMUNITY) {
                                $nav['introductions'] = ['notifications/intros', L10n::t('Introductions'), '', L10n::t('Friend Requests')];
                                $nav['notifications'] = ['notifications',       L10n::t('Notifications'), '', L10n::t('Notifications')];
                                $nav['notifications']['all'] = ['notifications/system', L10n::t('See all notifications'), '', ''];
index 8b6c26bc57ee4b18a60f3074ce279a6eec8a16bf..e54c0e49b910f413b67e3190f1f17991a25f1499 100644 (file)
@@ -62,13 +62,7 @@ class Session
         */
        public static function get($name, $defaults = null)
        {
-               if (isset($_SESSION)) {
-                       $return = defaults($_SESSION, $name, $defaults);
-               } else {
-                       $return = $defaults;
-               }
-
-               return $return;
+               return $_SESSION[$name] ?? $defaults;
        }
 
        /**
index 7a3b6ae45775c82e0be800ece1937ceaf953822c..a8cb838517fa3f0ba635d2915bfbcb634ac6a6e0 100644 (file)
@@ -32,26 +32,21 @@ class Login extends BaseModule
        {
                $a = self::getApp();
 
-               if (!empty($_SESSION['theme'])) {
-                       unset($_SESSION['theme']);
-               }
-
-               if (!empty($_SESSION['mobile-theme'])) {
-                       unset($_SESSION['mobile-theme']);
-               }
+               Session::remove('theme');
+               Session::remove('mobile-theme');
 
                if (local_user()) {
                        $a->internalRedirect();
                }
 
-               return self::form(defaults($_SESSION, 'return_path', null), intval(Config::get('config', 'register_policy')) !== \Friendica\Module\Register::CLOSED);
+               return self::form(Session::get('return_path'), intval(Config::get('config', 'register_policy')) !== \Friendica\Module\Register::CLOSED);
        }
 
        public static function post()
        {
-               $return_path = defaults($_SESSION, 'return_path', '');
+               $return_path = Session::get('return_path');
                session_unset();
-               $_SESSION['return_path'] = $return_path;
+               Session::set('return_path', $return_path);
 
                // OpenId Login
                if (
@@ -159,17 +154,13 @@ class Login extends BaseModule
                }
 
                // if we haven't failed up this point, log them in.
-               $_SESSION['remember'] = $remember;
-               $_SESSION['last_login_date'] = DateTimeFormat::utcNow();
+               Session::set('remember', $remember);
+               Session::set('last_login_date', DateTimeFormat::utcNow());
 
                Session::setAuthenticatedForUser($a, $record, true, true);
 
-               if (!empty($_SESSION['return_path'])) {
-                       $return_path = $_SESSION['return_path'];
-                       unset($_SESSION['return_path']);
-               } else {
-                       $return_path = '';
-               }
+               $return_path = Session::get('return_path', '');
+               Session::remove('return_path');
 
                $a->internalRedirect($return_path);
        }
index fceea726b4cfe863d203673dbf11095810c0595b..36b3ba1a8256fb2074c1f76564d31dfdcb4a63eb 100644 (file)
@@ -11,6 +11,7 @@ use Friendica\Core\Config;
 use Friendica\Core\Hook;
 use Friendica\Core\L10n;
 use Friendica\Core\PConfig;
+use Friendica\Core\Session;
 use Friendica\Core\System;
 use Friendica\Database\DBA;
 use Friendica\Model\Contact as ContactModel;
@@ -226,8 +227,10 @@ class Profile extends BaseModule
                $sql_extra = Item::getPermissionsSQLByUserId($a->profile['profile_uid'], $remote_contact, $groups, $remote_cid);
                $sql_extra2 = '';
 
+               $last_updated_array = Session::get('last_updated', []);
+
                if ($update) {
-                       $last_updated = (defaults($_SESSION['last_updated'], $last_updated_key, 0));
+                       $last_updated = $last_updated_array[$last_updated_key] ?? 0;
 
                        // If the page user is the owner of the page we should query for unseen
                        // items. Otherwise use a timestamp of the last succesful update request.
@@ -334,7 +337,8 @@ class Profile extends BaseModule
 
                // Set a time stamp for this page. We will make use of it when we
                // search for new items (update routine)
-               $_SESSION['last_updated'][$last_updated_key] = time();
+               $last_updated_array[$last_updated_key] = time();
+               Session::set('last_updated', $last_updated_array);
 
                if ($is_owner && !$update && !Config::get('theme', 'hide_eventlist')) {
                        $o .= ProfileModel::getBirthdays();
index a8577dd8bedda9ad7e62db6425b28341f71e99f7..173b1e53af6a86eecfda3abfb6c70c3d7e9c252f 100644 (file)
@@ -15,6 +15,7 @@ use Friendica\Core\Logger;
 use Friendica\Core\PConfig;
 use Friendica\Core\Protocol;
 use Friendica\Core\Renderer;
+use Friendica\Core\Session;
 use Friendica\Database\DBA;
 use Friendica\Model\Contact;
 use Friendica\Model\Item;
@@ -400,7 +401,7 @@ class Post extends BaseObject
                        'location'        => $location_e,
                        'indent'          => $indent,
                        'shiny'           => $shiny,
-                       'owner_self'      => $item['author-link'] == defaults($_SESSION, 'my_url', null),
+                       'owner_self'      => $item['author-link'] == Session::get('my_url'),
                        'owner_url'       => $this->getOwnerUrl(),
                        'owner_photo'     => $a->removeBaseURL(ProxyUtils::proxifyUrl($item['owner-avatar'], false, ProxyUtils::SIZE_THUMB)),
                        'owner_name'      => $owner_name_e,
index 9434b340d219fb35e80acbd06fb62652337972d6..e7c2510783ab7080e5023af94a2527e177ecea0e 100644 (file)
@@ -14,9 +14,8 @@ use Friendica\Core\Config;
 use Friendica\Core\Hook;
 use Friendica\Core\L10n;
 use Friendica\Core\Logger;
-use Friendica\Core\PConfig;
 use Friendica\Core\Renderer;
-use Friendica\Core\System;
+use Friendica\Core\Session;
 use Friendica\Database\DBA;
 use Friendica\Model;
 use Friendica\Module;
@@ -201,7 +200,7 @@ function frio_remote_nav($a, &$nav)
        // get the homelink from $_XSESSION
        $homelink = Model\Profile::getMyURL();
        if (!$homelink) {
-               $homelink = defaults($_SESSION, 'visitor_home', '');
+               $homelink = Session::get('visitor_home', '');
        }
 
        // split up the url in it's parts (protocol,domain/directory, /profile/, nickname