[Slim-Checkins] r11382 - in /trunk/server/HTML/Fishbone: home.html html/black.html html/scripts.js index.html

kdf at svn.slimdevices.com kdf at svn.slimdevices.com
Sat Feb 10 09:41:15 PST 2007


Author: kdf
Date: Sat Feb 10 09:41:15 2007
New Revision: 11382

URL: http://svn.slimdevices.com?rev=11382&view=rev
Log:
Bug: 4753
Description: use server cookie handling for players
	- get rid of "page=" param


Added:
    trunk/server/HTML/Fishbone/html/black.html
Modified:
    trunk/server/HTML/Fishbone/home.html
    trunk/server/HTML/Fishbone/html/scripts.js
    trunk/server/HTML/Fishbone/index.html

Modified: trunk/server/HTML/Fishbone/home.html
URL: http://svn.slimdevices.com/trunk/server/HTML/Fishbone/home.html?rev=11382&r1=11381&r2=11382&view=diff
==============================================================================
--- trunk/server/HTML/Fishbone/home.html (original)
+++ trunk/server/HTML/Fishbone/home.html Sat Feb 10 09:41:15 2007
@@ -1,6 +1,6 @@
 [%- FILTER null %]
 	[%- optionForm = BLOCK -%]
-	<FORM id="browseForm" name="browseForm" action="javascript:return(false);" target="header">
+	<FORM id="browseForm" name="browseForm" action="javascript:void(0);" target="header">
 		<SELECT NAME="browse" class="stdedit" style="width:17em;" onchange="chooseBrowser(selectedIndex,options[selectedIndex].value)">
 			<OPTION value="" label="">---[% "BROWSE_MUSIC" | string %]---</OPTION>
 			[% PROCESS addBrowseLinks links=additionalLinks.browse %]
@@ -8,12 +8,12 @@
 			[% PROCESS addBrowseLinks links=additionalLinks.search %]
 			<OPTION value="" label="">---[% "RADIO" | string %]---</OPTION>
 			[% PROCESS addBrowseLinks links=additionalLinks.radio %]
-			<OPTION [% IF page == "RADIO_TUNEIN" %]selected[% END %] value="RADIO_TUNEIN" label='[% "RADIO_TUNEIN" | string %]'>[% "RADIO_TUNEIN" | string %]</OPTION>
+			<OPTION value="RADIO_TUNEIN" label='[% "RADIO_TUNEIN" | string %]'>[% "RADIO_TUNEIN" | string %]</OPTION>
 			[% IF additionalLinks.plugins %]
 			<OPTION value="" label="">---[% "PLUGINS" | string %]---</OPTION>
 			[% PROCESS addBrowseLinks links=additionalLinks.plugins %]
 			[% END %]
-			<OPTION [% IF page == "STATISTICS" %]selected[% END %] value="[% "STATISTICS" %]" label="[% "STATISTICS" | string %]">[% "STATISTICS" | string %]</OPTION>
+			<OPTION label="[% "STATISTICS" | string %]">[% "STATISTICS" | string %]</OPTION>
 			[% IF additionalLinks.settings %]
 			<OPTION value="" label="">---[% "SETTINGS" | string %]---</OPTION>
 			[% PROCESS addBrowseLinks links=additionalLinks.settings %]
@@ -26,7 +26,7 @@
 	[%- BLOCK addBrowseLinks -%]
 		[%- IF links -%]
 			[%- FOREACH link = links -%]
-				<OPTION [% IF page == link.key %]selected[% END %] value="[% link.key %]" label="[% link.key | string %]">[% link.key | string %]</OPTION>
+				<OPTION value="[% link.key %]" label="[% link.key | string %]">[% link.key | string %]</OPTION>
 			[%- END -%]
 		[%- END -%]
 	[%- END -%]
@@ -37,8 +37,6 @@
 			[% IF link.key == "SQUEEZENETWORK_SWITCH" %][% cookie = 0 %][% END %]
 			case "[% link.key %]":
 				url = "[% link.value %]"
-				[% IF cookie %]page = "[% link.key %]"[% END %]
-				suffix = "page=" + page
 				[% IF cookie %]homestring = "[% link.key | string %]"
 				cookie = [% cookie %][% END %]
 			break
@@ -77,9 +75,14 @@
 					parent.browser.location='search.html?manualSearch=1&query=' + value + '&player' + getPlayer('SlimServer-player');
 				}
 				
+				function goHome()
+				{
+					var homepage = getPage();
+					chooseBrowser(null,homepage);
+				}
+				
 				function chooseBrowser(value,option)
 				{
-					selectLink()
 					var url;
 					var cookie = 0;
 					switch(option)
@@ -91,33 +94,43 @@
 					[% PROCESS addCaseLinks links=additionalLinks.settings cookie=0 %]
 					case "RADIO_TUNEIN":
 						url = "tunein.html"
-						page = "RADIO_TUNEIN"
-						suffix = "?page=" + page
+						//page = "RADIO_TUNEIN"
 					break
 					case "STATISTICS":
-						url= "hitlist.html"
-						page="STATISTICS"
-						suffix = ""
+						url = "hitlist.html"
+						//page = "STATISTICS"
 					}
 			
 					if (option) {
 						if (cookie) {
-							setCookie("SlimServer-Browserpage",url + suffix);
-							//parent.header.location =  "home.html?page=" + page + '&player' + getPlayer('SlimServer-player');
+							setCookie("SlimServer-Browserpage",option);
+							//parent.header.location =  "home.html?player' + getPlayer('SlimServer-player');
 						}
-						if (suffix != "") {suffix = suffix + "&"} else {suffix = "?"}
-						parent.browser.location = url + suffix + 'player' + getPlayer('SlimServer-player');
-					}
+						
+						parent.browser.location = url + '?player' + getPlayer('SlimServer-player');
+					}
+					
+					if (value != null) {
+						selectLink();
+					} else {
+						selectLink("",option);
+					}
+					document.getElementById('homepage').innerHTML = option;
 				}
 				
 				function homelink() {
 					if (homestring) {
 						document.getElementById('homelink').innerHTML = homestring;
-					} [% IF page %]else {
-						document.getElementById('homelink').innerHTML = '[% page | string %]';
-					}[% END %]
-				}
-				
+					}
+				}
+				
+				function loadBrowser(force) {
+					if (force || parent.browser.location.href.match('black.html')) {
+						page = getPage();
+						chooseBrowser(null,page);
+					}
+				}
+
 				-->
 			</script>
 
@@ -125,6 +138,8 @@
 		
 		[% IF warn %]
 			[% bodyscript = 'onload="doLoad(1);"' %]
+		[% ELSE %]
+			[% bodyscript = 'onload="loadBrowser();"' %]
 		[% END %]
 	
 	[% END %]
@@ -149,7 +164,7 @@
 
 		<div id="masthead">
 			<div id="SDlogo">
-		
+					<span id="homepage" style="display:none;"></span>
 					<span id="scanWarning" [% IF NOT warn %]style="display:none"[% END %]>
 						[% "RESCANNING_SHORT" | string %]
 						<a href="[% webroot %]progress.html?type=importer" target="browser">
@@ -166,7 +181,7 @@
 		
 			</div>
 			<div id="serverlinks">
-				<a id="homelink" style="font-weight:bold;" href="javascript:selectLink(this,'BROWSE_NEW_MUSIC');" target="browser" onclick="selectLink(this,'[% page %]');" onMouseOver="homelink();setLink(this);" onMouseOut="document.getElementById('homelink').innerHTML = '[% "HOME" | string %]';">[% "HOME" | string %]</a>
+				<a id="homelink" style="font-weight:bold;" href="javascript:loadBrowser(1);" onMouseOver="homelink();" onMouseOut="document.getElementById('homelink').innerHTML = '[% "HOME" | string %]';">[% "HOME" | string %]</a>
 				 / 
 				[% IF not nosetup && not noserver %]
 					<a href="[% webroot %]settings/server/basic.html?player=[% playerURI %][% IF nofolder %]&nofolder=1[% END %]" target="browser" onclick="selectLink(this,1)">[% "SERVER_SETTINGS" | string %]</a>
@@ -180,7 +195,7 @@
 			
 			[% optionForm %]
 			
-			<FORM id="HeaderSearchForm" name="HeaderSearchForm" action="javascript:return(false);" onSubmit="doSearch(query.value);">
+			<FORM id="HeaderSearchForm" name="HeaderSearchForm" action="javascript:void(0)" onSubmit="doSearch(query.value);">
 				[% "SEARCH" | string %]
 				<input type=text class="stdedit" name="query" [% IF search %]value="[% query %]"[% END %] size="15">
 				<input type=hidden value="[% player %]" name="player">

Added: trunk/server/HTML/Fishbone/html/black.html
URL: http://svn.slimdevices.com/trunk/server/HTML/Fishbone/html/black.html?rev=11382&view=auto
==============================================================================
--- trunk/server/HTML/Fishbone/html/black.html (added)
+++ trunk/server/HTML/Fishbone/html/black.html Sat Feb 10 09:41:15 2007
@@ -1,0 +1,7 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" 
+	"http://www.w3.org/TR/html4/frameset.dtd">
+<html>
+	<body bgcolor="#000000">
+		&nbsp;
+	</body>
+</html>

Modified: trunk/server/HTML/Fishbone/html/scripts.js
URL: http://svn.slimdevices.com/trunk/server/HTML/Fishbone/html/scripts.js?rev=11382&r1=11381&r2=11382&view=diff
==============================================================================
--- trunk/server/HTML/Fishbone/html/scripts.js (original)
+++ trunk/server/HTML/Fishbone/html/scripts.js Sat Feb 10 09:41:15 2007
@@ -5,21 +5,16 @@
 
 function changePlayer(player_List) {
 	player = player_List.options[player_List.selectedIndex].value;
-	//setCookie('SlimServer-player', '=' + player);
+	
 	player = escape(player);
 	
 	var newPlayer = "=" + player;
-	newHref(parent.frames[2].document,newPlayer);
 	refreshPlaylist(player);
 	
 	var args = 'player='+player+'&ajaxRequest=1&s='+Math.random();
 	getStatusData(args, refreshNewPlayer);
 	
-	var newpage = '';
-	var rExp= new RegExp("&page=(.*?)$");
-	
-	if (parent.browser.location.href.indexOf('setup')        == -1 &&
-			parent.browser.location.href.indexOf('settings') == -1) {
+	if (parent.browser.location.href.indexOf('setup') == -1) {
 		newHref(parent.browser.document,newPlayer);
 		newHref(parent.header.document,newPlayer);
 		newValue(parent.browser.document,unescape(player));
@@ -29,15 +24,12 @@
 		parent.browser.location=browseURL.replace(playerExp, newPlayer);
 	}
 
-	var myString = getHomeCookie('SlimServer-Browserpage');
-	if (rExp.exec(myString)) newpage = "&page=" + rExp.exec(myString)[1];
-
-	headerURL = new String(parent.header.location.href);
-	newloc = headerURL.replace(playerExp, newPlayer);
-	
 	if (document.all) { //certain versions of IE will just have to reload the header
-		parent.header.location = newloc.replace(/&page=(.*?)$/,newpage);
-	}
+		parent.header.location = "home.html?player=" + player;
+	}
+	
+	var page = parent.header.document.getElementById('homepage').innerHTML;
+	selectLink("",page);
 }
 
 // change browse/plugin/radio hrefs to proper player
@@ -86,23 +78,6 @@
 	window.open('status.html?player='+player+'&undock=1', '', 'width=480,height=210,status=no');
 }
 
-function getArgs() {
-	var args = new Object();
-	var query = location.search.substring(1);
-	var pairs = query.split("&");
-
-	for(var i = 0; i < pairs.length; i++) {
-		var pos = pairs[i].indexOf('=');
-
-		if (pos == -1) continue;
-		var argname = pairs[i].substring(0,pos);
-		var value = pairs[i].substring(pos+1);
-		args[argname] = unescape(value);
-	}
-
-	return args;
-}
-
 function getCookie(cookie)
 {
 	var search = cookie + "=";
@@ -127,17 +102,12 @@
 	plyr = getCookie(Player);
 
 	if (!plyr) return "";
-	if (plyr.indexOf("=") == -1) plyr = "=" + plyr;
+	if (plyr.indexOf("=") == -1) plyr = plyr;
 
 	return plyr;
 }
 
-function goHome(plyr)
-{
-	var loc = getHomeCookie('SlimServer-Browserpage')+'&player='+plyr;
-	parent.browser.location = loc;
-}
-
+// grab homepage cookie
 function getHomeCookie(Name) 
 {
 	var url = getCookie(Name);
@@ -150,6 +120,7 @@
 	return url;
 }
 
+// parse the page name token (handles old style full href cookie)
 function getPage() {
 	var url = getHomeCookie('SlimServer-Browserpage');
 
@@ -170,18 +141,18 @@
 					end = url.length;
 				page = unescape(url.substring(offset, end));
 
-				if (!page) return "BROWSE_BY_ALBUM";
+				if (!page) return url;
 				return page;
 			}
 		}
-		return "BROWSE_BY_ALBUM";
+		return url;
 	}
 }
 
 var selectedLink;
 function selectLink(lnk,reset) {
 
-	document.getElementById('homelink').style.fontWeight = 'normal';
+	parent.header.document.getElementById('homelink').style.fontWeight = 'normal';
 	if (selectedLink) selectedLink.style.fontWeight = 'normal';
 
 	if (lnk) {
@@ -189,15 +160,15 @@
 		selectedLink=lnk;
 	}
 	if (reset == 1) {
-		document.forms[0].browse.options[0].selected = "true";
+		parent.header.document.forms[0].browse.options[0].selected = "true";
 
 	} else {
-		if (reset && homestring) {reset = page;}
-
-		for (var i=0;i < document.forms[0].browse.options.length; i++){
-
-			if (document.forms[0].browse.options[i].value == reset) {
-				document.forms[0].browse.options[i].selected = "true";
+		if (reset) {
+			for (var i=0;i < parent.header.document.forms[0].browse.options.length; i++){
+	
+				if (parent.header.document.forms[0].browse.options[i].value == reset) {
+					parent.header.document.forms[0].browse.options[i].selected = "true";
+				}
 			}
 		}
 	}
@@ -207,6 +178,7 @@
 	lnk.href=getHomeCookie('SlimServer-Browserpage') + "&player" + getPlayer('SlimServer-player');
 }
 
+// function to turn off text under album images while in gallery view.
 function toggleText(set) {
 	for (var i=0; i < document.getElementsByTagName("div").length; i++) {
 

Modified: trunk/server/HTML/Fishbone/index.html
URL: http://svn.slimdevices.com/trunk/server/HTML/Fishbone/index.html?rev=11382&r1=11381&r2=11382&view=diff
==============================================================================
--- trunk/server/HTML/Fishbone/index.html (original)
+++ trunk/server/HTML/Fishbone/index.html Sat Feb 10 09:41:15 2007
@@ -3,25 +3,21 @@
 <html>
 	<head>
 		[% PROCESS customheader.html %]
-		<script TYPE="text/javascript">
-			//<!--Hide
-			
-			document.write('<frameset cols="50%,*" framespacing="2" border="2">' );
-			document.write('<frameset name="home" ID="home" border="0" frameborder="no" framespacing="0" rows="55,*">');
-			document.write('<frame name="header" ID="header" scrolling="no" src="home.html?player=[% playerURI %]&page='+ getPage() +'">');
-			document.write('<frame name="browser" ID="browser" src="' + getHomeCookie('SlimServer-Browserpage') +'&player=[% playerURI %]">');
-			document.write('<\/frameset>');
-			
-			document.write('<frameset name="player_frame" ID="player_frame" border="0" frameborder="no" framespacing="0" rows="260,*">');
-			document.write('<frame ID="status" name="status" scrolling="no" src="status_header.html?player=[% playerURI %]">');
-			document.write('<frame ID="playlist" name="playlist" src="playlist.html?player=[% playerURI %]">');
-			document.write('<\/frameset>');
-			document.write('<\/frameset>');
-			document.close();
-			//-->
-		</script>
 	</head>
-	<body>
+	
+	<frameset cols="50%,*" framespacing="2" border="2">
+		<frameset name="home" ID="home" border="0" frameborder="no" framespacing="0" rows="55,*">
+			<frame name="header" ID="header" scrolling="no" src="home.html?player=[% playerURI %]">
+			<frame name="browser" ID="browser" src="html/black.html">
+		</frameset>
+		<frameset name="player_frame" ID="player_frame" border="0" frameborder="no" framespacing="0" rows="260,*">
+			<frame ID="status" name="status" scrolling="no" src="status_header.html?player=[% playerURI %]">
+			<frame ID="playlist" name="playlist" src="playlist.html?player=[% playerURI %]">
+		</frameset>
+	</frameset>
+	<noframes>
+	<body bgcolor="#000000">
 		This page requires Frames.
 	</body>
+	</noframes>
 </html>



More information about the checkins mailing list