var isPlaying = 0;
var playInit = 1; 
var volumeSliderMax = 128;
var volumeSliderMin = 67;
var playtimeSliderMax = 135;
var playtimeSliderMin = 62;
var loadBol =1;
function onYouTubePlayerReady(playerId) {		
	      ytplayer = document.getElementById("myytplayer");
	      ytplayer.setVolume(100);
	      ytplayer.addEventListener("onStateChange", "onytplayerStateChange");
	         interVal=  setInterval(updateytplayerInfo, 1);
             //alert(ytplayer.getVideoBytesLoaded());
              // youTubeID, PlayingBol, CurrentTime, Volume
			var x = readCookie('musicPlayer');
				
			if (x) {
				var cookieArray=x.split(',');
					
 				
 				
 				$(".active_holder").removeClass('active_holder');
 				
 				var $active = $('div[youtubeid="'+cookieArray[0]+'"]').parent();
 				
 				
     			$active.addClass('active_holder');
  			//	alert(cookieArray[2]);
				ytplayer.cueVideoById(cookieArray[0], cookieArray[2], "default");
				loadBol = 0;
				ytplayer.setVolume(cookieArray[3]);
				var left = cookieArray[3]/100*(volumeSliderMax-volumeSliderMin);
				$("#yPlayer_volume_button").css("left", left+volumeSliderMin);
				$("#yPlayer_volume_slider").css("width", left);
				if(cookieArray[1]==1){
					playInit = 0; 
					isPlaying = 1;
					$("#yPlayer_pause").removeClass("active");
					$("#yPlayer_play").addClass("active");
					$("#coverPauseButton").fadeIn();
					$("#coverPlayButton").fadeOut();				
				}
				
				handelPlayer();
			}
	
}

function onytplayerStateChange(newState) {


	

	//alert(newState);
	var cookieInformation =  $(".active_holder").find("#player").attr("youtubeID")+","+isPlaying+","+ytplayer.getCurrentTime()+","+ytplayer.getVolume();
	if(newState != -1){
		eraseCookie('musicPlayer');
		
		createCookie("musicPlayer", cookieInformation, 0.05);
	}
	//End Of Video
	if(newState == 0){
   		
   		$("#yPlayer_next").trigger('click');
	}
	
	if(newState == 1 && isPlaying==0){
   
   		ytplayer.pauseVideo();
	}
}




function updateytplayerInfo() {
     	
     	var left = ytplayer.getCurrentTime()/ytplayer.getDuration()*(playtimeSliderMax-playtimeSliderMin);
     
     	
     	
     	
     	
		$("#yPlayer_playtime_slider").css("width",left );
		
		
		if(ytplayer.getCurrentTime() == 0){
     		left=playtimeSliderMin;
     		
     	}else{
     	 	left = ytplayer.getCurrentTime()/ytplayer.getDuration()*(playtimeSliderMax-playtimeSliderMin)+playtimeSliderMin;
     	}
		
		$("#yPlayer_playtime_button").css("left", left);
		left= ytplayer.getVideoBytesLoaded()/ytplayer.getVideoBytesTotal()*(playtimeSliderMax-playtimeSliderMin);
		
		$("#yPlayer_playtime_slider_prog").css("width", left );
			
		
		$("#timeLeft").empty();
	//	alert(ytplayer.getDuration());
		var secVar =Math.round(ytplayer.getDuration()-ytplayer.getCurrentTime());
		var minVar = Math.floor(secVar/60);  // The minutes
		 secVar = secVar % 60;              // The balance of seconds
		if(secVar>0 ){
			 if(secVar < 10){
			 	$("#timeLeft").append("-"+minVar+":0"+secVar);
			 }else{
			 	$("#timeLeft").append("-"+minVar+":"+secVar);
			 }
		}	
		$("#timeToPlay").empty();
		secVar =Math.round(ytplayer.getCurrentTime());
		
		 minVar = Math.floor(secVar/60);  // The minutes
		 secVar = secVar % 60;              // The balance of seconds
		 if(secVar < 10){
		 	$("#timeToPlay").append(minVar+":0"+secVar);
		 }else{
		 	$("#timeToPlay").append(minVar+":"+secVar);
		 }
		
		//alert();
		//updateHTML('timeLeft', "-"+ytplayer.getDuration());
        
        }

function handelPlayer(){
			//alert("sali");
			$("#yPlayer_playtime_slider").css("width", 1 );
		
			$("#yPlayer_playtime_button").css("left", playtimeSliderMin);
			$("#numberOfSongs").empty();
			$("#numberOfSongs").append($(".holder").index($('.active_holder'))+1+" von "+$(".holder").length);
		
			$("#yPlayer_playtime_slider_prog").css("width", 1);
			
				
			//alert(isPlaying);	
			
			playYoutubePlayer();
			/*

			$(".yPlayer_block").find(".phoneCover").fadeOut('fast', function() {
  				$(".yPlayer_block").find(".phoneCover").empty();
		  		$(".yPlayer_block").find(".phoneCover").append($('.active_holder').find("#phoneCover").html());
		  		$(".yPlayer_block").find(".phoneCover").fadeIn('fast');	
  			});
  			
  			$(".yPlayer_block").find(".phoneCoverFlip").fadeOut('fast', function() {
  				$(".yPlayer_block").find(".phoneCoverFlip").empty();
		  		$(".yPlayer_block").find(".phoneCoverFlip").append($('.active_holder').find("#phoneCover").html());
		  		$(".yPlayer_block").find(".phoneCoverFlip").fadeIn('fast');	
  			});
  			
  			
  			$(".yPlayer_content").find("#artist").fadeOut('fast', function() {
  				$(".yPlayer_content").find("#artist").empty();
		  		$(".yPlayer_content").find("#artist").append($('.active_holder').find("#artist").html());
		  		$(".yPlayer_content").find("#artist").fadeIn('fast');	
  			});
  			
  			$(".yPlayer_content").find("#song").fadeOut('fast', function() {
  				$(".yPlayer_content").find("#song").empty();
		  		$(".yPlayer_content").find("#song").append($('.active_holder').find("#song").html());
		  		$(".yPlayer_content").find("#song").fadeIn('fast');	
  			});
  			
  			$(".yPlayer_content").find("#album").fadeOut('fast', function() {
  				$(".yPlayer_content").find("#album").empty();
		  		$(".yPlayer_content").find("#album").append($('.active_holder').find("#album").html());
		  		$(".yPlayer_content").find("#album").fadeIn('fast');	
  			});
*/
			$(".label").find("#artist").fadeOut('fast', function() {
  				$(".label").find("#artist").empty();
		  		$(".label").find("#artist").append($('.active_holder').find("#artist").html());
		  		$(".label").find("#artist").fadeIn('fast');	
  			});
  			
  			$(".label").find("#song").fadeOut('fast', function() {
  				$(".label").find("#song").empty();
		  		$(".label").find("#song").append($('.active_holder').find("#song").html());
		  		$(".label").find("#song").fadeIn('fast');	
  			});
  			
  			
  			
  			$(".label").find("#cover").fadeOut('fast', function() {
  				$(".label").find("#cover").empty();
		  		$(".label").find("#cover").append($('.active_holder').find("#cover").html());
		  		$(".label").find("#cover").fadeIn('fast');	
  			});
  			
  			$(".label").find("#note").fadeOut('fast', function() {
  				$(".label").find("#note").empty();
		  		$(".label").find("#note").append(" "+$('.active_holder').find("#note").html());
		  		$(".label").find("#note").fadeIn('fast');	
  			});		
			
			$("#youtubeLink").attr("href", "http://youtu.be/"+$('.active_holder').find("#player").attr("youtubeid") );
			
			
		
		}

function playYoutubePlayer(){
			
			if(playInit == 1){
			 // alert(playInit);
				
				if (loadBol) {
					ytplayer.cueVideoById($(".active_holder").find("#player").attr("youtubeID"), $(".active_holder").find("#player").attr("youtubeStart"), "default");
					if(isPlaying ==1){
						ytplayer.playVideo();
					}
				}else{
							
				}
  				playInit=0;
  			}else{
  				loadBol =1;
    			ytplayer.playVideo();
    			
 		 	}
		
		}


	function flashDedection(e) {
			if(e.success){
				initPlayer();
			}else{
				$(".yPlayer_block").remove();
			}
		}

$(function(){


	
	$("a").click(function(event) {
		var curTime = ytplayer.getCurrentTime()+2;
		var cookieInformation =  $(".active_holder").find("#player").attr("youtubeID")+","+isPlaying+","+curTime+","+ytplayer.getVolume();
		eraseCookie('musicPlayer');
		createCookie("musicPlayer", cookieInformation, 0.05);
	});

	if($(".yPlayer_block").length){ 
		//initPlayer
		var params = { allowScriptAccess: "always" };
		  
		
		$(".holder:first").addClass("first_holder");
  		$(".holder:first").addClass("active_holder");
		
		$(".holder:last").addClass("last_holder");

		$("#numberOfSongs").append("1 von "+$(".holder").length);
		  
  		var atts = { id: "myytplayer" };
   		swfobject.embedSWF("http://www.youtube.com/e/"+$(".active_holder").find("#player").attr("youtubeID")+"?enablejsapi=1&playerapiid=ytplayer",
                       "ytapiplayer", "600", "300", "8", null, null, params, atts, flashDedection);
	
        
		}
	
});


function initPlayer(){
	 function play() {
	  		if (ytplayer) {
	    		ytplayer.playVideo();
	 		 }
		}           
		//end initPlayer
		
		
		
		
		$("#yPlayer_next").live("click", function(e) {
		
			
			
			var $active = $('.active_holder');
 			
     		$active.removeClass('active_holder');
   
     		if($active.hasClass('last_holder')){
     			$next= $('.first_holder');
     			
     		}else{
     			var $next =  $active.next();

     		}
			$next.addClass('active_holder');
			playInit = 1;
  			handelPlayer();
		});
		
		
		$("#yPlayer_prev").live("click", function(e) {
			
			
			
			var $active = $('.active_holder');
 			
     		$active.removeClass('active_holder');
   
     		if($active.hasClass('first_holder')){
     			$prev= $('.last_holder');
     			
     		}else{
     			var $prev =  $active.prev();

     		}
			$prev.addClass('active_holder');
			playInit = 1;
  			handelPlayer();
		});
		
		
		
		$( "#slider" ).slider();
		
		
		$("#yPlayer_play, #coverPlayButton").live("click", function(e) {
		playInit = 0;
				isPlaying = 1;
			playYoutubePlayer();
  			
	 		
			
			//$("#yPlayer_play").fadeOut();
			$("#yPlayer_play").addClass("active");
			
			$("#yPlayer_pause").removeClass("active");
			
			
			$("#coverPauseButton").fadeIn();
					$("#coverPlayButton").fadeOut();
			
		});
		$("#yPlayer_pause, #coverPauseButton").live("click", function(e) {
			isPlaying = 0;
			ytplayer.pauseVideo();
			
			
			$("#yPlayer_pause").addClass("active");
			$("#yPlayer_play").removeClass("active");
			
			$("#coverPauseButton").fadeOut();
			$("#coverPlayButton").fadeIn();	 
			
		});
		
		//$("#yPlayer_volume_button").slider({ animate: true })
$("#yPlayer_volume_button").draggable({axis: 'x' , refreshPositions: true,
  		 drag: function(event, ui) {
  		  
  		 	if (ui.position.left > volumeSliderMax || ui.position.left < volumeSliderMin  ) { 
                ui.position.left = ui.position.left_old
            //    ui.position.top = ui.position.top_old
            //alert (vol);
            }
            ui.position.left_old = ui.position.left
           //ui.position.top_old = ui.position.top
            $("#yPlayer_volume_slider").css("width", ui.position.left-volumeSliderMin);
          
	
           
          },
          stop: function(event, ui) {
         // alert($("#yPlayer_volume_button").css("left")); 
  		  		 var vol;
           if(parseInt($("#yPlayer_volume_button").css("left")) < volumeSliderMin+1){
         	 vol = 0;
           }else if(parseInt($("#yPlayer_volume_button").css("left")) > volumeSliderMax-1){
           		 vol = 100;
           }else{
           		vol =  (parseInt($("#yPlayer_volume_button").css("left"))-volumeSliderMin) / (volumeSliderMax-volumeSliderMin) *100;
           }
        	$("#yPlayer_volume_button").attr("vol", vol);
            ytplayer.setVolume(vol);
            var cookieInformation =  $(".active_holder").find("#player").attr("youtubeID")+","+isPlaying+","+ytplayer.getCurrentTime()+","+ytplayer.getVolume();

			eraseCookie('musicPlayer');
			
			createCookie("musicPlayer", cookieInformation, 0.05);
  		 		
	
           
          }
		});

		
	
		
		
$("#yPlayer_playtime_button").draggable({axis: 'x' , refreshPositions: true,
  		 drag: function(event, ui) {
  		 clearInterval(interVal);
  		 	if (ui.position.left > playtimeSliderMax || ui.position.left < playtimeSliderMin  ) { 
                ui.position.left = ui.position.left_old
            //    ui.position.top = ui.position.top_old
            //alert (vol);
            }
            ui.position.left_old = ui.position.left
           //ui.position.top_old = ui.position.top
            $("#yPlayer_playtime_slider").css("width", ui.position.left-playtimeSliderMin);
          
            
            
          
          
          }, stop: function(event, ui) { 
         
         		
  		var pos = (ytplayer.getDuration() / 100 * (ui.position.left-playtimeSliderMin) / (playtimeSliderMax-playtimeSliderMin) * 100);
		//          var pos = (ytplayer.getDuration() / 100 * (ui.position.left-45) / 100 * 100);
          	
          	ytplayer.seekTo(pos, true);
          	interVal=  setInterval(updateytplayerInfo, 1);

           }
		});

		
	
	

}
  
function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}





