summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/class/browse.class.php17
-rw-r--r--lib/ui.lib.php3
-rw-r--r--server/ajax.server.php2
-rw-r--r--server/browse.ajax.php18
-rw-r--r--templates/sidebar_browse.inc.php4
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&amp;key=alpha_match&amp;value=$l');return true;\">" .
+ $value = ($l==_('All'))?'':$l;
+ echo "<span class=\"" . $class . "\" onclick=\"ajaxPut('". Config::get('ajax_url') ."?page=browse&action=browse&amp;key=alpha_match&amp;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)) { ?>