var sm=soundManager;puu.app("player",function player(){jQuery(document).ready(this.ready);this.sm=soundManager;this.sm.useFlashBlock=true;this.sm.defaultOptions.volume=75;this.sm.url="/";this.sm.debugMode=false},{sm:null,yt:null,currentSong:null,currentSongId:0,currentSongInterval:null,songs:{},addSongs:function(b){this.songs=jQuery.extend({},this.songs,b)},onPlaylistRemove:function(f){var d=jQuery(this).parents("ul").eq(0).attr("id").split("-")[1];var e=jQuery(this).parents("li").eq(0).attr("class").replace(/\s*active\s*/,"").split("-")[1];jQuery(this).parents("li").eq(0).remove();if(d!=0&&!window.ruja){jQuery.ajax({timeout:20000,type:"GET",url:"/ajax.php?path=/Esitusnimekiri/Kustuta+lugu/"+d+"/"+e+"/",success:function(a,c,b){},error:function(a,b){puu.handleError("#content",a)}})}f.preventDefault()},onPlaylistTitle:function(b){player.play(jQuery(this).parents("li").eq(0).attr("class").replace(/\s*active\s*/,"").split("-")[1]);b.preventDefault()},onPlaylistArtist:function(b){if(this.href){jQuery.address.value(jQuery(this).attr("href").replace(/^http(s)?\:\/\/(.*?)\//,""))}else{player.play(jQuery(this).parents("li").eq(0).attr("class").replace(/\s*active\s*/,"").split("-")[1])}b.preventDefault()},onPlaylistItem:function(b){if(!jQuery(b.originalTarget).is("a")){player.play(jQuery(this).attr("class").replace(/\s*active\s*/,"").split("-")[1]);b.preventDefault()}},playerInit:function(){this.bindPlaylistMenu();this.updatePlaylistHeight();var b=function(a){if(a){a.preventDefault()}if(jQuery("#newplaylist input").val()&&jQuery("#newplaylist input").val()!="Uus esitusnimekiri"){jQuery.ajax({timeout:20000,type:"GET",url:"/ajax.php?path=/Esitusnimekiri/Uus/"+jQuery("#newplaylist input").val(),success:function(d,j,i){var h=jQuery("#newplaylist input").val();jQuery("#newplaylist input").val("");jQuery("#playlist-menu #newplaylist").before('<li><a href="#" class="playlist-'+d+'" style="background-image: url(\'http://static.rokisahtel.ee/playlist.php?text='+encodeURIComponent(h)+'\');"><img src="http://static.rokisahtel.ee/playlist.php?text='+encodeURIComponent(h)+'" alt="'+h.replace(/"|>/,"")+'" /></a></li>');jQuery("#options").before('<ul id="playlist-'+d+'" class="playlist hidden"></ul>');jQuery("#newplaylist").removeClass("active");player.bindPlaylistMenu();player.updatePlaylistHeight()},error:function(e,f){puu.handleError("#content",e)}})}else{jQuery("#newplaylist").removeClass("active")}};jQuery("#newplaylist form").bind("submit",b);jQuery("#newplaylist a").bind("click",function(a){a.preventDefault();if(!jQuery("#newplaylist").is(".active")){jQuery("#newplaylist").addClass("active");return}b()});jQuery("#deleteplaylist").bind("click",function(d){d.preventDefault();var a=jQuery(".playlist:not(.hidden)").attr("id").split("-")[1];jQuery.ajax({timeout:20000,type:"GET",url:"/ajax.php?path=/Esitusnimekiri/Kustuta/"+a,success:function(c,i,h){jQuery("#playlist-"+a).remove();jQuery("#playlist-menu .playlist-"+a).parents("li").eq(0).remove();jQuery("#playlist").addClass("minimized");player.updatePlaylistHeight()},error:function(c,f){puu.handleError("#content",c)}})});jQuery(".playlist li").bind("click",this.onPlaylistItem);jQuery(".playlist .artist").bind("click",this.onPlaylistArtist);jQuery(".playlist .title").bind("click",this.onPlaylistTitle);jQuery(".playlist .remove").bind("click",this.onPlaylistRemove);jQuery(".playlist").sortable({axis:"y",helper:"clone"});jQuery(".playlist").bind("sortupdate",function(g,h){var e=jQuery(this).attr("id").split("-")[1];var a=[];jQuery("#playlist-"+e+" li").each(function(c){a[a.length]=jQuery(this).attr("class").split("-")[1]});if(e!=0&&!window.ruja){jQuery.ajax({timeout:20000,type:"GET",url:"/ajax.php?path=/Esitusnimekiri/Järjekord/"+e+"/"+a.join(","),success:function(c,f,d){},error:function(c,d){puu.handleError("#content",c)}})}});jQuery("#video-container").draggable({handle:"h2"});jQuery("#video-container .close").bind("click",function(a){jQuery("#video-container").addClass("hidden");a.preventDefault()});jQuery("#control-prev").bind("click",function(a){player.previous();a.preventDefault()});jQuery("#control-next").bind("click",function(a){player.next();a.preventDefault()});jQuery("#control-play").bind("click",function(a){player.play();a.preventDefault()});jQuery("#control-pause").bind("click",function(a){player.pause();a.preventDefault()});jQuery("#control-shuffle").bind("click",function(a){player.toggleShuffle();a.preventDefault()});jQuery("#control-video").bind("click",function(a){player.toggleVideo();a.preventDefault()});if(!window.ruja){this.loadYt()}},loadYt:function(){swfobject.embedSWF("http://www.youtube.com/apiplayer?enablejsapi=1&playerapiid=ytplayer","yt","100%","100%","8",null,null,{allowScriptAccess:"always",wmode:"transparent"});this.yt=document.getElementById("yt");window.onYouTubePlayerReady=function(){player.yt.setVolume(75);player.yt.addEventListener("onStateChange","player.ytStateChange")}},ytStateChange:function(b){if(b==0){player.onSongFinish()}},playerInitFailure:function(){},updatePlaylistHeight:function(){jQuery(".playlist").css({minHeight:jQuery("#playlist-menu").height()-(window.ruja?0:25)+"px"})},bindPlaylistMenu:function(){jQuery("#playlist-menu li:not(#newplaylist) a").unbind("click").bind("click",function(b){player.setActivePlaylist(jQuery(this).attr("class").split("-")[1]);b.preventDefault()})},addToActivePlaylist:function(h){var f=this.getCurrentPlaylist();var g=jQuery(".song-"+h+" .artist").eq(0).text();var i=jQuery(".song-"+h+" .title").eq(0).text();if(!g){g=jQuery("#band-base").attr("title")}var j=jQuery('<li class="song-'+h+'"><a href="http://rokisahtel.ee/Esitaja/'+g+'/" class="artist">'+g+'</a> - <span class="title">'+i+'</span> <span class="remove">Kustuta</span></li>');jQuery("#playlist-"+f).append(j);jQuery(j).bind("click",this.onPlaylistItem);jQuery(".artist",j).bind("click",this.onPlaylistArtist);jQuery(".title",j).bind("click",this.onPlaylistTitle);jQuery(".remove",j).bind("click",this.onPlaylistRemove);if(f!=0){jQuery.ajax({timeout:20000,type:"GET",url:"/ajax.php?path=/Esitusnimekiri/Lisa+lugu/"+f+"/"+h+"/",success:function(a,c,b){},error:function(a,b){puu.handleError("#content",a)}})}},updatePlaylistMenu:function(){jQuery("#playlist-menu li").removeClass("active");jQuery("#playlist-menu li a.playlist-"+this.currentPlaylist).parents("li").eq(0).addClass("active")},setActivePlaylist:function(f,d){var e=jQuery("#playlist-"+f);player.currentPlaylist=f;if(e.is(".hidden")){if(jQuery("#playlist").is(".minimized")&&!d){jQuery("#playlist").removeClass("minimized")}jQuery(".playlist").addClass("hidden");e.removeClass("hidden");player.updatePlaylistMenu();if(f==0){jQuery("#options li:nth-child(2)").addClass("hidden")}else{jQuery("#options li").removeClass("hidden")}if(window.ruja){return}jQuery.ajax({timeout:20000,type:"GET",url:"/ajax.php?path=/Esitusnimekiri/Aktiivseks/"+f+"/",success:function(a,c,b){},error:function(a,b){puu.handleError("#content",a)}})}else{if(!d&&!window.ruja){jQuery("#playlist").addClass("minimized");e.addClass("hidden")}}},currentPlaylist:0,updateCurrentPlaylist:function(){this.currentPlaylist=this.getCurrentPlaylist()},getCurrentPlaylist:function(){var b=this.getActivePlaylist();if(b==0&&jQuery("#playlist-menu li").length){b=jQuery("#playlist-menu li:first-child a").attr("class").split("-")[1]}return b},getActivePlaylist:function(){if(jQuery("#playlist-menu li.active").length){return jQuery("#playlist-menu li.active a").attr("class").split("-")[1]}return 0},getCurrentSongId:function(){try{var c="#playlist-"+this.currentPlaylist+" li:first-child";if(jQuery("#playlist-"+this.currentPlaylist+" .active").length){c="#playlist-"+this.currentPlaylist+" li.active"}else{if(jQuery("#playlist-"+this.currentPlaylist+" .paused").length){c="#playlist-"+this.currentPlaylist+" li.paused"}}return jQuery(c).attr("class").replace(/\s*active\s*/,"").split("-")[1]}catch(d){}return 0},setCurrentSong:function(c,d){this.currentSongId=c;if(d){jQuery(".playlist li.active").addClass("aborted");jQuery(".playlist li, .playlist").removeClass("active")}else{jQuery(".playlist li, .playlist").removeClass("active aborted");jQuery(".song-"+this.currentSongId).addClass("active");jQuery(".song-"+this.currentSongId).eq(0).parents("ul").addClass("active")}},isPaused:false,play:function(h,f){if(!h&&this.isPaused&&this.currentSongId!=0){if(this.songs[this.currentSongId].t==3){this.yt.playVideo()}else{if(this.currentSong){this.currentSong.play()}}this.isPaused=false;jQuery("#control-pause").removeClass("hidden");jQuery("#control-play").addClass("hidden");return}this.stopAll(true);this.setActivePlaylist(this.getCurrentPlaylist(),true);if(h){this.setCurrentSong(h,f)}else{this.setCurrentSong(this.getCurrentSongId())}if(!f&&!jQuery("#playlist-"+this.currentPlaylist+" li").length){console.error("no playlist");return}if(this.currentSongId==0||!this.songs[this.currentSongId]){this.resetDisplay();console.error("no song");return}jQuery(".playlist li").removeClass("active");jQuery(".song-"+this.currentSongId).addClass("active");jQuery("#video-container, #control-video").addClass("hidden");if(this.songs[this.currentSongId].t==1||this.songs[this.currentSongId].t==2){var i={id:"song-"+this.currentSongId,url:(this.songs[this.currentSongId].t==1?"http://s.rokisahtel.ee/":"")+this.songs[this.currentSongId].f,volume:50,autoPlay:true,onbeforefinish:function(){},onfinish:function(){player.onSongFinish()}};this.currentSongInterval=window.setInterval(function(){jQuery("#songtime :first-child").text(player.getTime(player.currentSong.position,true));jQuery("#songtime :last-child").text(player.getTime(player.currentSong.duration,true))},1000);if(this.songs[this.currentSongId].v==1){jQuery("#video-container, #control-video").removeClass("hidden").removeClass("yt");this.currentSong=this.sm.createVideo(i)}else{this.currentSong=this.sm.createSound(i)}}else{if(this.songs[this.currentSongId].t==3){this.yt.loadVideoById(this.songs[this.currentSongId].f,0,"default");this.currentSongInterval=window.setInterval(function(){jQuery("#songtime :first-child").text(player.getTime(player.yt.getCurrentTime()*1000,true));
jQuery("#songtime :last-child").text(player.getTime(player.yt.getDuration()*1000,true))},1000);if(this.songs[this.currentSongId].v==1){jQuery("#video-container, #control-video").removeClass("hidden").addClass("yt")}}}var g=jQuery(".song-"+this.currentSongId+" .artist").eq(0).text();var j=jQuery(".song-"+this.currentSongId+" .title").eq(0).text();if(!g){g=jQuery("#band-base").attr("title")}if(window.ruja){jQuery("#currentsong").html(g+" - "+j)}else{jQuery("#currentsong").html('<a href="http://rokisahtel.ee/Esitaja/'+encodeURIComponent(g)+'/">'+g+"</a> - "+j);rokisahtel.bindUrls("#currentsong")}this.isPaused=false;jQuery("#control-pause").removeClass("hidden");jQuery("#control-play").addClass("hidden");if(jQuery("#gotocurrent").is(":checked")){jQuery.address.value("/Esitaja/"+g+"/")}puu.ajax({contentOnly:true,timeout:20000,type:"GET",url:"/Statistika/Lugu/"+this.currentSongId+"/"})},pause:function(){if(this.currentSongId!=0){if(this.songs[this.currentSongId].t==3){this.yt.pauseVideo();this.isPaused=true}else{if(this.currentSong){this.currentSong.pause();this.isPaused=true}}}jQuery("#control-pause").addClass("hidden");jQuery("#control-play").removeClass("hidden")},next:function(){this.isPaused=false;if(jQuery("#playlist-"+this.currentPlaylist+" li.aborted").length){this.play(jQuery("#playlist-"+this.currentPlaylist+" li.aborted + li").attr("class").split("-")[1]);jQuery("#playlist li.aborted").removeClass("aborted");return}var c=jQuery("#playlist-"+this.currentPlaylist+" .song-"+this.currentSongId+" + li");var d=c.length?c:jQuery("#playlist-"+this.currentPlaylist+" li:first-child");if(d.length){this.play(d.attr("class").split("-")[1])}},previous:function(){this.isPaused=false;var c=jQuery("#playlist-"+this.currentPlaylist+" li");var d=c.index(jQuery("#playlist-"+this.currentPlaylist+" .song-"+this.currentSongId));this.play(c.eq(d-1).attr("class").split("-")[1])},shuffle:false,setShuffle:function(b){this.shuffle=b},toggleShuffle:function(){if(this.shuffle){this.setShuffle(false);return}this.setShuffle(true)},toggleVideo:function(){if(jQuery("#video-container").is(".hidden")){jQuery("#video-container").removeClass("hidden");return}jQuery("#video-container").addClass("hidden")},onSongFinish:function(){jQuery("#video-container, #control-video").addClass("hidden");window.clearInterval(this.currentSongInterval);this.resetTime();this.next()},stopAll:function(b){this.resetTime();if(!b){this.resetDisplay()}if(this.yt){this.yt.stopVideo()}if(this.currentSong){this.currentSong.destruct();this.currentSong=null}if(this.currentSongInterval){window.clearInterval(this.currentSongInterval)}this.currentSongId=0},getTime:function(e,h){var g=Math.floor(e/1000);var f=Math.floor(g/60);g=g-f*60;return h?(f+":"+(g<10?"0"+g:g)):{m:f,s:g}},resetTime:function(){jQuery("#songtime :first-child, #songtime :last-child").text("-:-")},resetDisplay:function(){jQuery("#currentsong").text("Rokisahtli pleier")},ready:function(){sm.onready(function(b){if(b.success){if(window.ruja){window.ruja.playerInit()}else{if(window.rokisahtel){window.rokisahtel.playerInit()}}player.playerInit()}else{if(window.ruja){window.ruja.playerInitFailure()}else{if(window.rokisahtel){window.rokisahtel.playerInitFailure()}}player.playerInitFailure()}})}});
