// constants to define the title of the alert and button text.
var ALERT_TITLE = "Lbands";
var ALERT_BUTTON_TEXT = "OK";

// over-ride the alert method only if this a newer browser.
// Older browser will see standard alerts
if(document.getElementById) {
	window.alert = function(txt,success, duration) {
		createCustomAlert(txt,success,duration);
	}
}

function createCustomAlert(txt, success,duration) {
	// shortcut reference to the document object
	d = document;

	// if the modalContainer object already exists in the DOM, bail out.
	if(d.getElementById("modalContainer")) return;

	// create the modalContainer div as a child of the BODY element
	mObj = d.getElementsByTagName("body")[0].appendChild(d.createElement("div"));
	mObj.id = "modalContainer";
	 // make sure its as tall as it needs to be to overlay all the content on the page
	mObj.style.height = document.documentElement.scrollHeight + "px";

	// create the DIV that will be the alert 
	alertObj = mObj.appendChild(d.createElement("div"));
	alertObj.id = "alertBox";
	// MSIE doesnt treat position:fixed correctly, so this compensates for positioning the alert
/*	if(d.all && !window.opera) 
	 alertObj.style.top = document.documentElement.scrollTop + "px";
	else*/
	// alertObj.style.top = (window.innerHeight - alertObj.offsetHeight)/2 + "px";
	
	if (navigator.userAgent.indexOf('MSIE 6.0')+1){
	   alertObj.style.top = document.documentElement.scrollTop + "px"; 
	} else {
	  alertObj.style.top = (document.documentElement.clientHeight - alertObj.offsetHeight)/2 + "px";;	
	}
	// center the alert box
	alertObj.style.left = (d.documentElement.scrollWidth - alertObj.offsetWidth)/2 + "px";

	// create an H1 element as the title bar
	h1 = alertObj.appendChild(d.createElement("h1"));
	h1.appendChild(d.createTextNode(ALERT_TITLE));

	// create a paragraph element to contain the txt argument
	msg = alertObj.appendChild(d.createElement("p"));
	msg.appendChild(d.createTextNode(txt));
/*
	// create an anchor element to use as the confirmation button.
	btn = alertObj.appendChild(d.createElement("a"));
	btn.id = "closeBtn";
	btn.appendChild(d.createTextNode(ALERT_BUTTON_TEXT));
	btn.href = "#";
	// set up the onclick event to remove the alert when the anchor is clicked
	btn.onclick = function() { removeCustomAlert();return false; }
*/

    if ( duration === undefined ) {
      duration = 1800;
    }

	window.setTimeout("removeCustomAlert("+success+")", duration);

	
}

// removes the custom alert from the DOM
function removeCustomAlert(success) {
		if (success == false) {
 	       new Effect.Shake('alertBox', {duration: 0.3});
 	       new Effect.Fade('alertBox', { from: 1, to: 0, duration: 0.6, afterFinish: actuallyRemoveCustomAlert});
		} else {
 	       new Effect.Fade('alertBox', { from: 1, to: 0, duration: 0.9, afterFinish: actuallyRemoveCustomAlert});			
		}
}

function actuallyRemoveCustomAlert() {
 document.getElementsByTagName("body")[0].removeChild(document.getElementById("modalContainer"));
}



function vote(id) {
new Ajax.Request(baseUrl + '/' + language + '/bands/vote/',
  {
    method:'post',
    parameters: 'id=' + id  ,
	
    onSuccess: function(transport){

      var response = transport.responseText;
      if (response != 0) {
		  $('voteText'+id).update(response);    
		  $('voteImage'+id).src= baseUrl + '/public/images/shop/voteSmile_used.gif';    
		  alert(thanksForVote, true)
	  } else {
	  	  alert(canVoteOnce, false);
	  }
    },
    onFailure: function(){ alert('Error', false) }
  });
}


function setPayment(id) {
new Ajax.Request(baseUrl + '/' + language + '/cart/edit-payment-options/',
  {
    method:'post',
    parameters: 'ajax=1&select=' + id,
    onFailure: function(){ alert('Error', false) }
  });
}

function buy(form) {
$(form).request({
  method: 'get',
  parameters: {ajax: true},
  onSuccess: function(transport){
      var response = transport.responseText;
      if(response == 'notEnoughInStock'){
      	alert(notEnoughInStock, false);
      }
      else if(response == 'notActiveShop'){
      	alert(notActiveShop, false, 4500);
      }
      else {
	      $('bCart').replace(response);
	      alert(itemsAddedToCart, true);
      }
  },
  onFailure: function() {alert('Error when adding to cart', false);}
})
}
