/* Copyright 2011 mSpot, Inc. All Rights Reserved */

/* Aria v1.434-8 */

/* mspot.js */
if(typeof mspot=="undefined"||!mspot){var mspot={}}mspot.namespace=function(){var b=arguments,g=null,e,c,f;for(e=0;e<b.length;e=e+1){f=(""+b[e]).split(".");g=mspot;for(c=(f[0]=="mspot")?1:0;c<f.length;c=c+1){g[f[c]]=g[f[c]]||{};g=g[f[c]]}}return g};mspot.isUndefined=YAHOO.lang.isUndefined;mspot.bind=function(b,a){return function(){return b.apply(a,arguments)}};mspot.Settings={};mspot.addSettings=function(b){for(var a in b){mspot.Settings[a]=b[a]}YAHOO.util.Event.throwErrors=mspot.Settings.YUI_THROW_ERRORS};mspot.Settings.SLOW=(YAHOO.env.ua.ie>0&&YAHOO.env.ua.ie<9);mspot.Settings.isIe9=YAHOO.env.ua.ie>=9&&YAHOO.env.ua.ie<10;if(typeof console=="undefined"){console={logEntries:[],log:function(a){console.logEntries.push(a)},debug:function(a){console.log(a)},warn:function(a){console.log(a)},error:function(a){console.log(a)},info:function(a){console.log(a)},trace:function(a){},showLog:function(){alert(console.logEntries.join("\n"))},dump:function(a){var b=(typeof a).toString()+"\n"+a.toString();if(a.toString()=="[object Error]"){b+="\n"+a.name+"\n"+a.description+"\n"+a.number}alert(b)}}}perfLog=function(a){if(mspot.Settings.DEBUG){console.log("PERF: "+a)}};errorLog=function(a){console.trace();console.error.apply?console.error.apply(console,arguments):console.error(a)};infoLog=function(a){if(mspot.Settings.DEBUG){console.info.apply?console.info.apply(console,arguments):console.info(a)}};warningLog=function(a){if(mspot.Settings.DEBUG){console.warn.apply?console.warn.apply(console,arguments):console.warn(a)}};debugLog=function(a){if(mspot.Settings.DEBUG){console.info.apply?console.info.apply(console,arguments):console.info(a);YAHOO.log(a,"debug","")}};
/* AC_OETags.js */
var isIE=(navigator.appVersion.indexOf("MSIE")!=-1)?true:false;var isWin=(navigator.appVersion.toLowerCase().indexOf("win")!=-1)?true:false;var isOpera=(navigator.userAgent.indexOf("Opera")!=-1)?true:false;function ControlVersion(){var a;var b;var c;try{b=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");a=b.GetVariable("$version")}catch(c){}if(!a){try{b=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");a="WIN 6,0,21,0";b.AllowScriptAccess="always";a=b.GetVariable("$version")}catch(c){}}if(!a){try{b=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");a=b.GetVariable("$version")}catch(c){}}if(!a){try{b=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");a="WIN 3,0,18,0"}catch(c){}}if(!a){try{b=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");a="WIN 2,0,0,11"}catch(c){a=-1}}return a}function GetSwfVer(){var g=-1;if(navigator.plugins!=null&&navigator.plugins.length>0){if(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]){var f=navigator.plugins["Shockwave Flash 2.0"]?" 2.0":"";var a=navigator.plugins["Shockwave Flash"+f].description;var e=a.split(" ");var c=e[2].split(".");var h=c[0];var b=c[1];var d=e[3];if(d==""){d=e[4]}if(d[0]=="d"){d=d.substring(1)}else{if(d[0]=="r"){d=d.substring(1);if(d.indexOf("d")>0){d=d.substring(0,d.indexOf("d"))}}}var g=h+"."+b+"."+d}}else{if(navigator.userAgent.toLowerCase().indexOf("webtv/2.6")!=-1){g=4}else{if(navigator.userAgent.toLowerCase().indexOf("webtv/2.5")!=-1){g=3}else{if(navigator.userAgent.toLowerCase().indexOf("webtv")!=-1){g=2}else{if(isIE&&isWin&&!isOpera){g=ControlVersion()}}}}}return g}function DetectFlashVer(f,d,c){versionStr=GetSwfVer();if(versionStr==-1){return false}else{if(versionStr!=0){if(isIE&&isWin&&!isOpera){tempArray=versionStr.split(" ");tempString=tempArray[1];versionArray=tempString.split(",")}else{versionArray=versionStr.split(".")}var e=versionArray[0];var a=versionArray[1];var b=versionArray[2];if(e>parseFloat(f)){return true}else{if(e==parseFloat(f)){if(a>parseFloat(d)){return true}else{if(a==parseFloat(d)){if(b>=parseFloat(c)){return true}}}}}return false}}}function AC_AddExtension(b,a){if(b.indexOf("?")!=-1){return b.replace(/\?/,a+"?")}else{return b+a}}function AC_Generateobj(e,d,a){var c="";if(isIE&&isWin&&!isOpera){c+="<object ";for(var b in e){c+=b+'="'+e[b]+'" '}for(var b in d){c+='><param name="'+b+'" value="'+d[b]+'" /> '}c+="></object>"}else{c+="<embed ";for(var b in a){c+=b+'="'+a[b]+'" '}c+="> </embed>"}document.write(c)}function AC_FL_RunContent(){var a=AC_GetArgs(arguments,".swf","movie","clsid:d27cdb6e-ae6d-11cf-96b8-444553540000","application/x-shockwave-flash");AC_Generateobj(a.objAttrs,a.params,a.embedAttrs)}function AC_GetArgs(b,e,g,d,h){var a=new Object();a.embedAttrs=new Object();a.params=new Object();a.objAttrs=new Object();for(var c=0;c<b.length;c=c+2){var f=b[c].toLowerCase();switch(f){case"classid":break;case"pluginspage":a.embedAttrs[b[c]]=b[c+1];break;case"src":case"movie":b[c+1]=AC_AddExtension(b[c+1],e);a.embedAttrs.src=b[c+1];a.params[g]=b[c+1];break;case"onafterupdate":case"onbeforeupdate":case"onblur":case"oncellchange":case"onclick":case"ondblClick":case"ondrag":case"ondragend":case"ondragenter":case"ondragleave":case"ondragover":case"ondrop":case"onfinish":case"onfocus":case"onhelp":case"onmousedown":case"onmouseup":case"onmouseover":case"onmousemove":case"onmouseout":case"onkeypress":case"onkeydown":case"onkeyup":case"onload":case"onlosecapture":case"onpropertychange":case"onreadystatechange":case"onrowsdelete":case"onrowenter":case"onrowexit":case"onrowsinserted":case"onstart":case"onscroll":case"onbeforeeditfocus":case"onactivate":case"onbeforedeactivate":case"ondeactivate":case"type":case"codebase":a.objAttrs[b[c]]=b[c+1];break;case"id":case"width":case"height":case"align":case"vspace":case"hspace":case"class":case"title":case"accesskey":case"name":case"tabindex":a.embedAttrs[b[c]]=a.objAttrs[b[c]]=b[c+1];break;default:a.embedAttrs[b[c]]=a.params[b[c]]=b[c+1]}}a.objAttrs.classid=d;if(h){a.embedAttrs.type=h}return a};
/* bridge/FABridge.js */
function FABridge(b,a){this.target=b;this.remoteTypeCache={};this.remoteInstanceCache={};this.remoteFunctionCache={};this.localFunctionCache={};this.bridgeID=FABridge.nextBridgeID++;this.name=a;this.nextLocalFuncID=0;FABridge.instances[this.name]=this;FABridge.idMap[this.bridgeID]=this;return this}FABridge.TYPE_ASINSTANCE=1;FABridge.TYPE_ASFUNCTION=2;FABridge.TYPE_JSFUNCTION=3;FABridge.TYPE_ANONYMOUS=4;FABridge.initCallbacks={};FABridge.userTypes={};FABridge.addToUserTypes=function(){for(var a=0;a<arguments.length;a++){FABridge.userTypes[arguments[a]]={typeName:arguments[a],enriched:false}}};FABridge.argsToArray=function(b){var a=[];for(var c=0;c<b.length;c++){a[c]=b[c]}return a};function instanceFactory(a){this.fb_instance_id=a;return this}function FABridge__invokeJSFunction(a){var c=a[0];var b=a.concat();b.shift();var d=FABridge.extractBridgeFromID(c);return d.invokeLocalFunction(c,b)}FABridge.addInitializationCallback=function(b,d){var c=FABridge.instances[b];if(c!=undefined){d.call(c);return}var a=FABridge.initCallbacks[b];if(a==null){FABridge.initCallbacks[b]=a=[]}a.push(d)};function FABridge__bridgeInitialized(d){var a="bridgeName="+d;if(/Explorer/.test(navigator.appName)||/Konqueror|Safari|KHTML/.test(navigator.appVersion)){var l=document.getElementsByTagName("object");if(l.length==1){FABridge.attachBridge(l[0],d)}else{for(var f=0;f<l.length;f++){var h=l[f];var c=h.childNodes;var g=false;for(var e=0;e<c.length;e++){var b=c[e];if(b.nodeType==1&&b.tagName.toLowerCase()=="param"){if(b.name.toLowerCase()=="flashvars"&&b.value.indexOf(a)>=0){FABridge.attachBridge(h,d);g=true;break}}}if(g){break}}}}else{var l=document.getElementsByTagName("embed");if(l.length==1){FABridge.attachBridge(l[0],d)}else{for(var f=0;f<l.length;f++){var h=l[f];var k=h.attributes.getNamedItem("flashVars").nodeValue;if(k.indexOf(a)>=0){FABridge.attachBridge(h,d)}}}}return true}FABridge.nextBridgeID=0;FABridge.instances={};FABridge.idMap={};FABridge.refCount=0;FABridge.extractBridgeFromID=function(b){var a=(b>>16);return FABridge.idMap[a]};FABridge.attachBridge=function(a,c){var b=new FABridge(a,c);FABridge[c]=b;var e=FABridge.initCallbacks[c];if(e==null){return}for(var d=0;d<e.length;d++){e[d].call(b)}delete FABridge.initCallbacks[c]};FABridge.blockedMethods={toString:true,get:true,set:true,call:true};FABridge.prototype={root:function(){return this.deserialize(this.target.getRoot())},releaseASObjects:function(){return this.target.releaseASObjects()},releaseNamedASObject:function(b){if(typeof(b)!="object"){return false}else{var a=this.target.releaseNamedASObject(b.fb_instance_id);return a}},create:function(a){return this.deserialize(this.target.create(a))},makeID:function(a){return(this.bridgeID<<16)+a},getPropertyFromAS:function(b,a){if(FABridge.refCount>0){throw new Error("You are trying to call recursively into the Flash Player which is not allowed. In most cases the JavaScript setTimeout function, can be used as a workaround.")}else{FABridge.refCount++;retVal=this.target.getPropFromAS(b,a);retVal=this.handleError(retVal);FABridge.refCount--;return retVal}},setPropertyInAS:function(c,b,a){if(FABridge.refCount>0){throw new Error("You are trying to call recursively into the Flash Player which is not allowed. In most cases the JavaScript setTimeout function, can be used as a workaround.")}else{FABridge.refCount++;retVal=this.target.setPropInAS(c,b,this.serialize(a));retVal=this.handleError(retVal);FABridge.refCount--;return retVal}},callASFunction:function(b,a){if(FABridge.refCount>0){throw new Error("You are trying to call recursively into the Flash Player which is not allowed. In most cases the JavaScript setTimeout function, can be used as a workaround.")}else{FABridge.refCount++;retVal=this.target.invokeASFunction(b,this.serialize(a));retVal=this.handleError(retVal);FABridge.refCount--;return retVal}},callASMethod:function(b,c,a){if(FABridge.refCount>0){throw new Error("You are trying to call recursively into the Flash Player which is not allowed. In most cases the JavaScript setTimeout function, can be used as a workaround.")}else{FABridge.refCount++;a=this.serialize(a);retVal=this.target.invokeASMethod(b,c,a);retVal=this.handleError(retVal);FABridge.refCount--;return retVal}},invokeLocalFunction:function(d,b){var a;var c=this.localFunctionCache[d];if(c!=undefined){a=this.serialize(c.apply(null,this.deserialize(b)))}return a},getUserTypeDescriptor:function(b){var c=b.replace(/^([^:]*)\:\:([^:]*)$/,"$2");var e=((typeof window[c]=="function")&&(typeof FABridge.userTypes[c]!="undefined"));var d=false;if(e){d=FABridge.userTypes[c].enriched}var a={simpleType:c,isUserProto:e,protoEnriched:d};return a},getTypeFromName:function(b){var c=this.getUserTypeDescriptor(b);var a=this.remoteTypeCache[b];if(c.isUserProto){if(!c.protoEnriched){for(i in window[c.simpleType].prototype){a[i]=window[c.simpleType].prototype[i]}window[c.simpleType].prototype=a;this.remoteTypeCache[b]=a;FABridge.userTypes[c.simpleType].enriched=true}}return a},createProxy:function(c,b){var d=this.getUserTypeDescriptor(b);var f=this.getTypeFromName(b);if(d.isUserProto){var e=window[d.simpleType];var a=new e(this.name,c);a.fb_instance_id=c}else{instanceFactory.prototype=f;var a=new instanceFactory(c)}this.remoteInstanceCache[c]=a;return a},getProxy:function(a){return this.remoteInstanceCache[a]},addTypeDataToCache:function(d){newType=new ASProxy(this,d.name);var b=d.accessors;for(var c=0;c<b.length;c++){this.addPropertyToType(newType,b[c])}var a=d.methods;for(var c=0;c<a.length;c++){if(FABridge.blockedMethods[a[c]]==undefined){this.addMethodToType(newType,a[c])}}this.remoteTypeCache[newType.typeName]=newType;return newType},addPropertyToType:function(a,e){var f=e.charAt(0);var b;var d;if(f>="a"&&f<="z"){d="get"+f.toUpperCase()+e.substr(1);b="set"+f.toUpperCase()+e.substr(1)}else{d="get"+e;b="set"+e}a[b]=function(c){this.bridge.setPropertyInAS(this.fb_instance_id,e,c)};a[d]=function(){return this.bridge.deserialize(this.bridge.getPropertyFromAS(this.fb_instance_id,e))}},addMethodToType:function(a,b){a[b]=function(){return this.bridge.deserialize(this.bridge.callASMethod(this.fb_instance_id,b,FABridge.argsToArray(arguments)))}},getFunctionProxy:function(a){var b=this;if(this.remoteFunctionCache[a]==null){this.remoteFunctionCache[a]=function(){b.callASFunction(a,FABridge.argsToArray(arguments))}}return this.remoteFunctionCache[a]},getFunctionID:function(a){if(a.__bridge_id__==undefined){a.__bridge_id__=this.makeID(this.nextLocalFuncID++);this.localFunctionCache[a.__bridge_id__]=a}return a.__bridge_id__},serialize:function(d){var a={};var c=typeof(d);if(c=="number"||c=="string"||c=="boolean"||c==null||c==undefined){a=d}else{if(d instanceof Array){a=[];for(var b=0;b<d.length;b++){a[b]=this.serialize(d[b])}}else{if(c=="function"){a.type=FABridge.TYPE_JSFUNCTION;a.value=this.getFunctionID(d)}else{if(d instanceof ASProxy){a.type=FABridge.TYPE_ASINSTANCE;a.value=d.fb_instance_id}else{a.type=FABridge.TYPE_ANONYMOUS;a.value=d}}}}return a},deserialize:function(e){var a;var c=typeof(e);if(c=="number"||c=="string"||c=="boolean"||e==null||e==undefined){a=this.handleError(e)}else{if(e instanceof Array){a=[];for(var b=0;b<e.length;b++){a[b]=this.deserialize(e[b])}}else{if(c=="object"){for(var b=0;b<e.newTypes.length;b++){this.addTypeDataToCache(e.newTypes[b])}for(var d in e.newRefs){this.createProxy(d,e.newRefs[d])}if(e.type==FABridge.TYPE_PRIMITIVE){a=e.value}else{if(e.type==FABridge.TYPE_ASFUNCTION){a=this.getFunctionProxy(e.value)}else{if(e.type==FABridge.TYPE_ASINSTANCE){a=this.getProxy(e.value)}else{if(e.type==FABridge.TYPE_ANONYMOUS){a=e.value}}}}}}}return a},addRef:function(a){this.target.incRef(a.fb_instance_id)},release:function(a){this.target.releaseRef(a.fb_instance_id)},handleError:function(b){if(typeof(b)=="string"&&b.indexOf("__FLASHERROR")==0){var a=b.split("||");if(FABridge.refCount>0){FABridge.refCount--}throw new Error(a[1]);return b}else{return b}}};ASProxy=function(b,a){this.bridge=b;this.typeName=a;return this};ASProxy.prototype={get:function(a){return this.bridge.deserialize(this.bridge.getPropertyFromAS(this.fb_instance_id,a))},set:function(b,a){this.bridge.setPropertyInAS(this.fb_instance_id,b,a)},call:function(b,a){this.bridge.callASMethod(this.fb_instance_id,b,a)},addRef:function(){this.bridge.addRef(this)},release:function(){this.bridge.release(this)}};
/* util/util.js */
mspot.namespace("util");var Settings=mspot.Settings;mspot.util.shortName=function(a){if(a.length>20){return a.substr(0,17)+"..."}return a};mspot.util.unixTimestamp=function(){return Math.floor((new Date()).getTime()/1000)};mspot.util.parseQueryString=function(e){var a={};var c=e.split("&");for(var b=0;b<c.length;b++){var d=c[b].split("=");a[d[0]]=d[1]}return a};mspot.util.initialCap=function(a){a=a.substr(0,1).toUpperCase()+a.substr(1);return a};mspot.util.addMouseDownState=function(e,d){d=d||"down";var c=YAHOO.util.Dom,b=YAHOO.util.Event;var a=function(){e=YAHOO.util.Dom.get(e);b.on(e,"mousedown",function(){c.addClass(e,d)});b.on(e,"mouseup",function(){c.removeClass(e,d)});b.on(e,"mouseout",function(){c.removeClass(e,d)})};YAHOO.lang.isString(e)?b.onAvailable(e,a):a()};mspot.util.addInputDefaultText=function(f,d,c){c=c||"default";var e=YAHOO.util.Dom,b=YAHOO.util.Event;var a=function(){f=YAHOO.util.Dom.get(f);var h=(f.type=="password");if(h){var g=document.createElement("input");g.className=f.className;g.type="text";g.name="";g.value=d;e.addClass(g,c);f.parentNode.insertBefore(g,f);f.style.display="none"}var j=function(){if(f.value==""||f.value==d){f.value=d;e.addClass(f,c);if(h){g.style.display="";f.style.display="none"}}};var i=function(){if(e.hasClass(f,c)){f.value="";e.removeClass(f,c);if(h){f.style.display="";f.focus();g.style.display="none"}}};b.on(h?g:f,"focus",i);b.on(f,"blur",j);j()};YAHOO.lang.isString(f)?b.onAvailable(f,a):a()};mspot.util.compatibilityCheck=function(){var a=navigator.userAgent.toLowerCase();var b="android";if(a.search(b)>-1){location.href="mobiledownload.php";return false}if(YAHOO.env.ua.ie<7&&!YAHOO.env.ua.gecko&&!YAHOO.env.ua.webkit){alert("Your browser is not supported, currently we support:\nIE 8+\nFirefox 3+\nChrome 5+\nSafari 4+");return false}if(!(YAHOO.env.ua.mobile=="Apple"||(Settings.ENABLE_BROWSER_HTML5&&YAHOO.env.ua.webkit))&&!DetectFlashVer(9,0,124)){alert("Your browser doesn't support flash!");return false}return true};mspot.util.jumpTo=function(b){var a=YAHOO.util.Dom.get(b);a.scrollIntoView()};mspot.util.escape=function(a){a=a.replace(/'/g,"\\'");a=a.replace(/"/g,'\\"');return a};YAHOO.util.Dom.createElement=function(b,c){var g=document.createElement(b);if(c){for(var a in c){if(a=="style"){var f=c[a].split(";");for(var d=0;d<f.length;d++){var h=f[d].split(":");if(h[0]&&h[1]){YAHOO.util.Dom.setStyle(g,YAHOO.lang.trim(h[0]),YAHOO.lang.trim(h[1]))}}}else{YAHOO.util.Dom.setAttribute(g,a,c[a])}}}return g};YAHOO.util.Dom.appendChildren=function(c,b){c=YAHOO.util.Dom.get(c);for(var a=0;a<b.length;a++){c.appendChild(b[a])}};YAHOO.util.Dom.escapeHtml=function(a){return a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};YAHOO.util.Event.onTimeout=function(d,c,e,f){var b=window;if(f){b=(f===true)?e:f}var a=function(g){return c.call(b,e)};return window.setTimeout(a,d)};YAHOO.util.Event.KEY_RETURN=13;Math.randInt=function(b,a){return Math.floor(Math.random()*(a+1-b))+b};mspot.util.arrayIndexOf=function(b,c){if(b.indexOf){return b.indexOf(c)}else{var a=b.length;var d=0;for(;d<a;d++){if(d in b&&b[d]===c){return d}}return -1}};mspot.util.tryLoadPage=function(){if(typeof webRadio=="undefined"||!webRadio){return true}webRadio.loadPage.apply(webRadio,arguments);return false};
/* util/Loader.js */
(function(){var a=YAHOO.util.Dom,b=mspot.Settings;var c={_loader:null,_queue:[],_loading:false,_nextCallback:null,_startTime:null,_ignore:["skin-sam-autocomplete","skin-sam-datatable","skin-sam-button","skin-sam-container","skin-sam-menu","skin-sam-treeview","skin-sam","skin-sam-resize","skin-sam-paginator","skin-sam-slider"],load:function(d,i,g,h){if(this._loader==null){this._init()}var f=window;if(h){f=(h===true)?g:h}var e=function(j){return i.call(f,g)};if(this._loading){this._queue.push([d,i,g,h]);return}infoLog("Loader: "+d.join(", "));this._startTime=new Date();this._loading=true;this._nextCallback=e;this._loader.ignore=c._ignore;this._loader.require(d);this._loader.insert()},_init:function(){var d=this;if(this._loader==null){this._loader=new YAHOO.util.YUILoader({combine:YAHOO.lang.isUndefined(b.YUI_COMBINE)?true:b.YUI_COMBINE,allowRollup:true,filter:b.YUI_FILTER,ignore:c._ignore,onSuccess:function(){d._callback()},onFailure:function(){d._callback()}})}},_callback:function(){if(this._nextCallback){perfLog("Loader finished in "+(new Date()-this._startTime)+"ms");try{this._nextCallback()}catch(f){errorLog(f)}this._nextCallback=null}if(this._queue.length>0){var d=this._queue.shift();this._loading=false;this.load(d[0],d[1],d[2],d[3])}else{this._loading=false}}};mspot.Loader=c})();
/* util/Timer.js */
(function(){var a=function(c,b){if(YAHOO.lang.isUndefined(b)){b=0}this.createEvent(a.EVENT_TIMER);this.createEvent(a.EVENT_TIMER_COMPLETE);this.delay=c;this.repeatCount=b};YAHOO.lang.augmentObject(a,{EVENT_TIMER:"timer",EVENT_TIMER_COMPLETE:"timerComplete"});a.prototype={currentCount:0,delay:0,repeatCount:0,running:false,destroy:function(){this.stop();this.unsubscribeAll()},reset:function(){this.stop();this.currentCount=0},start:function(){if(this.running){return}this.running=true;this._tick()},stop:function(){this.running=false},_iterate:function(){if(!this.running){return}this.currentCount++;if(this.currentCount==this.repeatCount){this.fireEvent(a.EVENT_TIMER_COMPLETE);this.stop();return}this.fireEvent(a.EVENT_TIMER);this._tick()},_tick:function(){var b=this;setTimeout(function(){b._iterate.apply(b)},this.delay)}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("util").Timer=a})();
/* util/Session.js */
(function(){var a=function(){this._persistentKeys={};this._data={}};a.prototype={_data:{},_persistentKeys:{},_cookieName:"JS_SESSION",getValue:function(b){return this._data[b]},setValue:function(b,c){var d=this._data[b];this._data[b]=c;if(this._persistentKeys[b]){this._setPersistentValue(b,c)}if(d!=c){var e=b+"Change";if(!this.hasEvent(e)){this.createEvent(e)}this.fireEvent(e,{prevValue:d,newValue:c})}},deleteValue:function(b){var c=this._data[b];delete this._data[b];if(this._persistentKeys[b]){this._deletePersistentValue(b,value)}var d=b+"Delete";if(!this.hasEvent(d)){this.createEvent(d)}this.fireEvent(d,{prevValue:c})},addPersistentKey:function(b){this._persistentKeys[b]=true;this._loadPersistentValue(b)},removePersistentKey:function(b){delete this._persistentKeys[b]},_setPersistentValue:function(b,c){YAHOO.util.Cookie.setSub(this._cookieName,b,c,{expires:new Date(2030,1,1)})},_loadPersistentValue:function(b){var c=YAHOO.util.Cookie.getSub(this._cookieName,b);if(c){this._data[b]=c}},_deletePersistentValue:function(b){YAHOO.util.Cookie.removeSub(this._cookieName)}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.Session=new a()})();
/* util/Json.js */
(function(){mspot.util.Json={parse:function(json){var res=null;eval("res = "+json);return res}}})();
/* util/Gettext.js */
Gettext=function(c){this.domain="messages";this.locale_data=undefined;var b=["domain","locale_data"];if(this.isValidObject(c)){for(var d in c){for(var a=0;a<b.length;a++){if(d==b[a]){if(this.isValidObject(c[d])){this[d]=c[d]}}}}}this.try_load_lang();return this};Gettext.context_glue="\004";Gettext._locale_data={};Gettext.prototype.try_load_lang=function(){if(typeof(this.locale_data)!="undefined"){var d=this.locale_data;this.locale_data=undefined;this.parse_locale_data(d);if(typeof(Gettext._locale_data[this.domain])=="undefined"){throw new Error("Error: Gettext 'locale_data' does not contain the domain '"+this.domain+"'")}}var b=this.get_lang_refs();if(typeof(b)=="object"&&b.length>0){for(var a=0;a<b.length;a++){var c=b[a];if(c.type=="application/json"){if(!this.try_load_lang_json(c.href)){throw new Error("Error: Gettext 'try_load_lang_json' failed. Unable to exec xmlhttprequest for link ["+c.href+"]")}}else{if(c.type=="application/x-po"){if(!this.try_load_lang_po(c.href)){throw new Error("Error: Gettext 'try_load_lang_po' failed. Unable to exec xmlhttprequest for link ["+c.href+"]")}}else{throw new Error("TODO: link type ["+c.type+"] found, and support is planned, but not implemented at this time.")}}}}};Gettext.prototype.parse_locale_data=function(f){if(typeof(Gettext._locale_data)=="undefined"){Gettext._locale_data={}}for(var e in f){if((!f.hasOwnProperty(e))||(!this.isValidObject(f[e]))){continue}var b=false;for(var a in f[e]){b=true;break}if(!b){continue}var g=f[e];if(e==""){e="messages"}if(!this.isValidObject(Gettext._locale_data[e])){Gettext._locale_data[e]={}}if(!this.isValidObject(Gettext._locale_data[e].head)){Gettext._locale_data[e].head={}}if(!this.isValidObject(Gettext._locale_data[e].msgs)){Gettext._locale_data[e].msgs={}}for(var n in g){if(n==""){var j=g[n];for(var m in j){var i=m.toLowerCase();Gettext._locale_data[e].head[i]=j[m]}}else{Gettext._locale_data[e].msgs[n]=g[n]}}}for(var e in Gettext._locale_data){if(this.isValidObject(Gettext._locale_data[e].head["plural-forms"])&&typeof(Gettext._locale_data[e].head.plural_func)=="undefined"){var l=Gettext._locale_data[e].head["plural-forms"];var d=new RegExp("^(\\s*nplurals\\s*=\\s*[0-9]+\\s*;\\s*plural\\s*=\\s*(?:\\s|[-\\?\\|&=!<>+*/%:;a-zA-Z0-9_()])+)","m");if(d.test(l)){var k=Gettext._locale_data[e].head["plural-forms"];if(!/;\s*$/.test(k)){k=k.concat(";")}var c="var plural; var nplurals; "+k+' return { "nplural" : nplurals, "plural" : (plural === true ? 1 : plural ? plural : 0) };';Gettext._locale_data[e].head.plural_func=new Function("n",c)}else{throw new Error("Syntax error in language file. Plural-Forms header is invalid ["+l+"]")}}else{if(typeof(Gettext._locale_data[e].head.plural_func)=="undefined"){Gettext._locale_data[e].head.plural_func=function(o){var h=(o!=1)?1:0;return{nplural:2,plural:h}}}}}return};Gettext.prototype.try_load_lang_po=function(b){var d=this.sjax(b);if(!d){return}var c=this.uri_basename(b);var a=this.parse_po(d);var e={};if(a){if(!a[""]){a[""]={}}if(!a[""]["domain"]){a[""]["domain"]=c}c=a[""]["domain"];e[c]=a;this.parse_locale_data(e)}return 1};Gettext.prototype.uri_basename=function(b){var c;if(c=b.match(/^(.*\/)?(.*)/)){var a;if(a=c[2].match(/^(.*)\..+$/)){return a[1]}else{return c[2]}}else{return""}};Gettext.prototype.parse_po=function(q){var e={};var l={};var j="";var g=[];var a=q.split("\n");for(var n=0;n<a.length;n++){a[n]=a[n].replace(/(\n|\r)+$/,"");var f;if(/^$/.test(a[n])){if(typeof(l.msgid)!="undefined"){var p=(typeof(l.msgctxt)!="undefined"&&l.msgctxt.length)?l.msgctxt+Gettext.context_glue+l.msgid:l.msgid;var m=(typeof(l.msgid_plural)!="undefined"&&l.msgid_plural.length)?l.msgid_plural:null;var c=[];for(var k in l){var f;if(f=k.match(/^msgstr_(\d+)/)){c[parseInt(f[1])]=l[k]}}c.unshift(m);if(c.length>1){e[p]=c}l={};j=""}}else{if(/^#/.test(a[n])){continue}else{if(f=a[n].match(/^msgctxt\s+(.*)/)){j="msgctxt";l[j]=this.parse_po_dequote(f[1])}else{if(f=a[n].match(/^msgid\s+(.*)/)){j="msgid";l[j]=this.parse_po_dequote(f[1])}else{if(f=a[n].match(/^msgid_plural\s+(.*)/)){j="msgid_plural";l[j]=this.parse_po_dequote(f[1])}else{if(f=a[n].match(/^msgstr\s+(.*)/)){j="msgstr_0";l[j]=this.parse_po_dequote(f[1])}else{if(f=a[n].match(/^msgstr\[0\]\s+(.*)/)){j="msgstr_0";l[j]=this.parse_po_dequote(f[1])}else{if(f=a[n].match(/^msgstr\[(\d+)\]\s+(.*)/)){j="msgstr_"+f[1];l[j]=this.parse_po_dequote(f[2])}else{if(/^"/.test(a[n])){l[j]+=this.parse_po_dequote(a[n])}else{g.push("Strange line ["+n+"] : "+a[n])}}}}}}}}}}if(typeof(l.msgid)!="undefined"){var p=(typeof(l.msgctxt)!="undefined"&&l.msgctxt.length)?l.msgctxt+Gettext.context_glue+l.msgid:l.msgid;var m=(typeof(l.msgid_plural)!="undefined"&&l.msgid_plural.length)?l.msgid_plural:null;var c=[];for(var k in l){var f;if(f=k.match(/^msgstr_(\d+)/)){c[parseInt(f[1])]=l[k]}}c.unshift(m);if(c.length>1){e[p]=c}l={};j=""}if(e[""]&&e[""][1]){var b={};var o=e[""][1].split(/\\n/);for(var n=0;n<o.length;n++){if(!o.length){continue}var d=o[n].indexOf(":",0);if(d!=-1){var r=o[n].substring(0,d);var s=o[n].substring(d+1);var h=r.toLowerCase();if(b[h]&&b[h].length){g.push("SKIPPING DUPLICATE HEADER LINE: "+o[n])}else{if(/#-#-#-#-#/.test(h)){g.push("SKIPPING ERROR MARKER IN HEADER: "+o[n])}else{s=s.replace(/^\s+/,"");b[h]=s}}}else{g.push("PROBLEM LINE IN HEADER: "+o[n]);b[o[n]]=""}}e[""]=b}else{e[""]={}}return e};Gettext.prototype.parse_po_dequote=function(b){var a;if(a=b.match(/^"(.*)"/)){b=a[1]}b=b.replace(/\\"/,"");return b};Gettext.prototype.try_load_lang_json=function(a){var b=this.sjax(a);if(!b){return}var c=this.JSON(b);this.parse_locale_data(c);return 1};Gettext.prototype.get_lang_refs=function(){var c=new Array();var a=document.getElementsByTagName("link");for(var b=0;b<a.length;b++){if(a[b].rel=="gettext"&&a[b].href){if(typeof(a[b].type)=="undefined"||a[b].type==""){if(/\.json$/i.test(a[b].href)){a[b].type="application/json"}else{if(/\.js$/i.test(a[b].href)){a[b].type="application/json"}else{if(/\.po$/i.test(a[b].href)){a[b].type="application/x-po"}else{if(/\.mo$/i.test(a[b].href)){a[b].type="application/x-mo"}else{throw new Error("LINK tag with rel=gettext found, but the type and extension are unrecognized.")}}}}}a[b].type=a[b].type.toLowerCase();if(a[b].type=="application/json"){a[b].type="application/json"}else{if(a[b].type=="text/javascript"){a[b].type="application/json"}else{if(a[b].type=="application/x-po"){a[b].type="application/x-po"}else{if(a[b].type=="application/x-mo"){a[b].type="application/x-mo"}else{throw new Error("LINK tag with rel=gettext found, but the type attribute ["+a[b].type+"] is unrecognized.")}}}}c.push(a[b])}}return c};Gettext.prototype.textdomain=function(a){if(a&&a.length){this.domain=a}return this.domain};Gettext.prototype.gettext=function(c){var e;var a;var d;var b;return this.dcnpgettext(null,e,c,a,d,b)};Gettext.prototype.dgettext=function(d,c){var f;var a;var e;var b;return this.dcnpgettext(d,f,c,a,e,b)};Gettext.prototype.dcgettext=function(d,c,b){var f;var a;var e;return this.dcnpgettext(d,f,c,a,e,b)};Gettext.prototype.ngettext=function(c,a,e){var d;var b;return this.dcnpgettext(null,d,c,a,e,b)};Gettext.prototype.dngettext=function(d,c,a,f){var e;var b;return this.dcnpgettext(d,e,c,a,f,b)};Gettext.prototype.dcngettext=function(d,c,a,f,b){var e;return this.dcnpgettext(d,e,c,a,f,b,b)};Gettext.prototype.pgettext=function(e,c){var a;var d;var b;return this.dcnpgettext(null,e,c,a,d,b)};Gettext.prototype.dpgettext=function(d,f,c){var a;var e;var b;return this.dcnpgettext(d,f,c,a,e,b)};Gettext.prototype.dcpgettext=function(d,f,c,b){var a;var e;return this.dcnpgettext(d,f,c,a,e,b)};Gettext.prototype.npgettext=function(e,c,a,d){var b;return this.dcnpgettext(null,e,c,a,d,b)};Gettext.prototype.dnpgettext=function(d,f,c,a,e){var b;return this.dcnpgettext(d,f,c,a,e,b)};Gettext.prototype.dcnpgettext=function(y,e,x,s,l,o){if(!this.isValidObject(x)){return""}var g=this.isValidObject(s);var u=this.isValidObject(e)?e+Gettext.context_glue+x:x;var a=this.isValidObject(y)?y:this.isValidObject(this.domain)?this.domain:"messages";var w="LC_MESSAGES";var o=5;var m=new Array();if(typeof(Gettext._locale_data)!="undefined"&&this.isValidObject(Gettext._locale_data[a])){m.push(Gettext._locale_data[a])}else{if(typeof(Gettext._locale_data)!="undefined"){for(var v in Gettext._locale_data){m.push(Gettext._locale_data[v])}}}var b=[];var f=false;var k;if(m.length){for(var t=0;t<m.length;t++){var r=m[t];if(this.isValidObject(r.msgs[u])){for(var q=0;q<r.msgs[u].length;q++){b[q]=r.msgs[u][q]}b.shift();k=r;f=true;if(b.length>0&&b[0].length!=0){break}}}}if(b.length==0||b[0].length==0){b=[x,s]}var d=b[0];if(g){var h;if(f&&this.isValidObject(k.head.plural_func)){var c=k.head.plural_func(l);if(!c.plural){c.plural=0}if(!c.nplural){c.nplural=0}if(c.nplural<=c.plural){c.plural=0}h=c.plural}else{h=(l!=1)?1:0}if(this.isValidObject(b[h])){d=b[h]}}return d};Gettext.strargs=function(g,c){if(null==c||"undefined"==typeof(c)){c=[]}else{if(c.constructor!=Array){c=[c]}}var f="";while(true){var d=g.indexOf("%");var a;if(d==-1){f+=g;break}f+=g.substr(0,d);if(g.substr(d,2)=="%%"){f+="%";g=g.substr((d+2))}else{if(a=g.substr(d).match(/^%(\d+)/)){var e=parseInt(a[1]);var b=a[1].length;if(e>0&&c[e-1]!=null&&typeof(c[e-1])!="undefined"){f+=c[e-1]}g=g.substr((d+1+b))}else{f+="%";g=g.substr((d+1))}}}return f};Gettext.prototype.strargs=function(b,a){return Gettext.strargs(b,a)};Gettext.prototype.isArray=function(a){return this.isValidObject(a)&&a.constructor==Array};Gettext.prototype.isValidObject=function(a){if(null==a){return false}else{if("undefined"==typeof(a)){return false}else{return true}}};Gettext.prototype.sjax=function(d){var c;if(window.XMLHttpRequest){c=new XMLHttpRequest()}else{if(navigator.userAgent.toLowerCase().indexOf("msie 5")!=-1){c=new ActiveXObject("Microsoft.XMLHTTP")}else{c=new ActiveXObject("Msxml2.XMLHTTP")}}if(!c){throw new Error("Your browser doesn't do Ajax. Unable to support external language files.")}c.open("GET",d,false);try{c.send(null)}catch(f){return}var a=c.status;if(a==200||a==0){return c.responseText}else{var b=c.statusText+" (Error "+c.status+")";if(c.responseText.length){b+="\n"+c.responseText}alert(b);return}};Gettext.prototype.JSON=function(data){return eval("("+data+")")};
/* util/tabsUtil.js */
var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event;var tabsUtil={init:function(a,d,i,e,f){var h=false;var c=0;var b=function(l){c=0;if(h==false){h=true;var j={right:{to:0,unit:"px"}};var k=new YAHOO.util.Anim(Dom.get(i),j,d);k.animate()}else{h=false;var j={right:{to:-a,unit:"px"}};var k=new YAHOO.util.Anim(Dom.get(i),j,d);k.animate()}};var g=function(n){var k=navigator.userAgent.toLowerCase();var m=(/msie 8/).test(k);if(m){c=c+1;if(c<2){return}}if(n!=undefined&&typeof(n.target)=="object"&&"id" in n.target){if(n.target.id==f){return}}if(h==true){h=false;var j={right:{to:-a,unit:"px"}};var l=new YAHOO.util.Anim(Dom.get(i),j,d);l.animate()}};Event.on(document.body,"click",g);Event.on(f,"click",b)}};Event.onDOMReady(function(){tabsUtil.init(134,0.1,"main_fb_div","fb_tab_window","fb_button");tabsUtil.init(134,0.1,"main_twit_div","twit_tab_window","twit_button");tabsUtil.init(134,0.1,"main_movies_div","movies_tab_window","movies_button")});
/* util/homeUtil.js */
var homeUtil={showVideoDialog:function(b){if(typeof dialog==="undefined"||!dialog){dialog=new YAHOO.widget.Dialog("videoPopup",{autofillheight:true,close:false,draggable:false,fixedcenter:true,modal:true,postmethod:"form",underlay:"shadow",buttons:[{text:b,handler:function(){document.getElementById("youtubePlayer").stopVideo();dialog.cancel()}}]})}dialog.setHeader("");dialog.setBody('<div id="videoPopupContent"></div>');var a=document.body;dialog.render(a);dialog.show();var d=YAHOO.util.Dom.get("videoPopup_mask");d.style.zIndex=110;var g=YAHOO.util.Dom.get("videoPopup_c");g.style.zIndex=120;var e={allowScriptAccess:"always"};var f={id:"youtubePlayer"};swfobject.embedSWF("http://www.youtube.com/v/IVeKbsFL_tM&amp;hl=en_US&amp;feature=player_embedded&amp;version=3&amp;autoplay=1&amp;enablejsapi=1&amp;playerapiid=ytplayer&amp;controls=0","videoPopupContent","640","390","8",null,null,e,f)},initTransition:function(b){YAHOO.util.Event.onAvailable("home_page_bg_image",function(){var e=1;var d=new mspot.ui.CoverArt("330px","475px");d.render(YAHOO.util.Dom.get("home_page_bg_image"));var c=new Array();c[1]=4;c[2]=3;c[3]=1;c[4]=5;c[5]=3;c[6]=2;var f=function(){var g=c.length;if(e==6){d.updateImage("http://img.mspot.com/icache/adAdmin/images/image679s.png",1)}else{if(e==4){d.updateImage("http://img.mspot.com/icache/adAdmin/images/image679s"+(c[e])+".jpg",1)}else{d.updateImage("http://img.mspot.com/icache/adAdmin/images/image679s"+(c[e])+".png",1)}}e++;if(e>=g){e=1}YAHOO.util.Event.onTimeout(15000,function(){f();a()})};f()});var a=function(){};YAHOO.util.Event.onAvailable("content",function(){var d=bg_text.length;var e=0;var f=YAHOO.util.Dom.get("home_bg_title");var c=new mspot.ui.TextQuote();c.render(f);a=function(){c.updateText(bg_text[e],1);e++;if(e>=d){e=0}};a()});YAHOO.util.Event.onAvailable("quote_logo",function(){var d=4;var e=1;var c=new mspot.ui.CoverArt("65px","26px");c.render(YAHOO.util.Dom.get("quote_logo"));var f=function(){c.updateImage(b+"home/quote_logo_"+e+".png",1);e++;if(e>d){e=1}YAHOO.util.Event.onTimeout(15000,f)};f()});YAHOO.util.Event.onAvailable("content",function(){var d=3;var e=0;var f=YAHOO.util.Dom.get("content");var c=new mspot.ui.TextQuote();c.render(f);var g=function(){c.updateText(quote_text[e],1);e++;if(e>d){e=1}YAHOO.util.Event.onTimeout(15000,g)};g()})}};
/* util/indexUtil.js */
var indexUtil={init:function(d){try{mspot.Session.setValue("pcConnected",d);if(!mspot.util.compatibilityCheck()){return}webRadio=new mspot.app.WebRadio();if(mspot.Settings.ENABLE_HISTORY){var a=YAHOO.util.History.getBookmarkedState("page");a=a||"Player";var c=YAHOO.util.History.getBookmarkedState("args");c=c||"Player";YAHOO.util.History.register("page",a,function(){},webRadio,true);YAHOO.util.History.register("args",c,function(){setTimeout(historyArgEventHandler,50)},webRadio,true);YAHOO.util.History.initialize("yui-history-field","yui-history-iframe");var b=c.split("|");webRadio.changePage.apply(webRadio,b)}else{webRadio.changePage("Player")}}catch(f){console.log(f)}}};function _(c,a,b){if(typeof a==="undefined"){return GT_I18N.gettext(c)}else{return GT_I18N.ngettext(c,a,b)}}var historyArgEventHandler=function(){var b=YAHOO.util.History.getBookmarkedState("args");b=b||"Player";var c=YAHOO.util.History.getCurrentState("args");var a=b.split("|");webRadio.changePage.apply(webRadio,a)};var webRadio;var bgWindow=null;if(typeof chrome!=="undefined"&&chrome.extension){bgWindow=chrome.extension.getBackgroundPage()};
/* api/ApiService.js */
(function(){var b=mspot.util.Json;var a=function(){};a.prototype={sendRequest:function(e,j,h,i){var d=null;if(h){var g=[];for(var c in h){if(typeof h[c]!="undefined"&&h[c]!==null){g.push(c+"="+encodeURIComponent(h[c]))}}if(g.length>0){if(j=="GET"){e+="?"+g.join("&")}else{d=g.join("&")}}}var f={success:function(m){var k;try{k=b.parse(m.responseText)}catch(l){errorLog("Failed to parse json",l);k={success:false,error:"Sorry, system is busy. Please try again."}}if(k&&k.success===false){errorLog("Ajax request returned an error. "+(k.error?k.error:""))}if(k&&k.success===false&&k.loggedOut===true){if(bgWindow){window.location="login.html?loginResult=50"}else{window.location="login?loginResult=50"}}try{i(k)}catch(l){errorLog("ApiService callback failed",l)}},failure:function(l){try{i({success:false,status:l.status,transport:l})}catch(k){errorLog("ApiService callback failed",k)}},scope:this};YAHOO.util.Connect.asyncRequest(j,e,f,d)},wrapCallback:function(f,d,g,h){var e=this;var c=d;if(g){c=function(){d.apply(g,arguments)}}return function(i){f.apply(e,[i,c,h])}}};mspot.namespace("api").ApiService=a})();
/* api/ObjectService.js */
(function(){var b=mspot.Settings;var a=function(c,d){a.superclass.constructor.call(this);this._url=c;this._sessionid=d;this._items=[];this._batchDBUpdateOK=true;this._ids=[];this._index=null;this._timeout=null;this._totalTimeout=null};YAHOO.extend(a,mspot.api.ApiService,{getItems:function(f,c,d,h,e){var g={cmd:"getSongs",type:f,values:c,inclDel:d,ft:"json"};this.sendRequest(this._url,"GET",g,this.wrapCallback(this._handleGetItem,h,e))},getItem:function(g,c,f,d){var e={cmd:"get",mid:this._sessionid,id:g,revision:c,ft:"json",depth:"b",codec:"mp3"};this.sendRequest(this._url,"GET",e,this.wrapCallback(this._handleGetItem,f,d))},_addItemList:function(f,e,c){this._resetTimeouts();var d={cmd:"add",mid:this._sessionid,item:this._serialize(this._items),id:this._serialize(this._ids),index:this._index,parentId:f,ft:"json"};this.sendRequest(this._url,"POST",d,this.wrapCallback(this._handleGetItem,e,c));this._items=[];this._ids=[];this._index=null},addItem:function(i,h,c,e,g,d){if(this._url!==b.PLAYLIST_ITEM_URL){var f={cmd:"add",mid:this._sessionid,item:this._serialize(e),parentId:i,id:h,index:c,ft:"json"};this.sendRequest(this._url,"POST",f,this.wrapCallback(this._handleGetItem,g,d))}else{this._ids[this._ids.length]=h;this._items[this._items.length]=e;if(this._index===null){this._index=c}thisObj=this;if(this._totalTimeout===null){this._totalTimeout=setTimeout("thisObj._addItemList("+i+","+g+","+d+")",1000)}clearTimeout(this._timeout);this._timeout=null;this._timeout=setTimeout("thisObj._addItemList("+i+","+g+","+d+")",100)}},_updateItemList:function(f,e,c){this._resetTimeouts();if(this._batchDBUpdateOK==true){var d={cmd:"updateBatch",mid:this._sessionid,item:this._serialize(this._items),id:this._serialize(this._ids),parentId:f,ft:"json"}}else{var d={cmd:"update",mid:this._sessionid,item:this._serialize(this._items),id:this._serialize(this._ids),parentId:f,ft:"json"}}this.sendRequest(this._url,"POST",d,this._bind(e,c));this._items=[];this._ids=[];this._batchDBUpdateOK=true},updateItem:function(h,g,d,f,c){if(this._url!=="services/library.php"){var e={cmd:"update",mid:this._sessionid,item:this._serialize(d),id:g,parentId:h,ft:"json"};this.sendRequest(this._url,"POST",e,this._bind(f,c))}else{if(this._batchDBUpdateOK==true&&(d.sync_order!=8888888888&&d.deleted==undefined||d.artist||d.album||d.title)){this._batchDBUpdateOK=false}this._ids[this._ids.length]=g;this._items[this._items.length]=d;thisObj=this;if(this._totalTimeout===null){this._totalTimeout=setTimeout("thisObj._updateItemList("+h+","+f+","+c+")",1000)}clearTimeout(this._timeout);this._timeout=null;this._timeout=setTimeout("thisObj._updateItemList("+h+","+f+","+c+")",100)}},_deleteItemList:function(f,e,c){this._resetTimeouts();var d={cmd:"delete",mid:this._sessionid,id:this._serialize(this._ids),parentId:f,ft:"json"};this.sendRequest(this._url,"POST",d,this._bind(e,c));this._ids=[]},deleteItem:function(h,g,c,f,d){if(this._url!==b.PLAYLIST_ITEM_URL){var e={cmd:"delete",mid:this._sessionid,parentId:h,id:g,index:c,ft:"json"};this.sendRequest(this._url,"POST",e,this._bind(f,d))}else{this._ids[this._ids.length]=g;thisObj=this;if(this._totalTimeout===null){this._totalTimeout=setTimeout("thisObj._deleteItemList("+h+","+f+","+d+")",1000)}clearTimeout(this._timeout);this._timeout=null;this._timeout=setTimeout("thisObj._deleteItemList("+h+","+f+","+d+")",100)}},_resetTimeouts:function(){thisObj=this;clearTimeout(this._totalTimeout);this._totalTimeout=null;clearTimeout(this._timeout);this._timeout=null},_serialize:function(c){return YAHOO.lang.JSON.stringify(c)},_bind:function(d,c){if(d){return function(){d.apply(c)}}else{return function(){}}},_handleGetItem:function(c,d){console.log("ObjectService::_handleGetItem()");if(d){d(c)}},_handleMergeItem:function(c,d){if(d){d(c)}}});mspot.namespace("api").ObjectService=a})();
/* api/PlaylistService.js */
(function(){var c=mspot.Settings,b=mspot.Session;var a=function(){a.superclass.constructor.call(this,c.PLAYLIST_ITEM_URL)};YAHOO.extend(a,mspot.api.ObjectService,{getPlaylistByUrl:function(d,f,e){if(b.getValue("revision")){d+="&_revision="+b.getValue("revision")}d+="&hash="+c.USER_HASH;this.sendRequest(d,"GET",null,this.wrapCallback(this._handleGetPlaylist,f,e))},_handleGetPlaylist:function(d,h){if(d.success&&d.playlist){var g=d.playlist;if(g&&g.items){var e=g.items;for(var f=0;f<e.length;f++){e[f]=this._processPlaylistItem(e[f])}d.items=e;delete d.playlist.items}else{d.items=[]}}if(h){h(d)}},_processPlaylistItem:function(d){if(typeof d.lib.song_id!=="undefined"&&d.lib.song_id){d.lib.contenturi="../"+c.SONG_URL+"?song_id="+d.lib.song_id+"&hash="+c.USER_HASH}else{d.lib.contenturi="../"+c.SONG_URL+"?id="+d.libId+"&hash="+c.USER_HASH}return d}});mspot.namespace("api").PlaylistService=a})();
/* api/ItunesService.js */
(function(){var c=mspot.Settings,b=mspot.Session;var a=function(){};YAHOO.extend(a,mspot.api.ApiService,{search:function(f,d,h){console.log("ItunesService::search()");var e=function(i){if(typeof i.results!=="undefined"&&i.results.length>0){d(i.results[0].trackViewUrl)}else{h()}};var g={term:f,entity:"musicTrack",limit:"1"};this.sendRequest(c.ITUNES_URL,"GET",g,e)}});mspot.namespace("api").ItunesService=a})();
/* api/AmazonService.js */
(function(){var c=mspot.Settings,b=mspot.Session;var a=function(){};YAHOO.extend(a,mspot.api.ApiService,{search:function(f,d,i){console.log("AmazonService::search()");var e=function(j){if(j.length>0){d(j[0].link)}else{i()}};var g=f.split(",");if(g.length<2){i()}var h={artist:g[0],title:g[1],entity:"musicTrack",limit:"1"};this.sendRequest(c.AMAZON_URL,"GET",h,e)}});mspot.namespace("api").AmazonService=a})();
/* api/FavoriteService.js */
(function(){var c=mspot.Settings,b=mspot.Session;var a=function(){a.superclass.constructor.call(this,c.FAVORITE_URL,c.mspotId)};YAHOO.extend(a,mspot.api.ObjectService,{getItems:function(e){var d={cmd:"getFavSongs"};this.sendRequest(this._url,"GET",d,e)},untagAllItems:function(e){var d={cmd:"resetFavSongs"};this.sendRequest(this._url,"GET",d,e)},untagItem:function(d,g,e){var f={cmd:"untagFavSong",artist:d,title:g,album:e};this.sendRequest(this._url,"GET",f,function(){})}});mspot.namespace("api").FavoriteService=a})();
/* api/MenuService.js */
(function(){var a=mspot.Settings;var b=function(c){b.superclass.constructor.call(this,a.MENU_URL,a.mspotId)};YAHOO.extend(b,mspot.api.ObjectService,{copyItem:function(i,d,c,f,h,e){var g={cmd:"copy",mid:this._sessionid,item:this._serialize(f),parentId:i,id:d,index:c,ft:"json"};this.sendRequest(this._url,"GET",g,this.wrapCallback(this._handleGetItem,h,e))}});mspot.namespace("api").MenuService=b})();
/* api/DeviceService.js */
(function(){var b=mspot.Settings;var a=function(c){a.superclass.constructor.call(this,"services/aria_club.php",b.mspotId)};YAHOO.extend(a,mspot.api.ObjectService,{copyItem:function(i,d,c,f,h,e){var g={cmd:"copy",mid:this._sessionid,item:this._serialize(f),parentId:i,id:d,index:c,ft:"json"};this.sendRequest(this._url,"GET",g,this.wrapCallback(this._handleGetItem,h,e))},getItem:function(g,c,f,d){var e={cmd:"viewSubscription",mid:this._sessionid,id:g,revision:c,ft:"json",depth:"b",codec:"mp3"};this.sendRequest(this._url,"GET",e,this.wrapCallback(this._handleGetItem,f,d))},deleteItem:function(h,g,c,f,d){var e={cmd:"removeDevice",mid:this._sessionid,parentId:h,deviceId:g,index:c,ft:"json"};this.sendRequest(this._url,"POST",e,this._bind(f,d))},updateItem:function(f,e,c){var d={cmd:"updateDevice",newName:c.newName,mid:this._sessionid,parentId:f,deviceId:e,ft:"json"};this.sendRequest(this._url,"POST",d,function(){})}});mspot.namespace("api").DeviceService=a})();
/* api/MediaLibraryService.js */
(function(){var a=mspot.Settings;ObjectService=mspot.api.ObjectService;var b=function(){b.superclass.constructor.call(this,a.LIBRARY_URL)};YAHOO.extend(b,ObjectService,{});mspot.namespace("api");mspot.api.MediaLibraryService=b})();
/* api/UploadEditorService.js */
(function(){var a=mspot.Settings;var b=function(){b.superclass.constructor.call(this,a.UPLOAD_EDITOR_URL);this._songHashTable={};this._libDuration=-1;this._artistInitiated=false;this._playlistInitiated=false};YAHOO.extend(b,mspot.api.ObjectService,{calcTotalDuration:function(){var e=0;var c=0;for(var d in this._songHashTable){if(this._songHashTable.hasOwnProperty(d)){if((this._songHashTable[d].pcount+this._songHashTable[d].acount)>0){c+=this._songHashTable[d].duration}e+=this._songHashTable[d].duration}}this._libDuration=e;return c},getLibraryDuration:function(){if(this._libDuration<0){this.calcTotalDuration()}return this._libDuration},updateSelectionAll:function(d,f,e,h,c){if(d=="playlist"){var g={cmd:"getPlaylistSongs",items:this._serialize(e),ft:"json"}}else{if(d=="artist"){var g={cmd:"initArtists",items:false,wholeLibrary:false,ft:"json"}}}if(f=="select"){this.sendRequest(this._url,"POST",g,this.wrapCallback(this._handleSelectItems,h,c))}else{if(f=="unselect"){this.sendRequest(this._url,"GET",g,this.wrapCallback(this._handleUnselectItems,h,c))}}},updateSelection:function(d,f,e,h,c){if(d=="playlist"){var g={cmd:"getPlaylistSongs",items:this._serialize(e),ft:"json"}}else{if(d=="artist"){var g={cmd:"getArtistSongs",items:this._serialize(e),ft:"json"}}}if(f=="select"){this.sendRequest(this._url,"POST",g,this.wrapCallback(this._handleSelectItems,h,c))}else{if(f=="unselect"){this.sendRequest(this._url,"POST",g,this.wrapCallback(this._handleUnselectItems,h,c))}}},initArtistsPlaylists:function(g,f,c,d){if(!this._artistInitiated){this._artistInitiated=true;var e={cmd:"initArtistsPlaylists",items:f,wholeLibrary:c,ft:"json"};this.sendRequest(this._url,"POST",e,this.wrapCallback(this._handleInitItems,g,d))}},initArtists:function(g,f,c,d){if(!this._artistInitiated){this._artistInitiated=true;var e={cmd:"initArtists",items:f,wholeLibrary:c,ft:"json"};this.sendRequest(this._url,"POST",e,this.wrapCallback(this._handleInitItems,g,d))}},addArtists:function(d,f,c){var e={cmd:"addArtists",items:this._serialize(d),ft:"json"};this.sendRequest(this._url,"POST",e,this.wrapCallback(this._handleGetItem,f,c))},removeArtists:function(d,f,c){var e={cmd:"removeArtists",items:this._serialize(d),ft:"json"};this.sendRequest(this._url,"POST",e,this.wrapCallback(this._handleGetItem,f,c))},initPlaylists:function(g,f,e,c){var d={cmd:"initPlaylists",items:f,wlibrary:e,ft:"json"};this.sendRequest(this._url,"POST",d,this.wrapCallback(this._handleInitItems,g,c))},addPlaylist:function(f,e,c){var d={cmd:"addPlaylist",items:this._serialize(f),ft:"json"};this.sendRequest(this._url,"POST",d,this.wrapCallback(this._handleGetItem,e,c))},removePlaylist:function(f,e,c){var d={cmd:"removePlaylist",items:this._serialize(f),ft:"json"};this.sendRequest(this._url,"POST",d,this.wrapCallback(this._handleGetItem,e,c))},deleteSongs:function(){var c={cmd:"deleteSongs",ft:"json"};this.sendRequest(this._url,"POST",c,this.wrapCallback(this._handleGetItem,callback,scope))},uploadWholeLib:function(f,e,c,h,d){var g={cmd:"uploadWholeLib",artists:this._serialize(f),playlists:this._serialize(e),applytoall:this._serialize(c),ft:"json"};this.sendRequest(this._url,"POST",g,this.wrapCallback(this._handleGetItem,h,d))},saveSelection:function(h,g,e,j,f){var c=[];var d=[];var i={cmd:"saveSelection",uploads:this._serialize(c),unloads:this._serialize(d),artists:this._serialize(h),playlists:this._serialize(g),ft:"json"};this.sendRequest(this._url,"POST",i,this.wrapCallback(this._handleGetItem,j,f))},setPrefExt:function(e,c,g,d){var f={type:3,keys:this._serialize(e),values:this._serialize(c),ft:"json",hash:Math.floor(Math.random()*64000)};this.sendRequest("services/setPrefExt.php","POST",f,this.wrapCallback(this._handleGetItem,g,d))},getPrefExt:function(d,f,c){var e={type:3,keys:this._serialize(d),ft:"json",hash:Math.floor(Math.random()*64000)};this.sendRequest("services/getPrefExt.php","POST",e,this.wrapCallback(this._handleGetItem,f,c))},selectAllArtists:function(){for(var c in this._songHashTable){this._songHashTable[c].acount=1}},unselectAllArtists:function(){for(var c in this._songHashTable){this._songHashTable[c].acount=0}},unselectAllPlaylists:function(){for(var c in this._songHashTable){this._songHashTable[c].pcount=0}},_handleItems:function(c,f){if(c.success){if(c.songList){for(var g in c.songList){var e=c.songList[g];if(this._songHashTable[g]==undefined){this._songHashTable[g]={duration:e,acount:0,pcount:0}}else{if(e>0){this._songHashTable[g].duration=e}}}}if(c.songRecCount){for(var g in c.songRecCount){var d=c.songRecCount[g];if(this._songHashTable[g]==undefined){this._songHashTable[g]={duration:0,acount:0,pcount:0}}if(f){if(f>0){this._songHashTable[g].pcount+=d}else{if(f<0){this._songHashTable[g].pcount-=d}}}else{this._songHashTable[g].pcount=d}}}if(c.songArtistRecCount){for(var g in c.songArtistRecCount){var d=c.songArtistRecCount[g];if(this._songHashTable[g]==undefined){this._songHashTable[g]={duration:0,acount:0,pcount:0}}if(f){if(f>0){this._songHashTable[g].acount+=d}else{if(f<0){this._songHashTable[g].acount-=d}}}else{this._songHashTable[g].acount=d}}}}},_handleInitItems:function(c,d){this._handleItems(c,0);if(d){d(c)}},_handleSelectItems:function(c,d){this._handleItems(c,1);if(d){d(c)}},_handleUnselectItems:function(c,d){if(c.success){this._handleItems(c,-1);if(d){d(c)}}}});mspot.namespace("api").UploadEditorService=b})();
/* model/ItemList.js */
(function(){var a=function(b){this._id=b;this._items=[];this.createEvent(a.ITEM_ADD_EVENT);this.createEvent(a.ITEM_CHANGE_EVENT);this.createEvent(a.ITEM_DELETE_EVENT)};YAHOO.lang.augmentObject(a,{ITEM_ADD_EVENT:"itemAddEvent",ITEM_CHANGE_EVENT:"itemChangeEvent",ITEM_DELETE_EVENT:"itemDeleteEvent"});a.prototype={_id:{},_items:[],getLength:function(){return this._items.length},destroy:function(){this._items=null},getId:function(){return this._id},indexOf:function(c){for(var b=0;b<this._items.length;b++){if(c==this._items[b].id){return b}}return -1},getItem:function(c){var b=this.indexOf(c);if(b>=0){return this._items[b]}return null},setItems:function(b,e){for(var c=0;c<b.length;c++){var d=b[c],f=d.id;this._items.push(d);this.fireEvent(a.ITEM_ADD_EVENT,{src:e,id:f,item:d})}return true},changeItem:function(e,c,d){var b=this.indexOf(e);if(b>=0){this._items[b]=c;this.fireEvent(a.ITEM_CHANGE_EVENT,{src:d,id:e,item:c});return true}return false},mergeItemId:function(f,c,e){var b=this.indexOf(f);if(b>=0){this._items[b].id=c;var d=this._items[b];this.fireEvent(a.ITEM_CHANGE_EVENT,{src:e,id:c,item:d});return true}return false},addItem:function(b,c,d){this.deleteItem(c.id,d);if(b<=this.getLength()){this._items.splice(b,0,c);var e=c.id;this.fireEvent(a.ITEM_ADD_EVENT,{src:d,index:b,id:e,item:c});return true}return false},deleteItem:function(e,d){var b=this.indexOf(e);if(b>=0){var c=this._items[b];this._items.splice(b,1);this.fireEvent(a.ITEM_DELETE_EVENT,{src:d,id:e,item:c});return true}return false},_updateItem:function(e,c){var d=false;if(c===this._items[e]){return true}for(var b in c){if(c[b]!=this._items[e][b]){this._items[e][b]=c[b];d=true}}return d}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("model").ItemList=a})();
/* model/Menu.js */
(function(){var a=mspot.model.ItemList;var b=function(c){b.superclass.constructor.call(this,c)};YAHOO.lang.augmentObject(b,{ITEM_ADD_EVENT:a.ITEM_ADD_EVENT,ITEM_CHANGE_EVENT:a.ITEM_CHANGE_EVENT,ITEM_DELETE_EVENT:a.ITEM_DELETE_EVENT});YAHOO.extend(b,mspot.model.ItemList,{destroy:function(){b.superclass.destroy.call()}});mspot.namespace("model").Menu=b})();
/* model/MediaLibrary.js */
(function(){var a=function(){this._items={};this.createEvent(a.ITEM_ADD_EVENT);this.createEvent(a.ITEM_CHANGE_EVENT);this.createEvent(a.ITEM_DELETE_EVENT);this.createEvent(a.ITEM_TAG_EVENT);this.createEvent(a.ITEM_UNTAG_EVENT);this.createEvent(a.ITEM_UNTAGALL_EVENT)};YAHOO.lang.augmentObject(a,{ITEM_ADD_EVENT:"itemAddEvent",ITEM_CHANGE_EVENT:"itemChangeEvent",ITEM_REMOVE_EVENT:"itemDeleteEvent",ITEM_DELETE_EVENT:"itemDeleteEvent",ITEM_TAG_EVENT:"itemTagEvent",ITEM_UNTAG_EVENT:"itemUntagEvent",ITEM_UNTAGALL_EVENT:"itemUntagAllEvent"});a.prototype={_items:{},getId:function(){return 0},getItem:function(b){if(b in this._items){return this._items[b]}return null},getLength:function(){var c=0;for(var b in this._items){if(!this._items[b].deleted){c++}}return c},mergeItems:function(b){for(var c=0;c<b.length;c++){var e=b[c],f=e.id;if(!(f in this._items)){this._items[f]=e}else{var d;if(e!==this._items[f]&&(d=this._updateItem(f,e))){this.fireEvent(a.ITEM_CHANGE_EVENT,{item:e,id:f,src:"provider",changes:d})}}}},changeItem:function(e,c,d){errorLog("MediaLibrary::changeItem()");if(mspot.isUndefined(d)){d="MediaLibrary"}if(e in this._items){var b=this._updateItem(e,c);if(b){this.fireEvent(a.ITEM_CHANGE_EVENT,{item:this.getItem(e),id:e,src:d,changes:b});return true}}return false},removeItem:function(c){if(c in this._items){var b=this._items[c];this._items[c].deleted=true;this.fireEvent(a.ITEM_DELETE_EVENT,{item:b,id:c});return true}return false},tagItem:function(b){console.log("MediaLibrary::tagItem()")},untagItem:function(c){console.log("MediaLibrary::untagItem()");var b=this.getItem(c);if(b){this.fireEvent(a.ITEM_UNTAG_EVENT,{item:b,id:c});return true}return false},untagAllItems:function(){console.log("MediaLibrary::untagAllItems()")},clear:function(){this._items={}},_updateItem:function(f,d){var e=false,c={};if(d===this._items[f]){return true}for(var b in d){if(d[b]!=this._items[f][b]){this._items[f][b]=d[b];e=true;c[b]=d[b]}}return e?c:false}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("model").MediaLibrary=a})();
/* model/Playlist.js */
(function(){var b=mspot.model.MediaLibrary;var a=function(e,d,c){this._id=YAHOO.lang.isString(e)?parseInt(e):e;this._items=[];this._library=c||new b();this._activeFilters={};this._filters={};this._sorting={};this._tmpRecordID=-1;if(YAHOO.lang.isArray(d)){this.setItems(d)}this.createEvent(a.ITEMS_SET_EVENT);this.createEvent(a.ITEM_ADD_EVENT);this.createEvent(a.ITEM_CHANGE_EVENT);this.createEvent(a.ITEM_MOVE_EVENT);this.createEvent(a.ITEM_DELETE_EVENT);this.createEvent(a.ITEM_TAG_EVENT);this.createEvent(a.ITEM_UNTAG_EVENT);this.createEvent(a.ITEM_UNTAGALL_EVENT);this.createEvent(a.ITEM_LOAD_EVENT);this.createEvent(a.PLAYLIST_FILTER_EVENT);this.createEvent(a.PLAYLIST_SORT_EVENT);this.createEvent(a.FILTERS_SET_EVENT);this.createEvent(a.PLAYLIST_SEARCH_EVENT)};YAHOO.lang.augmentObject(a,{ITEMS_SET_EVENT:"itemsSetEvent",ITEM_ADD_EVENT:"itemAddEvent",ITEM_CHANGE_EVENT:"itemSetEvent",ITEM_MOVE_EVENT:"itemMoveEvent",ITEM_DELETE_EVENT:"itemDeleteEvent",ITEM_TAG_EVENT:"itemTagEvent",ITEM_UNTAG_EVENT:"itemUntagEvent",ITEM_UNTAGALL_EVENT:"itemUntagAllEvent",ITEM_LOAD_EVENT:"itemLoadEvent",LOADING_ITEM:"loadingItem",PLAYLIST_SORT_EVENT:"playlistSort",PLAYLIST_FILTER_EVENT:"playlistFilter",FILTERS_SET_EVENT:"filtersSetEvent",PLAYLIST_SEARCH_EVENT:"playlistSearchEvent",ITEM_STATE_STOPPED:0,ITEM_STATE_PLAYING:1,ITEM_STATE_PAUSED:2,SYNC_STATE_NOT_SYNCED:0,SYNC_STATE_SYNCING:10,SYNC_STATE_SYNCED:20,SYNC_STATE_DELETED:30,SYNC_STATE_PERM_DELETED:40,SYNC_STATE_ERR_TRANSCODING:50,SYNC_STATE_ERR_EXTENSION:100,SYNC_STATE_ERR_DURATION:101,FAVORITE_ID:2,ERROR_ID:4,LIBRARY_ID:1,RECENTLY_ADD_LIBRARY_ID:6,TOP_RATED_LIBRARY_ID:7,MAGIC_ID:3,TMP_ID:-2});a.prototype={_id:false,_loading:false,_initialized:false,_sorting:null,_activeFilters:null,_filters:null,_keyword:null,_src:null,destroy:function(){this.unsubscribeAll();delete this._items;this._initialized=false},getId:function(){return this._id},getLibrary:function(){return this._library},isLoading:function(){return this._loading},setLoading:function(c){this._loading=c},getInitialized:function(){return this._initialized},setInitialized:function(c){this._initialized=c},getSorting:function(){return this._sorting},setSorting:function(c){this._sorting=c;this.setInitialized(false);this.fireEvent(a.PLAYLIST_SORT_EVENT,{sorting:c})},getActiveFilters:function(){return this._activeFilters},setActiveFilters:function(c){this._activeFilters=c;this.setInitialized(false);this.fireEvent(a.PLAYLIST_FILTER_EVENT,{filters:c})},getFilters:function(c){return this._filters[c]},setFilters:function(c,d){this._filters[c]=d;this.fireEvent(a.FILTERS_SET_EVENT,{name:c,filters:d})},getKeyword:function(){return this._keyword},setKeyword:function(c){this._keyword=c;this.setInitialized(false);this.fireEvent(a.PLAYLIST_SEARCH_EVENT,{keyword:c})},getSrc:function(){return this._src},setSrc:function(c){this._src=c},getItems:function(){return this._items},setItems:function(c){var d=[];for(var e=0;e<c.length;e++){d.push(c[e].lib)}this._library.mergeItems(d);for(var e=0;e<c.length;e++){this._items[c[e].index]=c[e]}this.fireEvent(a.ITEMS_SET_EVENT,{items:this._items})},getLength:function(){return this._items.length},setLength:function(c){if(this._items.length!=c){this._items.length=c;this.fireEvent(a.ITEMS_SET_EVENT,{items:this._items})}},getItem:function(c){var d=this._items[c];if(d){d.lib=this._library.getItem(d.libId)}return d},getItemById:function(c){return this.getItem(this.indexOf({id:c}))},indexOf:function(f){var c=this._items.length,d=this._items,g=f.id;for(var e=0;e<c;e++){if(typeof d[e]!="undefined"&&d[e].id==g){return e}}return -1},findByLibraryId:function(e){var c=[];for(var d=0;d<this._items.length;d++){if(!YAHOO.lang.isUndefined(this._items[d])&&this._items[d].libId==e){c.push(this.getItem(d))}}return c},addItem:function(e,d){var c=this.createSongItem(e);if(typeof d=="undefined"){d=this._items.length}this._library.mergeItems([c.lib]);this._items.splice(d,0,c);this.fireEvent(a.ITEM_ADD_EVENT,{item:c,index:d})},setItem:function(c,d){if(c<0||c>=this._items.length){return null}if(!YAHOO.lang.isUndefined(d.lib)){this._library.mergeItems([d.lib])}this._items[c]=d;this.fireEvent(a.ITEM_CHANGE_EVENT,{item:d,index:c})},removeItemAt:function(c){if(c<0||c>=this._items.length){return null}var d=this.getItem(c);this._items.splice(c,1);this.fireEvent(a.ITEM_DELETE_EVENT,{item:d,index:c});return d},untagItemAt:function(c){console.log("Playlist::untagItemAt()");if(c<0||c>=this._items.length){return null}var d=this.getItem(c);this._items.splice(c,1);this.fireEvent(a.ITEM_UNTAG_EVENT,{item:d,index:c});return d},removeItem:function(d){var c=this.indexOf(d);if(c!=-1){return this.removeItemAt(c)}return null},moveItem:function(d,c){var e=this.getItem(d);this._items.splice(d,1);this._items.splice(c,0,e);this.fireEvent(a.ITEM_MOVE_EVENT,{srcIndex:d,destIndex:c,item:e})},popItem:function(){return this.removeItemAt(0)},setItemId:function(d,e){var c=this.indexOf({id:d});if(c!=-1){this._items[c].id=e}},isEditable:function(){return(this.getSrc()=="playlist"||this.getSrc()=="magic"||this.getSrc()=="device")},getTmpRecordID:function(){return this._tmpRecordID--},createSongItem:function(d){var c={};c.id=this.getTmpRecordID();c.state="";c.libId=d.libId;c.lib=d.lib;return c}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("model");mspot.model.Playlist=a})();
/* model/PartialPlaylist.js */
(function(){var c=mspot.model.MediaLibrary,b=mspot.model.Playlist;var a=function(f,e,d){a.superclass.constructor.call(this,f,e,d)};YAHOO.lang.augmentObject(a,{});YAHOO.extend(a,b,{setInitialized:function(d){this._initialized=d;if(d){this.fireEvent(b.ITEMS_SET_EVENT,{items:this._items})}},setItems:function(d){var e=[];for(var f in d){e.push(d[f].lib)}this._library.mergeItems(e);for(var f=0;f<d.length;f++){this._items[d[f].index]=d[f];this.fireEvent(b.ITEM_CHANGE_EVENT,{index:d[f].index,item:this._items[d[f].index]})}},setLength:function(d){if(!this._initialized&&typeof this._items=="undefined"){errorLog("Tried to set the length of a playlist that is not initialized")}if(this._items.length!=d){this._items.length=d}},clearItems:function(){for(var d=0;d<this._items.length;d++){this._items[d]=undefined}},getItem:function(d,f){if(YAHOO.lang.isUndefined(f)){f=true}if(d>=this._items.length){return null}var e=this._items[d];if(YAHOO.lang.isUndefined(e)){e=b.LOADING_ITEM;if(f){this.fireEvent(b.ITEM_LOAD_EVENT,{index:d})}}else{if(e==b.LOADING_ITEM){}else{if(e){e.lib=this._library.getItem(e.libId)}}}return e},setItem:function(d,e){if(d<0||d>=this._items.length){return null}if(!YAHOO.lang.isUndefined(e.lib)){this._library.mergeItems([e.lib])}this._items[d]=e;this.fireEvent(b.ITEM_CHANGE_EVENT,{item:e,index:d})}});mspot.namespace("model");mspot.model.PartialPlaylist=a})();
/* model/MagicPlaylist.js */
(function(){var c=mspot.model.MediaLibrary,b=mspot.model.Playlist;var a=function(f,e,d){a.superclass.constructor.call(this,f,e,d);this.createEvent(a.PLAYLIST_LIBID_EVENT);this.createEvent(a.PLAYLIST_SEED_EVENT)};YAHOO.lang.augmentObject(a,{PLAYLIST_LIBID_EVENT:"playlistLibIdEvent",PLAYLIST_SEED_EVENT:"playlistSeedEvent"});YAHOO.extend(a,b,{_libId:null,getLibId:function(){return this._libId},setLibId:function(d){if(d==this._libId){return}this._libId=d;this.setInitialized(false);this.fireEvent(a.PLAYLIST_LIBID_EVENT,{})},getSeed:function(){return this._seed},setSeed:function(d){if(d==this._seed){return}this._seed=d;this.setInitialized(false);this.fireEvent(a.PLAYLIST_SEED_EVENT,{})},generateSeed:function(){this._seed=Math.floor(Math.random()*1000)}});mspot.namespace("model");mspot.model.MagicPlaylist=a})();
/* provider/MediaProvider.js */
(function(){var a=function(b){this._playlist=b};a.prototype={};mspot.namespace("provider").MediaProvider=a})();
/* provider/ListProvider.js */
(function(){var a=function(c,b){this._list=c;this._apiService=b};a.prototype={name:"provider",_apiService:null,_lastRevision:0,_currentRevision:0,_nextRevision:0,_addCalled:0,_changeCalled:0,_deleteCalled:0,destroy:function(){this._apiServer=null},onEvent:function(b,c){this._list.subscribe(b,c,this,true)},offEvent:function(b,c){this._list.unsubscribe(b,c,this)},filter:function(b){return b},onAddItem:function(b){if(b.src==this.name){return}this._addCalled+=1;this._apiService.addItem(this._list.getId(),b.item.id,b.index,this.filter(b.item),this.mergeCallback,this)},onChangeItem:function(b){if(b.item.formattype!=="http/device"&&b.src==this.name){return}this._changeCalled+=1;var c=b.changes?b.changes:b.item;this._apiService.updateItem(this._list.getId(),b.item.id,this.filter(c))},onDeleteItem:function(b){if(b.src==this.name){return}this._deleteCalled+=1;this._apiService.deleteItem(this._list.getId(),b.item.id,b.index)},load:function(){this._currentRevision=this._nextRevision;this._apiService.getItem(this._list.getId(),this._lastRevision,this.refreshCallback,this)},refresh:function(){return this.load()},refreshCallback:function(b){this._lastRevision=this._currentRevision;this._nextRevision=b.menu.revision;this._list.setItems(b.items,this.name)},mergeCallback:function(b){this._list.mergeItemId(-2,b.id,this.name)}};mspot.namespace("provider").ListProvider=a})();
/* provider/PlaylistProvider.js */
(function(){var g=mspot.model.Playlist,d=mspot.model.MagicPlaylist,a=mspot.api.PlaylistService,b=mspot.api.FavoriteService,f=mspot.Settings,e=mspot.Session;var c=function(h){c.superclass.constructor.call(this,h);this._playlistService=new a();this._favoriteService=new b();h.subscribe(g.PLAYLIST_SORT_EVENT,this._onSortPlaylist,this,true);h.subscribe(g.PLAYLIST_FILTER_EVENT,this._onFilterPlaylist,this,true);h.subscribe(g.PLAYLIST_SEARCH_EVENT,this._onSearchPlaylist,this,true);if(h instanceof d){h.subscribe(d.PLAYLIST_LIBID_EVENT,this._onMagicPlaylistRefresh,this,true);h.subscribe(d.PLAYLIST_SEED_EVENT,this._onMagicPlaylistRefresh,this,true)}if(!(h instanceof d)){h.subscribe(g.ITEM_ADD_EVENT,this._onAddItem,this,true);h.subscribe(g.ITEM_DELETE_EVENT,this._onRemoveItem,this,true);h.subscribe(g.ITEM_MOVE_EVENT,this._onMoveItem,this,true);h.subscribe(g.ITEM_TAG_EVENT,this._onTagItem,this,true);h.subscribe(g.ITEM_UNTAG_EVENT,this._onUntagItem,this,true);h.subscribe(g.ITEM_UNTAGALL_EVENT,this._onUntagAllItems,this,true)}};YAHOO.extend(c,mspot.provider.MediaProvider,{_playlistService:null,destroy:function(){var h=this._playlist;h.unsubscribe(g.PLAYLIST_SORT_EVENT,this._onSortPlaylist,this);h.unsubscribe(g.PLAYLIST_FILTER_EVENT,this._onFilterPlaylist,this);h.unsubscribe(g.PLAYLIST_SEARCH_EVENT,this._onSearchPlaylist,this);if(h instanceof d){h.unsubscribe(d.PLAYLIST_LIBID_EVENT,this._onMagicPlaylistRefresh,this,true);h.unsubscribe(d.PLAYLIST_SEED_EVENT,this._onMagicPlaylistRefresh,this,true)}if(!(h instanceof d)){h.unsubscribe(g.ITEM_ADD_EVENT,this._onAddItem,this);h.unsubscribe(g.ITEM_DELETE_EVENT,this._onRemoveItem,this);h.unsubscribe(g.ITEM_MOVE_EVENT,this._onMoveItem,this);h.unsubscribe(g.ITEM_TAG_EVENT,this._onTagItem,this);h.unsubscribe(g.ITEM_UNTAG_EVENT,this._onUntagItem,this);h.unsubscribe(g.ITEM_UNTAGALL_EVENT,this._onUntagAllItems,this)}},load:function(){this._playlist.setLoading(true);var h=this._getPlaylistUrl()+"&max=10000";this._playlistService.getPlaylistByUrl(h,this._loadCallback,this)},_loadCallback:function(h){this._setNowPlaying(h);this._playlist.setItems(h.items);if(!this._playlist.getInitialized()){this._playlist.setInitialized(true)}this._playlist.setLoading(false)},partialUpdate:function(i){var h=this._getPlaylistUrl()+"&max=1000&rev="+i;this._playlistService.getPlaylistByUrl(h,this._partialUpdateCallback,this)},_partialUpdateCallback:function(h){if(h.success&&h.items){var k=[];for(var l=0;l<h.items.length;l++){k.push(h.items[l].lib)}var j=this._playlist.getLibrary();j.mergeItems(k)}},_setNowPlaying:function(h){if(webRadio&&webRadio.getCurrentSong()&&webRadio.getCurrentPlaylist()==this._playlist){var l=webRadio.getCurrentSong();var j=h.items;for(var k=0;k<j.length;k++){if(j[k].id==l.id){j[k].state=1;return}}}},_getPlaylistUrl:function(){var j=f.SEARCH_URL+"?";if(this._playlist.getId()==g.LIBRARY_ID){j+="type=library"}else{if(this._playlist.getId()==g.RECENTLY_ADD_LIBRARY_ID){j+="type=sublibrary&syncstate=20&suborder=sync_at&order=sync_at&dir=desc"}else{if(this._playlist.getId()==g.TOP_RATED_LIBRARY_ID){j+="type=sublibrary&suborder=rating,play_count&order=rating&dir=desc"}else{if(this._playlist.getId()==g.MAGIC_ID){j+="type=magic";j+="&libId="+this._playlist.getLibId();return j}else{if(this._playlist.getId()==g.FAVORITE_ID){j+="type=favorite"}else{if(this._playlist.getId()==g.ERROR_ID){j+="type=error"}else{j+="type=playlist";j+="&pid="+this._playlist.getId()}}}}}}var h=this._playlist.getKeyword();if(!h){var k=this._playlist.getActiveFilters();for(var i in k){j+="&filter["+i+"]="+encodeURIComponent(k[i])}}if(h){j+="&keyword="+encodeURIComponent(h)}var l=this._playlist.getSorting();if(this._playlist.getId()==g.LIBRARY_ID&&!("order" in l)&&!("dir" in l)){l={order:"sync_state",dir:"asc"}}if("order" in l){j+="&order="+l.order}if("dir" in l){j+="&dir="+l.dir}return j},_onAddItem:function(h){this._playlistService.addItem(this._playlist.getId(),null,h.index,h.item,function(i){if(i.success){this._playlist.setItemId(h.item.id,i.id)}},this)},_onRemoveItem:function(h){this._playlistService.deleteItem(this._playlist.getId(),h.item.id,h.index)},_onMoveItem:function(h){if(this._playlist.getId()==g.LIBRARY_ID){return false}this._playlistService.addItem(this._playlist.getId(),h.item.id,h.destIndex,h.item)},_onTagItem:function(h){console.log("PlaylistProvider::_onTagItem()")},_onUntagItem:function(h){console.log("PlaylistProvider::_onUntagItem()");this._favoriteService.untagItem(h.item.lib.artist,h.item.lib.title,h.item.lib.album)},_onUntagAllItems:function(h){console.log("PlaylistProvider::_onUntagAllItems()")},_onSortPlaylist:function(h){this._playlist.clearItems();this.load()},_onFilterPlaylist:function(h){this.load()},_onSearchPlaylist:function(h){this.load()},_onMagicPlaylistRefresh:function(h){this.load()}});mspot.namespace("provider").PlaylistProvider=c})();
/* provider/PartialPlaylistProvider.js */
(function(){var e=mspot.model.Playlist,a=mspot.api.PlaylistService,c=mspot.Session,b=mspot.Settings;var d=function(g,f){if(YAHOO.lang.isUndefined(f)){f=60}this.max=f;d.superclass.constructor.call(this,g)};YAHOO.extend(d,mspot.provider.PlaylistProvider,{max:null,load:function(h){if(typeof h=="undefined"){h=0}var j=Math.floor(h/this.max)+1;this._playlist.setLoading(true);if(this._playlist.getInitialized()){var k=(j-1)*this.max;for(var g=k;g<k+this.max;g++){this._playlist.setItem(g,e.LOADING_ITEM)}}var f=this._getPlaylistUrl(j);f+="&origin=aria";this._playlistService.getPlaylistByUrl(f,this._loadCallback,this)},_loadCallback:function(g){if(g.success==false){if(g.status==0){webRadio.showConnectionErrorDialogBox()}this._playlist.setLoading(false);if(!this._playlist.getInitialized()){this._playlist.setInitialized(true)}return}this._setNowPlaying(g);if(!this._playlist.getInitialized()){this._playlist.setLength(g.playlist.length)}this._playlist.setItems(g.items);for(var f in g.filters){if(g.filters[f]!=null){this._playlist.setFilters(f,g.filters[f])}}if(!this._playlist.getInitialized()){this._playlist.setInitialized(true)}this._playlist.setLoading(false)},_getPlaylistUrl:function(g){var f=d.superclass._getPlaylistUrl.call(this);if(!mspot.isUndefined(g)){f+="&max="+this.max;f+="&curpage="+g;if(g!=1){f+="&includeFilters=0"}f+="&numExtraSynced=5"}return f}});mspot.namespace("provider").PartialPlaylistProvider=d})();
/* provider/MediaLibraryProvider.js */
(function(){var d=mspot.model.MediaLibrary,b=mspot.api.MediaLibraryService,a=mspot.provider.ListProvider;var c=function(e){c.superclass.constructor.call(this,e,new b());e.subscribe(d.ITEM_CHANGE_EVENT,this.onChangeItem,this,true);e.subscribe(d.ITEM_DELETE_EVENT,this.onDeleteItem,this,true)};YAHOO.extend(c,a,{destroy:function(){this._library.unsubscribe(d.ITEM_CHANGE_EVENT,this.onChangeItem,this);this._library.unsubscribe(d.ITEM_DELETE_EVENT,this.onDeleteItem,this)}});mspot.namespace("provider").MediaLibraryProvider=c})();
/* provider/MenuProvider.js */
(function(){var c=mspot.model.Menu,d=mspot.api.MenuService,b=mspot.Settings;var a=function(e){a.superclass.constructor.call(this,e,new d());this.onEvent(c.ITEM_ADD_EVENT,this.onAddItem);this.onEvent(c.ITEM_DELETE_EVENT,this.onDeleteItem);this.onEvent(c.ITEM_CHANGE_EVENT,this.onChangeItem)};YAHOO.extend(a,mspot.provider.ListProvider,{destroy:function(){a.superclass.destroy.call();this.offEvent(c.ITEM_ADD_EVENT,this.onAddItem);this.offEvent(c.ITEM_DELETE_EVENT,this.onDeleteItem);this.offEvent(c.ITEM_CHANGE_EVENT,this.onChangeItem)},filter:function(f){if(f.formattype=="http/device"){f.src=60}if(f.formattype=="http/playlist"){f.src=50}var e={id:f.id,name:f.title,cloudSync:f.cloudSync,items:f.items?f.items:null};if(f.src){e.src=f.src}return e},refreshCallback:function(e){if(e){this._lastRevision=this._currentRevision;this._nextRevision=e.menu.revision;this._list.setItems(e.menu.items,this.name)}else{}},onAddItem:function(e){if(e.item.copySrc&&!e.item.items){this._apiService.copyItem(this._list.getId(),e.item.copySrc,e.index,this.filter(e.item),this.mergeCallback,this)}else{a.superclass.onAddItem.call(this,e)}}});mspot.namespace("provider").MenuProvider=a})();
/* provider/DeviceProvider.js */
(function(){var c=mspot.model.Menu,a=mspot.api.DeviceService,b=mspot.Settings;var d=function(e){d.superclass.constructor.call(this,e,new a());this.onEvent(c.ITEM_ADD_EVENT,this.onAddItem);this.onEvent(c.ITEM_DELETE_EVENT,this.onDeleteItem);this.onEvent(c.ITEM_CHANGE_EVENT,this.onChangeItem)};YAHOO.extend(d,mspot.provider.ListProvider,{destroy:function(){d.superclass.destroy.call();this.offEvent(c.ITEM_ADD_EVENT,this.onAddItem);this.offEvent(c.ITEM_DELETE_EVENT,this.onDeleteItem);this.offEvent(c.ITEM_CHANGE_EVENT,this.onChangeItem)},refreshCallback:function(f){if(f){var e=[];for(var g in f.devices){f.devices[g].id=g;f.devices[g].title=f.devices[g].label;f.devices[g].formattype="http/device";e.push(f.devices[g])}this._lastRevision=this._currentRevision;this._nextRevision=this._lastRevision+1;this._list.setItems(e,this.name)}else{}},onAddItem:function(e){if(e.item.copySrc&&!e.item.items){this._apiService.copyItem(this._list.getId(),e.item.copySrc,e.index,this.filter(e.item),this.mergeCallback,this)}else{d.superclass.onAddItem.call(this,e)}}});mspot.namespace("provider").DeviceProvider=d})();
/* programmer/MediaProgrammer.js */
(function(){var a=function(b){this._playlist=b};YAHOO.lang.augmentObject(a,{WAITING:"waiting",FINISHED:"finished"});a.prototype={_playlist:null,getPlaylist:function(){return this._playlist},getNextItem:function(){},peekNextItem:function(){},getPrevItem:function(){}};mspot.namespace("programmer").MediaProgrammer=a})();
/* programmer/PlaylistProgrammer.js */
(function(){var a=mspot.programmer.MediaProgrammer,d=mspot.model.Playlist,b=mspot.Session;var c=function(e){c.superclass.constructor.call(this,e);this._lastItem=null};YAHOO.lang.augmentObject(c,{PlaylistLoopOff:0,PlaylistLoopAll:1,PlaylistLoopOne:2});YAHOO.extend(c,a,{_lastItem:null,_nextIndex:null,_loop:c.PlaylistLoopOff,_shuffle:false,_shuffleIdx:0,_shuffleList:[],_waiting:false,getLoop:function(){return this._loop},setLoop:function(e){switch(e){case c.PlaylistLoopOff:case c.PlaylistLoopAll:case c.PlaylistLoopOne:this._loop=e;break;default:break}},getShuffle:function(){return this._shuffle},setShuffle:function(e){this._shuffle=e},preloadItems:function(m){if(this.getShuffle()){return}var h=30;var k=(this._lastItem?this._lastItem.lib.duration:0)-h;var l=[];var g=this._getIndex(1,false);for(var f=0;f<2;f++){var e=g+f;if(f>=this._playlist.getLength()){e=this._playlist.getLength()-e}var j=this._playlist.getItem(e);if(j&&j.lib&&j!=a.WAITING&&j!=a.FINISHED){if(j.lib.sync_state==d.SYNC_STATE_NOT_SYNCED){l.push({libId:j.libId,time:k})}else{k+=j.lib.duration}}}b.setValue("needToSync",l)},setNextItem:function(f){if(this.getShuffle()){this._lastItem=null;this._nextIndex=this._playlist.indexOf(f);this._shuffleList=[];return}var e;if(this.getLoop()===c.PlaylistLoopOne){e=this._playlist.indexOf(f)}else{e=this._playlist.indexOf(f)-1}if(e<0){e=-1}this._lastItem=this._playlist.getItem(e,false);if(this._lastItem==d.LOADING_ITEM){this._lastItem=null;this._nextIndex=this._playlist.indexOf(f)}},getNextItem:function(){var e=this._nextItem(true);if(e!=a.WAITING&&e!=a.FINISHED){this.preloadItems()}return e},peekNextItem:function(){return this._nextItem(false)},_nextItem:function(h){if(this._playlist.isLoading()){return a.WAITING}if(this._playlist.getLength()==0){return a.FINISHED}var g=this._getIndex(1,h);if(g!=-1){var l=this._playlist.getItem(g);if(l==d.LOADING_ITEM){return a.WAITING}else{if(l.lib.sync_state!=d.SYNC_STATE_SYNCED){g=this._getNextSyncedItemIndex(g);if(this._shuffle){var k=0;var e=0;var f=[];while(k<40&&e<100){if(g==null){break}if(!this._checkAlreadyPlayedShuffleItem(g)&&g<this._shuffleList.length){f.push(g);k++}g=this._getNextSyncedItemIndex(g+1);e++}var j=Math.floor(Math.random()*f.length);g=f[j];if(h){this._playFromShuffleListIdx(g)}else{this._moveUpFromShuffleList(g)}}else{if(g==0&&this.getLoop()!==c.PlaylistLoopAll){l=null}else{l=this._playlist.getItem(g,false)}}}}if(h){this._lastItem=l;this._nextIndex=null}return l}return a.FINISHED},getPrevItem:function(){try{return this._prevItem()}catch(f){}},_prevItem:function(){if(this._playlist.isLoading()){return a.WAITING}if(this._playlist.getLength()==0){return a.FINISHED}var e=this._getIndex(-1,true);if(e!=-1){var f=this._playlist.getItem(e);while(e>=0&&f.lib.sync_state!==d.SYNC_STATE_SYNCED){e-=1;f=this._playlist.getItem(e)}if(e>=0){this._lastItem=f;this._nextIndex=null;return f}}return a.FINISHED},_getNextSyncedItem:function(e){var g=e;do{var f=this._playlist.getItem(e,false);if(f&&f.lib&&f.lib.sync_state==d.SYNC_STATE_SYNCED){return f}if(this._shuffle&&f&&f.lib&&f.lib.sync_state!=d.SYNC_STATE_SYNCED){this._removeFromShuffleList(e)}e++;if(e>this._playlist.getLength()){e=0}}while(e!=g);return null},_getNextSyncedItemIndex:function(e){var g=e;do{var f=this._playlist.getItem(e,false);if(f&&f.lib&&f.lib.sync_state==d.SYNC_STATE_SYNCED){return e}if(this._shuffle&&f&&f.lib&&f.lib.sync_state!=d.SYNC_STATE_SYNCED){this._removeFromShuffleList(e)}e++;if(e>this._playlist.getLength()){e=0}}while(e!=g);return null},_getIndex:function(f,g){if(this._lastItem==null){if(this._nextIndex!==null){return this._nextIndex}else{return 0}}if(this._shuffle){return this._getShuffleListIndex(f,g)}var h=this._playlist.indexOf(this._lastItem);if(this.getLoop()==c.PlaylistLoopOne){return h}var e=h+f;if(e<0){e=0}else{if(e>=this._playlist.getLength()){if(this.getLoop()==c.PlaylistLoopAll){e=0}else{e=-1}}}return e},_getShuffleListIndex:function(e,f){if(this.getLoop()!=c.PlaylistLoopOne){this._shuffleIdx=this._shuffleIdx+e}if(this._shuffleIdx<0){return -1}if(this._shuffleList.length==0||this._shuffleList.length==this._shuffleIdx){this._createShuffleList()}var g=this._shuffleList[this._shuffleIdx];if(!f){this._shuffleIdx=this._shuffleIdx-e}return g},_createShuffleList:function(){var g=this._nextIndex;var f=[];this._shuffleIdx=0;this._shuffleList=[];for(var e=0;e<this._playlist.getLength();e++){f.push(e)}if(this._lastItem!=null){this._shuffleIdx=1;g=this._playlist.indexOf(this._lastItem)}this._shuffleList.push(f.splice(g,1));while(f.length>0){var h=Math.floor(Math.random()*f.length);this._shuffleList.push(f.splice(h,1))}},_checkAlreadyPlayedShuffleItem:function(e){var f=this._findFromShuffleList(e);if(f==-1){return false}return f<=this._shuffleIdx},_playFromShuffleListIdx:function(e){var f=this._findFromShuffleList(e);if(f==-1){return}item=this._shuffleList.splice(f,1);this._shuffleIdx++;this._shuffleList.splice(this._shuffleIdx,0,item[0]);return},_moveUpFromShuffleList:function(e){var f=this._findFromShuffleList(e);if(f==-1){return}item=this._shuffleList.splice(f,1);this._shuffleList.splice(this._shuffleIdx+1,0,item[0]);return},_removeFromShuffleList:function(e){var f=0;while(f<this._shuffleList.length){if(this._shuffleList[f][0]>=e){this._shuffleList.splice(f,1);if(f<=this._shuffleIdx){this._shuffleIdx--}}f++}return},_findFromShuffleList:function(e){var f=0;while(f<this._shuffleList.length){if(this._shuffleList[f][0]==e){return f}f++}return -1}});mspot.namespace("programmer").PlaylistProgrammer=c})();
/* app/PlaylistFactory.js */
(function(){var j=mspot.model.Playlist,b=mspot.model.MagicPlaylist,i=mspot.model.PartialPlaylist,c=mspot.model.MediaLibrary,f=mspot.Session,h=mspot.provider.PlaylistProvider,a=mspot.provider.PartialPlaylistProvider,g=mspot.provider.MediaLibraryProvider,d=mspot.programmer.PlaylistProgrammer;var e={_userLibrary:null,_favLibrary:null,_registry:{},getUserLibrary:function(){console.log("PlaylistFactory::getUserLibrary()");if(!e._userLibrary){e._userLibrary=new c();e._userLibraryProvider=new g(e._userLibrary)}return e._userLibrary},getFavLibrary:function(){console.log("PlaylistFactory::getFavLibrary()");if(!e._favLibrary){e._favLibrary=new c()}return e._favLibrary},getErrLibrary:function(){console.log("PlaylistFactory::getErrLibrary()");if(!e._errLibrary){e._errLibrary=new c();e._userLibraryProvider=new g(e._errLibrary)}return e._errLibrary},_destroyPlaylist:function(l){var k=l.getLibrary();k.unsubscribe(c.ITEM_REMOVE_EVENT,this._libraryRemoveHandler,l);k.unsubscribe(c.ITEM_CHANGE_EVENT,this._libraryChangeHandler,l);l.destroy()},reloadPlaylists:function(){for(var k in this._registry){var l=this._registry[k].info.playlist;l.setActiveFilters(l.getActiveFilters())}},register:function(k){var l=k.getId();if(this._registry[l]){this._registry[l].count++}},unregister:function(m){try{var n=m.getId();if(mspot.isUndefined(this._registry[n])){errorLog("Tried to unregister playlist that has not been registered");return}this._registry[n].count--;var k=this._registry[n].count>0;if(!k){this._destroyPlaylist(m);delete this._registry[n]}}catch(l){errorLog("Failed to unregister playlist",l)}},getMagicPlaylist:function(l,k){return e.getSavedPlaylist(j.MAGIC_ID,{libId:l,seed:k})},getFavoritePlaylist:function(){return e.getPartialSavedPlaylist(j.FAVORITE_ID,mspot.manager.FavoritePlaylistManager.PLAYLIST_BUFFER,{})},getErrorPlaylist:function(){return e.getPartialSavedPlaylist(j.ERROR_ID,mspot.manager.ErrorPlaylistManager.PLAYLIST_BUFFER,{})},getSavedPlaylist:function(p,o){o=o||{};if(!mspot.isUndefined(this._registry[p])){var m=this._registry[p].info;if(p==j.MAGIC_ID){if(m.playlist.getLibId()!=o.libId){m.playlist.setLibId(o.libId);m.playlist.generateSeed()}else{if(m.playlist.getSeed()!=o.seed){m.playlist.setSeed(o.seed)}}}return m}var k=null;switch(p){case j.ERROR_ID:k=e.getErrLibrary();playlist=new j(p,[],k);break;case j.FAVORITE_ID:k=e.getFavLibrary();playlist=new j(p,[],k);break;case j.MAGIC_ID:playlist=new b(p,[],k);playlist.setLibId(o.libId);if(o.seed){playlist.setSeed(o.seed)}else{playlist.generateSeed()}break;default:k=e.getUserLibrary();playlist=new j(p,[],k);break}k.subscribe(c.ITEM_REMOVE_EVENT,this._libraryRemoveHandler,playlist,true);k.subscribe(c.ITEM_CHANGE_EVENT,this._libraryChangeHandler,playlist,true);var l=new d(playlist);var n=new h(playlist);n.load();var m={playlist:playlist,programmer:l,provider:n,library:k};this._registry[p]={info:m,count:0};return m},getPartialSavedPlaylist:function(k,q,p){p=p||{};if(!mspot.isUndefined(this._registry[k])){var o=this._registry[k].info;if(o.playlist.getKeyword()!=p.keyword){o.playlist.setKeyword(p.keyword)}return o}var s=null;switch(k){case j.ERROR_ID:s=e.getErrLibrary();break;case j.FAVORITE_ID:s=e.getFavLibrary();break;default:s=e.getUserLibrary();break}var m=new i(k,null,s);if(p.keyword){m.setKeyword(p.keyword)}s.subscribe(c.ITEM_REMOVE_EVENT,this._libraryRemoveHandler,m,true);s.subscribe(c.ITEM_CHANGE_EVENT,this._libraryChangeHandler,m,true);var l=new d(m);var n=false;if(n=parseInt(f.getValue("player-loop"))){l.setLoop(n)}if(n=(f.getValue("player-shuffle")=="true")){l.setShuffle(Boolean(n))}var r=new a(m,q);m.subscribe(j.ITEM_LOAD_EVENT,function(t){r.load(t.index)});r.load();var o={playlist:m,programmer:l,provider:r,library:s};this._registry[k]={info:o,count:0};return o},_libraryChangeHandler:function(k){console.log("PlaylistFactory::_libraryChangeHandler()");for(var m=0,n=this.getLength();m<n;m++){var l=this.getItem(m,false);if(l.lib.id==k.item.id){l.lib=k.item;this.setItem(m,l)}}},_libraryRemoveHandler:function(k){console.log("PlaylistFactory::_libraryRemoveHandler()");var l=this.findByLibraryId(k.item.id);for(var m=0;m<l.length;m++){this.removeItem(l[m])}}};mspot.namespace("app");mspot.app.PlaylistFactory=e})();
/* media/MediaPlayer.js */
(function(){var a=function(b){this.createEvent(a.MediaPlayerBuffer);this.createEvent(a.MediaPlayerError);this.createEvent(a.MediaPlayerJumpTo);this.createEvent(a.MediaPlayerLoadBegin);this.createEvent(a.MediaPlayerSongBegin);this.createEvent(a.MediaPlayerSongEnd);this.createEvent(a.MediaPlayerSongPause);this.createEvent(a.MediaPlayerSongResume);this.createEvent(a.MediaPlayerSongPosChange);this.createEvent(a.MediaPlayerStart);this.createEvent(a.MediaPlayerStop)};YAHOO.lang.augmentObject(a,{MediaPlayerBuffer:"buffer",MediaPlayerError:"error",MediaPlayerJumpTo:"jumpTo",MediaPlayerLoadBegin:"loadBegin",MediaPlayerSongBegin:"songBegin",MediaPlayerSongEnd:"songEnd",MediaPlayerSongPause:"songPause",MediaPlayerSongResume:"songResume",MediaPlayerSongPosChange:"songPosChange",MediaPlayerStart:"start",MediaPlayerStop:"stop"});a.prototype={destroy:function(){},getBufferLength:function(){},getSongPosition:function(){},getSongLength:function(){},getVolume:function(){},jumpTo:function(b){},play:function(){},pause:function(){},setProgrammer:function(b){},setVolume:function(b){},skip:function(){},skipBack:function(){},stop:function(){}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("media").MediaPlayer=a})();
/* media/SwfMediaPlayer.js */
(function(){var b=mspot.media.MediaPlayer;var a=mspot.programmer.MediaProgrammer;var d=mspot.util.Timer;var e=mspot.model.Playlist;var c=function(g){c.superclass.constructor.call(this,g);if(!YAHOO.lang.isUndefined(g)){this._programmer=g}var f=this;this._fabHandler=function(h){f._fabEventHandler.apply(f,arguments)}};YAHOO.lang.augmentObject(c,{_jumpDelay:1000,_tickDelay:500,_maxRetry:10,_retryDelay:1000,_rewindDelay:3000});YAHOO.extend(c,b,{_jumpTimer:null,_retryTimer:null,bufferLength:0,_currentItem:null,_currentSongTime:0,_dispatchSongPos:false,_isJumping:false,_programmer:null,isPlaying:false,isPause:false,_fab:null,eventAdded:false,destroy:function(){this.stop();this._programmer=null;this._eventListenersRemove();this.unsubscribeAll()},getBufferLength:function(){return this.bufferLength},getCurrentItem:function(){return this._currentItem},getSongLength:function(){return this._currentItem.lib.length*1000},getSongPosition:function(){return this._currentSongTime},getVolume:function(){var f=this._getFABridge();return f.getVolume()},jumpTo:function(f){this._isJumping=true;var g=this._getFABridge();g.jumpTo(f);this._currentSongTime=f;this.fireEvent(b.MediaPlayerSongPosChange);this._jumpToTick()},play:function(){if(this.isPlaying){return}if(this._eventListenersAdd()){this.isPlaying=true;this.isPause=false;this._tickInit();if(this.getCurrentItem()==null){this.fireEvent(b.MediaPlayerStart,{item:this._programmer.peekNextItem()});this._loadNextSong(true)}else{this.fireEvent(b.MediaPlayerStart,{item:this.getCurrentItem()});this.fireEvent(b.MediaPlayerSongResume,{item:this.getCurrentItem()});var f=this._getFABridge();f.play()}}},pause:function(){if(!this.isPlaying){return}this.isPause=true;var f=this._getFABridge();f.pause();this.isPlaying=false;this.fireEvent(b.MediaPlayerSongPause,{item:this.getCurrentItem()});this.fireEvent(b.MediaPlayerStop,{item:this.getCurrentItem()})},rewind:function(){if(this.getSongPosition()>c._rewindDelay){this.jumpTo(0)}else{var f=this._getFABridge();f.stop();this.fireEvent(b.MediaPlayerSongEnd,{item:this.getCurrentItem()});this._loadPrevSong(this.isPlaying)}},setProgrammer:function(f){this._programmer=f},setVolume:function(f){var g=this._getFABridge();g.setVolume(f)},skip:function(){var f=this._getFABridge();f.stop();this.fireEvent(b.MediaPlayerSongEnd,{item:this.getCurrentItem()});this._loadNextSong(this.isPlaying)},stop:function(){if(!this.isPlaying&&!this.isPause){return}this.isPlaying=false;this.isPause=false;var f=this._getFABridge();f.stop();this.fireEvent(b.MediaPlayerSongEnd,{item:this.getCurrentItem()});this.fireEvent(b.MediaPlayerStop,{item:this.getCurrentItem()});this._currentItem=null;this._currentSongTime=0;this.fireEvent(b.MediaPlayerSongPosChange)},_eventListenersAdd:function(){if(this.eventAdded){return true}var f=this._getFABridge();if(f){this.eventAdded=true;f.addEventListener("MP3PosChanged",this._fabHandler);f.addEventListener("MP3SeekComplete",this._fabHandler);f.addEventListener("MP3LoadStarted",this._fabHandler);f.addEventListener("MP3LoadFailed",this._fabHandler);f.addEventListener("MP3LoadProgress",this._fabHandler);f.addEventListener("MP3LoadCompleted",this._fabHandler);f.addEventListener("MP3SongStarted",this._fabHandler);f.addEventListener("MP3SongCompleted",this._fabHandler)}return f!=null},_eventListenersRemove:function(){var f=this._getFABridge();f.removeEventListener("MP3PosChanged",this._fabHandler);f.removeEventListener("MP3SeekComplete",this._fabHandler);f.removeEventListener("MP3LoadStarted",this._fabHandler);f.removeEventListener("MP3LoadFailed",this._fabHandler);f.removeEventListener("MP3LoadProgress",this._fabHandler);f.removeEventListener("MP3LoadCompleted",this._fabHandler);f.removeEventListener("MP3SongStarted",this._fabHandler);f.removeEventListener("MP3SongCompleted",this._fabHandler);this.eventAdded=false},_fabEventHandler:function(f){switch(f.getType()){case"MP3LoadStarted":this.isLoading=true;break;case"MP3LoadFailed":this.fireEvent(b.MediaPlayerError);break;case"MP3LoadProgress":this.bufferLength=f.getSongLength();this.fireEvent(b.MediaPlayerBuffer);break;case"MP3LoadCompleted":this.isLoading=false;break;case"MP3SongStarted":this.fireEvent(b.MediaPlayerSongBegin,{item:this.getCurrentItem()});break;case"MP3SongCompleted":this.fireEvent(b.MediaPlayerSongEnd,{item:this.getCurrentItem()});this._loadNextSong(this.isPlaying);break;case"MP3PosChanged":this._currentSongTime=f.getSongPosition();if(this._dispatchSongPos&&!this._isJumping){this.fireEvent(b.MediaPlayerSongPosChange);this._dispatchSongPos=false}break;default:break}},_getFABridge:function(){if(this._fab==null){if(!FABridge||!FABridge.flash){return null}else{return FABridge.flash.root()}}else{return this._fab}},_loadCurrentSong:function(g){this._isJumping=false;var f=this._getFABridge();f.load(this._currentItem.lib.contenturi,"audio/mp4");if(g){f.play()}this.fireEvent(b.MediaPlayerLoadBegin,{item:this.getCurrentItem()});return true},_loadNextSong:function(h){if(YAHOO.lang.isUndefined(h)){h=false}var j=null,f=0;do{var g=this._programmer.peekNextItem();if(j==null){j=g}if(g==a.WAITING){if(this._retryTimer==null){this._retryStart()}return false}else{this._currentItem=this._programmer.getNextItem()}f++}while(this._currentItem!=a.FINISHED&&this._currentItem.lib.sync_state!=e.SYNC_STATE_SYNCED&&(this._currentItem.id!=j.id||f<=1));this._loadCurrentSong(h);return true},_loadPrevSong:function(f){if(YAHOO.lang.isUndefined(f)){f=false}this._currentItem=this._programmer.getPrevItem();this._loadCurrentSong(f)},_retryStart:function(){this._retryTimer=new d(c._retryDelay,c._maxRetry);this._retryTimer.subscribe(d.EVENT_TIMER,this._retryTickTimerEv,this,true);this._retryTimer.subscribe(d.EVENT_TIMER_COMPLETE,this._retryTickTimerCompleteEv,this,true);this._retryTimer.start()},_retryTickTimerEv:function(){if(this._loadNextSong(true)&&this._retryTimer!=null){this._retryTimer.destroy();this._retryTimer=null}},_retryTickTimerCompleteEv:function(){if(!this._loadNextSong()){this.isPlaying=false;this.fireEvent(b.MediaPlayerError);return}if(this._retryTimer!=null){this._retryTimer.destroy();this._retryTimer=null}},_jumpToTick:function(){if(this._jumpTimer==null){this._jumpTimer=new d(c._jumpDelay,1);this._jumpTimer.subscribe(d.EVENT_TIMER_COMPLETE,this._jumpToTickComplete,this,true)}else{this._jumpTimer.reset()}this._jumpTimer.start()},_jumpToTickComplete:function(){this._isJumping=false},_tickInit:function(){if(this._tickTimer!=null){return}this._tickTimer=new d(c._tickDelay);this._tickTimer.subscribe(d.EVENT_TIMER,this._tickTimerEvent,this,true);this._tickTimer.start()},_tickStop:function(){if(this._tickTimer==null){return}this._tickTimer.destroy();this._tickTimer=null},_tickTimerEvent:function(){if(!this.isPlaying){this._tickStop();return}this._dispatchSongPos=true},_log:function(f){}});mspot.namespace("media").SwfMediaPlayer=c})();
/* media/HTML5MediaPlayer.js */
(function(){var d=YAHOO.util.Event;var f=YAHOO.util.Dom;var c=mspot.media.MediaPlayer;var b=mspot.programmer.MediaProgrammer;var e=mspot.util.Timer;var a=function(g){a.superclass.constructor.call(this,g);if(!YAHOO.lang.isUndefined(g)){this._programmer=g}};YAHOO.lang.augmentObject(a,{_tickDelay:500,_maxRetry:5,_retryDelay:1000,_rewindDelay:3000});YAHOO.extend(a,c,{_retryTimer:null,_player:null,_currentItem:null,_currentSongTime:0,_isJumping:false,_programmer:null,isPlaying:false,destroy:function(){this.stop();this._programmer=null;this._eventListenersRemove();this.unsubscribeAll()},getBufferLength:function(){return 0},getCurrentItem:function(){return this._currentItem},getSongLength:function(){return this._currentItem.lib.length*1000},getSongPosition:function(){return this._currentSongTime},getVolume:function(){return this._player.volume},jumpTo:function(g){if(this._player!=null){this._player.currentTime=g/1000}this._currentSongTime=g;this.fireEvent(c.MediaPlayerSongPosChange)},play:function(){if(this.isPlaying){return}this._eventListenersAdd();this.isPlaying=true;this.isPause=false;this._tickInit();if(this.getCurrentItem()==null){this.fireEvent(c.MediaPlayerStart,{item:this._programmer.peekNextItem()});this._loadNextSong(true)}else{this.fireEvent(c.MediaPlayerStart,{item:this.getCurrentItem()});this.fireEvent(c.MediaPlayerSongResume,{item:this.getCurrentItem()});this._player.play()}},pause:function(){if(!this.isPlaying){return}this.isPause=true;this._player.pause();this.isPlaying=false;this.fireEvent(c.MediaPlayerSongPause,{item:this.getCurrentItem()});this.fireEvent(c.MediaPlayerStop,{item:this.getCurrentItem()})},rewind:function(){if(this.getSongPosition()>a._rewindDelay){this.jumpTo(0)}else{this._player.pause();this.fireEvent(c.MediaPlayerSongEnd,{item:this.getCurrentItem()});this._loadPrevSong(this.isPlaying)}},setProgrammer:function(g){this._programmer=g},setVolume:function(g){this._player.volume=g},skip:function(){this._player.pause();this.fireEvent(c.MediaPlayerSongEnd,{item:this.getCurrentItem()});this._loadNextSong(this.isPlaying)},stop:function(){if(!this.isPlaying&&!this.isPause){return}this.isPause=false;this.isPlaying=false;this._player.pause();this.fireEvent(c.MediaPlayerSongEnd,{item:this.getCurrentItem()});this.fireEvent(c.MediaPlayerStop,{item:this.getCurrentItem()});this._currentItem=null;this._currentSongTime=0;this.fireEvent(c.MediaPlayerSongPosChange)},_audioHandler:function(g){this._log(g.type);switch(g.type){case"ended":this.fireEvent(c.MediaPlayerSongEnd,{item:this.getCurrentItem()});this._loadNextSong(this.isPlaying);break;case"pause":break;case"play":this.fireEvent(c.MediaPlayerSongBegin,{item:this.getCurrentItem()});break;case"seeked":this._isJumping=false;break;case"seeking":this._isJumping=true;break;default:break}},_eventListenersAdd:function(){d.addListener(this._player,"ended",this._audioHandler,this,true);d.addListener(this._player,"pause",this._audioHandler,this,true);d.addListener(this._player,"play",this._audioHandler,this,true);d.addListener(this._player,"seeked",this._audioHandler,this,true);d.addListener(this._player,"seeking",this._audioHandler,this,true)},_eventListenersRemove:function(){d.removeListener(this._player,"ended",this._audioHandler,this,true);d.removeListener(this._player,"pause",this._audioHandler,this,true);d.removeListener(this._player,"play",this._audioHandler,this,true);d.removeListener(this._player,"seeked",this._audioHandler,this,true);d.removeListener(this._player,"seeking",this._audioHandler,this,true)},_loadCurrentSong:function(g){this._isJumping=false;if(this._player==null){this._player=f.createElement("audio");this._eventListenersAdd()}this._player.setAttribute("src",this._currentItem.lib.contenturi.substr(3,999));this._player.load();if(g){this._player.play()}this.fireEvent(c.MediaPlayerLoadBegin,{item:this.getCurrentItem()});return true},_loadNextSong:function(g){if(YAHOO.lang.isUndefined(g)){g=false}if(this._programmer.peekNextItem()==b.WAITING){if(this._retryTimer==null){this._retryStart()}return false}else{this._currentItem=this._programmer.getNextItem()}this._loadCurrentSong(g);return true},_loadPrevSong:function(g){if(YAHOO.lang.isUndefined(g)){g=false}this._currentItem=this._programmer.getPrevItem();this._loadCurrentSong(g)},_retryStart:function(){this._retryTimer=new e(a._retryDelay,a._maxRetry);this._retryTimer.subscribe(e.EVENT_TIMER,this._retryTickTimerEv,this,true);this._retryTimer.subscribe(e.EVENT_TIMER_COMPLETE,this._retryTickTimerCompleteEv,this,true);this._retryTimer.start()},_retryTickTimerEv:function(){if(this._loadNextSong(true)&&this._retryTimer!=null){this._retryTimer.destroy();this._retryTimer=null}},_retryTickTimerCompleteEv:function(){if(!this._loadNextSong()){this.isPlaying=false;this.fireEvent(c.MediaPlayerError);return}if(this._retryTimer!=null){this._retryTimer.destroy();this._retryTimer=null}},_tickInit:function(){if(this._tickTimer!=null){return}this._tickTimer=new e(a._tickDelay);this._tickTimer.subscribe(e.EVENT_TIMER,this._tickTimerEvent,this,true);this._tickTimer.start()},_tickStop:function(){if(this._tickTimer==null){return}this._tickTimer.destroy();this._tickTimer=null},_tickTimerEvent:function(){if(!this.isPlaying){this._tickStop();return}this._currentSongTime=this._player.currentTime*1000;if(!this._isJumping){this.fireEvent("songPosChange")}},_log:function(g){}});mspot.namespace("media").HTML5MediaPlayer=a})();
/* media/swfobject.js */
var swfobject=function(){var aq="undefined",aD="object",ab="Shockwave Flash",X="ShockwaveFlash.ShockwaveFlash",aE="application/x-shockwave-flash",ac="SWFObjectExprInst",ax="onreadystatechange",af=window,aL=document,aB=navigator,aa=false,Z=[aN],aG=[],ag=[],al=[],aJ,ad,ap,at,ak=false,aU=false,aH,an,aI=true,ah=function(){var a=typeof aL.getElementById!=aq&&typeof aL.getElementsByTagName!=aq&&typeof aL.createElement!=aq,e=aB.userAgent.toLowerCase(),c=aB.platform.toLowerCase(),h=c?/win/.test(c):/win/.test(e),j=c?/mac/.test(c):/mac/.test(e),g=/webkit/.test(e)?parseFloat(e.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,d=!+"\v1",f=[0,0,0],k=null;if(typeof aB.plugins!=aq&&typeof aB.plugins[ab]==aD){k=aB.plugins[ab].description;if(k&&!(typeof aB.mimeTypes!=aq&&aB.mimeTypes[aE]&&!aB.mimeTypes[aE].enabledPlugin)){aa=true;d=false;k=k.replace(/^.*\s+(\S+\s+\S+$)/,"$1");f[0]=parseInt(k.replace(/^(.*)\..*$/,"$1"),10);f[1]=parseInt(k.replace(/^.*\.(.*)\s.*$/,"$1"),10);f[2]=/[a-zA-Z]/.test(k)?parseInt(k.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof af.ActiveXObject!=aq){try{var i=new ActiveXObject(X);if(i){k=i.GetVariable("$version");if(k){d=true;k=k.split(" ")[1].split(",");f=[parseInt(k[0],10),parseInt(k[1],10),parseInt(k[2],10)]}}}catch(b){}}}return{w3:a,pv:f,wk:g,ie:d,win:h,mac:j}}(),aK=function(){if(!ah.w3){return}if((typeof aL.readyState!=aq&&aL.readyState=="complete")||(typeof aL.readyState==aq&&(aL.getElementsByTagName("body")[0]||aL.body))){aP()}if(!ak){if(typeof aL.addEventListener!=aq){aL.addEventListener("DOMContentLoaded",aP,false)}if(ah.ie&&ah.win){aL.attachEvent(ax,function(){if(aL.readyState=="complete"){aL.detachEvent(ax,arguments.callee);aP()}});if(af==top){(function(){if(ak){return}try{aL.documentElement.doScroll("left")}catch(a){setTimeout(arguments.callee,0);return}aP()})()}}if(ah.wk){(function(){if(ak){return}if(!/loaded|complete/.test(aL.readyState)){setTimeout(arguments.callee,0);return}aP()})()}aC(aP)}}();function aP(){if(ak){return}try{var b=aL.getElementsByTagName("body")[0].appendChild(ar("span"));b.parentNode.removeChild(b)}catch(a){return}ak=true;var d=Z.length;for(var c=0;c<d;c++){Z[c]()}}function aj(a){if(ak){a()}else{Z[Z.length]=a}}function aC(a){if(typeof af.addEventListener!=aq){af.addEventListener("load",a,false)}else{if(typeof aL.addEventListener!=aq){aL.addEventListener("load",a,false)}else{if(typeof af.attachEvent!=aq){aM(af,"onload",a)}else{if(typeof af.onload=="function"){var b=af.onload;af.onload=function(){b();a()}}else{af.onload=a}}}}}function aN(){if(aa){Y()}else{am()}}function Y(){var d=aL.getElementsByTagName("body")[0];var b=ar(aD);b.setAttribute("type",aE);var a=d.appendChild(b);if(a){var c=0;(function(){if(typeof a.GetVariable!=aq){var e=a.GetVariable("$version");if(e){e=e.split(" ")[1].split(",");ah.pv=[parseInt(e[0],10),parseInt(e[1],10),parseInt(e[2],10)]}}else{if(c<10){c++;setTimeout(arguments.callee,10);return}}d.removeChild(b);a=null;am()})()}else{am()}}function am(){var g=aG.length;if(g>0){for(var h=0;h<g;h++){var c=aG[h].id;var l=aG[h].callbackFn;var a={success:false,id:c};if(ah.pv[0]>0){var i=aS(c);if(i){if(ao(aG[h].swfVersion)&&!(ah.wk&&ah.wk<312)){ay(c,true);if(l){a.success=true;a.ref=av(c);l(a)}}else{if(aG[h].expressInstall&&au()){var e={};e.data=aG[h].expressInstall;e.width=i.getAttribute("width")||"0";e.height=i.getAttribute("height")||"0";if(i.getAttribute("class")){e.styleclass=i.getAttribute("class")}if(i.getAttribute("align")){e.align=i.getAttribute("align")}var f={};var d=i.getElementsByTagName("param");var k=d.length;for(var j=0;j<k;j++){if(d[j].getAttribute("name").toLowerCase()!="movie"){f[d[j].getAttribute("name")]=d[j].getAttribute("value")}}ae(e,f,c,l)}else{aF(i);if(l){l(a)}}}}}else{ay(c,true);if(l){var b=av(c);if(b&&typeof b.SetVariable!=aq){a.success=true;a.ref=b}l(a)}}}}}function av(b){var d=null;var c=aS(b);if(c&&c.nodeName=="OBJECT"){if(typeof c.SetVariable!=aq){d=c}else{var a=c.getElementsByTagName(aD)[0];if(a){d=a}}}return d}function au(){return !aU&&ao("6.0.65")&&(ah.win||ah.mac)&&!(ah.wk&&ah.wk<312)}function ae(f,d,h,e){aU=true;ap=e||null;at={success:false,id:h};var a=aS(h);if(a){if(a.nodeName=="OBJECT"){aJ=aO(a);ad=null}else{aJ=a;ad=h}f.id=ac;if(typeof f.width==aq||(!/%$/.test(f.width)&&parseInt(f.width,10)<310)){f.width="310"}if(typeof f.height==aq||(!/%$/.test(f.height)&&parseInt(f.height,10)<137)){f.height="137"}aL.title=aL.title.slice(0,47)+" - Flash Player Installation";var b=ah.ie&&ah.win?"ActiveX":"PlugIn",c="MMredirectURL="+af.location.toString().replace(/&/g,"%26")+"&MMplayerType="+b+"&MMdoctitle="+aL.title;if(typeof d.flashvars!=aq){d.flashvars+="&"+c}else{d.flashvars=c}if(ah.ie&&ah.win&&a.readyState!=4){var g=ar("div");h+="SWFObjectNew";g.setAttribute("id",h);a.parentNode.insertBefore(g,a);a.style.display="none";(function(){if(a.readyState==4){a.parentNode.removeChild(a)}else{setTimeout(arguments.callee,10)}})()}aA(f,d,h)}}function aF(a){if(ah.ie&&ah.win&&a.readyState!=4){var b=ar("div");a.parentNode.insertBefore(b,a);b.parentNode.replaceChild(aO(a),b);a.style.display="none";(function(){if(a.readyState==4){a.parentNode.removeChild(a)}else{setTimeout(arguments.callee,10)}})()}else{a.parentNode.replaceChild(aO(a),a)}}function aO(b){var d=ar("div");if(ah.win&&ah.ie){d.innerHTML=b.innerHTML}else{var e=b.getElementsByTagName(aD)[0];if(e){var a=e.childNodes;if(a){var f=a.length;for(var c=0;c<f;c++){if(!(a[c].nodeType==1&&a[c].nodeName=="PARAM")&&!(a[c].nodeType==8)){d.appendChild(a[c].cloneNode(true))}}}}}return d}function aA(e,g,c){var d,a=aS(c);if(ah.wk&&ah.wk<312){return d}if(a){if(typeof e.id==aq){e.id=c}if(ah.ie&&ah.win){var f="";for(var i in e){if(e[i]!=Object.prototype[i]){if(i.toLowerCase()=="data"){g.movie=e[i]}else{if(i.toLowerCase()=="styleclass"){f+=' class="'+e[i]+'"'}else{if(i.toLowerCase()!="classid"){f+=" "+i+'="'+e[i]+'"'}}}}}var h="";for(var j in g){if(g[j]!=Object.prototype[j]){h+='<param name="'+j+'" value="'+g[j]+'" />'}}a.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+f+">"+h+"</object>";ag[ag.length]=e.id;d=aS(e.id)}else{var b=ar(aD);b.setAttribute("type",aE);for(var k in e){if(e[k]!=Object.prototype[k]){if(k.toLowerCase()=="styleclass"){b.setAttribute("class",e[k])}else{if(k.toLowerCase()!="classid"){b.setAttribute(k,e[k])}}}}for(var l in g){if(g[l]!=Object.prototype[l]&&l.toLowerCase()!="movie"){aQ(b,l,g[l])}}a.parentNode.replaceChild(b,a);d=b}}return d}function aQ(b,d,c){var a=ar("param");a.setAttribute("name",d);a.setAttribute("value",c);b.appendChild(a)}function aw(a){var b=aS(a);if(b&&b.nodeName=="OBJECT"){if(ah.ie&&ah.win){b.style.display="none";(function(){if(b.readyState==4){aT(a)}else{setTimeout(arguments.callee,10)}})()}else{b.parentNode.removeChild(b)}}}function aT(a){var b=aS(a);if(b){for(var c in b){if(typeof b[c]=="function"){b[c]=null}}b.parentNode.removeChild(b)}}function aS(a){var c=null;try{c=aL.getElementById(a)}catch(b){}return c}function ar(a){return aL.createElement(a)}function aM(a,c,b){a.attachEvent(c,b);al[al.length]=[a,c,b]}function ao(a){var b=ah.pv,c=a.split(".");c[0]=parseInt(c[0],10);c[1]=parseInt(c[1],10)||0;c[2]=parseInt(c[2],10)||0;return(b[0]>c[0]||(b[0]==c[0]&&b[1]>c[1])||(b[0]==c[0]&&b[1]==c[1]&&b[2]>=c[2]))?true:false}function az(b,f,a,c){if(ah.ie&&ah.mac){return}var e=aL.getElementsByTagName("head")[0];if(!e){return}var g=(a&&typeof a=="string")?a:"screen";if(c){aH=null;an=null}if(!aH||an!=g){var d=ar("style");d.setAttribute("type","text/css");d.setAttribute("media",g);aH=e.appendChild(d);if(ah.ie&&ah.win&&typeof aL.styleSheets!=aq&&aL.styleSheets.length>0){aH=aL.styleSheets[aL.styleSheets.length-1]}an=g}if(ah.ie&&ah.win){if(aH&&typeof aH.addRule==aD){aH.addRule(b,f)}}else{if(aH&&typeof aL.createTextNode!=aq){aH.appendChild(aL.createTextNode(b+" {"+f+"}"))}}}function ay(a,c){if(!aI){return}var b=c?"visible":"hidden";if(ak&&aS(a)){aS(a).style.visibility=b}else{az("#"+a,"visibility:"+b)}}function ai(b){var a=/[\\\"<>\.;]/;var c=a.exec(b)!=null;return c&&typeof encodeURIComponent!=aq?encodeURIComponent(b):b}var aR=function(){if(ah.ie&&ah.win){window.attachEvent("onunload",function(){var a=al.length;for(var b=0;b<a;b++){al[b][0].detachEvent(al[b][1],al[b][2])}var d=ag.length;for(var c=0;c<d;c++){aw(ag[c])}for(var e in ah){ah[e]=null}ah=null;for(var f in swfobject){swfobject[f]=null}swfobject=null})}}();return{registerObject:function(a,e,c,b){if(ah.w3&&a&&e){var d={};d.id=a;d.swfVersion=e;d.expressInstall=c;d.callbackFn=b;aG[aG.length]=d;ay(a,false)}else{if(b){b({success:false,id:a})}}},getObjectById:function(a){if(ah.w3){return av(a)}},embedSWF:function(k,e,h,f,c,a,b,i,g,j){var d={success:false,id:e};if(ah.w3&&!(ah.wk&&ah.wk<312)&&k&&e&&h&&f&&c){ay(e,false);aj(function(){h+="";f+="";var q={};if(g&&typeof g===aD){for(var o in g){q[o]=g[o]}}q.data=k;q.width=h;q.height=f;var n={};if(i&&typeof i===aD){for(var p in i){n[p]=i[p]}}if(b&&typeof b===aD){for(var l in b){if(typeof n.flashvars!=aq){n.flashvars+="&"+l+"="+b[l]}else{n.flashvars=l+"="+b[l]}}}if(ao(c)){var m=aA(q,n,e);if(q.id==e){ay(e,true)}d.success=true;d.ref=m}else{if(a&&au()){q.data=a;ae(q,n,e,j);return}else{ay(e,true)}}if(j){j(d)}})}else{if(j){j(d)}}},switchOffAutoHideShow:function(){aI=false},ua:ah,getFlashPlayerVersion:function(){return{major:ah.pv[0],minor:ah.pv[1],release:ah.pv[2]}},hasFlashPlayerVersion:ao,createSWF:function(a,b,c){if(ah.w3){return aA(a,b,c)}else{return undefined}},showExpressInstall:function(b,a,d,c){if(ah.w3&&au()){ae(b,a,d,c)}},removeSWF:function(a){if(ah.w3){aw(a)}},createCSS:function(b,a,c,d){if(ah.w3){az(b,a,c,d)}},addDomLoadEvent:aj,addLoadEvent:aC,getQueryParamValue:function(b){var a=aL.location.search||aL.location.hash;if(a){if(/\?/.test(a)){a=a.split("?")[1]}if(b==null){return ai(a)}var c=a.split("&");for(var d=0;d<c.length;d++){if(c[d].substring(0,c[d].indexOf("="))==b){return ai(c[d].substring((c[d].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(aU){var a=aS(ac);if(a&&aJ){a.parentNode.replaceChild(aJ,a);if(ad){ay(ad,true);if(ah.ie&&ah.win){aJ.style.display="block"}}if(ap){ap(at)}}aU=false}}}}();
/* ui/DragDropRow.js */
(function(){var b=YAHOO.util.Dom,a=YAHOO.util.Event;mspot.namespace("ui");mspot.ui.initDragDropRow=function(){mspot.ui.DragDropRow=function(d,c){c.resizeFrame=false;c.centerFrame=true;this.goingUp=false;this.lastY=0;this.dataTable=c.dataTable;this.playlist=c.playlist;this.allowMove=c.allowMove;mspot.ui.DragDropRow.superclass.constructor.call(this,d,"songDragDrop",c);b.addClass(this.getDragEl(),"drag-drop-row")};YAHOO.extend(mspot.ui.DragDropRow,YAHOO.util.DDProxy,{proxyEl:null,srcEl:null,srcData:null,srcIndex:null,tmpIndex:null,startDrag:function(c,d){this.createEvent("moveItem");this.createEvent("addToPlaylist");this.proxyEl=this.getDragEl();this.srcEl=this.getEl();if(!b.hasClass(this.srcEl,YAHOO.widget.DataTable.CLASS_SELECTED)){this.dataTable.unselectAllRows();this.dataTable.selectRow(this.srcEl)}this.srcData=this.dataTable.getRecord(this.srcEl).getData();this.srcIndex=this.srcEl.sectionRowIndex;this.rowLine=document.createElement("div");this.rowLine.id="ddRowLine";this.rowLine.className="drag-drop-row-line";b.get("bd").appendChild(this.rowLine);this.proxyEl.innerHTML="";b.setStyle(this.proxyEl,"border-width","0");b.setStyle(this.proxyEl,"width","40px");b.setStyle(this.proxyEl,"height","40px");b.addClass(this.proxyEl,"song-drag-drop-proxy");this.proxyEl.innerHTML='<div class="song-drag-drop-proxy-text">'+this.dataTable.getSelectedCount()+"</div>"},endDrag:function(c,i){var g=this.srcEl,f=b.get(this.lastId);b.setStyle(this.proxyEl,"visibility","hidden");b.setStyle(g,"visibility","");this.rowLine.parentNode.removeChild(this.rowLine);if(this.lastTreeViewItem&&this.lastTreeViewItem!=f){b.removeClass(this.lastTreeViewItem,"drag-drop-treeview")}if(f==null){return}var e=this.srcIndex;if(this.allowMove&&b.hasClass(f.parentNode,"yui-dt-data")){var d=f.sectionRowIndex;if(d>this.srcIndex){d++}this.fireEvent("moveItem",{srcIndex:e,destIndex:d})}else{if(b.hasClass(f,"ygtvcontent")){var h=b.getAncestorByClassName(f,"ygtvtable");b.removeClass(h,"drag-drop-treeview");this.fireEvent("addToPlaylist",{selectedIndexes:this.dataTable.getSelectedIndexes(),treeViewElem:f})}}},onDrag:function(c){},onDragOver:function(g,c){this.lastId=c;var h=b.get(c);if(h==null){return}else{if(this.allowMove&&b.hasClass(h.parentNode,"yui-dt-data")){var f=h.sectionRowIndex,k=this.srcIndex;var i=b.getRegion(h);var j=i.top;if(f>k){j=i.bottom}var d=b.getAncestorByClassName(this.srcEl,"yui-dt").offsetWidth;b.setStyle(this.rowLine,"left",i.left+"px");b.setStyle(this.rowLine,"top",j+"px");b.setStyle(this.rowLine,"width",d+"px");b.setStyle(this.rowLine,"display","")}else{if(b.hasClass(h,"ygtvcontent")){if(h==this.lastTreeViewItem){return}var l=b.getAncestorByClassName(h,"ygtvtable");b.addClass(l,"drag-drop-treeview");this.lastTreeViewItem=h}}}},onDragOut:function(d,f){if(this.lastTreeViewItem){var c=b.getAncestorByClassName(this.lastTreeViewItem,"ygtvtable");b.removeClass(c,"drag-drop-treeview");this.lastTreeViewItem=null}b.setStyle(this.rowLine,"display","none")}})}})();
/* ui/CoverArt.js */
(function(){var b=YAHOO.util.Dom;var a=function(d,c,e){if(mspot.isUndefined(d)){d="135px"}if(mspot.isUndefined(c)){c="135px"}if(mspot.isUndefined(e)){e="no-repeat"}this._coverArtElem=b.createElement("div",{style:"width: "+d+"; height: "+c+"; position: absolute; left: 0; top: 0; display: none; background-repeat: "+e});this._coverArtElemSwap=b.createElement("div",{style:"width: "+d+"; height: "+c+"; position: absolute; left: 0; top: 0; display: none; background-repeat: "+e})};YAHOO.extend(a,YAHOO.util.Element,{_container:null,_coverArtElem:null,_coverArtElemSwap:null,render:function(c){this._container=c;this._container.appendChild(this._coverArtElem);this._container.appendChild(this._coverArtElemSwap)},updateImage:function(c,d){if(mspot.isUndefined(d)){d=0.5}this._container.style.display="";if(c!=""){if(this._coverArtElem.style.display==""){this._imageFadeOut(c,d)}else{this._imageFadeIn(c,d)}}else{if(clearImages){this._coverArtElem.src="";this._coverArtElem.style.display="none"}}},_imageFadeIn:function(f,c){var e=this;var d=new Image();d.src=f;var g=function(){e._coverArtElem.style.display="";b.setStyle(e._coverArtElem,"opacity",0);e._coverArtElem.style.backgroundImage="url('"+d.src+"')";if(e._coverArtElem.style.display==""){if(e._imageFadeInAnim!=null){e._imageFadeInAnim.stop()}var h={opacity:{from:0,to:1}};YAHOO.util.AnimMgr.fps=100;e._imageFadeInAnim=new YAHOO.util.Anim(e._coverArtElem,h,c);e._imageFadeInAnim.animate()}};d.complete?g():d.onload=g},_imageFadeOut:function(e,g){var d=this;var c=new Image();c.src=e;if(this._coverArtElem.style.display==""){this._coverArtElemSwap.style.backgroundImage=this._coverArtElem.style.backgroundImage;this._coverArtElemSwap.style.display="";b.setStyle(this._coverArtElemSwap,"opacity",1)}var f=function(){if(d._coverArtElemSwap.style.display==""){if(d._imageFadeOutAnim!=null){d._imageFadeOutAnim.stop()}var h={opacity:{from:1,to:0}};YAHOO.util.AnimMgr.fps=100;d._imageFadeOutAnim=new YAHOO.util.Anim(d._coverArtElemSwap,h,g);var i=function(){d._coverArtElemSwap.style.backgroundImage=d._coverArtElem.style.backgroundImage};d._imageFadeOutAnim.onComplete.subscribe(i);d._imageFadeOutAnim.animate()}d._coverArtElem.style.backgroundImage="url('"+c.src+"')";d._coverArtElem.style.display=""};c.complete?f():c.onload=f}});mspot.namespace("ui").CoverArt=a})();
/* ui/InfiniteDataTable.js */
(function(){mspot.namespace("ui");mspot.ui.initInfiniteDataTable=function(){var c=YAHOO.widget.ScrollingDataTable,d=YAHOO.util.Dom,b=YAHOO.util.Event,a=mspot.util;var e=function(g,h,j,i){this.infiniteDataSource=j;this._selectedIndexes=new Array(10000);this._selectedCount=0;this.curPage=-1;this.totalRecords=0;this.totalPages=0;this.realScrollTop=0;this.height=parseInt(i.height);this.rowHeight=parseInt(i.rowHeight);this.rowsPerPage=i.rowsPerPage;this.preloadedRowsPerPage=i.preloadedRowsPerPage;this.partialDataSource=new YAHOO.util.DataSource();this.partialDataSource.liveData={items:[],length:0};this.partialDataSource.responseType=YAHOO.util.DataSource.TYPE_JSON;this.partialDataSource.responseSchema=this.infiniteDataSource.responseSchema;j=this.partialDataSource;delete i.initialRequest;e.superclass.constructor.call(this,g,h,j,i);this.tableBody=this.getTableEl().parentNode;this.tableBody.style.overflowX="hidden";var f=this.tableBody.parentNode;this.loadingOverlay=d.createElement("div",{className:"loading-overlay"});f.appendChild(this.loadingOverlay);f.style.overflow="hidden";f.style.position="relative";this.endlessContainer=document.createElement("div");this.endlessContent=document.createElement("div");this.endlessContainer.appendChild(this.endlessContent);this.endlessContainer.className="table-container-endless";this.endlessContent.className="content";f.appendChild(this.endlessContainer);this.endlessContainer.isScrolling=true;this.tableBody.isScrolling=true;YAHOO.util.Event.addListener(this.tableBody,"scroll",function(){if(this.tableBody.isScrolling){this.endlessContainer.isScrolling=false;var k=this.tableBody.scrollTop;if(this.totalPages>1){if(k>=this.maxScrollTop&&this.curPage+1<this.totalPages){this.realScrollTop=1;this.setData(this.curPage+1);k=1;this.maxScrollTop=this.tableBody.scrollHeight-this.height}else{if(k<=0&&this.curPage-1>=0){this.realScrollTop=this.maxScrollTop-1;this.setData(this.curPage-1);k=this.maxScrollTop-1;this.maxScrollTop=this.tableBody.scrollHeight-this.height}}}this.endlessContainer.scrollTop=k+this.rowHeight*(this.curPage*this.preloadedRowsPerPage)}else{this.tableBody.isScrolling=true}},this,true);YAHOO.util.Event.addListener(this.endlessContainer,"scroll",function(){if(this.endlessContainer.isScrolling){var k=this;if(this.pagingTimeout!=null){window.clearTimeout(this.pagingTimeout)}this.pagingTimeout=window.setTimeout(function(){k.tableBody.isScrolling=false;k.scrollTo(k.endlessContainer.scrollTop);k.pagingTimeout=null},200)}else{this.endlessContainer.isScrolling=true}},this,true);document.onselectstart=function(){return false}};YAHOO.lang.extend(e,c,{_storeScrollPositions:function(){},validateColumnWidths:function(f){},_syncScrollY:function(){},_syncScrollOverhang:function(){},initializeTable:function(){this._bInit=true;this._oRecordSet.reset();var f=this.get("paginator");if(f){f.set("totalRecords",0)}this._unselectAllTrEls();this._unselectAllTdEls();this._aSelections=null;this._oAnchorRecord=null;this._oAnchorCell=null;this.set("sortedBy",null)},getSelectedIndexes:function(){var h=new Array(this.getSelectedCount());var f=0;for(var g=0;g<this._selectedIndexes.length;g++){if(this._selectedIndexes[g]==1){h[f]=g;f++}}return h},getSelectedCount:function(){return this._selectedCount},unselectAllRows:function(){this._selectedIndexes=new Array(10000);this._selectedCount=0;e.superclass.unselectAllRows.call(this)},sortColumn:function(h,g){if(this.sortTimeout!=null){return}var f=this;this.sortTimeout=window.setTimeout(function(){f.sortTimeout=null},1000);if(true||this.totalRecords>=this.preloadedRowsPerPage){this._oDataSource=this.infiniteDataSource;this.set("dynamicData",true);var i=this.onDataReturnSetRows;this.onDataReturnSetRows=this._onDataReturnSetRows;e.superclass.sortColumn.call(this,h,g);this.onDataReturnSetRows=i;this._oDataSource=this.partialDataSource;this.set("dynamicData",false)}else{e.superclass.sortColumn.call(this,h,g)}},_onDataReturnSetRows:function(g,f,h){e.superclass.onDataReturnSetRows.call(this,g,f,h);this.curPage=-1;this.setData(0);this.tableBody.scrollTop=0;this.maxScrollTop=this.tableBody.scrollHeight-this.height},deleteRow:function(f){if(YAHOO.lang.isNumber(f)){f=this.getPartialTableIndex(f);if(f==null){return}}e.superclass.deleteRow.call(this,f)},addRow:function(g,f){if(YAHOO.lang.isNumber(f)){f=this.getPartialTableIndex(f);if(f==null){return}}e.superclass.addRow.call(this,g,f)},updateRow:function(g,f){if(YAHOO.lang.isNumber(g)){g=this.getPartialTableIndex(g);if(g==null){return}}e.superclass.updateRow.call(this,g,f)},getCurPageStartIndex:function(){return this.curPage*this.preloadedRowsPerPage},getPartialTableIndex:function(f){var g=this.getCurPageStartIndex();if(YAHOO.lang.isNumber(f)&&(f<g||f>=g+this.preloadedRowsPerPage+this.rowsPerPage)){return null}return f-g},getInfiniteTableIndex:function(f){var g=this.getCurPageStartIndex();return f+g},onDataReturnInitializeTable:function(h,f,i){var g=0;this.curPage=-1;g=mspot.util.parseQueryString(h).startIndex%this.preloadedRowsPerPage;this.setData(g);this.tableBody.scrollTop=0;this.unselectAllRows();this._oAnchorRecordIndex=null},getDataSource:function(){return this.infiniteDataSource},scrollToLine:function(g){if(g>=this.totalRecords){g=this.totalRecords}var f=Math.floor(g/this.preloadedRowsPerPage);this.setData(f);this.tableBody.scrollTop=(g%this.preloadedRowsPerPage)*this.rowHeight},scrollTo:function(g){var h=g;if(h==this.maxScrollTop){this.realScrollTop=h;var f=0}else{this.realScrollTop=h%this.maxScrollTop;var f=Math.min(this.totalPages-1,Math.floor(h/this.maxScrollTop))}this.setData(f);this.tableBody.scrollTop=this.realScrollTop},setData:function(h){if(this.curPage==h){return}this.curPage=h;var i=h*this.preloadedRowsPerPage;var f="startIndex="+i+"&results="+(this.preloadedRowsPerPage+this.rowsPerPage);var j={success:this.updateData,scope:this};var g=this.infiniteDataSource.sendRequest(f,j)},_checkAutoPlay:function(f){if(Settings.AUTO_PLAY){this.fireEvent("itemDoubleClick",f[0])}},updateData:function(g,j,h){this.partialDataSource.liveData={items:j.results,length:j.results.length};this.partialDataSource.sendRequest(g,{success:function(){arguments[1]=j;e.superclass.onDataReturnInitializeTable.apply(this,arguments);this.tableBody.scrollTop=this.realScrollTop},argument:this.getState(),scope:this},this);if(this.totalRecords!=j.meta.totalRecords){this.totalRecords=j.meta.totalRecords;this.totalPages=Math.max(1,Math.ceil((this.totalRecords-this.rowsPerPage)/this.preloadedRowsPerPage));this.endlessContent.style.height=(this.rowHeight*this.totalRecords)+"px";this.setHeight(this.height)}for(var f=0;f<this._selectedIndexes.length;f++){if(this._selectedIndexes[f]==1){this._selectRow(f)}}},setHeight:function(f){this.height=f;this.set("height",f+"px");this.rowsPerPage=Math.floor(f/this.rowHeight);this.endlessContainer.style.height=f+"px";this.maxScrollTop=this.tableBody.scrollHeight-this.height;if(this.totalRecords<=this.rowsPerPage){this.endlessContainer.style.display="none";this.tableBody.style.overflow="hidden"}else{this.endlessContainer.style.display="block";this.tableBody.style.overflow=""}},setWidth:function(f){this.tableBody.style.width=(f+60)+"px"},selectRow:function(f){if(YAHOO.lang.isNumber(f)){if(this._selectedIndexes[f]!=1){this._selectedCount++}this._selectedIndexes[f]=1;f=this.getPartialTableIndex(f);if(f==null){return}}else{f=this.getRecordIndex(f);if(f==null){return}var g=this.getInfiniteTableIndex(f);if(this._selectedIndexes[g]!=1){this._selectedCount++}this._selectedIndexes[g]=1}f=this.getTrEl(f);e.superclass.selectRow.call(this,f)},_selectRow:function(f){if(YAHOO.lang.isNumber(f)){f=this.getPartialTableIndex(f);if(f==null){return}}else{f=this.getRecordIndex(f);if(f==null){return}}f=this.getTrEl(f);e.superclass.selectRow.call(this,f)},unselectRow:function(f){if(YAHOO.lang.isNumber(f)){if(this._selectedIndexes[f]!=null){this._selectedCount--}this._selectedIndexes[f]=null;f=this.getPartialTableIndex(f);if(f==null){return}}else{f=this.getRecordIndex(f);if(f==null){return}var g=this.getInfiniteTableIndex(f);if(this._selectedIndexes[g]!=null){this._selectedCount--}this._selectedIndexes[g]=null}if(f==null){return}f=this.getTrEl(f);if(d.hasClass(f,"empty")){return}e.superclass.unselectRow.call(this,f)},_handleStandardSelectionByMouse:function(g){var f=g.target;var j=this.getTrEl(f);if(j){var m=g.event;var p=m.shiftKey;var l=m.ctrlKey||((navigator.userAgent.toLowerCase().indexOf("mac")!=-1)&&m.metaKey);var o=this.getRecord(j);var h=this.getInfiniteTableIndex(this._oRecordSet.getRecordIndex(o));var n=this._getSelectionAnchor();var k;if(p&&l){if(n){if(this.isSelected(n.record)){if(n.recordIndex<h){for(k=n.recordIndex+1;k<=h;k++){if(!this.isSelected(k)){this.selectRow(k)}}}else{for(k=n.recordIndex-1;k>=h;k--){if(!this.isSelected(k)){this.selectRow(k)}}}}else{if(n.recordIndex<h){for(k=n.recordIndex+1;k<=h-1;k++){if(this.isSelected(k)){this.unselectRow(k)}}}else{for(k=h+1;k<=n.recordIndex-1;k++){if(this.isSelected(k)){this.unselectRow(k)}}}this.selectRow(o)}}else{this._oAnchorRecord=o;this._oAnchorRecordIndex=h;if(this.isSelected(o)){this.unselectRow(o)}else{this.selectRow(o)}}}else{if(p){this.unselectAllRows();if(n){if(n.recordIndex<h){for(k=n.recordIndex;k<=h;k++){this.selectRow(k)}}else{for(k=n.recordIndex;k>=h;k--){this.selectRow(k)}}}else{this._oAnchorRecord=o;this._oAnchorRecordIndex=h;this.selectRow(o)}}else{if(l){this._oAnchorRecord=o;this._oAnchorRecordIndex=h;if(this.isSelected(o)){this.unselectRow(o)}else{this.selectRow(o)}}else{this._handleSingleSelectionByMouse(g);this._oAnchorRecord=o;this._oAnchorRecordIndex=h;return}}}}},_getSelectionAnchor:function(f){var g=e.superclass._getSelectionAnchor.call(this,f);if(g===null){g={}}if(this._oAnchorRecordIndex!=null){g.recordIndex=this._oAnchorRecordIndex}return g}});mspot.ui.InfiniteDataTable=e}})();
/* ui/InfiniteSongsTable.js */
(function(){var f=YAHOO.util.Dom,g=mspot.Settings,c=YAHOO.util.Event,h=mspot.model.Playlist,e=mspot.app.PlaylistFactory,b=mspot.util;var d={};var a=function(m,i,j,k){console.log("InfiniteSongsTable constructor");a.DEFAULT_COLUMNS=[{key:"id",label:"",sortable:false,width:15,formatter:a.formatFirst},{key:"lib.title",label:_("Song"),sortable:true,width:100,formatter:a.formatTitle},{key:"lib.duration",label:_("Time"),sortable:true,width:36,formatter:a.formatTime},{key:"lib.artist",label:_("Artist"),sortable:true,width:100,formatter:a.formatArtist},{key:"lib.album",label:_("Album"),sortable:true,width:100,formatter:a.formatAlbum},{key:"lib.sync_state",label:_("Upload Status"),sortable:true,width:91,formatter:a.formatSyncStatus},{key:"lib.rating",label:_("Rating"),width:65,sortable:true,formatter:a.formatRating},{key:"",label:"",width:20}];a.PLAYLIST_COLUMNS=[{key:"id",label:"",sortable:false,width:15,formatter:a.formatFirst},{key:"lib.title",label:_("Song"),sortable:true,width:100,formatter:a.formatTitle},{key:"lib.duration",label:_("Time"),sortable:true,width:36,formatter:a.formatTime},{key:"lib.artist",label:_("Artist"),sortable:true,width:100,formatter:a.formatArtist},{key:"lib.album",label:_("Album"),sortable:true,width:100,formatter:a.formatAlbum},{key:"lib.sync_state",label:_("Upload Status"),sortable:true,width:91,formatter:a.formatSyncStatus},{key:"lib.rating",label:_("Rating"),width:65,sortable:true,formatter:a.formatRating},{key:"",label:"",width:20}];a.FAVORITE_COLUMNS=[{key:"id",label:"",sortable:false,width:15,formatter:a.formatFirst},{key:"lib.title",label:_("Song"),sortable:true,width:100,formatter:a.formatTitle},{key:"lib.artist",label:_("Artist"),sortable:true,width:100,formatter:a.formatText},{key:"lib.album",label:_("Album"),sortable:true,width:100,formatter:a.formatText},{key:"lib.device",label:_("From Device"),sortable:true,width:100,formatter:a.formatText},{key:"lib.purchase",label:_("Purchase"),sortable:false,width:100,formatter:a.formatPurchase},{key:"",label:"",width:20}];a.ERROR_COLUMNS=[{key:"id",label:"",sortable:false,width:15,formatter:a.formatFirst},{key:"lib.title",label:_("Song"),sortable:true,width:100,formatter:a.formatTitle},{key:"lib.artist",label:_("Artist"),sortable:true,width:100,formatter:a.formatText},{key:"lib.album",label:_("Album"),sortable:true,width:100,formatter:a.formatText},{key:"lib.sync_state",label:_("Upload Status"),sortable:true,width:91,formatter:a.formatSyncStatus},{key:"",label:"",width:20}];this.playlistId=-1;if(typeof k!=="undefined"){this.playlistId=k}a.LOADING_ITEM={id:-1,lib:{title:_("Loading...")}};if(typeof j==="undefined"){this.columns=a.DEFAULT_COLUMNS}else{this.columns=j}if(typeof mspot.ui.DragDropRow=="undefined"){mspot.ui.initDragDropRow()}if(typeof mspot.ui.InfiniteDataTable=="undefined"){mspot.ui.initInfiniteDataTable()}this._preloadedRowsPerPage=70;this._itemsPerPage=10;this._element=document.createElement("div");this._element.id=m;this._element.className="songs-table";var l=new Date();this._startUpTime=parseInt(l.getTime()/1000)-1000000000;a.superclass.constructor.call(this,this._element,i||{});this.dataSource=new YAHOO.util.FunctionDataSource(this._dataSourceFunction);this.dataSource.makeConnection2=this.dataSource.makeConnection;this.dataSource.makeConnection=mspot.bind(this._dataSourceFunction2,this);this.dataSource.scope=this;this.dataSource.responseType=YAHOO.util.DataSource.TYPE_JSON;this.dataSource.responseSchema={resultsList:"items",fields:["id","libId","lib.sync_state","lib.title","lib.artist","lib.genre","lib.album","lib.duration","lib.contenturi","lib.rating","lib.sync_at","state","lib.sync_order","lib.device","lib.purchase"],metaFields:{totalRecords:"length"}}};a.dragDropRows=d;a.ROW_HEIGHT=17;a.formatFirst=function(j,i,l,m){var k="";m=i.getData();if(i&&m){if(m["lib.sync_state"]==h.SYNC_STATE_SYNCING){k='<div class="syncing"></div>'}else{if(m.state){k='<div class="state'+m.state+'"></div>'}}}j.innerHTML=k};a.formatTitle=function(j,i,l,m){var k="";if(m){k='<div class="title">'+m+'</div><div class="menu-arrow"></div>'}j.innerHTML=k};a.formatArtist=function(j,i,l,m){var k="";if(m){k='<div class="title">'+m+'</div><div class="menu-arrow-artist"></div>'}j.innerHTML=k};a.formatAlbum=function(j,i,l,m){var k="";if(m){k='<div class="title">'+m+'</div><div class="menu-arrow-album"></div>'}j.innerHTML=k};a.formatTime=function(k,j,m,n){var i;if(!n){i=""}else{var l=n%60;i=Math.floor(n/60)+":"+((l>9)?l:"0"+l.toString())}k.innerHTML=i};a.formatPurchase=function(j,i,l,m){var k=m;if(!m){result=""}else{result="<img title='itunes' class='purchase itunes' src='images/itunes_icon.png' alt='"+m.replace(/,/g," ")+"' /> &nbsp;<span class='purchase separator'>&nbsp;</span> <img title='amazon' class='purchase amazon' src='images/amazon_icon.png' alt='"+m+"' />"}j.innerHTML=result};a.formatRating=function(k,j,n,o){var m="";if(!mspot.isUndefined(o)){o=Math.round(o/20);for(var l=0;l<o;l++){m+='<div class="star"></div>'}}k.innerHTML=m};a.formatSyncStatus=function(j,i,l,n){var k="";if(!mspot.isUndefined(n)){var m=i.getData();if(n==h.SYNC_STATE_SYNCED){if(m["lib.sync_at"]){k=m["lib.sync_at"]}else{k=_("Synced")}}else{if(n==h.SYNC_STATE_SYNCING){k=_("Uploading")}else{if(n==h.SYNC_STATE_PERM_DELETED){k=_("Deleted")}else{if(n==h.SYNC_STATE_DELETED){k=_("Unloaded")}else{if(n==h.SYNC_STATE_NOT_SYNCED&&m["lib.sync_order"]<8888888888){k=_("Prioritized")}else{if(n==h.SYNC_STATE_NOT_SYNCED){k=_("Pending")}else{if(n==h.SYNC_STATE_ERR_TRANSCODING||n==h.SYNC_STATE_ERR_DURATION){k='<a href="/music/player?noFirstPopup#page=Help&args=Help%7Chelp%7C11" target="_blank">'+_("Upload Failed")+"</a>"}else{if(n==h.SYNC_STATE_ERR_EXTENSION){k=_("Unsupported file type")}else{errorLog("Invalid song state: "+n+"; sync_order: "+m["lib.sync_order"]);errorLog(i);k=_("pending")}}}}}}}}}j.innerHTML=k};a.formatText=function(j,i,l,m){var k="";if(m){k="<div>"+m+"</div>"}j.innerHTML=k};a.EMPTY_ITEM={id:-2};a.generateRequest=function(j,m){console.log("infinitesongstable::generaterequest");j=j||{pagination:null,sortedBy:null};var l=(j.sortedBy)?encodeURIComponent(j.sortedBy.key):null;var i=(j.sortedBy&&j.sortedBy.dir===YAHOO.widget.DataTable.CLASS_DESC)?"desc":"asc";var n=(j.pagination)?j.pagination.recordOffset:0;var k=(j.pagination)?j.pagination.rowsPerPage:null;return"startIndex="+n+((k!==null)?"&results="+k:"")+(l?("&sort="+l+"&dir="+i):"")};a.formatRow=function(j,i){var l=i.getData(),k;f.removeClass(j,"empty");f.removeClass(j,"loading");f.removeClass(j,"not-synced");f.removeClass(j,"synced");if(l.id==a.EMPTY_ITEM.id){k="empty"}else{if(l.id==a.LOADING_ITEM.id){k="loading"}else{k=((l["lib.sync_state"]==h.SYNC_STATE_SYNCED)?"synced":"not-synced")}}f.addClass(j,k);return true};YAHOO.extend(a,YAHOO.util.Element,{_playlist:null,_element:null,dataTable:null,_startUpTime:0,_isIE:(/msie/).test(navigator.userAgent.toLowerCase()),render:function(i){i=f.get(i);i.appendChild(this._element);this.dataTable=new mspot.ui.InfiniteDataTable(this._element,this.columns,this.dataSource,{initialRequest:"startIndex=0&results="+this._itemsPerPage+"&sort=",generateRequest:a.generateRequest,formatRow:a.formatRow,height:"500px",width:"100%",rowHeight:a.ROW_HEIGHT+"px",preloadedRowsPerPage:this._preloadedRowsPerPage,rowsPerPage:this._itemsPerPage,MSG_EMPTY:""});if(!mspot.Settings.SLOW){this.dataTable.on("rowMouseoverEvent",this.dataTable.onEventHighlightRow);this.dataTable.on("rowMouseoutEvent",this.dataTable.onEventUnhighlightRow)}if(this.playlistId===h.FAVORITE_ID){this.dataTable.on("click",this._onPurchaseClick,this,true)}else{this.dataTable.on("rowClickEvent",this.dataTable.onEventSelectRow);this.dataTable.on("rowClickEvent",this._onSongClick,this,true);if((navigator&&navigator.userAgent)&&(navigator.userAgent.match(/iPad/)||navigator.userAgent.match(/iPhone/))){this.dataTable.on("rowClickEvent",this.onSongDoubleClick,this,true)}this.dataTable.on("rowDblclickEvent",this.onSongDoubleClick,this,true)}this.dataTable.on("initEvent",this._addRowListeners,this,true);var j=this.dataTable.getTbodyEl();var k=function(m,n){for(var l in m){if(m.hasOwnProperty(l)){if(m[l].fn==n){return true}}}return false};if(this._isIE){c.on(j,"click",this._addIEMenuListeners,this,true)}else{if(!k(c.getListeners(j,"click"),this._onMenuClick)){c.on(j,"click",this._onMenuClick,this,true)}}},_addIEMenuListeners:function(){var i=this.dataTable.getTbodyEl();var j=f.getElementsByClassName("menu-arrow","div",i);c.purgeElement(j);c.on(j,"click",this._onSongMenuClick,this,true);var l=f.getElementsByClassName("menu-arrow-artist","div",i);c.purgeElement(l);c.on(l,"click",this._onArtistMenuClick,this,true);var k=f.getElementsByClassName("menu-arrow-album","div",i);c.purgeElement(k);c.on(k,"click",this._onAlbumMenuClick,this,true)},_removeTableListeners:function(){var k=["rowMouseoverEvent","rowMouseoutEvent","rowClickEvent","rowDblclickEvent","rowUpdateEvent","rowAddEvent","initEvent"];for(var j in k){if(this.dataTable.hasEvent(k[j])){this.dataTable.unsubscribeAll(k[j])}}tbody=this.dataTable.getTbodyEl();if(!this._isIE){c.purgeElement(tbody,true)}},_addRowListeners:function(k){try{var m,p,n=this.dataTable.getTbodyEl().rows;var l=["moveItem","addToPlaylist"];for(var j in d){if(d[j]){d[j].unreg();c.purgeElement(document.getElementById(j));for(var m in l){if(d[j].hasEvent(l[m])){d[j].unsubscribeAll(l[m])}}delete d[j]}}for(m=0;m<n.length;m++){p=n[m].id;if(!f.hasClass(n[m],"empty")&&!f.hasClass(n[m],"loading")){d[p]=new mspot.ui.DragDropRow(p,{dataTable:this.dataTable,allowMove:this._allowItemReorder()});d[p].subscribe("moveItem",this._onMoveItem,this,true);d[p].subscribe("moveItem",this._addRowListeners,this,true);d[p].subscribe("addToPlaylist",this._onDragItemToMenu,this,true)}}}catch(o){errorLog("_addRowListeners: "+o)}},destroy:function(){this._removeTableListeners();if(!this._isIE&&this.dataTable){this.dataTable.destroy()}if(this._playlist){this._removePlaylistListeners(this._playlist)}},setHeight:function(i){this.dataTable.setHeight(i);var j=Math.ceil((i-(a.ROW_HEIGHT))/a.ROW_HEIGHT);this._itemsPerPage=j},setWidth:function(k){console.log("InfiniteSongsTable::setWidth()");var m=this.dataTable;m.setWidth(k);var l=35;var i=213;var n=170;var j=Math.round((k+l-n-i)/3);m.setColumnWidth(m.getColumn(1),j);m.setColumnWidth(m.getColumn(3),j);m.setColumnWidth(m.getColumn(4),j)},showLoading:function(){f.addClass(this._element,"loading-table")},hideLoading:function(){f.removeClass(this._element,"loading-table")},setPlaylist:function(i){if(this._playlist==i){return}if(this._playlist){this._playlist.sortby=this.dataTable.get("sortedBy")}var j=null;if(i.sortBy){j=i.sortBy}this.dataTable.set("sortedBy",j);if(this._playlist){this._removePlaylistListeners(this._playlist);e.unregister(this._playlist)}e.register(i);this._playlist=i;this._addPlaylistListeners(i);if(!this._playlist.isLoading()){this.refreshData()}else{this.showLoading()}},unloadPlaylist:function(){e.unregister(this._playlist);this._playlist=null;this.redraw()},_addPlaylistListeners:function(i){i.subscribe(h.ITEMS_SET_EVENT,this.onPlaylistItemsSet,this,true);i.subscribe(h.ITEM_CHANGE_EVENT,this.onPlaylistItemChange,this,true);i.subscribe(h.ITEM_ADD_EVENT,this.onPlaylistItemAdd,this,true);i.subscribe(h.ITEM_DELETE_EVENT,this.onPlaylistItemDelete,this,true);i.subscribe(h.ITEM_MOVE_EVENT,this.onPlaylistItemMove,this,true)},_removePlaylistListeners:function(i){i.unsubscribe(h.ITEMS_SET_EVENT,this.onPlaylistItemsSet,this);i.unsubscribe(h.ITEM_CHANGE_EVENT,this.onPlaylistItemChange,this);i.unsubscribe(h.ITEM_ADD_EVENT,this.onPlaylistItemAdd,this);i.unsubscribe(h.ITEM_DELETE_EVENT,this.onPlaylistItemDelete,this);i.unsubscribe(h.ITEM_MOVE_EVENT,this.onPlaylistItemMove,this)},onPlaylistItemsSet:function(i){console.log("InfiniteSongsTable::onPlaylistItemsSet()");var j=this._playlist.getId();if(this._waitingCallback){this._waitingCallback();this._waitingCallback=null}else{this.refreshData()}},onPlaylistItemChange:function(i){if(!this._playlist.getInitialized()){return}if(i.item==h.LOADING_ITEM){return}this.dataTable.updateRow(i.index,this._flattenItem(i.item))},onPlaylistItemAdd:function(i){if(this._playlist.getInitialized()){this.dataTable.addRow(this._flattenItem(i.item),i.index)}},onPlaylistItemDelete:function(i){if(this._playlist.getInitialized()){this.dataTable.deleteRow(i.index)}},onPlaylistItemMove:function(i){if(this._playlist.getInitialized()){this.dataTable.deleteRow(i.srcIndex);this.dataTable.addRow(this._flattenItem(i.item),i.destIndex)}},_onMoveItem:function(i){i.srcIndex+=this.dataTable.getCurPageStartIndex();i.destIndex+=this.dataTable.getCurPageStartIndex();if(i.srcIndex<i.destIndex){i.destIndex--}var j=this._playlist.getItem(i.srcIndex);i.destIndex=Math.min(i.destIndex,this._playlist.getLength()-1);this._playlist.moveItem(i.srcIndex,i.destIndex)},_onDragItemToMenu:function(i){this.fireEvent("dragItemToMenu",i)},redraw:function(){},refreshData:function(m){m=mspot.isUndefined(m)?0:m;if(this._playlist==null){return}var j=this._playlist.getItems();if(this.dataTable){var k=this._playlist.getSorting();var i="";var n={dir:null,key:null};if(k.order){i+="&sort="+k.order;n.key=k.order}if(k.dir){i+="&dir="+k.dir;n.dir=k.dir}var l=0;this.dataTable.getDataSource().sendRequest("startIndex="+m+"&results="+this._itemsPerPage+i,{success:this.dataTable.onDataReturnInitializeTable,scope:this.dataTable,argument:{sortedBy:n,totalRecords:j.length,rowsPerPage:this._itemsPerPage,recordOffset:m}});if(m!=0||l!=m){this.dataTable.scrollToLine(m)}}},_checkAutoPlay:function(i){if(g.AUTO_PLAY){this.fireEvent("itemDoubleClick",i[0])}},_dataSourceFunction:function(o){if(this._playlist){var q=b.parseQueryString(o),k=[],p=parseInt(q.startIndex),j=Math.min(p+parseInt(q.results),this._playlist.getLength());var l=false;for(var m=p;m<j;m++){var n=this._playlist.getItem(m);if(n==h.LOADING_ITEM){l=true;k.push(a.LOADING_ITEM)}else{if(n==null){k.push(a.EMPTY_ITEM)}else{l=true;k.push(n)}}}if(l||this._playlist.getLength()==0){this.hideLoading()}return{items:k,length:this._playlist.getLength()}}else{var k=[];for(var m=0;m<this._itemsPerPage;m++){k.push(a.EMPTY_ITEM)}return{items:k,length:this._itemsPerPage}}},_dataSourceFunction2:function(l,j,k){var o=this.dataSource;var i=function(){o.makeConnection2(l,j,k)};var p=false;if(this._playlist){var n=b.parseQueryString(l);var m=this._playlist.getSorting();if(n.sort){if(n.sort=="id"){delete n.sort;delete n.dir}}if(("sort" in n&&m.order!=n.sort)||("dir" in n&&m.dir!=n.dir)){this.showLoading();this._playlist.setSorting({order:n.sort,dir:n.dir});p=true;this._waitingCallback=i}}if(!p){this.dataSource.makeConnection2(l,j,k)}},getSelectedItems:function(){var j=[];var m=this.dataTable.getSelectedIndexes();for(var k=0;k<m.length;k++){var l=this._playlist.getItem(m[k]);j.push(l)}return j},clear:function(){var i=this.dataTable.getRecordSet().getLength();this.dataTable.deleteRows(0,i)},onSongDoubleClick:function(i){var k=this.dataTable.getRecord(i.target).getData();if(k["lib.sync_state"]!=20){if(!this._checkStorage(k)){return}if(!mspot.Session.getValue("no_sync_popup")){var j=[{text:"OK",handler:function(){if(YAHOO.util.Dom.get("do_not_show_sync_popup").checked){mspot.Session.setValue("no_sync_popup",true)}this.cancel()}}];webRadio.showDialogBox(_("Information"),'<div style="padding: 10px 20px 17px;">'+_("This song will be synced next, and can be played once that's done.")+'</div><div style="padding: 0 5px;"><input type="checkbox" id="do_not_show_sync_popup" name="no_firsttime_popup" />&nbsp;<label for="no_firsttime_popup">'+_("Do not show this message again")+"</label></div>",j)}this._onMenuForceSyncOrderSong()}else{if(k.id!=a.EMPTY_ITEM.id){this.fireEvent("itemDoubleClick",k)}}},successPurchase:function(i){console.log("InfiniteSongsTable::_successPurchase()");window.open(i);setTimeout(function(){mspot.ui.InfiniteSongsTable._inRequest=false},1000)},failurePurchase:function(){console.log("InfiniteSongsTable::_failurePurchase()");var i=[{text:"OK",handler:function(){this.cancel()}}];webRadio.showDialogBox(_("Information"),_('<div style="padding: 10px 20px 17px;">Sorry, there was no match for this song.</div>'),i);setTimeout(function(){mspot.ui.InfiniteSongsTable._inRequest=false},1000)},_onPurchaseClick:function(k){console.log("InfiniteSongsTable::onPurchaseClick()");if(typeof mspot.ui.InfiniteSongsTable._inRequest!=="undefined"&&mspot.ui.InfiniteSongsTable._inRequest===true){setTimeout(function(){mspot.ui.InfiniteSongsTable._inRequest=false},1000);return}mspot.ui.InfiniteSongsTable._inRequest=true;var j=this.successPurchase,n=this.failurePurchase,m=this.failurePurchase;var l=c.getTarget(k);var i=null;switch(l.title){case"itunes":i=new mspot.api.ItunesService();n=function(){var o=l.alt.substring(0,l.alt.lastIndexOf(" "));if(o!==""){i.search(o,j,m)}};break;case"amazon":i=new mspot.api.AmazonService();break;default:return false}i.search(l.alt,j,n)},_onSongClick:function(i){console.log("InfiniteSongsTable::_onSongClick()");var j=c.getTarget(i);if(this._songMenu){this._songMenu.destroy();this._songMenu=null}if(this._artistMenu){this._artistMenu.destroy();this._artistMenu=null}if(this._albumMenu){this._albumMenu.destroy();this._albumMenu=null}if(webRadio._page._menuManager._menuPanel._contextPlaylistMenu._menu){webRadio._page._menuManager._menuPanel._contextPlaylistMenu._menu.hide()}if(webRadio._page._menuManager._menuPanel._contextRemixPlaylistMenu._menu){webRadio._page._menuManager._menuPanel._contextRemixPlaylistMenu._menu.hide()}},_onMenuClick:function(i){var j=c.getTarget(i);if(f.hasClass(j,"menu-arrow")){this._onSongMenuClick(i)}else{if(f.hasClass(j,"menu-arrow-artist")){this._onArtistMenuClick(i)}else{if(f.hasClass(j,"menu-arrow-album")){this._onAlbumMenuClick(i)}}}},_onSongMenuClick:function(y){console.log("InfiniteSongsTable::_onSongMenuClick()");var r=c.getTarget(y);this._onSongClick(y);var n=f.createElement("div");n.className="ctpanel";this._element.appendChild(n);if(this._songMenu){this._songMenu.destroy()}var m=new YAHOO.widget.Menu(n,{fixedcenter:true});this._songMenu=m;this._songMenuRow=f.getAncestorByTagName(r,"tr");this._selectedSong=this.dataTable.getRecord(this._songMenuRow).getData();var j=[];var t=this._playlist.isEditable();var p=webRadio.getCurrentPlaylist();var u=p&&p.isEditable();var w=this._playlist.getLibrary().getItem(this._selectedSong.libId);if(typeof this._selectedSong["lib.sync_state"]==="undefined"){j.push({text:_("Delete"),onclick:{fn:this._onMenuDeleteFavSong,scope:this}})}else{if(typeof this._selectedSong["lib.sync_state"]!==undefined&&this._selectedSong["lib.sync_state"]==h.SYNC_STATE_PERM_DELETED){j.push({text:_("Upload"),onclick:{fn:this._onMenuUnDeleteSong,scope:this}})}else{if(typeof this._selectedSong["lib.sync_state"]!==undefined&&this._selectedSong["lib.sync_state"]==h.SYNC_STATE_ERR_TRANSCODING){j.push({text:_("Delete"),onclick:{fn:this._onMenuDeleteSong,scope:this}})}else{if(this._selectedSong["lib.sync_state"]==h.SYNC_STATE_SYNCED||w.sync_order<1000000000){j.push({text:_("Unload"),onclick:{fn:this._onMenuUnsyncSong,scope:this}})}else{j.push({text:_("Upload"),onclick:{fn:this._onMenuSyncOrderSong,scope:this}})}var v=[];if(webRadio._page instanceof mspot.page.PlayerPage){var q=webRadio._page._menuManager._menu._items;for(var o=0;o<q.length;o++){if(q[o].formattype=="http/playlist"&&q[o].id!=this._playlist._id){v.push({text:q[o].title,onclick:{fn:this._onMenuAddToPlaylist,obj:q[o].id,scope:this}})}}}var l=[{text:_("New Playlist"),onclick:{fn:this._onMenuCreatePlaylist,scope:this}}];j.push({text:_("Add to Playlist"),submenu:{id:"addSongsToPlaylist",itemdata:[v,l]}});if(t){j.push({text:_("Remove from Playlist"),onclick:{fn:this._onMenuRemoveSong,scope:this}})}j.push({text:_("Delete"),onclick:{fn:this._onMenuDeleteSong,scope:this}})}}}this._songMenu.clearContent();this._songMenu.addItems(j);this._songMenu.render();var x=f.getRegion(r);this._songMenu.show();this._songMenu.moveTo(x.left,x.top+x.height);var k=y.ctrlKey||((navigator.userAgent.toLowerCase().indexOf("mac")!=-1)&&y.metaKey);if(!(y.shiftKey||k)){var s=this.dataTable.getSelectedRows();for(var o=0;o<s.length;o++){this.dataTable.unselectRow(s[o])}}this.dataTable.selectRow(this._songMenuRow);c.stopEvent(y)},_onArtistMenuClick:function(w){var s=c.getTarget(w);this._onSongClick(w);var o=f.createElement("div");o.className="ctpanel";this._element.appendChild(o);var n=new YAHOO.widget.Menu(o,{fixedcenter:true});this._artistMenu=n;this._artistMenuRow=f.getAncestorByTagName(s,"tr");var p=this.dataTable.getRecord(this._artistMenuRow).getData();var v=0;if(p["lib.sync_state"]==h.SYNC_STATE_PERM_DELETED){v=1}var j=[];var k=[];if(webRadio._page instanceof mspot.page.PlayerPage){var r=webRadio._page._menuManager._menu._items;for(var q=0;q<r.length;q++){if(r[q].formattype=="http/playlist"&&r[q].id!=this._playlist._id){k.push({text:r[q].title,onclick:{fn:this._onMenuBatchOp2,obj:{type:"artist",action:"addToPlaylist",playlist:r[q].id},scope:this}})}}}var m=[{text:_("New Playlist"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"artist",action:"createPlaylist"},scope:this}}];j.push({text:_("Upload Artist"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"artist",action:"upload",inclDel:v},scope:this}});j.push({text:_("Unload Artist"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"artist",action:"unload"},scope:this}});j.push({text:_("Add Artist to Playlist"),submenu:{id:"addArtistToPlaylist",itemdata:[k,m]}});j.push({text:_("Delete Artist"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"artist",action:"delete"},scope:this}});this._artistMenu.clearContent();this._artistMenu.addItems(j);this._artistMenu.render();var u=f.getRegion(s);this._artistMenu.show();this._artistMenu.moveTo(u.left,u.top+u.height);var l=w.ctrlKey||((navigator.userAgent.toLowerCase().indexOf("mac")!=-1)&&w.metaKey);if(!(w.shiftKey||l)){var t=this.dataTable.getSelectedRows();for(var q=0;q<t.length;q++){this.dataTable.unselectRow(t[q])}}this.dataTable.selectRow(this._artistMenuRow);c.stopEvent(w)},_onAlbumMenuClick:function(w){var s=c.getTarget(w);this._onSongClick(w);var o=f.createElement("div");o.className="ctpanel";this._element.appendChild(o);var m=new YAHOO.widget.Menu(o,{fixedcenter:true});this._albumMenu=m;this._albumMenuRow=f.getAncestorByTagName(s,"tr");var n=this.dataTable.getRecord(this._albumMenuRow).getData();var v=0;if(n["lib.sync_state"]==h.SYNC_STATE_PERM_DELETED){v=1}var j=[];var p=[];if(webRadio._page instanceof mspot.page.PlayerPage){var r=webRadio._page._menuManager._menu._items;for(var q=0;q<r.length;q++){if(r[q].formattype=="http/playlist"&&r[q].id!=this._playlist._id){p.push({text:r[q].title,onclick:{fn:this._onMenuBatchOp2,obj:{type:"album",action:"addToPlaylist",playlist:r[q].id},scope:this}})}}}var l=[{text:_("New Playlist"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"album",action:"createPlaylist"},scope:this}}];j.push({text:_("Upload Album"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"album",action:"upload",inclDel:v},scope:this}});j.push({text:_("Unload Album"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"album",action:"unload"},scope:this}});j.push({text:_("Add Album to Playlist"),submenu:{id:"addAlbumToPlaylist",itemdata:[p,l]}});j.push({text:_("Delete Album"),onclick:{fn:this._onMenuBatchOp2,obj:{type:"album",action:"delete"},scope:this}});this._albumMenu.clearContent();this._albumMenu.addItems(j);this._albumMenu.render();var u=f.getRegion(s);this._albumMenu.show();this._albumMenu.moveTo(u.left,u.top+u.height);var k=w.ctrlKey||((navigator.userAgent.toLowerCase().indexOf("mac")!=-1)&&w.metaKey);if(!(w.shiftKey||k)){var t=this.dataTable.getSelectedRows();for(var q=0;q<t.length;q++){this.dataTable.unselectRow(t[q])}}this.dataTable.selectRow(this._albumMenuRow);c.stopEvent(w)},_onMenuBatchOp2:function(A,u,s){console.log("InfiniteSongsTable::_onMenuBatchOp2");var w=s.type;var n=s.action;if(n=="upload"&&!this._checkStorage(null)){return}var l=this.getSelectedItems();var t=[];var m=[];var y=0;if(s.inclDel!=undefined){y=s.inclDel}var x;for(var r in l){if(w=="album"){var q=l[r].lib.album}else{if(w=="artist"){var q=l[r].lib.artist}else{errorLog("Cannot recognize this type: "+w);return}}if(x==undefined){x=q}var k=unescape(encodeURIComponent(q));var z=false;for(var p in t){if(t[p]==k){z=true;break}}if(z==false){t.push(k)}m.push(q)}if(t.length<=0){return}var o=new mspot.api.MediaLibraryService();var v=t.join(String.fromCharCode(0));o.getItems(w,v,y,function(B){if(B.success){l=B.songs;if(l.length>0&&n=="createPlaylist"){webRadio.createPlaylist(l,x);return}if(n=="addToPlaylist"){var D=new mspot.api.PlaylistService()}else{var G=this._playlist.getLibrary();var H=new Date()}for(var C in l){if(n=="addToPlaylist"){this._onMenuAddToPlaylist("type","args",s.playlist,[l[C]],D)}else{var F=l[C].id;var E={id:F};switch(n){case"upload":if(l[C].sync_state==h.SYNC_STATE_DELETED){E.sync_state=h.SYNC_STATE_NOT_SYNCED}if(l[C].deleted==1){E.sync_state=h.SYNC_STATE_NOT_SYNCED;E.deleted=0}E.sync_order=parseInt(H.getTime()/1000)-1000000000;if(w=="artist"){var i=new mspot.api.UploadEditorService();i.addArtists(m)}break;case"unload":E.sync_state=h.SYNC_STATE_DELETED;E.sync_order=8888888888;if(w=="artist"){var i=new mspot.api.UploadEditorService();i.removeArtists(m)}break;case"delete":E.sync_state=h.SYNC_STATE_PERM_DELETED;E.sync_order=8888888888;E.deleted=1;break;default:errorLog("This action "+n+" is not supported");return}G.changeItem(F,E)}}}},this)},_onMenuBatchOp:function(y,s,p){var w=p.type;var m=p.action;var k=this.getSelectedItems();var q=[];for(var r in k){if(w=="album"){var o=k[r].lib.album}else{if(w=="artist"){var o=k[r].lib.artist}else{errorLog("Cannot recognize this type: "+w);return}}var x=false;for(var n in q){if(q[n]==o){x=true;break}}if(x==false){q.push(o)}}var v=this._playlist.getLibrary();var u=new Date();if(m=="addToPlaylist"){service=new mspot.api.PlaylistService()}for(var r in v._items){if(w=="album"){var l=v._items[r].album}else{if(w=="artist"){var l=v._items[r].artist}}for(var n in q){if(l==q[n]){if(m=="addToPlaylist"){this._onMenuAddToPlaylist("type","args",p.playlist,[v._items[r]],service)}else{var t=v._items[r].id;var z={id:t};switch(m){case"upload":if(v._items[r].sync_state==h.SYNC_STATE_DELETED){z.sync_state=h.SYNC_STATE_NOT_SYNCED}z.sync_order=parseInt(u.getTime()/1000)-1000000000;break;case"unload":z.sync_state=h.SYNC_STATE_DELETED;z.sync_order=8888888888;break;case"delete":z.sync_state=h.SYNC_STATE_PERM_DELETED;z.sync_order=8888888888;z.deleted=1;break;default:errorLog("This action "+m+" is not supported");return}v.changeItem(t,z)}break}}}},_onMenuAddToPlaylist:function(l,k,o,n,j){console.log("InfiniteSongsTable::_onMenuAddToPlayList()");if(typeof n==="undefined"){var n=this.getSelectedItems()}if(typeof j==="undefined"){var j=new mspot.api.PlaylistService()}for(var m=0;m<n.length;m++){j.addItem(o,null,null,{libId:n[m].libId})}},_onMenuRemoveSong:function(){var l=this.dataTable.endlessContainer.scrollTop;var o=l/this.dataTable.rowHeight;var m=this.getSelectedItems();for(var k=0;k<m.length;k++){var n=m[k].id;var j=this._playlist.indexOf({id:n});this._playlist.removeItemAt(j);if(j<o){l-=this.dataTable.rowHeight}}this.dataTable.unselectAllRows();this.refreshData();this.dataTable.scrollTo(l)},_onMenuDeleteFavSong:function(){console.log("InfiniteSongsTable::_onMenuDeleteFavSong()");var o=this._playlist.getLibrary();var l=this.dataTable.endlessContainer.scrollTop;var q=l/this.dataTable.rowHeight;var m=this.getSelectedItems();for(var k=0;k<m.length;k++){var p=m[k].id;var j=this._playlist.indexOf({id:p});var n=m[k].libId;this._playlist.untagItemAt(j);o.untagItem(n);if(j<q){l-=this.dataTable.rowHeight}}this.dataTable.unselectAllRows();this.refreshData();this.dataTable.scrollTo(l)},_onMenuDeleteSong:function(){errorLog("InfiniteSongsTable::_onMenuDeleteSong()");var n=this._playlist.getLibrary();var m=this.getSelectedItems();for(var j=0;j<m.length;j++){var l=m[j].libId;var k={id:l,sync_state:h.SYNC_STATE_PERM_DELETED,sync_order:8888888888,deleted:1};n.changeItem(l,k)}},_onMenuUnDeleteSong:function(){var n=this._playlist.getLibrary();var o=new Date();var m=this.getSelectedItems();for(var j=0;j<m.length;j++){var l=m[j].libId;var k={id:l,sync_state:h.SYNC_STATE_NOT_SYNCED,sync_order:parseInt(o.getTime()/1000)-1000000000,deleted:0};n.changeItem(l,k)}},_onMenuUnsyncSong:function(){var n=this._playlist.getLibrary();var m=this.getSelectedItems();for(var j=0;j<m.length;j++){var l=m[j].libId;var k={id:l,sync_state:h.SYNC_STATE_DELETED,sync_order:8888888888};n.changeItem(l,k)}},_onMenuSyncOrderSong:function(){var n=this._playlist.getLibrary();var o=new Date();var m=this.getSelectedItems();if(!this._checkStorage(m[0])){return}for(var j=0;j<m.length;j++){var l=m[j].libId;var k={id:l,sync_order:parseInt(o.getTime()/1000)-1000000000};if(m[j].lib.sync_state==h.SYNC_STATE_DELETED){k.sync_state=h.SYNC_STATE_NOT_SYNCED}n.changeItem(l,k)}},_checkStorage:function(l){var i=mspot.Session.getValue("lastUserResult").user;var k=2000;if(l){k=l["lib.duration"]*8.3}if(i.storage.total-i.storage.used<k){var j=[{text:"OK",handler:function(){this.cancel()}}];webRadio.showDialogBox(_("Information"),_('<div style="padding: 10px 20px 17px;">Storage full. Please delete some old songs, then Upload new ones.</div>'),j);return false}return true},_onMenuForceSyncOrderSong:function(){var o=this._playlist.getLibrary();var p=new Date();var n=this.getSelectedItems();for(var k=0;k<n.length;k++){var m=n[k].libId;var j=this._startUpTime-(parseInt(p.getTime()/1000)-1000000000)%this._startUpTime;var l={id:m,sync_state:0,sync_order:j};if(n[k].lib.sync_state==h.SYNC_STATE_DELETED){l.sync_state=h.SYNC_STATE_NOT_SYNCED}o.changeItem(m,l)}},_onMenuMagicSong:function(){var j=this.getSelectedItems();var i=j[0];webRadio.createMagicPlaylist(i)},_onMenuCreatePlaylist:function(){var i=this.getSelectedItems();webRadio.createPlaylist(i)},_onMenuAddCurrent:function(){var l=this.getSelectedItems();var k=webRadio.getCurrentPlaylist();if(k.isEditable()){for(var j=0;j<l.length;j++){k.addItem(l[j])}}},_allowItemReorder:function(){var i=[h.LIBRARY_ID,h.RECENTLY_ADD_LIBRARY_ID,h.TOP_RATED_LIBRARY_ID];return this._playlist&&mspot.util.arrayIndexOf(i,this._playlist.getId())==-1},_flattenItem:function(i){return this.dataSource.parseJSONData(null,{items:[i],length:1}).results[0]}});mspot.namespace("ui").InfiniteSongsTable=a})();
/* ui/FilterList.js */
(function(){var c=YAHOO.util.Dom,a=YAHOO.util.Event;var b=function(e,d){this._element=c.createElement("div");b.superclass.constructor.call(this,this._element,d||{});this.id=e;this.createEvent(b.ITEM_CLICK_EVENT)};YAHOO.lang.augmentObject(b,{ITEM_CLICK_EVENT:"itemClickEvent"});YAHOO.extend(b,YAHOO.util.Element,{_selectedClassName:"selected",initAttributes:function(d){d=d||{};b.superclass.initAttributes.call(this,d);this.setAttributeConfig("items",{value:d.items||[]});this.setAttributeConfig("title",{value:d.title||null})},render:function(e){e=c.get(e);this._element.className="filter-list";var d="";if(this.get("title")){d+='<div class="hd"><h3>'+this.get("title")+"</h3></div>"}d+='<div class="bd"><ul></ul></div>';this._element.innerHTML=d;e.appendChild(this._element);this.list=this._element.getElementsByTagName("ul")[0];this.renderItems(this.list)},renderItems:function(d){var g=[];var e=this.get("items");for(var f=0;f<e.length;f++){g.push("<li><div>"+e[f]+"</div></li>")}d.style.visibility="hidden";d.innerHTML=g.join("");this.listItems=this._element.getElementsByTagName("li");a.addListener(this.listItems,"click",this.onItemClick,this,true);d.style.visibility=""},destroy:function(){this.unsubscribeAll();this._element.innerHTML="";delete this._element},selectItem:function(d){var e=this.listItems[d];this._unselectAll();c.addClass(e,this._selectedClassName)},onItemClick:function(f){var d=a.getTarget(f).parentNode;this._unselectAll();c.addClass(d,"selected");try{this.fireEvent(b.ITEM_CLICK_EVENT,{item:this._elementToItem(d)})}catch(f){}},_unselectAll:function(){var d=this._selectedClassName;var e;if(this._element.getElementsByClassName){e=this._element.getElementsByClassName(d)}else{e=c.getElementsByClassName(d,"li",this._element)}c.removeClass(e,d)},setItems:function(e){var d=this.get("items");if(!this._compareItems(d,e)){this.set("items",e);this.renderItems(this.list);this.selectItem(0)}},_compareItems:function(e,d){if(e.length!=d.length){return false}for(var f=0;f<e.length;f++){if(e[f]!=d[f]){return false}}return true},_elementToItem:function(f){var d=-1;for(var e=0;e<this.listItems.length;e++){if(this.listItems[e]==f){d=e;break}}return{text:this.get("items")[d],index:d}}});mspot.namespace("ui").FilterList=b})();
/* ui/ListPanel.js */
(function(){var c=YAHOO.util.Dom,b=YAHOO.util.Event,a=mspot.util;var d=function(){d.superclass.constructor.call(this,{})};YAHOO.extend(d,YAHOO.util.Element,{_element:{},_panel:YAHOO.widget.Panel,addItem:function(e,g,f){this._element=this._element+"<div>Add: "+e+", "+g+", "+f.title+"</div>";this._panel.setBody(this._element)},deleteItem:function(e,g,f){this._element=this._element+"<div>Delete: "+e+", "+g+", "+f.title+"</div>";this._panel.setBody(this._element)},changeItem:function(e,g,f){this._element=this._element+"<div>Change: "+e+", "+g+", "+f.title+"</div>";this._panel.setBody(this._element)},addItemHeader:function(f,e){this._panel.setHeader("<div>Add Header: "+f+", "+e.title+"</div>")},addItemFooter:function(f,e){this._panel.setFooter("<div>Add Footor: "+f+", "+e.title+"</div>")},render:function(e){this._panel=new YAHOO.widget.Panel(e,{width:"240px"});this._panel.render()}});mspot.namespace("ui").ListPanel=d})();
/* ui/MenuPanel.js */
(function(){var d=YAHOO.util.Dom,b=YAHOO.util.Event,h=mspot.model.Playlist,f=mspot.Session,e=mspot.Settings,g=mspot.Loader,a=mspot.util.Json;var c=function(){c.superclass.constructor.call(this);this.createEvent(c.ITEM_CLICK_EVENT);this.createEvent(c.ITEM_DCLICK_EVENT);this.createEvent(c.ITEM_ADD_EVENT);this.createEvent(c.ITEM_DELETE_EVENT);this.createEvent(c.ITEM_CHANGE_EVENT)};YAHOO.lang.augmentObject(c,{ITEM_CLICK_EVENT:"clickMenuEvent",ITEM_DCLICK_EVENT:"dblClickMenuEvent",ITEM_ADD_EVENT:"addMenuEvent",ITEM_DELETE_EVENT:"deleteMenuEvent",ITEM_CHANGE_EVENT:"changeMenuEvent"});YAHOO.extend(c,mspot.ui.ListPanel,{name:"UI",_treeView:{},_playlistNode:{},_remixPlaylsitNode:{},_deviceNode:{},_favNode:{},_libraryNode:{},_oCurrentTextNode:{},_container:{},_target:{},_refreshTreeTimeout:null,_libraryGroup:[h.LIBRARY_ID,h.RECENTLY_ADD_LIBRARY_ID,h.TOP_RATED_LIBRARY_ID],_isIE:(/msie/).test(navigator.userAgent.toLowerCase()),render:function(k){var l=this;this._contextRemixPlaylistMenu={};this._contextPlaylistMenu={};this._contextLibraryMenu={};this._contextRootPlaylistMenu={};this._contextDeviceMenu={};this._container=k;this._treeView=new YAHOO.widget.TreeView(k);var j=this._treeView.getRoot();if(!bgWindow){this._deviceNode=new YAHOO.widget.HTMLNode({html:'<div class="rootnode menudevice"><div class="nodelabel">'+_("Devices")+'</div><div class="ctmenuspacer"></div></div>',label:"Devices",expanded:true},j)}this._libraryNode=new YAHOO.widget.HTMLNode({html:'<div class="rootnode menulibrary"><div class="nodelabel">'+_("Library")+'</div><div class="ctmenuspacer"></div></div>',label:"Library",expanded:true},j);if(!bgWindow&&e.ENABLE_FAVORITE){this._favNode=new YAHOO.widget.HTMLNode({html:'<div class="menunode menufavorite"><div class="nodelabel">'+_("Tagged Songs")+'</div><div class="ctmenuspacer"></div><div class="ctmenu favorite"></div></div>',label:"Tagged Songs",data:{id:h.FAVORITE_ID,title:"Tagged Songs",formattype:"http/favorite"},isLeaf:true,className:"selectable"},this._libraryNode)}this._playlistNode=new YAHOO.widget.HTMLNode({html:'<div class="menunode menuplaylist"><div class="nodelabel">'+_("mSpot Playlists")+'</div><div class="ctmenuspacer"></div></div>',label:"mSpot playlists",expanded:true},this._libraryNode);this._remixPlaylistNode=new YAHOO.widget.HTMLNode({html:'<div class="menunode menuremix"><div class="nodelabel">'+_("Other Playlists")+'</div><div class="ctmenuspacer"></div></div>',label:"Other playlists",expanded:true},this._libraryNode);if(!bgWindow){var m={id:-9999,title:_("Add New"),formattype:"application/addNew"};var o=new YAHOO.widget.HTMLNode({html:this.createItemHtml(m),label:m.title,data:m,expanded:true,className:"selectable"},this._playlistNode);o.isLeaf=true}if(e.ENABLE_REDISCOVER){var i="Rediscover";var p=0;var n=0;if(f.getValue("Magic")){i=f.getValue("Magic").title;p=f.getValue("Magic").libId;n=f.getValue("Magic").seed}this._setMagicNode(i,p,n)}this._treeView.render();this.onEvent("clickEvent",this.onClickEvent,this);this.onEvent("dblClickEvent",this.onClickEvent,this)},destroy:function(){this.offEvent("clickEvent",this.onClickEvent,this);this.offEvent("dblClickEvent",this.onClickEvent,this);this._treeView={};this._container={};this._deviceNode={};this._playlistNode={};this._favNode={}},onEvent:function(i,k,j){if(!j){j=this}this._treeView.subscribe(i,k,j,true)},offEvent:function(i,k,j){if(!j){j=this}this._treeView.unsubscribe(i,k,j)},onClickEvent:function(i){this._target=i.node.data;if(i.node.data){this.selectNode(i.node,1)}},onDblClickEvent:function(i){this._target=i.node.data;if(i.node.data){var j=this._target;if(j.formattype=="http/device"){this.fireEvent(c.ITEM_DCLICK_EVENT,i)}else{this.fireEvent(c.ITEM_DCLICK_EVENT,i)}}},createItemHtml:function(i){if(i.formattype=="application/addNew"){return'<div class="childnode addNew"><div class="nodelabel">'+i.title+'</div><div class="ctmenuspacer addNew"></div></div>'}else{if(i.formattype=="http/device"){return'<div class="childnode device"><div class="nodelabel">'+i.title+'</div><div class="ctmenu device"></div></div>'}else{if(i.formattype=="http/rmx"){return'<div class="childnode remix"><div class="nodelabel">'+i.title+'</div><div class="ctmenu remix"></div></div>'}else{if(i.formattype=="http/library"){if(i.id==1){return'<div class="childnode library"><div class="nodelabel">'+i.title+'</div><div class="ctmenu library"></div></div>'}return'<div class="childnode library"><div class="nodelabel">'+i.title+'</div><div class="ctmenuspacer library"></div></div>'}else{if(i.formattype=="http/playlist"){return'<div class="childnode playlist"><div class="nodelabel">'+i.title+'</div><div class="ctmenu playlist"></div></div>'}else{if(i.formattype=="http/magic"){return'<div class="childnode magic"><div class="nodelabel">'+i.title+'</div><div class="ctmenu playlist"></div></div>'}else{return""}}}}}}},setMagicNode:function(i,l,k){this.removeContextMenu();var j=this._setMagicNode(i,l,k);this.addContextMenu();this._treeView.getRoot().refresh();this.selectNode(j,1)},_setMagicNode:function(i,m,l){if(l==0){l=Math.floor(Math.random()*1000)}f.setValue("Magic",{title:i,libId:m,seed:l});var k={id:h.MAGIC_ID,title:i,formattype:"http/magic",libId:m,seed:l};var j=new YAHOO.widget.HTMLNode({html:this.createItemHtml(k),label:k.title,data:k,expanded:true,className:"selectable"});j.isLeaf=true;this._playlistNode.children.splice(1,1,j);j.applyParent(this._playlistNode);return j},selectNode:function(j,k){var i=j.data;if(i.formattype&&i.formattype!="application/addNew"){d.removeClass(d.getElementsByClassName("selected","div",this._container),"selected");d.addClass(d.getAncestorByClassName(j.contentElId,"ygtvitem"),"selected")}if(i.formattype=="application/addNew"){this.onAddPlaylist()}else{if(k!=null){this.fireEvent(c.ITEM_CLICK_EVENT,{node:j,useraction:k})}}},onAddItem:function(l,o,n){var k=this._treeView.getRoot();var j={};var i=0;n.label=n.title;if(n.formattype=="http/device"){if(this._deviceNode){j=this._deviceNode}}else{if(n.formattype=="http/rmx"){j=this._remixPlaylistNode}else{if(n.formattype=="http/playlist"||n.formattype=="http/magic"||n.formattype=="http/library"){j=this._playlistNode;i=1}else{}}}var m=new YAHOO.widget.HTMLNode({html:this.createItemHtml(n),label:n.title,data:n,expanded:true,className:"selectable"});m.isLeaf=true;if(n.onTop){j.children.splice(i,0,m)}else{m.appendTo(j)}m.applyParent(j);if(bgWindow){if(bgWindow.manager&&m.data.id==bgWindow.manager._programmer._playlist._id){this._selectedNode=m}}else{if(e.IS_ERROR_LIST){this._selectedNode=null}else{if(!this._selectedNode&&m.data.id==h.LIBRARY_ID){this._selectedNode=m}}}if(this._refreshTreeTimeout!=null){window.clearTimeout(this._refreshTreeTimeout)}this._refreshTreeTimeout=b.onTimeout(10,function(){this._refreshTreeTimeout=null;k.refresh();this.removeContextMenu();this.addContextMenu();this._addDropTargets(k);if(this._selectedNode){this.selectNode(this._selectedNode,0);this._selectedNode=null}},this,true)},removeContextMenu:function(){if(!bgWindow){var j=d.getElementsByClassName("ctmenu playlist","div",this._container);b.removeListener(j,"click",this._onContextPlaylistClick);var m=d.getElementsByClassName("ctmenu remix","div",this._container);b.removeListener(m,"click",this._onContextRemixPlaylistClick);var k=d.getElementsByClassName("ctmenu root","div",this._container);b.removeListener(k,"click",this._onContextRootPlaylistClick);var i=d.getElementsByClassName("ctmenu device","div",this._container);b.removeListener(i,"click",this._onContextDeviceClick);var l=d.getElementsByClassName("ctmenu library","div",this._container);b.removeListener(l,"click",this._onContextLibraryClick,this,true);var n=d.getElementsByClassName("ctmenu favorite","div",this._container);b.removeListener(n,"click",this._onContextFavoriteClick,this,true)}},addContextMenu:function(){if(!bgWindow){var j=d.getElementsByClassName("ctmenu playlist","div",this._container);b.addListener(j,"click",this._onContextPlaylistClick,this,true);var m=d.getElementsByClassName("ctmenu remix","div",this._container);b.addListener(m,"click",this._onContextRemixPlaylistClick,this,true);var k=d.getElementsByClassName("ctmenu root","div",this._container);b.addListener(k,"click",this._onContextRootPlaylistClick,this,true);var i=d.getElementsByClassName("ctmenu device","div",this._container);b.addListener(i,"click",this._onContextDeviceClick,this,true);var l=d.getElementsByClassName("ctmenu library","div",this._container);b.addListener(l,"click",this._onContextLibraryClick,this,true);var n=d.getElementsByClassName("ctmenu favorite","div",this._container);b.addListener(n,"click",this._onContextFavoriteClick,this,true);this._addDropTargets(this._treeView.getRoot())}},findNodePlaylist:function(j){var i=this._treeView.getRoot();return this.findNode(i,j)},findNode:function(j,l){if(j.hasChildren){for(var m in j.children){var i=j.children[m];if((i.data.id==l.id)&&(i.data.formattype==l.formattype)){return i}var k=this.findNode(i,l);if(k){return k}}}return null},onDeleteItem:function(k,n,m){var j=this._treeView.getRoot();parentNode=this._playlistNode;if(m.formattype=="http/device"){parentNode=this._deviceNode}var l=this.findNode(j,m);if(l){this.removeContextMenu();var i=l.previousSibling;this._treeView.removeNode(l);j.refresh();this.addContextMenu();this.selectNode(i,1)}},onChangeItem:function(j,m,l){var i=this._treeView.getRoot();parentNode=this._playlistNode;if(l.formattype=="http/device"){parentNode=this._deviceNode}var k=this.findNode(i,l);if(k){this.removeContextMenu();k.data.label=k.data.title;k.html=this.createItemHtml(l);i.refresh();this.selectNode(k,1);this.addContextMenu()}},contextNewItem:function(i){i=i||"New Playlist";webRadio.createPlaylist([],i)},addItem:function(i,k,j){this.fireEvent(c.ITEM_ADD_EVENT,{index:i,id:k,item:j,src:this.name})},contextDeleteDevice:function(j,i){this.onRemoveDevice()},contextRenameDevice:function(j,i){this.onRenameDevice()},contextDeleteItem:function(j,i){this.onRemovePlaylist()},contextRemoveAllSongs:function(j,i){this.onRemoveAllSongs()},contextClearFavorite:function(j,i){this.onClearFavorite()},deleteItem:function(i,k,j){this.fireEvent(c.ITEM_DELETE_EVENT,{index:i,id:k,item:j,src:this.name})},changeItem:function(i,k,j){this.fireEvent(c.ITEM_CHANGE_EVENT,{index:i,id:k,item:j,src:this.name})},contextSyncItem:function(k,j){var l=this._target;l.cloudSync=true;this.changeItem(0,l.id,l);var i=new mspot.api.UploadEditorService();i.addPlaylist(l.id)},contextUnSyncItem:function(k,j){var l=this._target;l.cloudSync=false;this.changeItem(0,l.id,l);var i=new mspot.api.UploadEditorService();i.removePlaylist(l.id)},copyToWeb:function(){webRadio.copyPlaylist(this._target.id,this._target.title)},copyAndSync:function(){var i=this._target;i.cloudSync=true;this.changeItem(0,i.id,i);webRadio.copyPlaylist(this._target.id,this._target.title)},editMenuPanel:function(j,l,k){var i=this._treeView.getRoot();this._targetnode.editNode();playlist_name=playlist_name||"New Playlist";var k={id:-2,title:playlist_name,formattype:"http/playlist"};this.addItem(0,k.id,k)},addItemHeader:function(j,i){},addItemFooter:function(j,i){},onAddPlaylist:function(){var j=this;var n=_("Create A Playlist");var i='<div style="padding: 10px 0px 10px 0px;">'+_("Name it, then drag and drop songs")+'</div><div><label for="playlist_name">'+_("Playlist Name:")+'</label> <input type="text" name="playlist_name" id="playlist_name"></div>';var m=function(){j.contextNewItem(d.get("playlist_name").value);this.cancel()};var l=[{text:_("Cancel"),handler:function(){this.cancel()}},{text:_("Create"),handler:m,isDefault:true}];webRadio.showDialogBox(n,i,l);var k=new YAHOO.util.KeyListener(d.get("playlist_name"),{keys:13},{fn:m,scope:webRadio.dialogBox,correctScope:true});webRadio.dialogBox.cfg.addProperty("keylisteners",k);k.enable()},onEditPlaylist:function(){var j=this;var l=_("Rename A Playlist");var i='<label for="playlist_name">'+_("Playlist Name:")+'</label><input type="text" name="playlist_name" id="playlist_name" value="'+this._target.title+'">';var k=[{text:_("Cancel"),handler:function(){this.cancel()}},{text:_("Save"),handler:function(){var m=j._target;m.items=null;m.title=d.get("playlist_name").value||m.title;j.changeItem(0,m.id,m);this.cancel()},isDefault:true}];webRadio.showDialogBox(l,i,k)},onRemoveDevice:function(){var j=this;var l=_("Deauthorize Device");var i=_("<label>Are you sure you want to remove ")+this._target.title+_(" from your account? You will no longer have access to mSpot music from this device</label>");var k=[{text:_("Deauthorize"),handler:function(){var m=j._target;j.deleteItem(0,m.id,m);this.cancel()},isDefault:true},{text:_("Cancel"),handler:function(){this.cancel()}}];webRadio.showDialogBox(l,i,k)},onRenameDevice:function(){var j=this;var l=_("Rename Device");var i="<table><tbody><tr><td><label>"+_("Please enter the name of this device")+'</label></td></tr><tr><td><input type="text" name="deviceName" id="deviceNewName" /></td></tr></tbody></table>';var k=[{text:_("Rename"),handler:function(){var m=j._target;m.newName=document.getElementById("deviceNewName").value;m.title=m.newName;j.changeItem(0,m.id,m);this.cancel()},isDefault:true},{text:_("Cancel"),handler:function(){this.cancel()}}];webRadio.showDialogBox(l,i,k)},onRemovePlaylist:function(){var j=this;var l=_("Confirm Deletion");var i=_("<label>You will delete this playlist. Are you sure you want to proceed?</label>");var k=[{text:_("Confirm"),handler:function(){var m=j._target;j.deleteItem(0,m.id,m);this.cancel()},isDefault:true},{text:_("Cancel"),handler:function(){this.cancel()}}];webRadio.showDialogBox(l,i,k)},onRemoveAllSongs:function(){var j=this;var l=_("Confirm Removal");var i=_("<label>You will clear all songs from the online storage. Are you sure that you want to proceed?</label>");var k=[{text:"Confirm",handler:function(){var m=j._target;this.cancel()},isDefault:true},{text:"Cancel",handler:function(){this.cancel()}}];webRadio.showDialogBox(l,i,k)},onClearFavorite:function(){var j=this;var l=_("Confirm Removal");var i=_("<label>You will clear all your favorite songs. Are you sure that you want to proceed?</label>");var k=[{text:_("Confirm"),handler:function(){var n=j._target;var m=new mspot.api.FavoriteService();var o=function(){var p=webRadio.getPage();p._playlistManager=new mspot.manager.FavoritePlaylistManager();p._playlistManager.render(p._rightPane);p._initAutoResize();p._paneContentId=h.FAVORITE_ID};m.untagAllItems(o);this.cancel()},isDefault:true},{text:_("Cancel"),handler:function(){this.cancel()}}];webRadio.showDialogBox(l,i,k)},_onContextDeviceClick:function(i){target=b.getTarget(i);this._target=this._treeView.getNodeByElement(target).data;var j=this._target;var k=[{text:_("Deauthorize"),onclick:{fn:this.contextDeleteDevice,obj:this._target,scope:this}},{text:_("Rename"),onclick:{fn:this.contextRenameDevice,obj:this._target,scope:this}}];return this._onContextMenuClick(target,this._contextDeviceMenu,k)},_onContextFavoriteClick:function(i){target=b.getTarget(i);this._target=this._treeView.getNodeByElement(target).data;var j=this._target;var k=[{text:_("Clear List"),onclick:{fn:this.contextClearFavorite,obj:this._target,scope:this}}];return this._onContextMenuClick(target,this._contextDeviceMenu,k)},_onContextLibraryClick:function(j){target=b.getTarget(j);this._target=this._treeView.getNodeByElement(target).data;var l=this._target;var m=[[{text:_("Show All Songs"),onclick:{fn:this._showAllSongs,obj:this._target,scope:this}}],[{text:_("Show mSpot Songs"),onclick:{fn:this._showMSpotSongs,obj:this._target,scope:this}}],[{text:_("Upload Editor"),onclick:{fn:this._gotoUploader,obj:this._target,scope:this}}]];var i=new mspot.api.UploadEditorService();var k=["LIB_VIEW"];i.getPrefExt(k,function(n){if(n.status=="success"){if(n.result["3"][k]=="all"){m[0][0].checked=true}else{m[1][0].checked=true}}return this._onContextMenuClick(target,this._contextLibraryMenu,m)},this)},_refreshPage:function(){console.log("MenuPanel::_refreshPage()");webRadio.refreshPage()},_showAllSongs:function(j){var i=new mspot.api.UploadEditorService();i.setPrefExt(["LIB_VIEW"],["all"],this._refreshPage,this)},_showMSpotSongs:function(j){var i=new mspot.api.UploadEditorService();i.setPrefExt(["LIB_VIEW"],["mspot"],this._refreshPage,this)},_gotoUploader:function(i){mspot.util.tryLoadPage("UploadEditor","upload-editor",Math.floor(Math.random()*10001))},_onContextPlaylistClick:function(i){target=b.getTarget(i);this._target=this._treeView.getNodeByElement(target).data;var j=this._target;var k=[{text:_("Upload"),onclick:{fn:this.contextSyncItem,obj:this._target,scope:this}},{text:_("Unload"),onclick:{fn:this.contextUnSyncItem,obj:this._target,scope:this}},{text:_("Rename"),onclick:{fn:this.onEditPlaylist,obj:this._target,scope:this}},{text:_("Duplicate"),onclick:{fn:this.copyToWeb,obj:this._target,scope:this}},{text:_("Delete"),onclick:{fn:this.contextDeleteItem,obj:this._target,scope:this}}];return this._onContextMenuClick(target,this._contextPlaylistMenu,k)},_onContextRemixPlaylistClick:function(i){target=b.getTarget(i);this._target=this._treeView.getNodeByElement(target).data;var k=this._target;var l={};var j=false;if(mspot.util.arrayIndexOf(this._libraryGroup,parseInt(this._target.id))>=0){j=true}l=[{text:_("Upload"),onclick:{fn:this.contextSyncItem,obj:this._target,scope:this}},{text:_("Unload"),onclick:{fn:this.contextUnSyncItem,obj:this._target,scope:this}},{text:_("Duplicate"),onclick:{fn:this.copyToWeb,obj:this._target,scope:this}},{text:_("Delete"),onclick:{fn:this.contextDeleteItem,obj:this._target,scope:this}}];return this._onContextMenuClick(target,this._contextRemixPlaylistMenu,l)},_onContextRootPlaylistClick:function(i){target=b.getTarget(i);this._target=this._treeView.getNodeByElement(target).data;var j=this._target;var k=[{text:_("Add New"),onclick:{fn:this.onAddPlaylist,obj:this._target,scope:this}}];return this._onContextMenuClick(target,this._contextRootPlaylistMenu,k)},_onContextMenuClick:function(k,i,m){if(i._menu){i._menu.destroy()}i._contextMenuContainer=d.createElement("div");i._contextMenuContainer.className="ctpanel";d.get("bd").appendChild(i._contextMenuContainer);var l=new YAHOO.widget.Menu(i._contextMenuContainer,{fixedcenter:true});l.addItems(m);l.render();i._menu=l;var j=d.getRegion(k);i._menu.show();i._menu.moveTo(j.left,j.top+j.height)},_addDropTargets:function(l){if(l&&l.data&&(l.data.formattype=="http/playlist")){new YAHOO.util.DDTarget(l.getContentEl(),"songDragDrop")}var k=l.children;for(var j=0;j<k.length;j++){this._addDropTargets(k[j])}},getMenuItemByElement:function(i){return this._treeView.getNodeByElement(i).data}});mspot.namespace("ui").MenuPanel=c})();
/* ui/MediaPlayerPanel.js */
(function(){var a=function(){this.createEvent(a.PANEL_CLICK_JUMPTO);this.createEvent(a.PANEL_CLICK_LOOP);this.createEvent(a.PANEL_CLICK_MUTE);this.createEvent(a.PANEL_CLICK_PAUSE);this.createEvent(a.PANEL_CLICK_PLAY);this.createEvent(a.PANEL_CLICK_SHUFFLE);this.createEvent(a.PANEL_CLICK_SKIPBACK);this.createEvent(a.PANEL_CLICK_SKIP);this.createEvent(a.PANEL_CLICK_STOP);this.createEvent(a.PANEL_CLICK_VOLUME);this.createEvent(a.PANEL_CLICK_MAGIC)};YAHOO.lang.augmentObject(a,{PANEL_CLICK_JUMPTO:"clickJumpTo",PANEL_CLICK_LOOP:"clickLoop",PANEL_CLICK_MUTE:"clickMute",PANEL_CLICK_PAUSE:"clickPause",PANEL_CLICK_PLAY:"clickPlay",PANEL_CLICK_SHUFFLE:"clickShuffle",PANEL_CLICK_SKIPBACK:"clickSkipBack",PANEL_CLICK_SKIP:"clickSkip",PANEL_CLICK_STOP:"clickStop",PANEL_CLICK_VOLUME:"clickVolume",PANEL_CLICK_MAGIC:"clickMagic"});YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("ui").MediaPlayerPanel=a})();
/* ui/MediaPlayerProgressBar.js */
(function(){var c=YAHOO.util.Dom,d=mspot.Settings,b=YAHOO.util.Event;var a=function(g,e,f){this.createEvent(a.EVENT_SONGPOSITION);this.id=g;this.elem=f;this._render();this.maxOffset=1;this.slider=YAHOO.widget.Slider.getHorizSlider(a.CLASS_SLIDER_BG+"-"+this.id,a.CLASS_SLIDER_THUMB+"-"+this.id,0,this.maxOffset);this.slider.animate=false;this.slider.subscribe("slideStart",this._handleSliderSlideStart,this,true);this.slider.subscribe("change",this._handleSliderChange,this,true);this.slider.subscribe("slideEnd",this._handleSliderSlideEnd,this,true)};YAHOO.lang.augmentObject(a,{CLASS_MPPB:"mspot-mppb",CLASS_LEFT_TXT:"mspot-mppb-ltxt",CLASS_RIGHT_TXT:"mspot-mppb-rtxt",CLASS_SLIDER_BG:"mspot-mppb-sbg",CLASS_SLIDER_THUMB:"mspot-mppb-st",CLASS_SLIDER_THUMB_IMAGE:"mspot-mppb-sti",CLASS_LOAD_PROGRESS:"mspot-mppb-load-progress",CLASS_PLAY_PROGRESS:"mspot-mppb-play-progress",EVENT_SONGPOSITION:"progressBarSongPositionChange",printSeconds:function(f){var e=Math.floor(f/60);var f=f%60;if(e<10){var g="0"+e}else{var g=e}if(f<10){var h="0"+f}else{var h=f}return g+":"+h}});a.prototype={id:"",maxOffset:0,_songLength:1,_uiOverride:false,changeBuffer:function(e){if(e>this._songLength){this.setSongLength(e)}var f=Math.floor(this.maxOffset*(e/this._songLength));c.setStyle(a.CLASS_LOAD_PROGRESS+"-"+this.id,"width",f+"px")},changeSongPosition:function(f){var i=Math.floor(this.maxOffset*(f/this._songLength));if(!this._uiOverride){this.slider.setValue(i,true,false,true);c.setStyle(a.CLASS_PLAY_PROGRESS+"-"+this.id,"width",i+"px")}var g=c.get(a.CLASS_LEFT_TXT+"-"+this.id);var h=c.get(a.CLASS_RIGHT_TXT+"-"+this.id);g.innerHTML=a.printSeconds(Math.round(f/1000));var e=this._songLength-f;e=e<0?0:e;h.innerHTML="-"+a.printSeconds(Math.round(e/1000))},clear:function(){this._songLength=1;this.slider.setValue(0,false,false,true);c.setStyle(a.CLASS_LOAD_PROGRESS+"-"+this.id,"width","0px");c.setStyle(a.CLASS_PLAY_PROGRESS+"-"+this.id,"width","0px");var e=c.get(a.CLASS_LEFT_TXT+"-"+this.id);var f=c.get(a.CLASS_RIGHT_TXT+"-"+this.id);e.innerHTML="00:00";f.innerHTML="00:00"},hide:function(){if(c.getStyle(this.elem,"display")=="block"){c.setStyle(this.elem,"display","none")}},setSongLength:function(e){this._songLength=e},show:function(){if(c.getStyle(this.elem,"display")=="none"){c.setStyle(this.elem,"display","block")}this.maxOffset=c.getRegion(this.elem).width;this.slider.thumb.setXConstraint(0,this.maxOffset)},_handleSliderSlideStart:function(){this._uiOverride=true;this._sliderthumbimg.src=d.IMAGES_PATH+"player/progress-ball-button-down.png"},_handleSliderChange:function(){c.setStyle(a.CLASS_PLAY_PROGRESS+"-"+this.id,"width",(this.slider.getValue())+"px")},_handleSliderSlideEnd:function(){this._uiOverride=false;this.fireEvent(a.EVENT_SONGPOSITION,{songPosition:this._songLength*((this.slider.getValue())/this.maxOffset)});this._sliderthumbimg.src=d.IMAGES_PATH+"player/progress-ball-button.png"},_render:function(){var i=this.elem;i.innerHTML="";var l=c.createElement("div",{"class":a.CLASS_LEFT_TXT,id:a.CLASS_LEFT_TXT+"-"+this.id});var e=c.createElement("div",{"class":a.CLASS_RIGHT_TXT,id:a.CLASS_RIGHT_TXT+"-"+this.id});var h=c.createElement("div",{"class":a.CLASS_SLIDER_BG,id:a.CLASS_SLIDER_BG+"-"+this.id});var g=c.createElement("div",{"class":a.CLASS_LOAD_PROGRESS,id:a.CLASS_LOAD_PROGRESS+"-"+this.id});var j=c.createElement("div",{"class":a.CLASS_PLAY_PROGRESS,id:a.CLASS_PLAY_PROGRESS+"-"+this.id});var k=c.createElement("div",{"class":a.CLASS_SLIDER_THUMB,id:a.CLASS_SLIDER_THUMB+"-"+this.id});this._sliderthumbimg=c.createElement("img",{"class":a.CLASS_SLIDER_THUMB_IMAGE,src:d.IMAGES_PATH+"player/progress-ball-button.png"});k.appendChild(this._sliderthumbimg);h.appendChild(g);h.appendChild(j);h.appendChild(k);i.appendChild(l);i.appendChild(e);i.appendChild(h);var f={};b.on(window,"resize",this._onDelayedResize,f,this)},_onDelayedResize:function(e,f){if(this._resizeTimeoutId){window.clearTimeout(this._resizeTimeoutId)}this._resizeTimeoutId=b.onTimeout(50,this._resizeWidth,f,this)},_resizeWidth:function(e,f){this.maxOffset=c.getRegion(this.elem).width;this.slider.thumb.setXConstraint(0,this.maxOffset)}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("ui").MediaPlayerProgressBar=a})();
/* ui/HeaderMediaPlayerPanel.js */
(function(){var g=YAHOO.util.Dom,h=YAHOO.util.Event,d=mspot.ui.CoverArt,b=mspot.ui.MediaPlayerPanel,c=mspot.ui.MediaPlayerProgressBar,e=mspot.programmer.PlaylistProgrammer,a=mspot.Settings,f=mspot.Session;var i=function(){mspot.ui.HeaderMediaPlayerPanel.superclass.constructor.call(this);this._element=g.createElement("div",{id:"mediaplayer",className:"media-player"})};YAHOO.lang.augmentObject(i,{FADE_NO_SONG:0,FADE_W_SONG:0.55,ID_MENUBAR:"MB",ID_PROGRESSBAR:"PB",ID_DETAILS:"DETAILS"});YAHOO.lang.extend(i,b,{_container:null,_contentBox:null,_backgroundCoverArt:null,_backgroundCoverArtContainer:null,_coverArt:null,_coverArtContainer:null,_currentItem:null,_imageFadeAnim:null,_controlFadeAnim:null,_hd:null,_menuBar:null,_progressBar:null,_volSlider:null,_loopState:e.PlaylistLoopOff,_shuffleState:false,_muteState:false,_finished:true,_loopTooltip:null,_shuffleTooltip:null,_muteTooltip:null,_refreshTooltip:null,clearItem:function(j){console.log("HeaderMediaplayerPanel::clearItem()");this._currentItem=null;if(j==true){this._clearDetails();this._finished=true;this._handleControlFadeOut()}this._progressBar.clear();this._progressBar.hide()},resetPlaylistStates:function(){console.log("HeaderMEdiaPlayerPanel::resetPlaylistStates()");this._loopState=e.PlaylistLoopOff;this._shuffleState=false;g.removeClass(this.buttons.loop,"loop-all-button");g.removeClass(this.buttons.loop,"loop-one-button");g.addClass(this.buttons.loop,"loop-button");g.removeClass(this.buttons.shuffle,"enabled")},destroy:function(){console.log("HeaderMEdiaPlayerPanel::destroy()");this._removeMenuBarEventHandlers();this._removeProgressBarEventHandlers()},render:function(j){console.log("HeaderMEdiaPlayerPanel::render()");this._container=g.get(j);this._backgroundCoverArtContainer=g.createElement("div",{className:"bg-box"});this._backgroundCoverArt=new d("100%","147px","repeat-x");this._backgroundCoverArt.render(this._backgroundCoverArtContainer);this._contentBox=g.createElement("div",{className:"content-box"});this._coverArtContainer=g.createElement("div",{className:"cover-art",style:"position: relative;"});this._coverArt=new d("135px","135px");this._coverArt.render(this._coverArtContainer);this._middleContainer=g.createElement("div",{className:"middle"});this._renderMiddle(this._middleContainer);this._controlsContainer=g.createElement("div",{className:"controls"});this._renderControls(this._controlsContainer);this._contentBox.appendChild(this._coverArtContainer);this._contentBox.appendChild(this._middleContainer);this._contentBox.appendChild(this._controlsContainer);this._element.appendChild(this._backgroundCoverArtContainer);this._element.appendChild(this._contentBox);this._container.appendChild(this._element);bDisabled=a.SLOW?false:true;this._loopTooltip=new YAHOO.widget.Tooltip("loopttp",{context:"loop",text:_("Repeat All Songs"),disabled:bDisabled,zIndex:5,effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.3},showDelay:777});this._shuffleTooltip=new YAHOO.widget.Tooltip("shufflettp",{context:"shuffle",text:_("Turn Shuffle On"),disabled:bDisabled,zIndex:5,effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.3},showDelay:777});this._muteTooltip=new YAHOO.widget.Tooltip("volumettp",{context:"volume",text:_("Mute"),disabled:bDisabled,zIndex:5,effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.3},showDelay:777});this._refreshTooltip=new YAHOO.widget.Tooltip("refreshttp",{context:"refresh",text:_("Refresh Library"),effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.3},showDelay:777});this._renderTooltips(this._constrolsContainer)},_renderMiddle:function(k){console.log("HeaderMediaPlayerPanel::_renderMiddle()");var j=g.createElement("div",{className:"song-info"});this._lyricsElem=g.createElement("div",{className:"lyrics-icon",style:"display:none"});this._lyricsElem.innerHTML="";h.on(this._lyricsElem,"click",this._onLyricsClick,this,true);this._titleElem=g.createElement("div",{className:"title"});this._artistElem=g.createElement("div",{className:"artist"});this._albumElem=g.createElement("div",{className:"album"});g.appendChildren(j,[this._lyricsElem,this._titleElem,this._artistElem,this._albumElem]);var l=g.createElement("div",{id:this._getSubElementName(i.ID_PROGRESSBAR)});this._renderProgressBar(l);this._addProgressBarEventHandlers();g.appendChildren(k,[j,l])},_renderTooltips:function(j){console.log("HeaderMediaPlayerPanel::_renderTooltips()");if(val=f.getValue("player-loop")){this._loopState=parseInt(val);switch(this._loopState){case e.PlaylistLoopOff:this._loopTooltip.cfg.setProperty("text",_("Repeat All Songs"));break;case e.PlaylistLoopAll:this._loopTooltip.cfg.setProperty("text",_("Repeat One Song"));break;case e.PlaylistLoopOne:this._loopTooltip.cfg.setProperty("text",_("Turn Repeat Off"));break}}if(val=f.getValue("player-shuffle")){this._shuffleState=(val=="true");switch(this._shuffleState){case true:this._shuffleTooltip.cfg.setProperty("text",_("Turn Shuffle Off"));break;case false:this._shuffleTooltip.cfg.setProperty("text",_("Turn Shuffle On"));break}}},_renderControls:function(m){console.log("HeaderMediaPlayerPanel::_renderControls()");try{this.buttons={};var j=["shuffle","loop","prev","play","next"];for(var l=0;l<j.length;l++){var k=j[l];this.buttons[k]=g.createElement("div",{id:k,className:"button "+k+"-button"});this.buttons[k].appendChild(g.createElement("a"));m.appendChild(this.buttons[k]);h.on(this.buttons[j[l]],"mousedown",this._handleMousedownEvent,[k],this);h.on(this.buttons[j[l]],"mouseup",this._handleMouseupEvent,[k],this);h.on(this.buttons[j[l]],"click",this._handleClickEvent,[k],this)}var o=null;if(o=f.getValue("player-loop")){this._loopState=parseInt(o);switch(this._loopState){case e.PlaylistLoopOff:break;case e.PlaylistLoopAll:g.replaceClass(this.buttons.loop,"loop-button","loop-all-button");break;case e.PlaylistLoopOne:g.replaceClass(this.buttons.loop,"loop-button","loop-one-button");break}}if(o=f.getValue("player-shuffle")){this._shuffleState=(o=="true");switch(this._shuffleState){case true:g.addClass(this.buttons.shuffle,"enabled");break;case false:g.removeClass(this.buttons.shuffle,"enabled");break}}this._renderVolumeControl(m);this._addHeaderFadingEvents()}catch(n){errorLog(n)}},_renderVolumeControl:function(m){var j=a.IMAGES_PATH;this._volControlContainer=g.createElement("div",{style:"padding-top:10px; position:relative; clear:both;"});this.buttons.volume=g.createElement("div",{id:"volume",className:"volume-button"});this.buttons.volume.appendChild(g.createElement("a"));h.on(this.buttons.volume,"click",this._handleClickEvent,["volume"],this);this._volSliderBg=g.createElement("div",{id:"volsliderbg",style:"position:absolute; top: 15px; left:40px; height:22px; width:94px;"});this._volSliderThumb=g.createElement("div",{id:"volsliderthumb",style:"position:absolute; left: -11px; top: 0px; height:22px; width:22px;"});this._volSliderThumbImg=g.createElement("img",{src:j+"player/volume-indicator.png"});h.on(this._volSliderThumb,"mouseover",function(){this._volSliderThumbImg.src=j+"player/volume-indicator-hover.png"},this,true);h.on(this._volSliderThumb,"mouseout",function(){this._volSliderThumbImg.src=j+"player/volume-indicator.png"},this,true);this._volSliderThumb.appendChild(this._volSliderThumbImg);this._volSliderBg.appendChild(this._volSliderThumb);this._volControlContainer.appendChild(this.buttons.volume);this._volControlContainer.appendChild(this._volSliderBg);m.appendChild(this._volControlContainer);var l=92;this._volSlider=YAHOO.widget.Slider.getHorizSlider("volsliderbg","volsliderthumb",0,l);this._volSlider.animate=false;var k=f.getValue("volume")||0.5;this._volSlider.setValue(k*l);this._volSlider.subscribe("slideStart",this._handleVolSliderSlideStart,this,true);this._volSlider.subscribe("change",this._handleVolSliderSlideEnd,this,true);this._volSlider.subscribe("slideEnd",this._handleVolSliderSlideEnd,this,true)},setItem:function(j){console.log("HeaderMediaplayerPanel::setItem()");if(j==this._currentItem){return}this._finished=false;this._currentItem=j;this._setDetails(this._currentItem);this._progressBar.show();if(a.isIe9){this._handleControlFadeIn()}else{this._handleControlFadeOut()}},setPlayState:function(){g.replaceClass(this.buttons.play,"play-button","pause-button")},setPauseState:function(){g.replaceClass(this.buttons.play,"pause-button","play-button")},updateBufferLength:function(j){this._progressBar.changeBuffer(j)},updateSongLength:function(j){this._progressBar.setSongLength(j)},updateSongPosition:function(j){this._progressBar.changeSongPosition(j)},_addHeaderFadingEvents:function(){console.log("HeaderMediaPlayerPanel::_addHeaderFadingEvents()");if(a.SLOW){return}var j=g.get("hd");h.on(j,"mouseover",this._handleControlFadeIn,this,true);h.on(j,"mouseout",this._handleControlFadeOut,this,true)},_addMenuBarEventHandlers:function(){if(this._menuBar==null){return}this._menuBar.subscribe("click",this._handleClickEvent,this,true)},_addProgressBarEventHandlers:function(){console.log("HeaderMediaPlayerPanel::_addProgressBarEventHandlers()");if(this._progressBar==null){return}this._progressBar.subscribe(c.EVENT_SONGPOSITION,this._handleSongPositionEvent,this,true)},_clearDetails:function(j){this._setDetails({lib:{title:"",artist:"",album:""}},j)},_getSubElementName:function(j){return[this._container.id,"-",j].join("")},_handleControlFadeIn:function(){if(a.SLOW||this._currentItem==null){return}if(a.isIe9){this._controlsContainer.style.opacity=1}else{var j={opacity:{from:parseFloat(g.getStyle(this._controlsContainer,"opacity")),to:1}};if(this._controlFadeAnim!=null&&this._controlFadeAnim.isAnimated()){this._controlFadeAnim.stop()}this._controlFadeAnim=new YAHOO.util.Anim(this._controlsContainer,j,0.5);this._controlFadeAnim.animate()}},_handleControlFadeOut:function(){if(a.SLOW||a.isIe9){return}var k=null;if(this._finished==true){k=i.FADE_NO_SONG;this._disableTooltip(true)}else{k=i.FADE_W_SONG;this._disableTooltip(false)}var j={opacity:{from:parseFloat(g.getStyle(this._controlsContainer,"opacity")),to:k}};if(this._controlFadeAnim!=null&&this._controlFadeAnim.isAnimated()){this._controlFadeAnim.stop()}this._controlFadeAnim=new YAHOO.util.Anim(this._controlsContainer,j,0.5);this._controlFadeAnim.animate()},_disableTooltip:function(j){this._loopTooltip.cfg.setProperty("disabled",j);this._shuffleTooltip.cfg.setProperty("disabled",j);this._muteTooltip.cfg.setProperty("disabled",j)},_handleMousedownEvent:function(l,k){var j=k[0];g.addClass(this.buttons[j],"click")},_handleMouseupEvent:function(l,k){var j=k[0];g.removeClass(this.buttons[j],"click")},_handleClickEvent:function(k,j){console.log("HeaderMediaplayerPanel::_handleClickEvent()");switch(j[0]){case"loop":switch(this._loopState){case e.PlaylistLoopOff:f.setValue("player-loop",e.PlaylistLoopAll);this._loopState=e.PlaylistLoopAll;g.replaceClass(this.buttons.loop,"loop-button","loop-all-button");this._loopTooltip.cfg.setProperty("text",_("Repeat One Song"));break;case e.PlaylistLoopAll:f.setValue("player-loop",e.PlaylistLoopOne);this._loopState=e.PlaylistLoopOne;g.replaceClass(this.buttons.loop,"loop-all-button","loop-one-button");this._loopTooltip.cfg.setProperty("text",_("Turn Repeat Off"));break;case e.PlaylistLoopOne:f.setValue("player-loop",e.PlaylistLoopOff);this._loopState=e.PlaylistLoopOff;g.replaceClass(this.buttons.loop,"loop-one-button","loop-button");this._loopTooltip.cfg.setProperty("text",_("Repeat All Songs"));break}this.fireEvent(b.PANEL_CLICK_LOOP,{loop:this._loopState});break;case"shuffle":this._shuffleState=!this._shuffleState;f.setValue("player-shuffle",this._shuffleState);this.fireEvent(b.PANEL_CLICK_SHUFFLE,{shuffle:this._shuffleState});if(this._shuffleState){g.addClass(this.buttons.shuffle,"enabled");this._shuffleTooltip.cfg.setProperty("text",_("Turn Shuffle Off"))}else{g.removeClass(this.buttons.shuffle,"enabled");this._shuffleTooltip.cfg.setProperty("text",_("Turn Shuffle On"))}break;case"play":if(this._currentItem==null||this._currentItem.state!=1){this.fireEvent(b.PANEL_CLICK_PLAY)}else{this.fireEvent(b.PANEL_CLICK_PAUSE)}break;case"prev":this.fireEvent(b.PANEL_CLICK_SKIPBACK);break;case"next":this.fireEvent(b.PANEL_CLICK_SKIP);break;case"volume":this._muteState=!this._muteState;if(this._muteState){g.addClass(this.buttons.volume,"enabled");this._muteTooltip.cfg.setProperty("text",_("Unmute"))}else{g.removeClass(this.buttons.volume,"enabled");this._muteTooltip.cfg.setProperty("text",_("Mute"))}this.fireEvent(b.PANEL_CLICK_MUTE,{mute:this._muteState});break;case"magic":if(this._currentItem){this.fireEvent(b.PANEL_CLICK_MAGIC,{item:this._currentItem})}break;default:break}},_handleSongPositionEvent:function(j){console.log("_handleSongPositionEvent()");this.fireEvent(b.PANEL_CLICK_JUMPTO,j)},_handleVolSliderSlideStart:function(){this._volSliderThumbImg.src=a.IMAGES_PATH+"player/volume-indicator-click.png"},_handleVolSliderSlideEnd:function(){this._volSliderThumbImg.src=a.IMAGES_PATH+"player/volume-indicator.png";var j={vol:parseFloat((this._volSlider.getValue()/92).toPrecision(3))};this.fireEvent(b.PANEL_CLICK_VOLUME,j)},_removeMenuBarEventHandlers:function(){if(this._menuBar==null){return}this._menuBar.unsubscribe("click",this._handleClickEvent,this,true)},_removeProgressBarEventHandlers:function(){if(this._progressBar==null){return}this._progressBar.unsubscribe(c.EVENT_SONGPOSITION,this._handleSongPositionEvent,this,true)},_renderProgressBar:function(j){this._progressBar=new c(j.id,370,j)},_renderMenuBar:function(){this._menuBar=new YAHOO.widget.MenuBar(this._getSubElementName(i.ID_MENUBAR));this._menuBar.clearContent();this._menuBar.addItems(i._BUTTON_LIST);this._menuBar.render()},_setDetails:function(n,m){console.log("HeaderMediaPlayerPanel::_setDetails()");var q=null;this._coverArtContainer.style.display="";this._controlsContainer.style.display="";this._titleElem.innerHTML=n.lib.title;var j=n.lib.artist||"",l=j;if(q){var p="webRadio.loadPage('Artist', '"+j+"', '"+q+"')";l='<a href="javascript:'+p+'">'+l+"</a>"}this._artistElem.innerHTML=l;var k=n.lib.album||"",o=k;if(q){var p="webRadio.loadPage('Album', '"+j+"', '"+k+"', '"+q+"')";o='<a href="javascript:'+p+'">'+o+"</a>"}this._albumElem.innerHTML=o;this._lyricsElem.style.display=(n.lib.amg_id&&n.lib.has_lyrics)?"":"none";if(n.lib.id){this._coverArt.updateImage(a.COVER_ART_URL+"?w=135&h=135&id="+n.lib.id+"&hash="+a.USER_HASH);this._backgroundCoverArt.updateImage(a.COVER_ART_URL+"?id="+n.lib.id+"&cmd=bkg1&hash="+a.USER_HASH)}else{if(m){this._coverArt.updateImage("");this._backgroundCoverArt.updateImage("")}}},_onLyricsClick:function(){if(bgWindow){chrome.tabs.create({url:"https://www.mspot.com/music/player#page=Lyrics&args=Lyrics%7C"+this._currentItem.lib.amg_id})}else{webRadio.loadPage("Lyrics",this._currentItem.lib.amg_id)}}});mspot.namespace("ui").HeaderMediaPlayerPanel=i})();
/* ui/TextQuote.js */
(function(){var a=YAHOO.util.Dom;var b=function(){this._textQuoteElem=a.createElement("div",{style:"position: absolute; left: 0; top: 0; display: none;"});this._textQuoteElemSwap=a.createElement("div",{style:"position: absolute; left: 0; top: 0; display: none;"})};YAHOO.extend(b,YAHOO.util.Element,{_container:null,_textQuoteElem:null,_textQuoteElemSwap:null,render:function(c){this._container=c;this._container.appendChild(this._textQuoteElem);this._container.appendChild(this._textQuoteElemSwap)},updateText:function(d,c){if(mspot.isUndefined(c)){c=0.5}this._container.style.display="";if(d!=""){if(this._textQuoteElem.style.display==""){this._textFadeOut(d,c);this._textFadeIn(d,c)}else{this._textFadeIn(d,c)}}else{if(clearImages){this._textQuoteElem.src="";this._textQuoteElem.style.display="none"}}},_textFadeIn:function(g,c){var e=this;var f=document.createElement("div");f.innerHTML=g;f.style.position="absolute";f.style.background="white";var h=e._textQuoteElem.parentNode;h.removeChild(e._textQuoteElem);h.insertBefore(f,h.firstChild);e._textQuoteElem=f;a.setStyle(e._textQuoteElem,"opacity",0);if(e._textQuoteElem.style.display==""){if(e._textFadeInAnim!=null){e._textFadeInAnim.stop()}var d={opacity:{from:0,to:1}};e._textFadeInAnim=new YAHOO.util.Anim(e._textQuoteElem,d,c);YAHOO.util.AnimMgr.fps=100;e._textFadeInAnim.animate()}},_textFadeOut:function(g,c){var e=this;if(this._textQuoteElem.style.display==""){var f=document.createElement("div");f.style.position="absolute";f.style.background="white";f.innerHTML=this._textQuoteElem.innerHTML;var h=this._textQuoteElemSwap.parentNode;h.removeChild(this._textQuoteElemSwap);h.insertBefore(f,h.firstChild);this._textQuoteElemSwap=f;a.setStyle(this._textQuoteElemSwap,"opacity",1)}if(e._textQuoteElemSwap.style.display==""){if(e._textFadeOutAnim!=null){e._textFadeOutAnim.stop()}var d={opacity:{from:1,to:0}};e._textFadeOutAnim=new YAHOO.util.Anim(e._textQuoteElemSwap,d,c);var i=function(){e._textQuoteElemSwap.innerHTML=e._textQuoteElem.innerHTML};e._textFadeOutAnim.onComplete.subscribe(i);YAHOO.util.AnimMgr.fps=100;e._textFadeOutAnim.animate()}e._textQuoteElem.style.display=""}});mspot.namespace("ui").TextQuote=b})();
/* util/signinUtil.js */
var signinUtil={nextImage:0,img:new mspot.ui.CoverArt("900px","600px"),autoSubmit:function(a){if(a.keyCode===13){document.getElementById("loginForm").submit()}},autoText:function(a,b){if(a.value!==b&&a.value!==""){a.style.color="#000000";return}a.value=b;a.onfocus=function(){if(a.value===b){a.value="";a.style.color="#000000"}};a.onblur=function(){if(a.value===""){a.value=b;a.style.color="#999999"}}},autoSwap:function(b,a){a.onfocus=function(){signinUtil._swap(a,b)};b.onblur=function(){if(b.value===""){signinUtil._swap(a,b)}}},_swap:function(b,a){switch(b.style.visibility){case"hidden":b.style.visibility="visible";a.style.visibility="hidden";break;default:b.style.visibility="hidden";a.style.visibility="visible";a.focus();break}},showErrorPopup:function(c,b,d){if(typeof dialog==="undefined"||!dialog){dialog=new YAHOO.widget.Dialog("messagePopup",{autofillheight:true,close:false,draggable:false,fixedcenter:true,modal:true,postmethod:"form",underlay:"shadow",zIndex:999,width:"400px",buttons:[{text:b,handler:function(){dialog.cancel();if(typeof d!=="undefined"&&d){window.location="home"}}}]})}dialog.setHeader("");dialog.setBody(c);var a=document.body;dialog.render(a);dialog.show()},transition:function(a){this.img.updateImage(a[this.nextImage],3);this.nextImage+=1;if(this.nextImage>=a.length){this.nextImage=0}setTimeout(function(){signinUtil.transition(a)},6000)}};
/* manager/PlaylistManager.js */
(function(){var h=mspot.model.Playlist,f=mspot.Settings,b=mspot.app.PlaylistFactory,d=mspot.ui.FilterList,g=mspot.programmer.PlaylistProgrammer,e=YAHOO.util.Dom,a=YAHOO.util.Event;var c=function(j){this.createEvent(c.PLAY_PLAYLIST);this.createEvent(c.TOGGLE_FILTERS);this.createEvent(c.TOGGLE_FILTER_HANDLE);this.createEvent("dragItemToMenu");this._element=e.createElement("div",{"class":"playlist-manager"});this._filterLists={genre:new d("genreFilterList",{title:_("Genre"),name:"genre",items:[]}),artist:new d("artistFilterList",{title:_("Artist"),name:"artist",items:[]}),album:new d("albumFilterList",{title:_("Album"),name:"album",items:[]})};for(var i in this._filterLists){this._filterLists[i].subscribe("itemClickEvent",this._onFilterSelect,i,this)}this._table=new mspot.ui.InfiniteSongsTable("songsTable",{},mspot.ui.InfiniteSongsTable.PLAYLIST_COLUMNS,h.LIBRARY_ID);this._table.subscribe("itemDoubleClick",this._onSongDoubleClick,this,true);this._table.subscribe("dragItemToMenu",function(k){k.items=[];for(var l=0;l<k.selectedIndexes.length;l++){var m=this._playlist.getItem(k.selectedIndexes[l]);if(m.libId){k.items.push(m)}}this.fireEvent("dragItemToMenu",k)},this,true)};YAHOO.lang.augmentObject(c,{PLAY_PLAYLIST:"playPlaylist",TOGGLE_FILTERS:"toggleFiltersEvent",TOGGLE_FILTER_HANDLE:"toggleFilterHandle",PLAYLIST_BUFFER:100});c.prototype={_filterLists:null,_showFilterLists:true,_enableFilterLists:true,_table:null,_playlist:null,getSongsTable:function(){return this._table},showFilterLists:function(){if(this._showFilterLists||!this._enableFilterLists){return}this._showFilterLists=true;this._topPanel.style.display="";this.fireEvent(c.TOGGLE_FILTERS)},hideFilterLists:function(){if(!this._showFilterLists){return}this._showFilterLists=false;this._topPanel.style.display="none";this.fireEvent(c.TOGGLE_FILTERS)},toggleFilterLists:function(){if(this._showFilterLists){this.hideFilterLists()}else{this.showFilterLists()}},enableFilterLists:function(){if(this._enableFilterLists==true&&this._filtersHandle.style.display==""){return}this._enableFilterLists=true;this._filtersHandle.style.display="";this.fireEvent(c.TOGGLE_FILTER_HANDLE)},disableFilterLists:function(){if(this._enableFilterLists==false&&this._filtersHandle.style.display=="none"){return}this._enableFilterLists=false;this.hideFilterLists();this._filtersHandle.style.display="none";this.fireEvent(c.TOGGLE_FILTER_HANDLE)},filterListsVisible:function(){return this._showFilterLists},destroy:function(){console.log("PlaylistManager::destroy()");this._table.destroy()},render:function(i){console.log("PlaylistManager::render()");i=e.get(i);i.innerHTML=_("Loading...");this._element=e.createElement("div",{"class":"playlist-manager"});this._topPanel=e.createElement("div",{id:"libraryFiltersContainer"});this._element.appendChild(this._topPanel);this._renderTop(this._topPanel);this._filtersSeparator=e.createElement("div",{className:"filters-separator"});this._filtersHandle=e.createElement("div",{className:"filters-handle",id:"libraryFiltersHandle"});this._filtersSeparator.appendChild(this._filtersHandle);this._element.appendChild(this._filtersSeparator);a.on(this._filtersHandle,"click",this.toggleFilterLists,this,true);this._bottomPanel=e.createElement("div",{id:"libraryPlaylistContainer"});this._element.appendChild(this._bottomPanel);this._renderBottom(this._bottomPanel);i.innerHTML="";i.appendChild(this._element);this._showFilterLists=true;this.hideFilterLists()},updatePlaylist:function(i){this._playlistInfo.provider.partialUpdate(i)},_renderTop:function(i){var l=e.createElement("div",{"class":"yui-gb"});var m=true;for(var j in this._filterLists){var k=e.createElement("div",{"class":"yui-u"});if(m){e.addClass(k,"first");m=false}this._filterLists[j].render(k);l.appendChild(k)}i.appendChild(l)},_renderBottom:function(i){var j=e.createElement("div");i.appendChild(j);this._table.render(j)},getPlaylist:function(){return this._playlist},loadPlaylist:function(m,k,l){k=k||{};if(k.keyword){this.disableFilterLists();if(this._playlist&&this._playlist.getId()==h.LIBRARY_ID){this._playlist.setKeyword(k.keyword);return}}if(k.type=="playlist"||k.type=="rmx"||k.type=="library"){if(typeof bgWindow!=="undefined"&&bgWindow!==null){if(l){if(bgWindow.manager){bgWindow.remoteStop()}result=bgWindow.PlaylistFactory.getPartialSavedPlaylist(m,c.PLAYLIST_BUFFER,k);bgWindow.remotePlay(webRadio.mediaPlayerPanel,result.programmer)}else{if(bgWindow.manager){bgWindow.remoteAttach(webRadio.mediaPlayerPanel)}else{}}}else{result=b.getPartialSavedPlaylist(m,c.PLAYLIST_BUFFER,k)}}else{if(k.type=="magic"){result=b.getMagicPlaylist(k.libId,k.seed)}}if(result!=null){result.playlist.setSrc(k.type)}this._playlistInfo=result;this._setPlaylist(result.playlist);var i=webRadio.getCurrentPlaylist()==result.playlist;var j=webRadio.getCurrentSong()&&webRadio.getCurrentSong.libId==k.libId;if(k.type=="magic"&&(!j||!i)){result.programmer.setNextItem({libId:k.libId,id:k.id});this.fireEvent(c.PLAY_PLAYLIST,{programmer:result.programmer})}},unloadPlaylist:function(){if(!this._playlist){return}this._table.unloadPlaylist();this._playlistInfo=null;this._playlist=null},_setPlaylist:function(l){var i=(l==this._playlist);this._playlist=l;this._table.setPlaylist(l);for(var j in this._filterLists){var k=this._playlist.getFilters(j);if(k){this._setFilters({name:j,filters:k})}}if(!i){l.subscribe(h.FILTERS_SET_EVENT,this._setFilters,this,true)}if((l.getId()==h.LIBRARY_ID&&!l.getKeyword())||l.getId()>100){this.enableFilterLists()}else{this.disableFilterLists()}},_setFilters:function(i){var j="";switch(i.name){case"genre":j=mspot.util.initialCap(_("genre","genres",i.filters.length));break;case"artist":j=mspot.util.initialCap(_("artist","artists",i.filters.length));break;case"album":j=mspot.util.initialCap(_("album","albums",i.filters.length));break}var k=i.filters.slice(0);k.unshift(_("All")+" ("+i.filters.length+" "+j+")");this._filterLists[i.name].setItems(k)},_onFilterSelect:function(i,j){var k=this._playlist.getActiveFilters();if(i.item.index==0){delete k[j]}else{k[j]=i.item.text}if(j=="genre"){delete k.artist}if(j=="genre"||j=="artist"){delete k.album}this._playlist.setActiveFilters(k)},_onSongDoubleClick:function(j){try{var i=this._playlistInfo.programmer;if(i instanceof g){i.setNextItem(j)}this.fireEvent(c.PLAY_PLAYLIST,{programmer:i})}catch(k){errorLog(k)}}};YAHOO.lang.augmentProto(c,YAHOO.util.EventProvider);mspot.namespace("manager").PlaylistManager=c})();
/* manager/FavoritePlaylistManager.js */
(function(){var f=mspot.model.Playlist,c=mspot.app.PlaylistFactory,e=mspot.programmer.PlaylistProgrammer,d=YAHOO.util.Dom,b=YAHOO.util.Event;var a=function(g){this.createEvent("dragItemToMenu");this._element=d.createElement("div",{"class":"playlist-manager"});this._table=new mspot.ui.InfiniteSongsTable("songsTable",{},mspot.ui.InfiniteSongsTable.FAVORITE_COLUMNS,f.FAVORITE_ID)};YAHOO.lang.augmentObject(a,{PLAY_PLAYLIST:"playPlaylist",PLAYLIST_BUFFER:100});a.prototype={_table:null,_playlist:null,getSongsTable:function(){return this._table},render:function(g){console.log("FavoritePlaylistManager::render()");g=d.get(g);g.innerHTML=_("Loading...");this._element=d.createElement("div",{"class":"playlist-manager"});this._bottomPanel=d.createElement("div",{id:"libraryPlaylistContainer"});this._element.appendChild(this._bottomPanel);this._renderBottom(this._bottomPanel);g.innerHTML="";g.appendChild(this._element)},updatePlaylist:function(g){this._playlistInfo.provider.partialUpdate(g)},filterListsVisible:function(){return false},_renderTop:function(g){},_renderBottom:function(g){var h=d.createElement("div");g.appendChild(h);this._table.render(h)},destroy:function(){console.log("FavoritePlaylistManager::destroy()");this._table.destroy()},getPlaylist:function(){return this._playlist},loadPlaylist:function(h,g){console.log("FavoritePlaylistManager::loadPlaylist()");g=g||{};if(g.keyword){if(this._playlist&&this._playlist.getId()==f.LIBRARY_ID){this._playlist.setKeyword(g.keyword);return}}result=c.getFavoritePlaylist();if(result!=null){result.playlist.setSrc(g.type)}this._playlistInfo=result;this._setPlaylist(result.playlist)},unloadPlaylist:function(){if(!this._playlist){return}this._table.unloadPlaylist();this._playlistInfo=null;this._playlist=null},_setPlaylist:function(h){console.log("FavoritePlaylistManager::_setPlaylist()");var g=(h==this._playlist);this._playlist=h;this._table.setPlaylist(h)}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("manager").FavoritePlaylistManager=a})();
/* manager/ErrorPlaylistManager.js */
(function(){var f=mspot.model.Playlist,b=mspot.app.PlaylistFactory,e=mspot.programmer.PlaylistProgrammer,d=YAHOO.util.Dom,a=YAHOO.util.Event;var c=function(g){this.createEvent("dragItemToMenu");this._element=d.createElement("div",{"class":"playlist-manager"});this._table=new mspot.ui.InfiniteSongsTable("songsTable",{},mspot.ui.InfiniteSongsTable.ERROR_COLUMNS,f.ERROR_ID)};YAHOO.lang.augmentObject(c,{PLAY_PLAYLIST:"playPlaylist",PLAYLIST_BUFFER:100});c.prototype={_table:null,_playlist:null,getSongsTable:function(){return this._table},render:function(g){console.log("ErrorPlaylistManager::render()");g=d.get(g);g.innerHTML=_("Loading...");this._element=d.createElement("div",{"class":"playlist-manager"});this._bottomPanel=d.createElement("div",{id:"libraryPlaylistContainer"});this._element.appendChild(this._bottomPanel);this._renderBottom(this._bottomPanel);g.innerHTML="";g.appendChild(this._element)},updatePlaylist:function(g){this._playlistInfo.provider.partialUpdate(g)},filterListsVisible:function(){return false},_renderTop:function(g){},_renderBottom:function(g){var h=d.createElement("div");g.appendChild(h);this._table.render(h)},destroy:function(){console.log("ErrorPlaylistManager::destroy()");this._table.destroy()},getPlaylist:function(){return this._playlist},loadPlaylist:function(h,g){console.log("ErrorPlaylistManager::loadPlaylist()");g=g||{};if(g.keyword){if(this._playlist&&this._playlist.getId()==f.LIBRARY_ID){this._playlist.setKeyword(g.keyword);return}}result=b.getErrorPlaylist();if(result!=null){result.playlist.setSrc(g.type)}this._playlistInfo=result;this._setPlaylist(result.playlist)},unloadPlaylist:function(){if(!this._playlist){return}this._table.unloadPlaylist();this._playlistInfo=null;this._playlist=null},_setPlaylist:function(h){console.log("ErrorPlaylistManager::_setPlaylist()");var g=(h==this._playlist);this._playlist=h;this._table.setPlaylist(h)}};YAHOO.lang.augmentProto(c,YAHOO.util.EventProvider);mspot.namespace("manager").ErrorPlaylistManager=c})();
/* manager/SearchManager.js */
(function(){var a=YAHOO.util.Event,b=YAHOO.util.Dom,d=mspot.model.Playlist;var c=function(){YAHOO.lang.augmentObject(c,{SEARCH_EVENT:"searchEvent",DEFAULT_VALUE:_("Search")});this.createEvent(c.SEARCH_EVENT)};c.prototype={_searchInput:null,render:function(h){var g=b.createElement("div",{className:"form"});var i=b.createElement("div",{className:"text-box"});var f=b.createElement("input",{type:"text",name:"q",autocomplete:"off"});var e=b.createElement("div",{className:"clear"});a.on(f,"keypress",this._onKeyPress,this,true);a.on(f,"focus",this._onFocus,this,true);a.on(f,"blur",this._onBlur,this,true);a.on(e,"click",this._onClear,this,true);i.appendChild(f);i.appendChild(e);g.appendChild(i);h.appendChild(g);this._searchInput=f;this._onBlur()},destroy:function(){},getKeyword:function(){return b.hasClass(this._searchInput.parentNode,"blur")?null:this._searchInput.value},_onKeyPress:function(h){var g=window.event?h.keyCode:h.which;if(g==a.KEY_RETURN){var f=this._searchInput.value;this.fireEvent(c.SEARCH_EVENT,{keyword:f})}},_onFocus:function(){var e=this._searchInput;if(b.hasClass(e.parentNode,"blur")){e.value="";b.removeClass(e.parentNode,"blur")}},_onBlur:function(){var e=this._searchInput;if(e.value==""){e.value=c.DEFAULT_VALUE;b.addClass(e.parentNode,"blur")}},_onClear:function(){var e=this._searchInput;e.value="";e.focus();this.fireEvent(c.SEARCH_EVENT,{keyword:null})}};YAHOO.lang.augmentProto(c,YAHOO.util.EventProvider);mspot.namespace("manager").SearchManager=c})();
/* manager/MenuManager.js */
(function(){var d=mspot.model.Menu,c=mspot.ui.MenuPanel,e=mspot.api.MenuService,f=mspot.model.Playlist,b=mspot.provider.MenuProvider;DeviceProvider=mspot.provider.DeviceProvider;var a=function(g){this._menu=new d("3206");this._menuProvider=new b(this._menu);this._devMenu=new d("3207");this._deviceProvider=new DeviceProvider(this._devMenu);if(g!=null){this._menuPanel=g.getMenuPanel()}else{this._menuPanel=null}this._page=g;this.createEvent(a.MANAGER_LOAD_PLAYLIST);this.createEvent(a.MANAGER_UNLOAD_PLAYLIST);this.createEvent(a.MANAGER_CHANGE_PLAYLIST);this.createEvent(a.MANAGER_DRAGDROP_PLAYLIST);this.onMenuEvent(d.ITEM_ADD_EVENT,this.onAddEvent);this.onMenuEvent(d.ITEM_DELETE_EVENT,this.onDeleteEvent);this.onMenuEvent(d.ITEM_CHANGE_EVENT,this.onChangeEvent);this.name="manager"};YAHOO.lang.augmentObject(a,{MANAGER_LOAD_PLAYLIST:"loadPlaylist",MANAGER_UNLOAD_PLAYLIST:"unloadPlaylist",MANAGER_CHANGE_PLAYLIST:"changePlaylist",MANAGER_DRAGDROP_PLAYLIST:"dragDropPlaylist"});a.prototype={name:"manager",_name:"manager",_menuDefault:0,_menu:{},_devMenu:{},_menuProvider:{},_deviceProvider:{},_application:{},_currentPlaylistId:{},_menuPanel:{},destroy:function(){this.offMenuEvent(d.ITEM_ADD_EVENT,this.onAddEvent);this.offMenuEvent(d.ITEM_DELETE_EVENT,this.onDeleteEvent);this.offMenuEvent(d.ITEM_CHANGE_EVENT,this.onChangeEvent);this.offMenuPanelEvent(c.ITEM_CLICK_EVENT,this.onClickEvent);this.offMenuPanelEvent(c.ITEM_DCLICK_EVENT,this.onClickEvent);this._menuProvider.destroy();this._deviceProvider.destroy();this._menu.destroy();this._devMenu.destroy();this._menuPanel.destroy()},onMenuPanelEvent:function(g,i,h){if(!h){h=this}this._menuPanel.subscribe(g,i,h,true)},offMenuPanelEvent:function(g,i,h){if(!h){h=this}this._menuPanel.unsubscribe(g,i,h)},onMenuEvent:function(g,i,h){if(!h){h=this}this._menu.subscribe(g,i,h,true);this._devMenu.subscribe(g,i,h,true)},offMenuEvent:function(g,i,h){if(!h){h=this}this._menu.unsubscribe(g,i,h);this._devMenu.unsubscribe(g,i,h)},isCurrentPlaylist:function(h,g){if(this._currentPlaylistId==h){return true}return false},selectPlaylist:function(h){var g=this._menuPanel.findNodePlaylist({id:h,formattype:"http/library"});if(g){this._menuPanel.selectNode(g,null)}},onAddEvent:function(g){if(g.src==this.name){return}if(this._menuPanel!=null){this._menuPanel.onAddItem(-1,g.id,g.item)}},onDeleteEvent:function(g){if(g.src==this.name){return}var h=g.item;this._currentPlaylistId=0;if(this.isCurrentPlaylist(g.id,h)){this.fireEvent(a.MANAGER_UNLOAD_PLAYLIST,{src:this.name,id:g.id,item:h})}if(this._menuPanel!=null){this._menuPanel.onDeleteItem(-1,g.id,g.item)}},onChangeEvent:function(g){if(g.src==this.name){return}var h=this._menu.getItem(g.id);if(this.isCurrentPlaylist(g.id,h)){this.fireEvent(a.MANAGER_CHANGE_PLAYLIST,{src:this.name,id:g.id,item:h})}if(this._menuPanel!=null){this._menuPanel.onChangeItem(-1,g.id,g.item)}},onClickEvent:function(g){var h=g.node.data;if("http/device"!==h.formattype&&this.isCurrentPlaylist(h.id,h)==false){this.fireEvent(a.MANAGER_LOAD_PLAYLIST,{src:this.name,id:h.id,item:h,useraction:g.useraction});this._currentPlaylistId=h.id}},onDragDropEvent:function(g){var h=this._menu.getItem(g.id);this.fireEvent(a.MANAGER_DRAGDROP_PLAYLIST,{src:this.name,id:g.id,item:h,added:g.dropped})},onAddPlaylist:function(g){if(g.autoplay){this._menuDefault=0}this._menu.addItem(g.index,g.item,this.name+"manual")},onDeletePlaylist:function(g){this._menu.deleteItem(g.id,this.name+"manual")},onDeleteItem:function(g){this._menu.deleteItem(g.id,this.name+"manual");this._devMenu.deleteItem(g.id,this.name+"manual")},onChangeItem:function(g){this._menu.changeItem(g.id,g.item,this.name+"manual");if(typeof g.item.newName!=="undefined"){this._devMenu.changeItem(g.id,g.item,"provider")}},onChangePlaylist:function(g){this.onChangeItem(g)},createMagicPlaylist:function(g){this._menuPanel.setMagicNode(g.lib.title,g.libId,0)},render:function(g){this._menuPanel.render(g);this._menuProvider.load();this._deviceProvider.load();this.onMenuPanelEvent(c.ITEM_CLICK_EVENT,this.onClickEvent,this);this.onMenuPanelEvent(c.ITEM_DCLICK_EVENT,this.onClickEvent,this);this.onMenuPanelEvent(c.ITEM_ADD_EVENT,this.onAddPlaylist,this);this.onMenuPanelEvent(c.ITEM_DELETE_EVENT,this.onDeleteItem,this);this.onMenuPanelEvent(c.ITEM_CHANGE_EVENT,this.onChangeItem,this);return""},getPlaylistIdByElement:function(g){return this._menuPanel.getMenuItemByElement(g).id}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("manager").MenuManager=a})();
/* manager/StatusManager.js */
(function(){var b=YAHOO.util.Event,c=YAHOO.util.Dom,d=mspot.Session;var a=function(){YAHOO.lang.augmentObject(a,{UPLOAD_STATUS_MSG:"{songNumber} of {numSongs} songs uploaded",STORAGE_MSG:"{used} "+_("of")+" {total} "+_("GBs used (actual)")})};a.prototype={render:function(e){this._pcStatusElem=c.createElement("div",{className:"pc-status yui-u"});this._storageElem=c.createElement("div",{className:"storage yui-u first"});this._uploadingElem=c.createElement("div",{className:"currently-uploading yui-u"});c.appendChildren(e,[this._storageElem,this._uploadingElem,this._pcStatusElem]);if(this._lastResult){this.setStatus(this._lastResult)}else{if(d.getValue("lastUserResult")){this.setStatus(d.getValue("lastUserResult"))}}},setStatus:function(e){var g=true;if(e.success){if(this._pcStatusElem){var f=e.user;this.setUserStatus(f);this.setStorageUsage(f.storage.total,f.storage.used,f.storage.upgradable);this.setCurrentlyUploading((f.current_song&&f.pc_connected==1)?f.current_song.title:"")}else{this._lastResult=e}}},setUserStatus:function(e){var f=Math.max(1,e.current_song_size/1048576)*300;if(e.pc_connected!=1||(e.storage.total-2000>e.storage.used&&e.songs.total>e.songs.synced&&e.songs.current_time-e.songs.last_synced>f&&e.songs.notSynced>0)){html='<div title="'+_("The Uploader is either off or stalled. Please start or exit/re-start to get it going.")+'"><span class="warning-icon"></span><span>'+_("Check Uploader")+"</span></div>";this._pcStatusElem.innerHTML=html}else{this._pcStatusElem.innerHTML=""}},setPcStatus:function(e){if(e==1){html=""}else{html='<div title="'+_("The Uploader is either off or stalled. Please start or exit/re-start to get it going.")+'"><span class="disconnected-icon"></span><span style="display: inline-block;">'+_("Check Uploader")+"</span></div>"}this._pcStatusElem.innerHTML=html},setStorageUsage:function(h,g,k){var e=(g/1024/1024).toFixed(2),f=h/1024/1024;var i="";if(k){var j="return mspot.util.tryLoadPage('MyAccount','plan-info')";i='<span style="padding-left: 20px;"><a style="font-size: 11px;"  href="#" onclick="'+j+'">'+_("Get more storage")+"</a></span>"}this._storageElem.innerHTML=YAHOO.lang.substitute(a.STORAGE_MSG,{used:e,total:f})+i},setCurrentlyUploading:function(e){this._uploadingElem.innerHTML=e?(_("Now Uploading: ")+mspot.util.shortName(e)):"&nbsp;"},destroy:function(){}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("manager").StatusManager=a})();
/* manager/PlayerManager.js */
(function(){var c=mspot.ui.MediaPlayerPanel,b=mspot.app.PlaylistFactory,f=mspot.Settings,a=YAHOO.util.Event,e=mspot.Session;var d=function(h,i,g){this.createEvent(d.SONG_BEGIN);this.createEvent(d.SONG_END);this.createEvent(d.SONG_RESUME);this.createEvent(d.SONG_PAUSE);this.createEvent(d.START);this.createEvent(d.STOP);this._mediaPlayer=i;this._playerPanel=g;this._page=h;this._addMediaPlayerEvents()};YAHOO.lang.augmentObject(d,{SONG_BEGIN:"managerSongBegin",SONG_END:"managerSongEnd",SONG_RESUME:"managerSongResume",SONG_PAUSE:"managerSongPause",START:"managerStart",STOP:"managerStop"});d.prototype={_mediaPlayer:null,_playerPanel:null,_page:null,_programmer:null,_vol:1,_mute:1,_currentItem:null,getCurrentItem:function(){return this._currentItem},getCurrentPlaylist:function(){if(this._programmer){return this._programmer.getPlaylist()}return null},destroy:function(){this._mediaPlayer.stop();this._removeMediaPlayerEvents()},attach:function(g){this._playerPanel=g;this._removeMediaUIEvents();this._addMediaUIEvents();this._removeMediaEvents();this._addMediaEvents();if(this._lastSong){this._handleSongBeginEvent(this._lastSong);if(this._mediaPlayer.isPlaying&&this._playerPanel){this._playerPanel.setPlayState()}}},detach:function(){this._playerPanel=null},stop:function(){this._lastSong=null;this.detach()},loadProgrammer:function(g,h){if(YAHOO.lang.isUndefined(h)){h=false}if(h){this._mediaPlayer.stop()}if(this._programmer){b.unregister(this._programmer.getPlaylist())}this._programmer=g;e.setValue("currentPlaylist",g.getPlaylist());b.register(this._programmer.getPlaylist());this._mediaPlayer.setProgrammer(this._programmer);if(!this._mediaPlayer){}if(h){this._mediaPlayer.play()}},unloadProgrammer:function(){e.setValue("currentPlaylist",null);this._mediaPlayer.stop();this._programmer=null},_addMediaUIEvents:function(){if(this._playerPanel){this._playerPanel.subscribe(c.PANEL_CLICK_JUMPTO,this._handleJumpToClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_LOOP,this._handleLoopClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_MUTE,this._handleMuteClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_PAUSE,this._handlePauseClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_PLAY,this._handlePlayClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_SHUFFLE,this._handleShuffleClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_SKIPBACK,this._handleSkipBackClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_SKIP,this._handleSkipClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_STOP,this._handleStopClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_VOLUME,this._handleVolumeClickEvent,this,true);this._playerPanel.subscribe(c.PANEL_CLICK_MAGIC,this._handleMagicClickEvent,this,true)}},_addMediaEvents:function(){this._mediaPlayer.subscribe("buffer",this._handleBufferEvent,this,true);this._mediaPlayer.subscribe("error",this._handleErrorEvent,this,true);this._mediaPlayer.subscribe("songPosChange",this._handleSongPosChangeEvent,this,true);this._mediaPlayer.subscribe("loadBegin",this._handleLoadBeginEvent,this,true);this._mediaPlayer.subscribe("songBegin",this._handleSongBeginEvent,this,true);this._mediaPlayer.subscribe("songEnd",this._handleSongEndEvent,this,true);this._mediaPlayer.subscribe("songResume",this._handleSongResumeEvent,this,true);this._mediaPlayer.subscribe("songPause",this._handleSongPauseEvent,this,true);this._mediaPlayer.subscribe("start",this._handleStartEvent,this,true);this._mediaPlayer.subscribe("stop",this._handleStopEvent,this,true)},_addMediaPlayerEvents:function(){this._addMediaUIEvents();this._addMediaEvents()},_removeMediaUIEvents:function(){if(this._playerPanel){this._playerPanel.unsubscribe(c.PANEL_CLICK_JUMPTO,this._handleJumpToClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_LOOP,this._handleLoopClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_PAUSE,this._handlePauseClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_PLAY,this._handlePlayClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_SHUFFLE,this._handleShuffleClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_SKIPBACK,this._handleSkipBackClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_SKIP,this._handleSkipClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_STOP,this._handleStopClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_VOLUME,this._handleVolumeClickEvent,this,true);this._playerPanel.unsubscribe(c.PANEL_CLICK_MAGIC,this._handleMagicClickEvent,this,true)}},_removeMediaEvents:function(){this._mediaPlayer.unsubscribe("buffer",this._handleBufferEvent,this,true);this._mediaPlayer.unsubscribe("error",this._handleErrorEvent,this,true);this._mediaPlayer.unsubscribe("songPosChange",this._handleSongPosChangeEvent,this,true);this._mediaPlayer.unsubscribe("loadBegin",this._handleLoadBeginEvent,this,true);this._mediaPlayer.unsubscribe("songBegin",this._handleSongBeginEvent,this,true);this._mediaPlayer.unsubscribe("songEnd",this._handleSongEndEvent,this,true);this._mediaPlayer.unsubscribe("songResume",this._handleSongResumeEvent,this,true);this._mediaPlayer.unsubscribe("songPause",this._handleSongPauseEvent,this,true);this._mediaPlayer.unsubscribe("start",this._handleStartEvent,this,true);this._mediaPlayer.unsubscribe("stop",this._handleStopEvent,this,true)},_removeMediaPlayerEvents:function(){this._removeMediaUIEvents();this._removeMediaEvents()},_handleJumpToClickEvent:function(g){ms=g.songPosition;this._mediaPlayer.jumpTo(ms)},_handleLoopClickEvent:function(g){loop=g.loop;this._programmer.setLoop(loop)},_handleMuteClickEvent:function(g){mute=g.mute;this._mute=mute?0:1;this._mediaPlayer.setVolume(this._vol*this._mute)},_handlePauseClickEvent:function(){this._mediaPlayer.pause()},_handlePlayClickEvent:function(){this._mediaPlayer.play()},_handleShuffleClickEvent:function(g){var h=g.shuffle;this._programmer.setShuffle(h)},_handleSkipBackClickEvent:function(){this._mediaPlayer.rewind()},_handleSkipClickEvent:function(){this._mediaPlayer.skip();if(chrome.browserAction){chrome.browserAction.setIcon({path:"images/wait.gif"})}},_handleStopClickEvent:function(){this._mediaPlayer.stop()},_handleMagicClickEvent:function(g){var h=g.item;webRadio.createMagicPlaylist(h)},_handleVolumeClickEvent:function(g){this._vol=g.vol;this._mediaPlayer.setVolume(this._vol*this._mute);e.setValue("volume",this._vol)},handleVolumeChange:function(g){this._vol+=g;if(this._vol>1){this._vol=1}if(this._vol<0){this._vol=0}this._mediaPlayer.setVolume(this._vol*this._mute);e.setValue("volume",this._vol)},_handleBufferEvent:function(){if(this._playerPanel){this._playerPanel.updateBufferLength(this._mediaPlayer.getBufferLength())}if(chrome.browserAction){chrome.browserAction.setIcon({path:"images/wait.gif"})}},_handleErrorEvent:function(){webRadio.showDialogBox("Error!",'<div style="padding: 30px;">Unable to load song</div>',[]);if(chrome.browserAction){chrome.browserAction.setIcon({path:"images/exclaim.png"})}},_handleSongPosChangeEvent:function(){if(this._playerPanel){this._playerPanel.updateSongPosition(this._mediaPlayer.getSongPosition())}if(chrome.browserAction){if(this._counterIndex){chrome.browserAction.setIcon({path:"images/speaker.png"});this._counterIndex=0}else{chrome.browserAction.setIcon({path:"images/speaker-mute.png"});this._counterIndex=1}}},_handleLoadBeginEvent:function(g){this.setItemState(g.item,2);this._loadTime=(new Date()).getTime();a.onTimeout(2500,function(){evtk("Aria","Play Song",f.DBID)});if(chrome.browserAction){chrome.browserAction.setIcon({path:"images/wait.gif"})}},_handleSongBeginEvent:function(g){this._lastSong=g;this._mediaPlayer.setVolume(this._vol*this._mute);if(this._playerPanel){this._playerPanel.updateSongLength(g.item.lib.duration*1000)}else{if(this._notice){this._notice.cancel()}}this.fireEvent(d.SONG_BEGIN);this.setItemState(g.item)},_handleSongEndEvent:function(g){this.fireEvent(d.SONG_END);this.clearItemState(g.item);if(chrome.browserAction){chrome.browserAction.setIcon({path:"images/speaker-mute.png"})}},_handleSongResumeEvent:function(g){this.fireEvent(d.SONG_RESUME);this.setItemState(g.item)},_handleSongPauseEvent:function(g){this.fireEvent(d.SONG_PAUSE);this.setItemState(g.item,3);if(chrome.browserAction){chrome.browserAction.setIcon({path:"images/pause.png"})}},_handleStartEvent:function(g){if(this._playerPanel){this._playerPanel.setPlayState()}this.fireEvent(d.START)},_handleStopEvent:function(g){if(this._playerPanel){this._playerPanel.setPauseState()}this.fireEvent(d.STOP);if(chrome.browserAction){chrome.browserAction.setIcon({path:"icon_128.png"})}},setItemState:function(h,j){if(j){h.state=j}else{h.state=this._mediaPlayer.isPlaying?1:2}var k=this._programmer.getPlaylist();var g=k.indexOf(h);k.setItem(g,h);if(j!=2&&this._playerPanel){this._playerPanel.setItem(h)}this._currentItem=h;e.setValue("currentItem",h)},clearItemState:function(j){j.state="";var k=this._programmer.getPlaylist();var g=k.indexOf(j);k.setItem(g,j);var h=false;if(g==k.getLength()-1){h=true}if(this._playerPanel){this._playerPanel.clearItem(h)}if(j==this._currentItem){e.setValue("currentItem",null)}}};YAHOO.lang.augmentProto(d,YAHOO.util.EventProvider);mspot.namespace("manager").PlayerManager=d})();
/* page/Page.js */
(function(){var a=function(){};a.prototype={render:function(b){},destroy:function(){},getClassNames:function(){return[]}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider);mspot.namespace("page");mspot.page.Page=a})();
/* page/StaticPage.js */
(function(){var b=mspot.page.Page,e=mspot.Loader,c=YAHOO.util.Dom,d=mspot.Settings;var a=function(f,g){if(!g){g="http"}a.superclass.constructor.call(this);this._url=f;this._protocol=g};YAHOO.extend(a,b,{render:function(f){this._elem=f;c.addClass(f,"loading-page");e.load(["connection"],this._render,this,true)},_render:function(){var g={success:this.downloadCallback,failure:this.downloadFailed,scope:this};var f=d.PAGES_PATH?d.PAGES_PATH:"pages/";if(this._protocol=="https"){f=d.PAGES_PATH?d.PAGES_PATH:d.COBRAND+"/pages/";f="https://"+location.host+"/"+f}YAHOO.util.Connect.asyncRequest("GET",f+this._url,g)},downloadCallback:function(f){this._elem.innerHTML=f.responseText;c.removeClass(this._elem,"loading-page")},downloadFailed:function(){this._elem.innerHTML="Failed to load page, check your internet connection and try again";c.removeClass(this._elem,"loading-page")},destroy:function(){this._elem=""}});mspot.namespace("page");mspot.page.StaticPage=a})();
/* page/DynamicPage.js */
var isIE=(navigator.appVersion.indexOf("MSIE")!=-1)?true:false;(function(){var Page=mspot.page.Page,Loader=mspot.Loader,Dom=YAHOO.util.Dom,Settings=mspot.Settings;var DynamicPage=function(url,protocol){DynamicPage.superclass.constructor.apply(this,arguments)};YAHOO.extend(DynamicPage,mspot.page.StaticPage,{downloadCallback:function(transport){DynamicPage.superclass.downloadCallback.apply(this,arguments);if(this._elem&&this._elem.getElementsByTagName("script").length>0){var s=this._elem.getElementsByTagName("script");for(var i=0;i<s.length;i++){eval(s[i].text)}}}});mspot.namespace("page").DynamicPage=DynamicPage})();
/* page/ArtistPage.js */
(function(){var a=function(b,d){var c="artist.php?artist="+encodeURIComponent(b)+"&amgId="+encodeURIComponent(d);a.superclass.constructor.call(this,c)};YAHOO.extend(a,mspot.page.StaticPage,{getClassNames:function(){return["meta-page","artist-page"]}});mspot.namespace("page").ArtistPage=a})();
/* page/AlbumPage.js */
(function(){var a=function(b,c,e){var d="album.php?artist="+encodeURIComponent(b)+"&album="+encodeURIComponent(c)+"&amgId="+encodeURIComponent(e);a.superclass.constructor.call(this,d)};YAHOO.extend(a,mspot.page.StaticPage,{getClassNames:function(){return["meta-page","album-page"]}});mspot.namespace("page").AlbumPage=a})();
/* page/DownloadPage.js */
(function(){var a=function(){a.superclass.constructor.call(this,"download.php")};YAHOO.extend(a,mspot.page.StaticPage,{});mspot.namespace("page").DownloadPage=a})();
/* page/HelpPage.js */
(function(){var c=YAHOO.util.Dom,a=mspot.util.Json;var b=function(d){if(YAHOO.lang.isUndefined(d)){d="help"}b.superclass.constructor.call(this,d+".php")};YAHOO.extend(b,mspot.page.DynamicPage,{getClassNames:function(){return["meta-page","help-page"]},onSendSupportEmail:function(){YAHOO.util.Connect.setForm(c.get("contactform"));var d={success:function(h){var f;try{f=a.parse(h.responseText)}catch(g){errorLog("Failed to parse json",g);f={success:false,error:"Sorry, system is busy. Please try again."}}if(f&&f.success===false){this.showMessage("Error",f.error)}else{this.showMessage("Success",f.message);c.get("submit_ticket").disabled=true}},failure:function(e){this.showMessage("Error","Connection error. Please try again later.")},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/customer_service.php",d);return true},showMessage:function(f,d){var e=c.get("message-container");if(f=="Error"){e.className="error-container"}else{e.className="message-container"}e.innerHTML="<div>"+f+"</div><div>"+d+"</div>"}});mspot.namespace("page");mspot.page.HelpPage=b})();
/* page/MyAccountPage.js */
(function(){var c=YAHOO.util.Dom,a=mspot.util.Json;var b=function(d,f){var e="my-account.php";if(!YAHOO.lang.isUndefined(d)){e=d+".php"}if(!YAHOO.lang.isUndefined(f)){e+="?action="+f}b.superclass.constructor.call(this,e,"https")};YAHOO.extend(b,mspot.page.StaticPage,{downloadCallback:function(e){b.superclass.downloadCallback.apply(this,arguments);if(c.get("ccnum")&&webRadio.billinginfoform&&webRadio.billinginfoform.elements.credit_card.value){var d=webRadio.billinginfoform.elements.credit_card.value;d=d.substr(d.length-4,4);c.get("ccnum").innerHTML="ending in "+d}},getClassNames:function(){return["meta-page","my-account-page"]},onEditAccount:function(){YAHOO.util.Connect.setForm(c.get("passwordform"));var d={success:function(m){var h;try{h=a.parse(m.responseText)}catch(j){errorLog("Failed to parse json",j);h={success:false,error:_("Sorry, system is busy. Please try again.")}}if(h&&h.success===false){this.showMessage(_("Error"),h.error)}else{var g=document.getElementById("my_account_email");var i=document.getElementById("navUserEmail");i.innerHTML=g.value;var f=c.get("passwordform");f.style.display="none";var l=c.get("success_message-container");l.className="message-container";l.innerHTML="<div>Success</div><div>"+h.message+"</div>";var k=c.get("passwordchanged_success");k.style.visibility="visible"}},failure:function(e){this.showMessage(_("Error"),_("Connection error. Please try again later."))},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/edit_account.php",d)},onResetAccount:function(f){var e=this;var h=_("Reset Password");var d=_('<div style="padding: 20px;">Your password will be reset and the new password will be sent to account email address.</div>');var g=[{text:_("Cancel"),handler:function(){this.cancel()}},{text:_("Reset"),handler:function(){var j={success:function(m){var k;try{k=a.parse(m.responseText)}catch(l){errorLog("Failed to parse json",l);k={success:false,error:_("Sorry, system is busy. Please try again.")}}if(k&&k.success===false){e.showMessage(_("Error"),k.error)}else{e.showMessage(_("Success"),k.message)}},failure:function(k){e.showMessage(_("Error"),_("Connection error. Please try again later."))},scope:e};var i="forgotpassword=1&email="+encodeURIComponent(f);YAHOO.util.Connect.asyncRequest("POST","services/forgotpassword.php",j,i);e.cancel()},isDefault:true}];webRadio.showDialogBox(h,d,g)},onUpgradeAccount:function(){YAHOO.util.Connect.setForm(c.get("passwordform"));var d={success:function(h){var f;try{f=a.parse(h.responseText)}catch(g){errorLog("Failed to parse json",g);f={success:false,error:_("Sorry, system is busy. Please try again.")}}if(f&&f.success===false){this.showMessage(_("Error"),_("Sorry, wrong code. Please try again."))}else{this.showMessage(_("Success"),f.message)}},failure:function(e){this.showMessage(_("Error"),_("Connection error. Please try again later."))},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/edit_account.php",d)},onCVVHelp:function(){var e=this;var g=_("Security Code (CVV) Help");var d='<div class="cvv-help-img"></div>';var f=[];webRadio.showDialogBox(g,d,f,543,270)},disableInputButtons:function(){var d=c.getElementsByClassName("input-button");for(var e in d){d[e].className="input-button-disabled"}return(d.length>0)},enableInputButtons:function(){var d=c.getElementsByClassName("input-button-disabled");for(var e in d){d[e].className="input-button"}},onDeleteAccount:function(){if(typeof this._isDeleteClicked!=="undefined"&&this._isDeleteClicked===true){return}this._isDeleteClicked=true;YAHOO.util.Connect.setForm(c.get("deleteaccountform"));var d="&cmd=deleteAccount";var e={success:function(h){var f;if(h.responseText==""){this.showMessage(_("Error"),_("Try again later."));this._isDeleteClicked=false;this.enableInputButtons();return}try{f=a.parse(h.responseText)}catch(g){errorLog("Failed to parse json",g);f={success:false,error:_("Sorry, system is busy. Please try again.")}}if(f&&f.success===false){this.showMessage(_("Error"),f.error);this.enableInputButtons();this._isDeleteClicked=false}else{this.enableInputButtons();webRadio.loadPage("MyAccount","delete-account-confirmation","done");webRadio.updateStatus()}},failure:function(f){this.showMessage(_("Error"),_("Connection error. Please try again later."));this._isDeleteClicked=false},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/aria_club.php",e,d)},onEditBilling:function(e){if(e==null){e="billing-info-form"}if(!this.disableInputButtons()){return}var g=c.get(e);if(document.getElementById("PAYPAL").checked){g.elements.cmd.value="createPERProfile";g.elements.billingoption.value="paypalexpressrecurring"}YAHOO.util.Connect.setForm(c.get(e));var d={success:function(i){var f;try{f=a.parse(i.responseText)}catch(h){errorLog("Failed to parse json",h);f={success:false,error:_("Sorry, system is busy. Please try again.")}}if(f&&f.success===false){this.showMessage(_("Error"),f.error)}else{this.showMessage(_("Success"),_("Your Billing Infomation has been updated."))}this.enableInputButtons()},failure:function(f){this.showMessage(_("Error"),_("Connection error. Please try again later."));this.enableInputButtons()},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/aria_club.php",d)},onPlanInfo:function(){postData=webRadio.selectPlanPostData+"&cmd=checkCorrectSubscription";var d={success:function(e){webRadio.loadPage("MyAccount","plan-info");webRadio.updateStatus()},failure:function(e){webRadio.loadPage("MyAccount","plan-info");webRadio.updateStatus()},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/aria_club.php",d,postData)},onSelectPlan:function(d){webRadio.selectPlanPostData=YAHOO.util.Connect.setForm(c.get("plan-info-form"));var h=0;var j=webRadio.selectPlanPostData.split("&");var e;for(e in j){var g=j[e];if(g.indexOf("plan")>=0){var f=g.split("=");h=f[1];break}}if(h==0||d){webRadio.loadPage("MyAccount","plan-info","confirm-"+h)}else{webRadio.loadPage("MyAccount","plan-info","billing")}},onConfirmPaypal:function(k){if(!this.disableInputButtons()){return}this.showPaypalProgress();YAHOO.util.Connect.setForm(webRadio.billinginfoform);var j=0;if(k&&webRadio.selectPlanPostData&&webRadio.selectPlanPostData.split){var l=webRadio.selectPlanPostData.split("&");var f;for(f in l){var h=l[f];if(h.indexOf("plan")>=0){var g=h.split("=");j=g[1];break}}}else{j="current"}var e={success:function(o){var m;try{m=a.parse(o.responseText)}catch(n){errorLog("Failed to parse json",n);m={success:false,error:_("Sorry, system is busy. Please try again later.")}}if(m&&m.success===false){this.showMessage(_("Error"),m.error);this.hidePaypalProgress();this.enableInputButtons()}else{var i=m.url;window.location=i}},failure:function(i){this.showMessage(_("Error"),_("Connection error. Please try again later."));this.hidePaypalProgress();this.enableInputButtons()},scope:this};var d=webRadio.selectPlanPostData+"&cmd=getPaypalExpressCheckoutUrl&plan="+j;YAHOO.util.Connect.asyncRequest("POST","services/aria_club.php",e,d)},showPaypalProgress:function(){var d=c.get("billing-paypal-progress");d.style.display="block"},hidePaypalProgress:function(){var d=c.get("billing-paypal-progress");d.style.display="none"},onConfirmBilling:function(){if(!this.disableInputButtons()){return}webRadio.billinginfoform=c.get("billing-info-form");YAHOO.util.Connect.setForm(webRadio.billinginfoform);var d=webRadio.selectPlanPostData+"&cmd=createProfile";var e={success:function(n){var g;try{g=a.parse(n.responseText)}catch(l){errorLog("Failed to parse json",l);g={success:false,error:_("Sorry, system is busy. Please try again later.")}}if(g&&g.success===false){this.showMessage(_("Error"),g.error);this.enableInputButtons()}else{webRadio.billinginfoform=c.get("billing-info-form");var k=0;var m=webRadio.selectPlanPostData.split("&");var f;for(f in m){var j=m[f];if(j.indexOf("plan")>=0){var h=j.split("=");k=h[1];break}}webRadio.loadPage("MyAccount","plan-info","confirm-"+k)}},failure:function(f){this.showMessage(_("Error"),_("Connection error. Please try again later."));this.enableInputButtons()},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/aria_club.php",e,d)},onConfirmCWBilling:function(){if(!this.disableInputButtons()){return}webRadio.billinginfoform=c.get("billing-option-form");YAHOO.util.Connect.setForm(webRadio.billinginfoform);var d=webRadio.selectPlanPostData+"&cmd=createCWProfile";var e={success:function(n){var g;try{g=a.parse(n.responseText)}catch(l){errorLog("Failed to parse json",l);g={success:false,error:_("Sorry, system is busy. Please try again later.")}}if(g&&g.success===false){this.showMessage(_("Error"),g.error);this.enableInputButtons()}else{webRadio.billinginfoform=c.get("billing-option-form");var k=0;var m=webRadio.selectPlanPostData.split("&");var f;for(f in m){var j=m[f];if(j.indexOf("plan")>=0){var h=j.split("=");k=h[1];break}}webRadio.loadPage("MyAccount","plan-info","clearwire-confirm-"+k)}},failure:function(f){this.showMessage(_("Error"),_("Connection error. Please try again later."));this.enableInputButtons()},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/aria_club.php",e,d)},trackEcommerce:function(e,d){pageTracker._addTrans(e);pageTracker._addItem(d);pageTracker._trackTrans()},onEditPlan:function(h,d){if(!this.disableInputButtons()){return}YAHOO.util.Connect.setForm(webRadio.billinginfoform);var e;var f=c.getElementsBy(function(i){return i.name=="devicechoice"&&i.checked},"input","plan-info-form");if(f.length>0){e=webRadio.selectPlanPostData+"&cmd=createSubscription&deviceId="+f[0].value}else{e=webRadio.selectPlanPostData+"&cmd=createSubscription"}e+="&partner="+Settings.PARTNER;var g={success:function(k){var i;if(k.responseText==""){this.showMessage(_("Error"),_("Try again later."));this.enableInputButtons();return}try{i=a.parse(k.responseText)}catch(j){errorLog("Failed to parse json",j);i={success:false,error:_("Sorry, system is busy. Please try again later.")}}if(i&&i.success===false){this.showMessage(_("Error"),i.error);this.enableInputButtons()}else{if(typeof d()!=="undefined"){d()}this.enableInputButtons();webRadio.loadPage("MyAccount","plan-info",h);webRadio.updateStatus()}},failure:function(i){this.showMessage(_("Error"),_("Connection error. Please try again later."))},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/aria_club.php",g,e)},showDialog:function(h,g){var e=this;var h=h;var d='<div style="padding: 20px;">'+g+"</div>";var f=[];webRadio.showDialogBox(h,d,f)},showMessage:function(f,d){var e=c.get("message-container");if(f==_("Error")){e.className="error-container"}else{e.className="message-container"}e.innerHTML="<div>"+f+"</div><div>"+d+"</div>"},onChangeCCType:function(l,m){var j=true;var f=false;if(l=="VISA"||l=="MasterCard"||l=="DISCOVER"||l=="AMEX"){j=false}if(l=="PAYPAL"&&m){f=true}var d;var k=c.get("billing-info-form");if(j){d=c.getElementsByClassName("billing-cc-form-enabled",null,k)}else{d=c.getElementsByClassName("billing-cc-form-disabled",null,k)}for(var g in d){g=d[g];if(j){c.replaceClass(g,"billing-cc-form-enabled","billing-cc-form-disabled")}else{c.replaceClass(g,"billing-cc-form-disabled","billing-cc-form-enabled")}}var h=c.get("billing-info-save");var e=c.get("billing-info-cancel");var i=c.get("billing-paypal-button");if(f){h.style.display="none";e.style.display="inline";i.style.display="inline-block"}else{if(l!="PAYPAL"){h.style.display="inline";e.style.display="inline"}else{h.style.display="none";var e=c.get("billing-info-cancel");e.style.display="none"}i.style.display="none"}}});mspot.namespace("page").MyAccountPage=b})();
/* page/MyAccountEditPage.js */
(function(){var c=YAHOO.util.Dom,a=mspot.util.Json;var b=function(){b.superclass.constructor.call(this,"my-account-edit.php")};YAHOO.extend(b,mspot.page.StaticPage,{getClassNames:function(){return["meta-page","my-account-page"]},onEditAccount:function(){YAHOO.util.Connect.setForm(c.get("passwordform"));var d={success:function(h){var f;try{f=a.parse(h.responseText)}catch(g){errorLog("Failed to parse json",g);f={success:false,error:"Sorry, system is busy. Please try again."}}if(f&&f.success===false){this.showMessage("Error",f.error)}else{this.showMessage("Success",f.message)}},failure:function(e){this.showMessage("Error","Connection error. Please try again later.")},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/edit_account.php",d)},showDialog:function(h,g){var e=this;var h=h;var d='<div style="padding: 20px;">'+g+"</div>";var f=[];webRadio.showDialogBox(h,d,f)},showMessage:function(f,d){var e=c.get("message-container");e.nodeValue=d},onResetAccount:function(f){var e=this;var h="Reset Password";var d='<div style="padding: 20px;">Your password will be reset and the new password will be sent to account email address.</div>';var g=[{text:"Cancel",handler:function(){this.cancel()}},{text:"Reset",handler:function(){var j={success:function(m){var k;try{k=a.parse(m.responseText)}catch(l){errorLog("Failed to parse json",l);k={success:false,error:"Sorry, system is busy. Please try again."}}if(k&&k.success===false){e.showMessage("Error",k.error)}else{e.showMessage("Success",k.message)}},failure:function(k){e.showMessage("Error","Connection error. Please try again later.")},scope:e};var i="forgotpassword=1&email="+encodeURIComponent(f);YAHOO.util.Connect.asyncRequest("POST","services/forgotpassword.php",j,i);e.cancel()},isDefault:true}];webRadio.showDialogBox(h,d,g)}});mspot.namespace("page").MyAccountEditPage=b})();
/* page/FaqPage.js */
mspot.page.FaqPage=function(){mspot.page.FaqPage.superclass.constructor.call(this,"faq.php")};YAHOO.extend(mspot.page.FaqPage,mspot.page.StaticPage,{});
/* page/LyricsPage.js */
(function(){var a=function(b){a.superclass.constructor.call(this,"lyrics.php?amgId="+b)};YAHOO.extend(a,mspot.page.StaticPage,{getClassNames:function(){return["meta-page","lyrics-page"]}});mspot.namespace("page").LyricsPage=a})();
/* page/PlayerPage.js */
(function(){var f=mspot.page.Page,e=mspot.Loader,o=mspot.Settings,p=mspot.ui.MenuPanel,k=mspot.media.SwfMediaPlayer,b=mspot.manager.PlayerManager,m=mspot.manager.PlaylistManager,d=mspot.manager.FavoritePlaylistManager,g=mspot.manager.ErrorPlaylistManager,n=mspot.manager.MenuManager,i=mspot.manager.SearchManager,j=mspot.manager.StatusManager,l=mspot.model.Playlist,c=mspot.api.PlaylistService,h=mspot.Session,a=YAHOO.util.Dom,r=YAHOO.util.Event;var q=function(){q.superclass.constructor.call(this);this._application=webRadio;this._menuManager=new n(this);this.onMenuManagerEvent(n.MANAGER_LOAD_PLAYLIST,this.onLoadPlaylist);this.onMenuManagerEvent(n.MANAGER_UNLOAD_PLAYLIST,this.onUnloadPlaylist);this.onMenuManagerEvent(n.MANAGER_CHANGE_PLAYLIST,this.onUpdatePlaylist);this.onMenuManagerEvent(n.MANAGER_DRAGDROP_PLAYLIST,this.onDragdropOnMenu);this._searchManager=new i();this._searchManager.subscribe(i.SEARCH_EVENT,this._onSearch,this,true);this._statusManager=new j()};YAHOO.extend(q,f,{_application:null,_playlistManager:null,_libraryPlaylistManager:null,_favoritePlaylistManager:null,_paneContentId:-1,_menuManager:null,_searchManager:null,_isRendered:false,getClassNames:function(){return["player-page"]},onMenuManagerEvent:function(s,t){this._menuManager.subscribe(s,t,this,true)},getMenuPanel:function(){return new p()},onClickSong:function(s){try{this._application.getPlayerManager().loadProgrammer(s.programmer,true)}catch(t){errorLog("failed to start player",t)}},getPlaylistManager:function(){return this._playlistManager},_clearPane:function(s){console.log("PlayerPage::_clearPane()");while(s.hasChildNodes()){s.removeChild(s.firstChild)}},onLoadPlaylist:function(t){t.item.type=t.item.formattype.replace("http/","");var s=(t.item.id===this._paneContentId)||(this._paneContentId===l.LIBRARY_ID&&t.item.id!==l.FAVORITE_ID&&t.item.id!==l.ERROR_ID);if(!s){this._playlistManager.unloadPlaylist();switch(parseInt(t.item.id)){case l.ERROR_ID:this._clearPane(this._rightPane);this._playlistManager=new g(this);this._playlistManager.render(this._rightPane);this._initAutoResize();this._paneContentId=l.ERROR_ID;break;case l.FAVORITE_ID:this._clearPane(this._rightPane);this._playlistManager=this._favoritePlaylistManager;this._playlistManager.render(this._rightPane);this._initAutoResize();this._paneContentId=l.FAVORITE_ID;break;case l.LIBRARY_ID:default:this._clearPane(this._rightPane);this._playlistManager=this._libraryPlaylistManager;this._playlistManager.render(this._rightPane);this._paneContentId=l.LIBRARY_ID;break}}t.item.type=t.item.formattype.replace("http/","");if(t.item.id==l.LIBRARY_ID){t.item.keyword=this._searchManager.getKeyword()}this._playlistManager.loadPlaylist(t.id,t.item)},onUnloadPlaylist:function(s){this._playlistManager.unloadPlaylist(s.id,s.item)},onUpdatePlaylist:function(A){if(A.item.cloudSync===undefined){return}var x=new Date();var u=this._playlistManager.getPlaylist();var z=u.getLibrary();var s=A.item.cloudSync===true?l.SYNC_STATE_NOT_SYNCED:l.SYNC_STATE_DELETED;var t=u.getItems();for(var w=0;w<t.length;w++){if(t[w].lib.sync_state===l.SYNC_STATE_SYNCED&&A.item.cloudSync===true){continue}var y=t[w].libId;var v=A.item.cloudSync===true?parseInt(x.getTime()/1000)-1000000000:8888888888;var B={id:y,sync_order:v};B.sync_state=s;z.changeItem(y,B)}},onDragdropOnMenu:function(){},render:function(s){this._elem=s;a.addClass(s,"loading-page");e.load(["connection","datasource","datatable","dragdrop","treeview","json"],this._render,this,true)},_render:function(){this._libraryPlaylistManager=new m(this);this._favoritePlaylistManager=new d(this);this._paneContentId=l.LIBRARY_ID;this._libraryPlaylistManager.subscribe(m.PLAY_PLAYLIST,this.onClickSong,this,true);this._libraryPlaylistManager.subscribe("dragItemToMenu",this._onDragItemToMenu,this,true);this._elem.innerHTML="";this._searchbox=a.createElement("div",{className:"search-pane",id:"searchbox"});this._menutree=a.createElement("div",{className:"tree-pane",id:"menutree"});this._userinfo=a.createElement("div",{className:"user-pane yui-gb",id:"userinfo"});this._leftPane=a.createElement("div",{className:"left-pane",id:"leftsize"});this._rightPane=a.createElement("div",{className:"right-pane",id:"song"});a.appendChildren(this._leftPane,[this._searchbox,this._menutree]);var s=a.createElement("div");s.appendChild(this._leftPane);s.appendChild(this._rightPane);this._elem.appendChild(s);this._elem.appendChild(this._userinfo);this._searchManager.render(this._searchbox);this._menuManager.render("menutree");this._statusManager.render(this._userinfo);this._playlistManager=this._libraryPlaylistManager;this._playlistManager.render(this._rightPane);this._initAutoResize();a.removeClass(this._elem,"loading-page");this._isRendered=true;if(o.IS_ERROR_LIST){this.onLoadPlaylist({id:0,item:{type:"",formattype:"library",id:l.ERROR_ID}})}h.subscribe("revisionChange",this.onRevisionChange,this,true)},destroy:function(){this._isRendered=false;h.unsubscribe("revisionChange",this.onRevisionChange,this);this._menuManager.unsubscribe(n.MANAGER_LOAD_PLAYLIST,this.onLoadPlaylist,this);this._menuManager.unsubscribe(n.MANAGER_UNLOAD_PLAYLIST,this.onUnloadPlaylist,this);this._menuManager.unsubscribe(n.MANAGER_CHANGE_PLAYLIST,this.onUpdatePlaylist,this);this._menuManager.unsubscribe(n.MANAGER_DRAGDROP_PLAYLIST,this.onDragdropOnMenu,this);this._menuManager.destroy();this._playlistManager.destroy();this._searchManager.destroy();if(typeof this._elem!=="undefined"){this._elem.innerHTML="";this._elem.style.height="";delete this._elem}},isRendered:function(){return this._isRendered},setStatus:function(s){this._statusManager.setStatus(s)},createMagicPlaylist:function(s){this._menuManager.createMagicPlaylist(s)},createPlaylist:function(u,v){v=v||u[0].lib.title||"New Playlist";var x=l.TMP_ID;var w="http/playlist";if(v.substr(0,7)=="device:"){v=v.substr(7);w="http/device"}var t={id:x,title:v,formattype:w,items:u};var s={index:0,item:t,autoplay:true};this._menuManager.onAddPlaylist(s)},copyPlaylist:function(u,v){v=v+" (Copy)"||"New Playlist";var w=l.TMP_ID;var t={id:w,title:v,formattype:"http/playlist",copySrc:u};var s={index:0,item:t,autoplay:true};this._menuManager.onAddPlaylist(s)},onRevisionChange:function(s){if(this._playlistManager&&s.prevValue){this._playlistManager.updatePlaylist(s.prevValue)}},_initAutoResize:function(){var s={doc:a.get("doc"),hd:a.get("hd"),bd:a.get("bd"),ft:a.get("ft")};switch(this._playlistManager){case this._libraryPlaylistManager:r.on(window,"resize",this._onDelayedResize,s,this);this._playlistManager.subscribe(m.TOGGLE_FILTERS,this._onResize,s,this);this._playlistManager.subscribe(m.TOGGLE_FILTER_HANDLE,this._onResize,s,this);break;case this._favoritePlaylistManager:break}r.onTimeout(200,this._onResize,s,this)},_onDelayedResize:function(s,t){if(this._resizeTimeoutId){window.clearTimeout(this._resizeTimeoutId)}if(YAHOO.env.ua.webkit){this._resizeTimeoutId=r.onTimeout(200,this._resizeWidth,t,this);this._resizeHeight(s,t)}else{this._resizeTimeoutId=r.onTimeout(200,this._onResize,t,this)}},_onResize:function(s,t){console.log("PlayerPage::_onResize()");if(this._isRendered){this._resizeHeight(s,t);this._resizeWidth(s,t)}},_resizeHeight:function(B,t){var A=235,s=8;if(bgWindow){A=155}if(!t){t=B}var w=t.hd,x=t.bd,v=t.ft;var y=Math.max(a.getClientHeight()-x.offsetTop-this._userinfo.offsetHeight,A);x.style.height=y+"px";this._menutree.style.height=(y-this._searchbox.offsetHeight)+"px";var u=this._playlistManager.getSongsTable();if(u){var C=(!a.get("libraryFiltersHandle")||a.get("libraryFiltersHandle").style.display=="none")?0:s;if(this._playlistManager.filterListsVisible()){C+=a.getRegion("libraryFiltersContainer").height}var z=y-C-18;u.setHeight(z)}},_resizeWidth:function(s,v){if(!v){v=s}var t=this._playlistManager.getSongsTable();var u=v.doc.offsetWidth;if(t){t.setWidth(u-a.getRegion("leftsize").width)}},_onSearch:function(s){try{this._playlistManager.loadPlaylist(l.LIBRARY_ID,{keyword:s.keyword,type:"playlist"});this._menuManager.selectPlaylist(l.LIBRARY_ID)}catch(s){errorLog(s)}},_onDragItemToMenu:function(t){var w=this._menuManager.getPlaylistIdByElement(t.treeViewElem);var s=new c();var u=t.items;for(var v=0;v<u.length;v++){s.addItem(w,null,null,{libId:u[v].libId})}}});mspot.namespace("page");mspot.page.PlayerPage=q})();
/* page/UploadEditorPage.js */
(function(){var c=YAHOO.util.Dom,b=YAHOO.util.Event,f=mspot.Loader,a=mspot.util.Json,e=mspot.api.UploadEditorService;var d=function(g,i){var h="upload-editor.php";if(!YAHOO.lang.isUndefined(g)){h=g+".php"}if(!YAHOO.lang.isUndefined(i)){h+="?action="+i}d.superclass.constructor.call(this,h);this._initialization=0;this.createEvent(d.INITIALIZE_COMPLETE);this.subscribe(d.INITIALIZE_COMPLETE,this._onInitialized,this,true);this.displayDialog("processing_upload_setting")};d.isEmptyRow=function(g){if(g._oData.id==undefined&&g._oData.artist==undefined){return true}else{return false}};DEFAULT_COLUMNS=[{key:"id",label:"",sortable:true,width:0},{key:"sel.artist",label:"artist",sortable:false,width:122},{key:"",label:"",width:0}];YAHOO.extend(d,mspot.page.DynamicPage,{apiService:null,dtArtist:null,dtPlaylist:null,uploadProgressBar:null,usagePercentage:0,dialog:null,initBitRate:0,currBitRate:0,initInclPodcast:false,initLibOption:null,currLibOption:null,applyProgress:0,dirty:false,srcButton:null,maxHeight:0,applyToAll:false,isIE7:(/msie 7/).test(navigator.userAgent.toLowerCase()),_isCollapsedOptions:false,getClassNames:function(){return["meta-page","upload-editor-page"]},downloadCallback:function(j){d.superclass.downloadCallback.apply(this,arguments);this.initLibOption=this.currLibOption=this._getLibOption();this.initBitRate=this.currBitRate=this._getBitRate();this.initInclPodcast=this._getInclPodcast();this._toggleOverLay();this.apiService=new e();var i=c.get("firstTime").value;this.apiService.initArtistsPlaylists(this._loadPlaylistsCallback,i,(this.currLibOption=="whole"),this);var g=document.getElementById("pbContainer").offsetWidth;this.uploadProgressBar=new YAHOO.widget.ProgressBar({width:g,anim:true,id:"uploadProgressBar"}).render("pbContainer");var h=this.uploadProgressBar.get("anim");h.duration=0.1},onLibOptionChange:function(g){this.currLibOption=g;this._updateStorageUsage();this._toggleOverLay()},onBitRateChange:function(g){this.currBitRate=g;this._updateStorageUsage()},onGetMoreStorage:function(){if(!this._getDirty()){mspot.util.tryLoadPage("MyAccount","plan-info")}else{this.srcButton="getMoreStorage";this.displayDialog("leave_upload_setting")}},onApplyUploadSetting:function(){if(!this._getDirty()){mspot.util.tryLoadPage("Player")}else{if(this.initBitRate==this.currBitRate){this.displayDialog("processing_upload_setting");this.saveUploadSetting(false)}else{this.displayDialog("apply_upload_setting")}}},saveUploadSetting:function(g){this.applyToAll=g;this._saveArtistPlaylistSetting(this._saveArtistPlaylistSettingCallback)},_setUserData:function(j){var i=new Date().getTime();var h=["MSPOT_LIB","INCL_PODCAST","BIT_RATE","NOOP"];var g=[this.currLibOption,this._getInclPodcast(),this.currBitRate,i];this.apiService.setPrefExt(h,g,j,this)},_saveArtistPlaylistSetting:function(k){if(this.currLibOption=="whole"||c.get("check-all-artists").checked){var j=this._getDTSelection(this.dtArtist,"artist",true);var h=this._getDTSelection(this.dtPlaylist,"id",true);this.apiService.uploadWholeLib(j,h,this.applyToAll,k,this)}else{var i=this._getDTSelection(this.dtArtist,"artist",false);var g=this._getDTSelection(this.dtPlaylist,"id",false);this.apiService.saveSelection(i,g,this.applyToAll,k,this)}},_saveArtistPlaylistSettingCallback:function(g){this._setUserData(this._handleApplyCallback)},onCancelUploadSetting:function(){if(!this._getDirty()){mspot.util.tryLoadPage("Player")}else{this.srcButton="cancel";this.displayDialog("leave_upload_setting")}},getSrcButton:function(){return this.srcButton},onToggleUpper:function(k){var g=c.getElementsByClassName("upper-table");var j=document.getElementById("upper-pane");if(k.src.indexOf("collapse")==-1){this._isCollapsedOptions=false;k.src="images/uploader/collapse.png";for(var h=0;h<g.length;h++){g[h].style.display=""}j.style.height="150px"}else{this._isCollapsedOptions=true;k.src="images/uploader/expand.png";for(var h=0;h<g.length;h++){g[h].style.display="none"}j.style.height="10px"}this._recalcHeight(this)},_render:function(){d.superclass._render.apply(this);c.removeClass(this._elem,"loading-page")},_onInitialized:function(){this._initialization++;if(this.dialog&&this.dialog.header.innerHTML==_("Processing")){this._destroyExistingDialog()}this._initAutoResize();this._updateStorageUsage()},_initAutoResize:function(){var h={doc:c.get("doc"),bd:document.getElementById("lower_table")};this._recalcHeight(h);var i=document.getElementById("lower_table");var j=i.offsetHeight-21;var g=(j<this.maxHeight)?this.maxHeight:j;this.dtArtist.set("height",g+"px");this.dtPlaylist.set("height",g+"px");b.on(window,"resize",this._onResize,h,this)},_onResize:function(h,j){var i=document.getElementById("pbContainer");if(i){var g=i.offsetWidth;this.uploadProgressBar.set("width",g);this._recalcHeight(h,j)}},_recalcHeight:function(h,l){var k=77;if(!l){l=h}var j=l.bd;if(!j){j=document.getElementById("lower_table")}var i=0;if(c.get("progress_info")){i=c.get("progress_info").offsetHeight}var g=Math.max(c.getClientHeight()-j.offsetTop-i,k);if(this.isIE7){g=Math.max((c.getClientHeight()-j.offsetTop)-c.get("hd").offsetHeight-i,k)}j.style.height=g+"px";this._setOverLaySize()},_setDirty:function(){this.dirty=true},_getDirty:function(){if(this.dirty){return this.dirty}return this.initBitRate!=this.currBitRate||this.initLibOption!=this.currLibOption||this.initInclPodcast!=this._getInclPodcast()},_getInclPodcast:function(){return c.get("inclpodcast").checked},_getBitRate:function(){var g=0;var j=document.audiosettings.bitrate;for(var h=0;h<j.length;h++){if(j[h].checked==true){g=j[h].value;break}}return g},_getLibOption:function(){var h;var j=document.librarysettings.libraryoption;for(var g=0;g<j.length;g++){if(j[g].checked==true){h=j[g].value;break}}return h},_toggleOverLay:function(){if(this.currLibOption=="whole"){document.getElementById("dark_layer").style.display=""}else{document.getElementById("dark_layer").style.display="none"}},_setOverLaySize:function(){var g=document.getElementById("dark_layer");if(g){if(this._isCollapsedOptions){g.style.height=g.parentNode.offsetHeight-30+"px";g.style.top=g.parentNode.offsetTop+30+"px";if(this.isIE7){g.style.height=g.parentNode.offsetHeight-59+"px";g.style.top="220px"}}else{g.style.height=g.parentNode.offsetHeight+"px";g.style.top=g.parentNode.offsetTop+"px";if(this.isIE7){g.style.height=g.parentNode.offsetHeight+"px";g.style.top="301px"}}g.style.width=g.parentNode.offsetWidth-2+"px";g.style.left=g.parentNode.offsetLeft+1+"px"}},_updateStorageUsage:function(){if(this._initialization>=1){if(this.currLibOption=="whole"){var j=this.apiService.getLibraryDuration()}else{var j=this.apiService.calcTotalDuration()}var i=this.currBitRate/8000*j/1000000;i=i.toFixed(2);var h=parseFloat(document.getElementById("plan-size").value);this.usagePercentage=i/h*100;if(i>h){var g=_("Over: ")+(i-h).toFixed(2)+" gb"}else{var g="("+i+" gb"+_(" of ")+h+" gb)"}document.getElementById("storage-usage-text").innerHTML=g;if(i>=h){document.getElementById("storage-usage-image").innerHTML="<img src='images/uploader/circle-red.png'/>";document.getElementById("storage-usage-text").style.color="red";this.uploadProgressBar.setStyle("backgroundImage","url(images/uploader/statusbar-red.png)");this.uploadProgressBar.set("value",0)}else{if(i>=h*0.9){document.getElementById("storage-usage-image").innerHTML="<img src='images/uploader/circle-red.png'/>";document.getElementById("storage-usage-text").style.color="red";this.uploadProgressBar.setStyle("backgroundImage","url(images/uploader/statusbar-red.png)");this.uploadProgressBar.set("value",this.usagePercentage)}else{document.getElementById("storage-usage-image").innerHTML="<img src='images/uploader/circle-green.png'/>";document.getElementById("storage-usage-text").style.color="";this.uploadProgressBar.setStyle("backgroundImage","url(images/uploader/statusbar-grey.png)");this.uploadProgressBar.set("value",this.usagePercentage)}}}},_onCheckAll:function(j){var h=j.checked;var l;if(h){if(j.id=="check-all-artists"){this.apiService.selectAllArtists()}else{if(j.id=="check-all-playlists"){this.apiService.initPlaylists(function(){this._updateStorageUsage()},false,(this.currLibOption=="whole"),this)}else{return false}}}else{if(j.id=="check-all-artists"){this.apiService.unselectAllArtists()}else{if(j.id=="check-all-playlists"){this.apiService.unselectAllPlaylists()}else{return false}}}if(j.id=="check-all-artists"){l=this.dtArtist}else{if(j.id=="check-all-playlists"){l=this.dtPlaylist}else{return false}}var g=l.getRecordSet().getRecords();for(var k=0;k<g.length;k++){if(h){g[k].setData("checked",h);l.getRecordSet().updateKey(g[k],"checked",h);l.selectRow(l.getTrEl(k))}else{if(!h){g[k].setData("checked",h);l.getRecordSet().updateKey(g[k],"checked",h);l.unselectRow(l.getTrEl(k))}}}l.renderLoopSize=100;l.refreshView();this._updateStorageUsage();this._setDirty();return true},_onClickRow:function(h,l){var j=l[0];var i=l[1];var k=YAHOO.util.Event.getTarget(h);var g=j.getRecord(k);if(!d.isEmptyRow(g)){if(g.getData("checked")){g.setData("checked",false);j.getRecordSet().updateKey(g,"checked",false);j.unselectRow(k);if(j==i.dtArtist){c.get("check-all-artists").checked=false;i.apiService.updateSelection("artist","unselect",g.getData("artist"),i._updateStorageUsage,i)}else{if(j==i.dtPlaylist){c.get("check-all-playlists").checked=false;i.apiService.updateSelection("playlist","unselect",g.getData("id"),i._updateStorageUsage,i)}}}else{g.setData("checked",true);j.getRecordSet().updateKey(g,"checked",true);j.selectRow(k);if(j==i.dtArtist){i.apiService.updateSelection("artist","select",g.getData("artist"),i._updateStorageUsage,i)}else{if(j==i.dtPlaylist){i.apiService.updateSelection("playlist","select",g.getData("id"),i._updateStorageUsage,i)}}}j.refreshView()}i._setDirty()},_formatCheckbox:function(h,g,j,k){var i="";if(!d.isEmptyRow(g)){if(k==true){i='<input type="checkbox" checked >'}else{i='<input type="checkbox">'}}h.innerHTML=i},_loadArtistsCallback:function(h){var j;if(h.allSongSelected){j='<input id="check-all-artists" type="checkbox" onclick="webRadio._page._onCheckAll(this);" checked >'}else{j='<input id="check-all-artists" type="checkbox" onclick="webRadio._page._onCheckAll(this);" >'}var i=[{key:"checked",label:j,width:"30",formatter:this._formatCheckbox},{key:"artist",label:_("<span class='lower-table-head'>Artists</span>"),sortable:true}];var k=new YAHOO.util.LocalDataSource(h);k.responseType=YAHOO.util.DataSource.TYPE_JSON;k.responseSchema={resultsList:"artists",fields:[{key:"checked",parser:YAHOO.util.DataSource.parseBoolean},{key:"artist"}]};this.dtArtist=new YAHOO.widget.ScrollingDataTable("artistContainer",i,k,{width:"100%",height:"100%",sortedBy:{key:"artist",dir:"asc"}});var g=c.get("artistContainer").offsetHeight;if(this.maxHeight<g){this.maxHeight=g}if(!mspot.Settings.SLOW){this.dtArtist.on("rowMouseoverEvent",this.dtArtist.onEventHighlightRow);this.dtArtist.on("rowMouseoutEvent",this.dtArtist.onEventUnhighlightRow)}this.dtArtist.on("rowClickEvent",this._onClickRow,[this.dtArtist,this])},_loadPlaylistsCallback:function(h){var i;if(h.allPlaylistSelected){i='<input id="check-all-playlists" type="checkbox" onclick="webRadio._page._onCheckAll(this);" checked >'}else{i='<input id="check-all-playlists" type="checkbox" onclick="webRadio._page._onCheckAll(this);" >'}var k=[{key:"checked",label:i,formatter:this._formatCheckbox,width:"30px"},{key:"playlist",label:_("<span class='lower-table-head'>Playlists</span>"),sortable:true,width:"50%"}];var j=new YAHOO.util.LocalDataSource(h);j.responseType=YAHOO.util.DataSource.TYPE_JSON;j.responseSchema={resultsList:"playlists",fields:[{key:"checked",parser:YAHOO.util.DataSource.parseBoolean},{key:"id",parser:YAHOO.util.DataSource.parseNumber},{key:"playlist"}]};this.dtPlaylist=new YAHOO.widget.ScrollingDataTable("playlistContainer",k,j,{width:"100%",height:"100%",sortedBy:{key:"playlist",dir:"asc"}});var g=c.get("playlistContainer").offsetHeight;if(this.maxHeight<g){this.maxHeight=g}if(!mspot.Settings.SLOW){this.dtPlaylist.on("rowMouseoverEvent",this.dtPlaylist.onEventHighlightRow);this.dtPlaylist.on("rowMouseoutEvent",this.dtPlaylist.onEventUnhighlightRow)}this.dtPlaylist.on("rowClickEvent",this._onClickRow,[this.dtPlaylist,this]);this._loadArtistsCallback(h);this.fireEvent(d.INITIALIZE_COMPLETE,{})},_getDTSelection:function(m,l,k){var h=m.getRecordSet().getRecords();var g=[];for(var j=0;j<h.length;j++){if(k&&h[j].getData()[l]!=undefined||h[j].getData()["checked"]){g[g.length]=encodeURIComponent(h[j].getData()[l])}}return g},_handleApplyCallback:function(g){if(g&&g.success===false){this.applyProgress=0;this._destroyExistingDialog();this.showMessage("Error",g.error);errorLog(g)}else{if(g.category==undefined){}else{}this.applyProgress=0;this._destroyExistingDialog();if(this.srcButton=="getMoreStorage"){mspot.util.tryLoadPage("MyAccount","plan-info")}else{mspot.util.tryLoadPage("Player")}webRadio.reset();webRadio.updateStatus()}},displayDialog:function(h){if(this.dialog&&this.dialog.header&&this.dialog.header.innerHTML==_("Processing")){this._destroyExistingDialog()}var i={success:this._displayDialogAsync,failure:function(){},scope:this};var g=Settings.PAGES_PATH?Settings.PAGES_PATH:"dialogs/"+h+".php";YAHOO.util.Connect.asyncRequest("GET",g,i)},onApplyToMusic:function(g){webRadio._page.displayDialog("processing_upload_setting");webRadio._page.saveUploadSetting(g)},_destroyExistingDialog:function(){console.log("_destroyExistingDialog");if(this.dialog){if("undefined"==typeof(this.dialog)){this.dialog=null}else{this.dialog.destroy();this.dialog=null}}},_displayDialogAsync:function(l){var h=mspot.util.Json.parse(l.responseText);this._destroyExistingDialog();for(var j=0;j<h.buttons.length;j++){if(h.buttons[j]["handler"]){h.buttons[j]["handler"]=mspot.util.Json.parse(h.buttons[j]["handler"])}}var g=this;var k=function(){if(typeof YAHOO.widget.Dialog==="undefined"){return setTimeout(k,500)}var i=new YAHOO.widget.Dialog(h.name,{width:h.width,height:h.height,autofillheight:false,close:false,draggable:false,fixedcenter:true,modal:true,underlay:"shadow",buttons:(h.buttons.length>0)?h.buttons:[]});i.setHeader(h.header);i.setBody(h.body);i.render(c.get("hd"));i.show();g.dialog=i};k()},showMessage:function(i,g){var h=c.get("message-container");if(i=="Error"){h.className="error-container"}else{h.className="message-container"}h.innerHTML="<div>"+i+"</div><div>"+g+"</div>"}});mspot.namespace("page").UploadEditorPage=d})();
/* page/DeleteAccountConfirmation.js */
(function(){var b=YAHOO.util.Dom,a=mspot.util.Json;var c=function(d){if(YAHOO.lang.isUndefined(d)){d="delete-account-confirmation"}c.superclass.constructor.call(this,d+".php")};YAHOO.extend(c,mspot.page.StaticPage,{getClassNames:function(){return["meta-page","delete-account-confirmation"]},onSendSupportEmail:function(){YAHOO.util.Connect.setForm(b.get("contactform"));var d={success:function(h){var f;try{f=a.parse(h.responseText)}catch(g){errorLog("Failed to parse json",g);f={success:false,error:"Sorry, system is busy. Please try again."}}if(f&&f.success===false){this.showMessage("Error",f.error)}else{this.showMessage("Success",f.message)}},failure:function(e){this.showMessage("Error","Connection error. Please try again later.")},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/customer_service.php",d);return true},showMessage:function(f,d){var e=b.get("message-container");if(f=="Error"){e.className="error-container"}else{e.className="message-container"}e.innerHTML="<div>"+f+"</div><div>"+d+"</div>"}});mspot.namespace("page");mspot.page.DeleteAccountConfirmation=c})();
/* page/DeleteAccountSurvey.js */
(function(){var b=YAHOO.util.Dom,a=mspot.util.Json;var c=function(d){if(YAHOO.lang.isUndefined(d)){d="delete-account-survey"}c.superclass.constructor.call(this,d+".php")};YAHOO.extend(c,mspot.page.StaticPage,{getClassNames:function(){return["meta-page","delete-account-survey"]},onSendSupportEmail:function(){YAHOO.util.Connect.setForm(b.get("contactform"));var d={success:function(h){var f;try{f=a.parse(h.responseText)}catch(g){errorLog("Failed to parse json",g);f={success:false,error:"Sorry, system is busy. Please try again."}}if(f&&f.success===false){this.showMessage("Error",f.error)}else{this.showMessage("Success",f.message)}},failure:function(e){this.showMessage("Error","Connection error. Please try again later.")},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/customer_service.php",d);return true},showMessage:function(f,d){var e=b.get("message-container");if(f=="Error"){e.className="error-container"}else{e.className="message-container"}e.innerHTML="<div>"+f+"</div><div>"+d+"</div>"}});mspot.namespace("page");mspot.page.DeleteAccountSurvey=c})();
/* page/AreYouSurePage.js */
(function(){var c=YAHOO.util.Dom,a=mspot.util.Json;var b=function(d){if(YAHOO.lang.isUndefined(d)){d="are-you-sure"}b.superclass.constructor.call(this,d+".php")};YAHOO.extend(b,mspot.page.StaticPage,{getClassNames:function(){return["meta-page","are-you-sure-page"]},onSendSupportEmail:function(){YAHOO.util.Connect.setForm(c.get("contactform"));var d={success:function(h){var f;try{f=a.parse(h.responseText)}catch(g){errorLog("Failed to parse json",g);f={success:false,error:"Sorry, system is busy. Please try again."}}if(f&&f.success===false){this.showMessage("Error",f.error)}else{this.showMessage("Success",f.message)}},failure:function(e){this.showMessage("Error","Connection error. Please try again later.")},scope:this};YAHOO.util.Connect.asyncRequest("POST","services/customer_service.php",d);return true},showMessage:function(f,d){var e=c.get("message-container");if(f=="Error"){e.className="error-container"}else{e.className="message-container"}e.innerHTML="<div>"+f+"</div><div>"+d+"</div>"}});mspot.namespace("page");mspot.page.AreYouSurePage=b})();
/* app/WebRadio.js */
(function(){var h=YAHOO.util.Dom,k=YAHOO.util.Event,i=mspot.util,b=mspot.Loader,a=mspot.Settings,m=mspot.ui.HeaderMediaPlayerPanel,d=mspot.media.SwfMediaPlayer,j=mspot.media.HTML5MediaPlayer,g=mspot.manager.PlayerManager,l=mspot.model.Playlist,f=mspot.Session,e=mspot.app.PlaylistFactory;var c=function(){this._page=null;this._pageClasses=[];this._initialized=false;this.createEvent(c.INITIALIZE_COMPLETE);this._showedSettingUpLibraryDialog=false;var q=["currentTablePlaylist","volume","player-loop","player-shuffle","no_sync_popup"];for(var p=0;p<q.length;p++){f.addPersistentKey(q[p])}var o=YAHOO.env.ua;if(o.gecko){h.addClass(c.DOC_ID,"browser-gecko")}if(o.ie){h.addClass(c.DOC_ID,"browser-ie")}if(o.webkit){h.addClass(c.DOC_ID,"browser-webkit")}if(o.opera){h.addClass(c.DOC_ID,"browser-opera")}if(o.mobile){h.addClass(c.DOC_ID,"browser-mobile")}h.addClass(c.DOC_ID,"loading");this.subscribe(c.INITIALIZE_COMPLETE,function(){h.removeClass(c.DOC_ID,"loading")},this,true);b.load(["connection","animation","container","menu","slider","button"],this.init,this,true);f.subscribe("pcConnectedChange",this._onPcConnectedChange,this,true);f.subscribe("needToSyncChange",this._onNeedToSyncChange,this,true);if(!YAHOO.env.ua.ie){var n=this;window.onbeforeunload=function(){n.destroy()}}};YAHOO.lang.augmentObject(c,{DOC_ID:"doc",INITIALIZE_COMPLETE:"initializeComplete",MIN_STATUS_REFRESH_INTERVAL:30,MAX_STATUS_REFRESH_INTERVAL:60*5,NUM_SAMPLER_SONGS:6});c.prototype={_page:null,_pageClasses:null,_playerManager:null,_myAccountMenu:null,init:function(){try{this.initPlayer();this._initialized=true;this.fireEvent(c.INITIALIZE_COMPLETE,{});this.updateStatus()}catch(n){errorLog(n)}},_displayFirstTimeDialog:function(){YAHOO.env._id_counter=0;this._displayDialog("firsttime")},_displaySettingUpLibraryDialog:function(){this._displayDialog("settinguplibrary")},_displayDialog:function(o){var p={success:this._displayDialogAsync,failure:function(){},scope:this};var n=a.PAGES_PATH?a.PAGES_PATH:"dialogs/"+o+".php";YAHOO.util.Connect.asyncRequest("GET",n,p)},_displayDialogAsync:function(q){var n=mspot.util.Json.parse(q.responseText);if(this.dialogBox){this.dialogBox.destroy()}for(var p=0;p<n.buttons.length;p++){n.buttons[p]["handler"]=mspot.util.Json.parse(n.buttons[p]["handler"])}var o=new YAHOO.widget.Dialog(n.name,{width:n.width,height:n.height,autofillheight:false,close:false,draggable:false,fixedcenter:true,modal:true,underlay:"shadow",buttons:n.buttons});o.setHeader(n.header);o.setBody(n.body);o.render(h.get("hd"));o.show();h.get(n.name).dialog=o},initPlayer:function(){try{this.mediaPlayerPanel=new m();var o=this._createMediaPlayer();this._playerManager=new g(this,o,this.mediaPlayerPanel);this.mediaPlayerPanel.render("player")}catch(n){errorLog("Failed to initialize player",n)}},_createMediaPlayer:function(){try{if(YAHOO.env.ua.mobile=="Apple"||(a.ENABLE_BROWSER_HTML5&&YAHOO.env.ua.webkit)){var n=h.createElement("video");if(n&&n.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"')){return new j()}}}catch(o){errorLog(o)}return new d()},destroy:function(){this._page.destroy();this._page=null},getPage:function(){return this._page},loadPage:function(){var o=arguments[0];var n=[];infoLog("Loading page: "+o);if(arguments.length>0){for(var p=0;p<arguments.length;p++){n.push(arguments[p])}}try{if(a.ENABLE_HISTORY){var r={page:o,args:n.join("|")};YAHOO.util.History.multiNavigate(r);return}}catch(q){errorLog(q)}this.changePage.apply(this,n)},changePage:function(){var n=arguments[0];var p=[];if(arguments.length>0){for(var q=0;q<arguments.length;q++){p.push(arguments[q])}}var r=window.location.href;if(n=="MyAccount"&&a.ENABLE_BILLING){if(r.indexOf("http:")==0){var r=window.location.href;r=r.replace("http:","https:");r=r.replace(/(#.*)?$/i,"#page="+n+"&args="+p.join("|"));window.location.href=r;return}}else{if(r.indexOf("https")==0){r=r.replace("https:","http:");r=r.replace(/(#.*)?$/i,"#page="+n+"&args="+p.join("|"));window.location.href=r;return}}try{var o=arguments;var s=new mspot.page[n+"Page"](o[1],o[2],o[3],o[4],o[5],o[6],o[7],o[8]);this.setPage(s)}catch(t){errorLog("Failed to load page",t)}},setPage:function(p){if(!this._initialized){var s=function(){this.setPage(p);this.unsubscribe("initializeComplete",s,this)};this.subscribe("initializeComplete",s,this,true);return}var o=h.get("bd"),r=h.get(c.DOC_ID);h.addClass(o,"loading");o.style.height="";try{if(this._page&&this._page.destroy){this._page.destroy()}}catch(q){errorLog("setPage(): "+q)}for(var n=0;n<this._pageClasses.length;n++){h.removeClass(r,this._pageClasses[n])}o.innerHTML=_("Loading...");this._page=p;try{this._pageClasses=this._page.getClassNames();for(var n=0;n<this._pageClasses.length;n++){h.addClass(r,this._pageClasses[n])}this._page.render(o)}catch(q){errorLog(q)}h.removeClass(o,"loading")},getPlayerManager:function(){if(bgWindow){return bgWindow.getPlayerManager()}else{return this._playerManager}},getCurrentSong:function(){return this._playerManager.getCurrentItem()},getCurrentPlaylist:function(){return this._playerManager.getCurrentPlaylist()},getSongsTablePlaylist:function(){return this._page._playlistManager.getPlaylist()},createMagicPlaylist:function(n){try{if(this._page instanceof mspot.page.PlayerPage){if(this.getCurrentSong()&&this.getCurrentSong().libId!=n.libId){if(this.getCurrentPlaylist()&&this.getCurrentPlaylist().getId()==l.MAGIC_ID){this._playerManager.unloadProgrammer()}var o=this._page._playlistManager.getPlaylist();if(o&&o.getId()==l.MAGIC_ID){this._page._playlistManager.unloadPlaylist()}}this._page.createMagicPlaylist(n)}}catch(p){errorLog(p)}},createPlaylist:function(n,p){try{if(this._page instanceof mspot.page.PlayerPage){this._page.createPlaylist(n,p)}}catch(o){errorLog(o)}},copyPlaylist:function(n,o){if(this._page instanceof mspot.page.PlayerPage){this._page.copyPlaylist(n,o)}},updateStatus:function(p,o){var q="";if(o){q+="&sync="+YAHOO.lang.JSON.stringify(o)}var n=new mspot.api.ApiService();n.sendRequest(a.USER_URL+"?t="+i.unixTimestamp()+q,"GET",{},mspot.bind(this._updateStatus,this))},_updateStatus:function(n){var u=true;if(n.success){u=n.user.revision!=f.getValue("revision");if(this._page instanceof mspot.page.PlayerPage){this._page.setStatus(n);if(u&&(n.user.songs.total==0||n.user.songs.total==c.NUM_SAMPLER_SONGS||this._lastResult&&(this._lastResult.user.songs.total==0||this._lastResult.user.songs.total==c.NUM_SAMPLER_SONGS))){this.reset()}}this._lastResult=n;f.setValue("pctSynced",n.user.songs.synced/n.user.songs.total);f.setValue("revision",n.user.revision);f.setValue("pcConnected",n.user.pc_connected);f.setValue("lastUserResult",n);if(a.NO_FIRSTTIME_POPUP==""&&n.user.pc_connected){if(!this._showedSettingUpLibraryDialog&&n.user.song_db_status=="none"){this._showedSettingUpLibraryDialog=true;this._displaySettingUpLibraryDialog()}else{if(n.user.song_db_status=="finished"){var r=h.get("ausDialog");if(r){r.dialog.destroy()}a.NO_FIRSTTIME_POPUP=true;var o=document.location.href;var o=o.split("#");if(o.length<2){this._displayFirstTimeDialog()}}}}if(n.user.current_song_id&&n.user.current_song_sync_state<=1){var s=n.user.current_song_id,t=e.getUserLibrary(),q=t.getItem(s);if(q){var p=f.getValue("currentlySyncing");q.sync_state=l.SYNC_STATE_SYNCING;t.changeItem(s,q,"provider");f.setValue("currentlySyncing",s);if(p&&p!=s){q=t.getItem(p);if(q&&q.sync_state==l.SYNC_STATE_SYNCING){q.sync_state=l.SYNC_STATE_SYNCED;t.changeItem(p,q,"provider")}}}}else{if(f.getValue("currentlySyncing")){}}}else{if(n.error&&n.error.indexOf("Missing")==0){return}}if(n.wait){this._statusRefreshDelay=n.wait}else{if(u||n.user.song_db_status=="none"){this._statusRefreshDelay=c.MIN_STATUS_REFRESH_INTERVAL}else{this._statusRefreshDelay=Math.min(this._statusRefreshDelay*1.5,c.MAX_STATUS_REFRESH_INTERVAL)}}window.clearTimeout(this._updateStatusTimeout);this._updateStatusTimeout=window.setTimeout(mspot.bind(this.updateStatus,this),this._statusRefreshDelay*1000)},_onPcConnectedChange:function(){},reset:function(){this.destroy();this.changePage("Player");e.reloadPlaylists()},refreshPage:function(){if(this._page instanceof mspot.page.PlayerPage){this.reset();this.updateStatus()}},_onNeedToSyncChange:function(){try{}catch(n){}},showAccountOptions:function(){if(this._myAccountMenu==null){var q=h.createElement("div");q.className="accpanel";var u=h.get("menu");u.appendChild(q);var p=navigator.userAgent.toLowerCase();var s=(/msie 8/).test(p);if(s){u.appendChild(q)}this._myAccountMenu=new YAHOO.widget.Menu(q,{context:["my-account","tl","bl",["windowResize"]],monitorresize:false});var o=[];o.push({text:_("My Account"),onclick:{fn:this._onMyAccountClick,scope:this}});o.push({text:_("Upload Editor"),onclick:{fn:this._gotoUploader,scope:this}});o.push({text:_("Sign Out"),onclick:{fn:this._onLogOutClick,scope:this}});this._myAccountMenu.addItems(o);function r(){var v=this.getItems(),x=v.length,w;if(x>0){w=x-1;do{v[w].element.firstChild.hideFocus=true}while(w--)}}this._myAccountMenu.subscribe("render",r);function n(w,v,x){var y=h.get("menu");y.innerHTML="";x._myAccountMenu.unsubscribe("render",r);x._myAccountMenu.unsubscribe("hide",n);x._myAccountMenu=null}this._myAccountMenu.subscribe("hide",n,this)}var t=h.getRegion("my-account");this._myAccountMenu.cfg.setProperty("width",(parseInt(t.width)+1)+"px");this._myAccountMenu.render();this._myAccountMenu.show()},_gotoUploader:function(n){mspot.util.tryLoadPage("UploadEditor","upload-editor",Math.floor(Math.random()*10001))},_onMyAccountClick:function(){this.loadPage("MyAccount")},_onLogOutClick:function(){window.location="logout"},showDialogBox:function(s,o,r,q,n){if(o.indexOf("<")!=0){o='<div style="padding: 20px;">'+o+"</div>"}var p={header:s,body:o,buttons:r};if(!YAHOO.lang.isUndefined(q)){p.width=q}if(!YAHOO.lang.isUndefined(n)){p.height=n}b.load(["container"],this._showDialogBox,p,this)},_showDialogBox:function(n){if(this.dialogBox){this.dialogBox.destroy()}var o=new YAHOO.widget.Dialog("dialogBox",{width:(n.width?n.width:300)+"px",height:(n.height?n.height:125)+"px",fixedcenter:true,modal:true,buttons:n.buttons});o.setHeader(n.header);o.setBody(n.body);o.render(h.get("hd"));o.show();this.dialogBox=o},showConnectionErrorDialogBox:function(){this.showDialogBox(_("Connection error"),_("Check your internet connection and try again."),[]);k.onTimeout(8000,function(){this.dialogBox.cancel()},this,true)}};YAHOO.lang.augmentProto(c,YAHOO.util.EventProvider);mspot.namespace("app");mspot.app.WebRadio=c})();
