/* Background Position Animate Plugin  */
(function($){if(!document.defaultView||!document.defaultView.getComputedStyle){var oldCurCSS=jQuery.curCSS;jQuery.curCSS=function(elem,name,force){if(name!=='backgroundPosition'||!elem.currentStyle||elem.currentStyle[name]){return oldCurCSS.apply(this,arguments);}
var style=elem.style;if(!force&&style&&style[name]){return style[name];}
return oldCurCSS(elem,'backgroundPositionX',force)+' '+oldCurCSS(elem,'backgroundPositionY',force);};}})(jQuery);(function($){function toArray(strg){strg=strg.replace(/left|top/g,'0px');strg=strg.replace(/right|bottom/g,'100%');strg=strg.replace(/([0-9\.]+)(\s|\)|$)/g,"$1px$2");var res=strg.match(/(-?[0-9\.]+)(px|\%|em|pt)\s(-?[0-9\.]+)(px|\%|em|pt)/);return[parseFloat(res[1],10),res[2],parseFloat(res[3],10),res[4]];}
$.fx.step.backgroundPosition=function(fx){if(!fx.bgPosReady){var start=$.curCSS(fx.elem,'backgroundPosition');if(!start){start='0px 0px';}
start=toArray(start);fx.start=[start[0],start[2]];var end=toArray(fx.options.curAnim.backgroundPosition);fx.end=[end[0],end[2]];fx.unit=[end[1],end[3]];fx.bgPosReady=true;}
var nowPosX=[];nowPosX[0]=((fx.end[0]-fx.start[0])*fx.pos)+fx.start[0]+fx.unit[0];nowPosX[1]=((fx.end[1]-fx.start[1])*fx.pos)+fx.start[1]+fx.unit[1];fx.elem.style.backgroundPosition=nowPosX[0]+' '+nowPosX[1];};})(jQuery);

(function($){$.fn.popupWindow=function(instanceSettings){return this.each(function(){$(this).click(function(){$.fn.popupWindow.defaultSettings={centerBrowser:0,centerScreen:0,height:500,left:0,location:0,menubar:0,resizable:0,scrollbars:0,status:0,width:500,windowName:null,windowURL:null,top:0,toolbar:0};settings=$.extend({},$.fn.popupWindow.defaultSettings,instanceSettings||{});var windowFeatures='height='+settings.height+',width='+settings.width+',toolbar='+settings.toolbar+',scrollbars='+settings.scrollbars+',status='+settings.status+',resizable='+settings.resizable+',location='+settings.location+',menuBar='+settings.menubar;settings.windowName=this.name||settings.windowName;settings.windowURL=this.href||settings.windowURL;var centeredY,centeredX;if(settings.centerBrowser){if($.browser.msie){centeredY=(window.screenTop-120)+((((document.documentElement.clientHeight+120)/2)-(settings.height/2)));centeredX=window.screenLeft+((((document.body.offsetWidth+20)/2)-(settings.width/2)));}else{centeredY=window.screenY+(((window.outerHeight/2)-(settings.height/2)));centeredX=window.screenX+(((window.outerWidth/2)-(settings.width/2)));}
window.open(settings.windowURL,settings.windowName,windowFeatures+',left='+centeredX+',top='+centeredY).focus();}else if(settings.centerScreen){centeredY=(screen.height-settings.height)/2;centeredX=(screen.width-settings.width)/2;window.open(settings.windowURL,settings.windowName,windowFeatures+',left='+centeredX+',top='+centeredY).focus();}else{window.open(settings.windowURL,settings.windowName,windowFeatures+',left='+settings.left+',top='+settings.top).focus();}
return false;});});};})(jQuery);

jQuery.cookie=function(name,value,options){if(typeof value!='undefined'){options=options||{};if(value===null){value='';options.expires=-1;}
var expires='';if(options.expires&&(typeof options.expires=='number'||options.expires.toUTCString)){var date;if(typeof options.expires=='number'){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000));}else{date=options.expires;}
expires='; expires='+date.toUTCString();}
var path=options.path?'; path='+(options.path):'';var domain=options.domain?'; domain='+(options.domain):'';var secure=options.secure?'; secure':'';document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('');}else{var cookieValue=null;if(document.cookie&&document.cookie!=''){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+'=')){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break;}}}
return cookieValue;}};

var landingpageAddCode;

$(document).ready(function() {
	/* Header Image Movements */
	function changeHeaderImage() {
		$image = $('#cWrapper');
		var position = $image.css('backgroundPosition');
		
		if(position == '0px 0px') {
			$image.stop().animate({backgroundPosition: '(-863px 0)'},{duration:1000});
		}else {
			$image.stop().animate({backgroundPosition: '(0px 0px)'},{duration:1000});	
		}
	}
	if(!$('#cWrapper').hasClass("static")) setInterval(changeHeaderImage, 8000 );


	/* Mouseover Text Benefitlist */
	function cleanUp() { 
		/* just to be sure */
		$("ul.benefitList li li span.over").hide();
		$("ul.benefitList li li span.out").show();
	}
// 

	$('ul.benefitList li li:not(ul.sub li)').hover(
		function(){				
				cleanUp();			
				$(this).find("span.out").stop().hide();
				$(this).find("span.over").stop().show();
		},
		function(){	
				$(this).find("span.over").stop().hide();
				$(this).find("span.out").stop().show();
		}
	);
	
	$("a.teaser-faq:not([rel=faq])").popupWindow({ centerScreen:1,scrollbars:1, width:550 }); 	

		/* 
			Check for Affiliate Links set Cookie 
			and attach Values to Registration Paths 		
		*/		
		if (location.search) {
			var searchstring = "";
			if(location.search.indexOf("?")==0) {
				searchstring = location.search.substr(1,location.search.length);
			}else{ 
				searchstring = location.search; 
			}

			$.cookie('NQ', ''+searchstring+'', { expires: 30,path: '/' });
		}
		
		refCookieVal = $.cookie('NQ');
		
		if(refCookieVal && typeof(disallowCookie) == 'undefined'){		
			$('[href]').each(function(){
				url = $(this).attr("href");	
				if(url.match("registration")) {	
					if($(this).attr("href").indexOf("?")==-1) {
						$(this).attr("href",url+'?'+refCookieVal.toLowerCase());
					}else {
						$(this).attr("href",url+'&'+refCookieVal.toLowerCase());
					}	
				}		
			});
		}

		/* Add Reedem Code to Registration Urls */

		landingpageAddCode = function(code) {			
			$('[href]').each(function(){			
				url = $(this).attr("href");				
				if(url.match("registration")) {			
					if($(this).attr("href").indexOf("?")==-1) {
						$(this).attr("href", url+'?codestr='+code);
					}else {
						$(this).attr("href", url+'&codestr='+code);
					}				
				}		
			});	
			$('a.button-redeem-your-code').addClass('code'+code);		
			$('div.outputCodeText').html("Redeem your Code: <span>"+code+"</span>");

		}
		
		if($('div.music-unlimited-display').length) getFeed("newreleases", "albumcover", 3);


		function getFeed(type, target, amount) {

			  switch (type) {
				case "popularity": 		
					var feedobj = new google.feeds.Feed("http://www.napster.co.uk/feeds/rss/1.0/track/popularity/all");
				break;
			 
				case "newreleases": 
					 var feedobj = new google.feeds.Feed("http://www.napster.co.uk/feeds/rss/1.0/album/newreleases/all");
				break;
			 
				case "recommendations": 
					 var feedobj = new google.feeds.Feed("http://www.napster.co.uk/feeds/rss/1.0/album/recommendations/all");
				break;
			  }
			feedobj.setResultFormat(google.feeds.Feed.XML_FORMAT);
			feedobj.setNumEntries(amount);
			
			feedobj.load(function(result) {	
				if (!result.error) {					
					var items = result.xmlDocument.getElementsByTagName("item");
					
					if(target=='albumcover'){

						for (var i = 0; i < items.length; i++) {

							if(items[i].getElementsByTagName("nweb:track_name")[0] || items[i].getElementsByTagName("nweb:album_name")[0]){
								var titleElement = items[i].getElementsByTagName("nweb:track_name")[0];
								if(!titleElement) var titleElement = items[i].getElementsByTagName("nweb:album_name")[0];
							}
							else{
								var titleElement = items[i].getElementsByTagName("track_name")[0];
								if(!titleElement) var titleElement = items[i].getElementsByTagName("album_name")[0];
							}
							var title = titleElement.firstChild.nodeValue;

							if(items[i].getElementsByTagName("nweb:image_003")[0]){
								var img003Element = items[i].getElementsByTagName("nweb:image_003")[0];
							}
							else var img003Element = items[i].getElementsByTagName("image_003")[0];
							if(img003Element.firstChild) {						
								var img003 = img003Element.firstChild.nodeValue;
							} else {
								var img003 = "http://home.gb.napster.com/images/player/bg_default_album_art.gif";
							}

							if(items[i].getElementsByTagName("nweb:artist_name")[0]){
								var artistnameElement = items[i].getElementsByTagName("nweb:artist_name")[0];
							}
							else var artistnameElement = items[i].getElementsByTagName("artist_name")[0];
							var artistname = artistnameElement.firstChild.nodeValue;

							$("div.mu-cd"+i+"").html('<img class="cover" src="'+img003+'" alt="'+title+' - '+artistname+'" />');
													
						}

					}else{

						var htmlTxt = '<ul>';
						for (var i = 0; i < items.length; i++) {

							if(items[i].getElementsByTagName("nweb:track_name")[0] || items[i].getElementsByTagName("nweb:album_name")[0]){
								var titleElement = items[i].getElementsByTagName("nweb:track_name")[0];
								if(!titleElement) var titleElement = items[i].getElementsByTagName("nweb:album_name")[0];
							}
							else{
								var titleElement = items[i].getElementsByTagName("track_name")[0];
								if(!titleElement) var titleElement = items[i].getElementsByTagName("album_name")[0];
							}
							var title = titleElement.firstChild.nodeValue;

							if(items[i].getElementsByTagName("nweb:image_003")[0]){
								var img003Element = items[i].getElementsByTagName("nweb:image_003")[0];
							}
							else var img003Element = items[i].getElementsByTagName("image_003")[0];
							if(img003Element.firstChild) {						
								var img003 = img003Element.firstChild.nodeValue;
							} else {
								var img003 = "http://home.gb.napster.com/images/player/bg_default_album_art.gif";
							}

							if(items[i].getElementsByTagName("nweb:artist_name")[0]){
								var artistnameElement = items[i].getElementsByTagName("nweb:artist_name")[0];
							}
							else var artistnameElement = items[i].getElementsByTagName("artist_name")[0];
							var artistname = artistnameElement.firstChild.nodeValue;
								
																		
							htmlTxt += '<li>';
							htmlTxt += '<a class="albumimg" href="/musik-hoeren/index.html" rel="registration_modul2"><img width="140" height="139" src="'+img003+'" alt=""/></a>';
							htmlTxt += '<div class="info">';
							htmlTxt += '<a href="/musik-hoeren/index.html" rel="registration_modul2"><em class="albumname">'+title+'</em></a>';
							htmlTxt += '<div class="clear"></div>';
							htmlTxt += '<a href="/musik-hoeren/index.html" rel="registration_modul2"><em class="artistname">'+artistname+'</em></a>';
							htmlTxt += '</div>';
							htmlTxt += '</li>';	
						}
						htmlTxt += '</ul>';						
						$(target).html(htmlTxt);
					}
					
					return true;
				}				 
			 });
		}

});
