From 478c6618b0ee637334aefb20eead299b6975bef4 Mon Sep 17 00:00:00 2001 From: Karl 'vollmerk' Vollmer Date: Fri, 22 Aug 2008 04:28:36 +0000 Subject: fixed the search add result button and messed up some browse sort stuff --- lib/class/browse.class.php | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to 'lib/class') diff --git a/lib/class/browse.class.php b/lib/class/browse.class.php index 53edeb96..fd635d20 100644 --- a/lib/class/browse.class.php +++ b/lib/class/browse.class.php @@ -126,12 +126,23 @@ class Browse { self::reset_filters(); self::reset_total(); + self::reset_join(); self::reset_supplemental_objects(); self::set_simple_browse(0); self::set_start(0); } // reset + /** + * reset_join + * clears the joins if there are any + */ + public static function reset_join() { + + unset($_SESSION['browse']['join'][self::$type]); + + } // reset_join + /** * reset_filter * This is a wrapper function that resets the filters @@ -284,13 +295,13 @@ class Browse { $valid_array = array('title','year','track','time','album','artist'); break; case 'artist': - $valid_array = array('name'); + $valid_array = array('name','album'); break; case 'tag': $valid_array = array('tag'); break; case 'album': - $valid_array = array('name','year'); + $valid_array = array('name','year','artist'); break; case 'playlist': $valid_array = array('name','user'); @@ -337,7 +348,7 @@ class Browse { */ public static function set_join($type,$table,$source,$dest) { - $_SESSION['browse']['join'][self::$type] = array($table=>strtoupper($type) . ' JOIN ' . $table . ' ON ' . $source . '=' . $dest); + $_SESSION['browse']['join'][self::$type][$table] = strtoupper($type) . ' JOIN ' . $table . ' ON ' . $source . '=' . $dest; } // set_join @@ -836,6 +847,11 @@ class Browse { case 'name': $sql = "`album`.`name` $order, `album`.`disk`"; break; + case 'artist': + $sql = "`artist`.`name`"; + self::set_join('left','`song`','`song`.`album`','`album`.`id`'); + self::set_join('left','`artist`','`song`.`artist`','`artist`.`id`'); + break; case 'year': $sql = "`album`.`year`"; break; -- cgit