diff options
author | Andrew Dolgov <[email protected]> | 2012-06-29 13:11:39 +0400 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2012-06-29 13:11:39 +0400 |
commit | 310fa2ddef16793656315244c1c68fc6008a79a4 (patch) | |
tree | 21f9df9960986714a874436af164c511c69485a8 | |
parent | 955d4f82eaa4bef245597ae9e95e8b1d2880af41 (diff) |
implement search in pref-filters
-rw-r--r-- | classes/pref_filters.php | 25 | ||||
-rw-r--r-- | digest.php | 7 | ||||
-rw-r--r-- | index.php | 11 | ||||
-rw-r--r-- | js/prefs.js | 6 | ||||
-rw-r--r-- | mobile/login_form.php | 5 |
5 files changed, 46 insertions, 8 deletions
diff --git a/classes/pref_filters.php b/classes/pref_filters.php index 78189fcb1..c7aa54e21 100644 --- a/classes/pref_filters.php +++ b/classes/pref_filters.php @@ -105,6 +105,13 @@ class Pref_Filters extends Protected_Handler { $root['name'] = __('Filters'); $root['items'] = array(); + $search = $_SESSION["prefs_filter_search"]; + + if ($search) $search_qpart = " (LOWER(reg_exp) LIKE LOWER('%$search%') + OR LOWER(ttrss_feeds.title) LIKE LOWER('%$search%') + OR LOWER(COALESCE(ttrss_feed_categories.title, '".__('Uncategorized')."')) + LIKE LOWER('%$search%') AND cat_filter = true) AND "; + $result = db_query($this->link, "SELECT ttrss_filters.id AS id,reg_exp, ttrss_filter_types.name AS filter_type_name, @@ -119,7 +126,7 @@ class Pref_Filters extends Protected_Handler { filter_type, ttrss_filter_actions.description AS action_description, ttrss_feeds.title AS feed_title, - ttrss_feed_categories.title AS cat_title, + COALESCE(ttrss_feed_categories.title, '".__('Uncategorized')."') AS cat_title, ttrss_filter_actions.name AS action_name, ttrss_filters.action_param AS action_param FROM @@ -129,6 +136,7 @@ class Pref_Filters extends Protected_Handler { WHERE filter_type = ttrss_filter_types.id AND ttrss_filter_actions.id = action_id AND + $search_qpart ttrss_filters.owner_uid = ".$_SESSION["uid"]." ORDER by action_description, reg_exp"); @@ -580,6 +588,21 @@ class Pref_Filters extends Protected_Handler { print "<div id=\"pref-filter-header\" dojoType=\"dijit.layout.ContentPane\" region=\"top\">"; print "<div id=\"pref-filter-toolbar\" dojoType=\"dijit.Toolbar\">"; + $filter_search = db_escape_string($_REQUEST["search"]); + + if (array_key_exists("search", $_REQUEST)) { + $_SESSION["prefs_filter_search"] = $filter_search; + } else { + $filter_search = $_SESSION["prefs_filter_search"]; + } + + print "<div style='float : right; padding-right : 4px;'> + <input dojoType=\"dijit.form.TextBox\" id=\"filter_search\" size=\"20\" type=\"search\" + value=\"$filter_search\"> + <button dojoType=\"dijit.form.Button\" onclick=\"updateFilterList()\">". + __('Search')."</button> + </div>"; + print "<div dojoType=\"dijit.form.DropDownButton\">". "<span>" . __('Select')."</span>"; print "<div dojoType=\"dijit.Menu\" style=\"display: none;\">"; diff --git a/digest.php b/digest.php index c5b3c34c6..805e07488 100644 --- a/digest.php +++ b/digest.php @@ -1,5 +1,5 @@ <?php - set_include_path(get_include_path() . PATH_SEPARATOR . + set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . "/include"); require_once "functions.php"; @@ -72,8 +72,11 @@ <?php echo __('Hello,') ?> <b><?php echo $_SESSION["name"] ?></b> | <?php } ?> <?php if (!SINGLE_USER_MODE) { ?> - <a href="backend.php?op=logout"><?php echo __('Logout') ?></a> + <a href="backend.php?op=logout"><?php echo __('Logout') ?></a> | <?php } ?> + <a href='<?php echo get_self_url_prefix() ?>/index.php?mobile=false'> + <?php echo __("Regular version") ?></a> + </div> <span class="title">Tiny Tiny RSS</span> @@ -18,9 +18,14 @@ $mobile = new Mobile_Detect(); - if ($mobile->isMobile() && !$mobile->isTablet() && !$_REQUEST['mobile']) { - header('Location: mobile/index.php'); - exit; + if (!$_REQUEST['mobile']) { + if ($mobile->isTablet()) { + header('Location: digest.php'); + exit; + } else if ($mobile->isMobile()) { + header('Location: mobile/index.php'); + exit; + } } $link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); diff --git a/js/prefs.js b/js/prefs.js index e9ae891f4..2a2f359eb 100644 --- a/js/prefs.js +++ b/js/prefs.js @@ -824,8 +824,12 @@ function importData() { function updateFilterList() { + var user_search = $("filter_search"); + var search = ""; + if (user_search) { search = user_search.value; } + new Ajax.Request("backend.php", { - parameters: "?op=pref-filters", + parameters: "?op=pref-filters&search=" + param_escape(search), onComplete: function(transport) { dijit.byId('filterConfigTab').attr('content', transport.responseText); notify(""); diff --git a/mobile/login_form.php b/mobile/login_form.php index 937c71f8a..21710c229 100644 --- a/mobile/login_form.php +++ b/mobile/login_form.php @@ -45,7 +45,10 @@ function do_login() { </div> </fieldset> - + + <div align='center'><a target='_self' href='<?php echo get_self_url_prefix() ?>/index.php?mobile=false'> + <?php echo __("Open regular version") ?></a> + </form> </body> |