aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Zotlabs/Module/Channel.php29
-rw-r--r--Zotlabs/Module/Network.php4
-rw-r--r--Zotlabs/Widget/Activity_order.php7
-rw-r--r--include/nav.php14
-rwxr-xr-xview/tpl/navbar_default.tpl2
5 files changed, 41 insertions, 15 deletions
diff --git a/Zotlabs/Module/Channel.php b/Zotlabs/Module/Channel.php
index 9108f6841..dac177c9e 100644
--- a/Zotlabs/Module/Channel.php
+++ b/Zotlabs/Module/Channel.php
@@ -84,6 +84,7 @@ class Channel extends \Zotlabs\Web\Controller {
$hashtags = ((x($_REQUEST,'tag')) ? $_REQUEST['tag'] : '');
$order = ((x($_GET,'order')) ? notags($_GET['order']) : 'post');
$static = ((array_key_exists('static',$_REQUEST)) ? intval($_REQUEST['static']) : 0);
+ $search = ((x($_GET,'search')) ? $_GET['search'] : EMPTY_STR);
$groups = array();
@@ -119,9 +120,12 @@ class Channel extends \Zotlabs\Web\Controller {
$static = channel_manual_conv_update(\App::$profile['profile_uid']);
- //$o .= profile_tabs($a, $is_owner, \App::$profile['channel_address']);
-
- // $o .= common_friends_visitor_widget(\App::$profile['profile_uid']);
+ // search terms header
+ if($search) {
+ $o .= replace_macros(get_markup_template("section_title.tpl"),array(
+ '$title' => t('Search Results For:') . ' ' . htmlspecialchars($search, ENT_COMPAT,'UTF-8')
+ ));
+ }
if($channel && $is_owner) {
$channel_acl = array(
@@ -180,15 +184,13 @@ class Channel extends \Zotlabs\Web\Controller {
$simple_update = (($update) ? " AND item_unseen = 1 " : '');
-
- $search = EMPTY_STR;
- if(x($_GET,'search')) {
- $search = escape_tags($_GET['search']);
+ if($search) {
+ $search = escape_tags($search);
if(strpos($search,'#') === 0) {
- $sql_extra2 .= term_query('item',substr($search,1),TERM_HASHTAG,TERM_COMMUNITYTAG);
+ $sql_extra .= term_query('item',substr($search,1),TERM_HASHTAG,TERM_COMMUNITYTAG);
}
else {
- $sql_extra2 .= sprintf(" AND item.body like '%s' ",
+ $sql_extra .= sprintf(" AND item.body like '%s' ",
dbesc(protect_sprintf('%' . $search . '%'))
);
}
@@ -255,7 +257,7 @@ class Channel extends \Zotlabs\Web\Controller {
$sql_extra2 .= " and item.item_thread_top != 0 ";
}
- if($order === 'post')
+ if($order === 'post')
$ordering = "created";
else
$ordering = "commented";
@@ -282,7 +284,7 @@ class Channel extends \Zotlabs\Web\Controller {
WHERE true and item.uid = %d $item_normal
AND (abook.abook_blocked = 0 or abook.abook_flags is null)
AND item.item_wall = 1
- $sql_extra $sql_extra2
+ $sql_extra $sql_extra2
ORDER BY $ordering DESC, id $pager_sql ",
intval(\App::$profile['profile_uid'])
);
@@ -398,12 +400,13 @@ class Channel extends \Zotlabs\Web\Controller {
}
}
+ $mode = (($search) ? 'search' : 'channel');
if($checkjs->disabled()) {
- $o .= conversation($items,'channel',$update,'traditional');
+ $o .= conversation($items,$mode,$update,'traditional');
}
else {
- $o .= conversation($items,'channel',$update,$page_mode);
+ $o .= conversation($items,$mode,$update,$page_mode);
}
if((! $update) || ($checkjs->disabled())) {
diff --git a/Zotlabs/Module/Network.php b/Zotlabs/Module/Network.php
index 5e7492fd4..acd12158c 100644
--- a/Zotlabs/Module/Network.php
+++ b/Zotlabs/Module/Network.php
@@ -138,6 +138,7 @@ class Network extends \Zotlabs\Web\Controller {
if(x($_GET,'search') || x($_GET,'file'))
$nouveau = true;
+
if($cid) {
$r = q("SELECT abook_xchan, xchan_addr, xchan_url FROM abook left join xchan on abook_xchan = xchan_hash WHERE abook_id = %d AND abook_channel = %d LIMIT 1",
intval($cid),
@@ -567,6 +568,9 @@ class Network extends \Zotlabs\Web\Controller {
}
$mode = (($nouveau) ? 'network-new' : 'network');
+
+ if($search)
+ $mode = 'search';
$o .= conversation($items,$mode,$update,$page_mode);
diff --git a/Zotlabs/Widget/Activity_order.php b/Zotlabs/Widget/Activity_order.php
index ba288965f..edeef2c20 100644
--- a/Zotlabs/Widget/Activity_order.php
+++ b/Zotlabs/Widget/Activity_order.php
@@ -53,6 +53,12 @@ class Activity_order {
}
}
+ // override order for search results and filer results
+ if(x($_GET,'search') || x($_GET,'file')) {
+ $unthreaded_active = 'active';
+ $commentord_active = $postord_active = '';
+ }
+
$cmd = \App::$cmd;
$filter = '';
@@ -69,6 +75,7 @@ class Activity_order {
if(x($_GET,'conv'))
$filter .= '&conv=' . $_GET['conv'];
+
// tabs
$tabs = [];
diff --git a/include/nav.php b/include/nav.php
index c5ceb97c5..994819ed4 100644
--- a/include/nav.php
+++ b/include/nav.php
@@ -168,7 +168,19 @@ function nav($template = 'default') {
$nav['help'] = [$help_url, t('Help'), "", t('Help and documentation'), 'help_nav_btn', $context_help, $enable_context_help];
}
- $nav['search'] = ['search', t('Search'), "", t('Search site @name, !forum, #tag, ?docs, content')];
+ switch(App::$module) {
+ case 'network':
+ $search_form_action = 'network';
+ break;
+ case 'channel':
+ $search_form_action = 'channel';
+ break;
+ default:
+ $search_form_action = 'search';
+ }
+
+
+ $nav['search'] = ['search', t('Search'), "", t('Search site @name, !forum, #tag, ?docs, content'), $search_form_action];
/**
diff --git a/view/tpl/navbar_default.tpl b/view/tpl/navbar_default.tpl
index 7bc8df8d5..ebcadf365 100755
--- a/view/tpl/navbar_default.tpl
+++ b/view/tpl/navbar_default.tpl
@@ -119,7 +119,7 @@
<ul id="nav-right" class="navbar-nav ml-auto">
<li class="nav-item collapse clearfix" id="nav-search">
- <form class="form-inline" method="get" action="search" role="search">
+ <form class="form-inline" method="get" action="{{$nav.search.4}}" role="search">
<input class="form-control form-control-sm mt-1 mr-2" id="nav-search-text" type="text" value="" placeholder="{{$help}}" name="search" title="{{$nav.search.3}}" onclick="this.submit();" onblur="closeMenu('nav-search'); openMenu('nav-search-btn');"/>
</form>
<div id="nav-search-spinner" class="spinner-wrapper">