From ed768c71eefd2296d12adcc69f8e70fcf20c18c8 Mon Sep 17 00:00:00 2001 From: Hypolite Petovan Date: Mon, 27 May 2019 17:19:38 -0400 Subject: [PATCH] Remove "f=&" nonsense from network module - Fixes wrong redirect when using the sidebar filters --- mod/network.php | 38 +++++++++---------- src/App.php | 8 ++-- src/Content/ForumManager.php | 2 +- src/Module/Filer/RemoveTag.php | 2 +- view/templates/saved_searches_aside.tpl | 2 +- .../frio/templates/saved_searches_aside.tpl | 2 +- .../templates/saved_searches_aside.tpl | 2 +- view/theme/vier/theme.php | 2 +- 8 files changed, 28 insertions(+), 30 deletions(-) diff --git a/mod/network.php b/mod/network.php index 009f70b606..7753ba2ca4 100644 --- a/mod/network.php +++ b/mod/network.php @@ -77,9 +77,7 @@ function network_init(App $a) // convert query string to array. remove friendica args $query_array = []; - $query_string = str_replace($a->cmd . '?', '', $a->query_string); - parse_str($query_string, $query_array); - array_shift($query_array); + parse_str(parse_url($a->query_string, PHP_URL_QUERY), $query_array); // fetch last used network view and redirect if needed if (!$is_a_date_query) { @@ -99,7 +97,7 @@ function network_init(App $a) if ($remember_tab) { // redirect if current selected tab is '/network' and - // last selected tab is _not_ '/network?f=&order=comment'. + // last selected tab is _not_ '/network?order=comment'. // and this isn't a date query $tab_baseurls = [ @@ -111,12 +109,12 @@ function network_init(App $a) '', //bookmarked ]; $tab_args = [ - 'f=&order=comment', //all - 'f=&order=post', //postord - 'f=&conv=1', //conv + 'order=comment', //all + 'order=post', //postord + 'conv=1', //conv '', //new - 'f=&star=1', //starred - 'f=&bmark=1', //bookmarked + 'star=1', //starred + 'bmark=1', //bookmarked ]; $k = array_search('active', $last_sel_tabs); @@ -202,12 +200,12 @@ function saved_searches($search) * * urls -> returns * '/network' => $no_active = 'active' - * '/network?f=&order=comment' => $comment_active = 'active' - * '/network?f=&order=post' => $postord_active = 'active' - * '/network?f=&conv=1', => $conv_active = 'active' + * '/network?order=comment' => $comment_active = 'active' + * '/network?order=post' => $postord_active = 'active' + * '/network?conv=1', => $conv_active = 'active' * '/network/new', => $new_active = 'active' - * '/network?f=&star=1', => $starred_active = 'active' - * '/network?f=&bmark=1', => $bookmarked_active = 'active' + * '/network?star=1', => $starred_active = 'active' + * '/network?bmark=1', => $bookmarked_active = 'active' * * @param App $a * @return array ($no_active, $comment_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active); @@ -973,7 +971,7 @@ function network_tabs(App $a) $tabs = [ [ 'label' => L10n::t('Commented Order'), - 'url' => str_replace('/new', '', $cmd) . '?f=&order=comment' . (!empty($_GET['cid']) ? '&cid=' . $_GET['cid'] : ''), + 'url' => str_replace('/new', '', $cmd) . '?order=comment' . (!empty($_GET['cid']) ? '&cid=' . $_GET['cid'] : ''), 'sel' => $all_active, 'title' => L10n::t('Sort by Comment Date'), 'id' => 'commented-order-tab', @@ -981,7 +979,7 @@ function network_tabs(App $a) ], [ 'label' => L10n::t('Posted Order'), - 'url' => str_replace('/new', '', $cmd) . '?f=&order=post' . (!empty($_GET['cid']) ? '&cid=' . $_GET['cid'] : ''), + 'url' => str_replace('/new', '', $cmd) . '?order=post' . (!empty($_GET['cid']) ? '&cid=' . $_GET['cid'] : ''), 'sel' => $postord_active, 'title' => L10n::t('Sort by Post Date'), 'id' => 'posted-order-tab', @@ -991,7 +989,7 @@ function network_tabs(App $a) $tabs[] = [ 'label' => L10n::t('Personal'), - 'url' => str_replace('/new', '', $cmd) . (!empty($_GET['cid']) ? '/?f=&cid=' . $_GET['cid'] : '/?f=') . '&conv=1', + 'url' => str_replace('/new', '', $cmd) . (!empty($_GET['cid']) ? '/?cid=' . $_GET['cid'] : '/?f=') . '&conv=1', 'sel' => $conv_active, 'title' => L10n::t('Posts that mention or involve you'), 'id' => 'personal-tab', @@ -1001,7 +999,7 @@ function network_tabs(App $a) if (Feature::isEnabled(local_user(), 'new_tab')) { $tabs[] = [ 'label' => L10n::t('New'), - 'url' => 'network/new' . (!empty($_GET['cid']) ? '/?f=&cid=' . $_GET['cid'] : ''), + 'url' => 'network/new' . (!empty($_GET['cid']) ? '/?cid=' . $_GET['cid'] : ''), 'sel' => $new_active, 'title' => L10n::t('Activity Stream - by date'), 'id' => 'activitiy-by-date-tab', @@ -1012,7 +1010,7 @@ function network_tabs(App $a) if (Feature::isEnabled(local_user(), 'link_tab')) { $tabs[] = [ 'label' => L10n::t('Shared Links'), - 'url' => str_replace('/new', '', $cmd) . (!empty($_GET['cid']) ? '/?f=&cid=' . $_GET['cid'] : '/?f=') . '&bmark=1', + 'url' => str_replace('/new', '', $cmd) . (!empty($_GET['cid']) ? '/?cid=' . $_GET['cid'] : '/?f=') . '&bmark=1', 'sel' => $bookmarked_active, 'title' => L10n::t('Interesting Links'), 'id' => 'shared-links-tab', @@ -1022,7 +1020,7 @@ function network_tabs(App $a) $tabs[] = [ 'label' => L10n::t('Starred'), - 'url' => str_replace('/new', '', $cmd) . (!empty($_GET['cid']) ? '/?f=&cid=' . $_GET['cid'] : '/?f=') . '&star=1', + 'url' => str_replace('/new', '', $cmd) . (!empty($_GET['cid']) ? '/?cid=' . $_GET['cid'] : '/?f=') . '&star=1', 'sel' => $starred_active, 'title' => L10n::t('Favourite Posts'), 'id' => 'starred-posts-tab', diff --git a/src/App.php b/src/App.php index 2e357f8651..e5ec66f5e3 100644 --- a/src/App.php +++ b/src/App.php @@ -1104,7 +1104,7 @@ class App // Compatibility with the Android Diaspora client if ($this->module == 'stream') { - $this->internalRedirect('network?f=&order=post'); + $this->internalRedirect('network?order=post'); } if ($this->module == 'conversations') { @@ -1112,15 +1112,15 @@ class App } if ($this->module == 'commented') { - $this->internalRedirect('network?f=&order=comment'); + $this->internalRedirect('network?order=comment'); } if ($this->module == 'liked') { - $this->internalRedirect('network?f=&order=comment'); + $this->internalRedirect('network?order=comment'); } if ($this->module == 'activity') { - $this->internalRedirect('network/?f=&conv=1'); + $this->internalRedirect('network?conv=1'); } if (($this->module == 'status_messages') && ($this->cmd == 'status_messages/new')) { diff --git a/src/Content/ForumManager.php b/src/Content/ForumManager.php index af2c3725c4..98ea7aa6b9 100644 --- a/src/Content/ForumManager.php +++ b/src/Content/ForumManager.php @@ -111,7 +111,7 @@ class ForumManager $selected = (($cid == $contact['id']) ? ' forum-selected' : ''); $entry = [ - 'url' => 'network?f=&cid=' . $contact['id'], + 'url' => 'network?cid=' . $contact['id'], 'external_url' => Contact::magicLink($contact['url']), 'name' => $contact['name'], 'cid' => $contact['id'], diff --git a/src/Module/Filer/RemoveTag.php b/src/Module/Filer/RemoveTag.php index bddaaf9dc2..7e88b2e72e 100644 --- a/src/Module/Filer/RemoveTag.php +++ b/src/Module/Filer/RemoveTag.php @@ -46,6 +46,6 @@ class RemoveTag extends BaseModule info('Item was not deleted'); } - $app->internalRedirect('/network?f=&file=' . rawurlencode($term)); + $app->internalRedirect('network?file=' . rawurlencode($term)); } } diff --git a/view/templates/saved_searches_aside.tpl b/view/templates/saved_searches_aside.tpl index 5000e4acb1..caf60cc0bc 100644 --- a/view/templates/saved_searches_aside.tpl +++ b/view/templates/saved_searches_aside.tpl @@ -6,7 +6,7 @@