diff options
-rw-r--r-- | lib/class/browse.class.php | 17 | ||||
-rw-r--r-- | lib/ui.lib.php | 3 | ||||
-rw-r--r-- | server/ajax.server.php | 2 | ||||
-rw-r--r-- | server/browse.ajax.php | 18 | ||||
-rw-r--r-- | templates/sidebar_browse.inc.php | 4 |
5 files changed, 23 insertions, 21 deletions
diff --git a/lib/class/browse.class.php b/lib/class/browse.class.php index 98dabce6..c5fff159 100644 --- a/lib/class/browse.class.php +++ b/lib/class/browse.class.php @@ -59,24 +59,23 @@ class Browse { * a single point for whitelist tweaks etc */ public static function set_filter($key,$value) { - switch ($key) { - case 'show_art': + case 'show_art': if ($_SESSION['browse']['filter'][$key]) { unset($_SESSION['browse']['filter'][$key]); } else { - $_SESSION['browse']['filter'][$key] = 1; + $_SESSION['browse']['filter'][$key] = 1; } - break; - case 'min_count': - case 'unplayed': - case 'rated': + break; + case 'min_count': + case 'unplayed': + case 'rated': break; case 'alpha_match': - if (self::$static_content) { return false; } - if ($value == _('All')) { $value = ''; } + if (self::$static_content) { return false; } + //if ($value == _('All')) { $value = ''; } $_SESSION['browse']['filter'][$key] = $value; break; case 'playlist_type': diff --git a/lib/ui.lib.php b/lib/ui.lib.php index 9e7e5cb1..45ddd521 100644 --- a/lib/ui.lib.php +++ b/lib/ui.lib.php @@ -147,7 +147,8 @@ function show_alphabet_list () { $style_name = "style_" . strtolower($l); $class = "link"; if ($l==$selected) $class .=" active"; - echo "<span class=\"" . $class . "\" onclick=\"ajaxPut('". Config::get('ajax_url') ."?page=browse&action=browse&key=alpha_match&value=$l');return true;\">" . + $value = ($l==_('All'))?'':$l; + echo "<span class=\"" . $class . "\" onclick=\"ajaxPut('". Config::get('ajax_url') ."?page=browse&action=browse&key=alpha_match&value=$value');return true;\">" . $l . "</span>\n"; } echo "</div>"; diff --git a/server/ajax.server.php b/server/ajax.server.php index 9d6ccb83..bda613c5 100644 --- a/server/ajax.server.php +++ b/server/ajax.server.php @@ -310,7 +310,7 @@ switch ($_REQUEST['action']) { break; // Used to change filter/settings on browse case 'browse': - if ($_REQUEST['key'] && $_REQUEST['value']) { + if ($_REQUEST['key'] && $_REQUEST['value']) { // Set any new filters we've just added Browse::set_filter($_REQUEST['key'],$_REQUEST['value']); } diff --git a/server/browse.ajax.php b/server/browse.ajax.php index ef176d88..6da77e66 100644 --- a/server/browse.ajax.php +++ b/server/browse.ajax.php @@ -29,14 +29,16 @@ switch ($_REQUEST['action']) { $object_ids = array(); - if ($_REQUEST['key'] && $_REQUEST['value']) { - // Set any new filters we've just added - Browse::set_filter($_REQUEST['key'],$_REQUEST['value']); - } - if ($_REQUEST['sort']) { - // Set the new sort value - Browse::set_sort($_REQUEST['sort']); - } + // Check 'value' with isset because it can null + //(user type a "start with" word and deletes it) + if ($_REQUEST['key'] && isset($_REQUEST['value'])) { + // Set any new filters we've just added + Browse::set_filter($_REQUEST['key'],$_REQUEST['value']); + } + if ($_REQUEST['sort']) { + // Set the new sort value + Browse::set_sort($_REQUEST['sort']); + } // Refresh the browse div with our new filter options if we're not static if (!Browse::$static_content) { diff --git a/templates/sidebar_browse.inc.php b/templates/sidebar_browse.inc.php index 4a51c3db..1089bd8b 100644 --- a/templates/sidebar_browse.inc.php +++ b/templates/sidebar_browse.inc.php @@ -44,8 +44,8 @@ $allowed_filters = Browse::get_allowed_filters(); <?php if (in_array('alpha_match',$allowed_filters)) { ?> <?php show_alphabet_list($_REQUEST['alpha_match'],$_REQUEST['action']); ?> <form id="multi_alpha_filter_form" method="post" action="javascript:void(0);"> - <input type="textbox" id="multi_alpha_filter" name="value" value="<?php echo scrub_out($_REQUEST['alpha_match']); ?>" onChange="<?php echo Ajax::action('?page=browse&action=browse&key=alpha_match','multi_alpha_filter','multi_alpha_filter_form'); ?>"> - <label id="multi_alpha_filterLabel" for="multi_art_filter"><?php echo _('Starts With'); ?></label> + <input type="textbox" id="multi_alpha_filter" name="value" value="<?php echo scrub_out($_REQUEST['alpha_match']); ?>" onKeyUp="<?php echo Ajax::action('?page=browse&action=browse&key=alpha_match','multi_alpha_filter','multi_alpha_filter_form'); ?>"> + <label id="multi_alpha_filterLabel" for="multi_alpha_filter"><?php echo _('Starts With'); ?></label> </form> <?php } // end if alpha_match ?> <?php if (in_array('minimum_count',$allowed_filters)) { ?> |