/****************************************************************************************************

  Filename:    ui.js
  Author:      F.Giorgianni   
  Description: User interface for mouvance-music.com

****************************************************************************************************/

	window.addEvent('domready', function(){
	
	  
	  // Image zoom
		SqueezeBox.assign($$('a[rel=zoom]'), {
		size: {x: 300, y: 400}
	  }); 
	  
		// Coverflow  
		var mf = new MooFlow($('coverflow'), {
				startIndex: 0,
				useSlider: true,
				useAutoPlay: false,
				useCaption: true,
				useSlider: false,
				useResize: true,
				useMouseWheel: true,
				useKeyInput: true,
				bgColor:"transparent",
				heightRatio: 0.29,
				reflection: 0.1,
				factor:80,
				'onClickView': function(mixedObject){
				 ajaxpage('releases.php?release_id='+mixedObject.alt, 'releases');
				 ajaxpage('videoplayer.php?release_id='+mixedObject.alt, 'videoplayer');
			}
			});

                    
	  
	}); // window.addEvents
	


/* PLAYER FUNCTIONS
****************************************************************************************************/
  var player;

  // Player initialization
	function playerReady(thePlayer) 
	  {
		  player = window.document[thePlayer.id];
		  addListeners();
	  }

	// Add a listener to the player 
	function addListeners() 
	  {
			if (player) { 
				player.addControllerListener("ITEM", "itemListener");
				player.addViewListener("STOP","muteTracker");	
		
			} else {
				setTimeout("addListeners()",100);
			}
	  }
	  


	// Update track informations
	function itemListener(obj) 
	  {
	    var plst = null;
		  plst = player.getPlaylist();		  
		  ajaxpage('item.php?id='+plst[obj.index].link, 'item');
      updateCoverflow(obj.index);
	  }
	  
function muteTracker(obj) { alert('the new mute state is: '+obj.state); };


/* COVERFLOW FUNCTIONS
****************************************************************************************************/
  function updateCoverflow(index)
    { 	
    }

/* NEWSLETTER FUNCTION
****************************************************************************************************/
  
  function newsletterSubmit()
    {
      email = document.getElementById("email");
      ajaxpage('newsletter.php?email='+email.value, 'newsletter');
    }

  function newsletterLoadForm()
    {
          ajaxpage('newsletter.php', 'newsletter');
    }

/* AJAX FUNCTIONS
****************************************************************************************************/
	var bustcachevar=1
	var loadedobjects=""
	var rootdomain="http://"+window.location.hostname
	var bustcacheparameter=""
	
	function ajaxpage(url, containerid){
	var page_request = false
	if (window.XMLHttpRequest) // if Mozilla, Safari etc
	page_request = new XMLHttpRequest()
	else if (window.ActiveXObject){ // if IE
	try {
	page_request = new ActiveXObject("Msxml2.XMLHTTP")
	} 
	catch (e){
	try{
	page_request = new ActiveXObject("Microsoft.XMLHTTP")
	}
	catch (e){}
	}
	}
	else
	return false
	page_request.onreadystatechange=function(){
	loadpage(page_request, containerid)
	}
	if (bustcachevar) //if bust caching of external page
	bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
	page_request.open('GET', url+bustcacheparameter, true)
	page_request.send(null)
	}
	
	function loadpage(page_request, containerid){
	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
	document.getElementById(containerid).innerHTML=page_request.responseText
	}
	
	function loadobjs(){
	if (!document.getElementById)
	return
	for (i=0; i<arguments.length; i++){
	var file=arguments[i]
	var fileref=""
	if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
	if (file.indexOf(".js")!=-1){ //If object is a js file
	fileref=document.createElement('script')
	fileref.setAttribute("type","text/javascript");
	fileref.setAttribute("src", file);
	}
	else if (file.indexOf(".css")!=-1){ //If object is a css file
	fileref=document.createElement("link")
	fileref.setAttribute("rel", "stylesheet");
	fileref.setAttribute("type", "text/css");
	fileref.setAttribute("href", file);
	}
	}
	if (fileref!=""){
	document.getElementsByTagName("head").item(0).appendChild(fileref)
	loadedobjects+=file+" " //Remember this object as being already added to page
	}
	}
	}

