var selected_production;
var selected_date;

/* Mute music Player Flash */
function muteSound()
{
	document.flash.muteSoundJs();
}


/* Popup Video Player Programmation */
function popup(url)
{
	var current_url = document.location.href;

	if( current_url.match("show") == "show" ||  current_url.match("programmation") == "programmation" ){muteSound();}

	newwindow=window.open(url,'name','height=350,width=640');
	if (window.focus) {newwindow.focus()}
	return false;
}


function popupVideo(id,indexGroup)
{
	var current_url = document.location.href;

	if( current_url.match("show") == "show" ||  current_url.match("programmation") == "programmation" ){muteSound();}

	newwindow=window.open('/wp-content/themes/opera/popupVideo.php','name','height=350,width=640');
	if (window.focus) {newwindow.focus()}
	return false;
}


/* Popup Large */
function popup_large(url)
{
	var current_url = document.location.href;

	if( current_url.match("show") == "show" ||  current_url.match("programmation") == "programmation" ){muteSound();}

	newwindow=window.open(url,'name','height=460,width=675');
	if (window.focus) {newwindow.focus()}
	return false;
}

/* Popup critiques Programmation */
function popupCritic(url)
{
	var current_url = document.location.href;

	if( current_url.match("show") == "show" ||  current_url.match("programmation") == "programmation" ){muteSound();}

	newwindow=window.open(url,'name','height=690,width=990px');
	if (window.focus) {newwindow.focus()}
	return false;
}


/* Popup General */
function popup_g(pUrl,pWidth,pHeight)
{
	newwindow=window.open(pUrl,'name','height='+pHeight+',width='+pWidth);
	if (window.focus) {newwindow.focus()}
	return false;
}


function gup( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}


function lang(){
	var url = document.location.href;
	if(url.include('/fr/')){
		return 'fr';
	}
	return 'en';
}

function directory(){
	var url = document.location.href;
	var urlBase = "http://client3.k3media.com/inpix/" + lang();
	url = url.replace(urlBase, '')
	url = url.split('/');
	url = url.length-1;
	var path = '';
	for (i = 0; i < url; i++) {
  		path = path + '../';
	}

	return path;
}



function lang(){
	var url = document.location.href;
	if(url.include('/fr/')){
		return 'fr';
	}
	return 'en';
}


Opera = {

	//url_base : 'http://operawp.dev.inpix.ca/',
	

	init: function(name){
		cal=new jsKalMonth('cal',Opera.calDefaultOptions);
		Opera.updateBtnChangeMonth();
		cal.active = null
		cal.clickDay = Opera.clickDay
		Opera.load("RIGOLETTO");
	},


	updateBtnChangeMonth: function(cal){

		var i = cal.currentMonth()*1;
		var prev = i-2;
		prev = prev == -1 ? 11 : prev;
		$('prevMonth_btn').innerHTML = (cal.monthsLabel[lang()][prev]);
		var next = i;
		next = next == 12 ? 0 : next;
		$('nextMonth_btn').innerHTML = (cal.monthsLabel[lang()][next]);


	},




	calDefaultOptions: {
			width:280,
			dayHeight:40,
			eventHeight:'auto',
			multiEventDirection:'horizontal',
			firstDayIsMonday:false,
			displayOnlyFirstLetterOfDays:true,
			displayDaysNumberOnly:true,
			lang:'fr',
			currentMonthFormat:'%F %Y',
			rowDateHeight:45,
			displayEventOtherMonth:false,
			displayBtnChangeMonth:false
	},

	calDefaultOptionsEn: {
			width:280,
			dayHeight:40,
			eventHeight:'auto',
			multiEventDirection:'horizontal',
			firstDayIsMonday:false,
			displayOnlyFirstLetterOfDays:true,
			displayDaysNumberOnly:true,
			lang:'en',
			currentMonthFormat:'%F %Y',
			rowDateHeight:45,
			displayEventOtherMonth:false,
			displayBtnChangeMonth:false
	},

	calDoubleDefaultOptions: {
			width:240,
			dayHeight:30,
			eventHeight:'auto',
			multiEventDirection:'horizontal',
			firstDayIsMonday:false,
			displayOnlyFirstLetterOfDays:true,
			displayDaysNumberOnly:true,
			lang:'fr',
			currentMonthFormat:'%F %Y',
			rowDateHeight:45,
			displayEventOtherMonth:false,
			displayBtnChangeMonth:false
	},

	calDoubleDefaultOptionsEn: {
			width:240,
			dayHeight:30,
			eventHeight:'auto',
			multiEventDirection:'horizontal',
			firstDayIsMonday:false,
			displayOnlyFirstLetterOfDays:true,
			displayDaysNumberOnly:true,
			lang:'en',
			currentMonthFormat:'%F %Y',
			rowDateHeight:45,
			displayEventOtherMonth:false,
			displayBtnChangeMonth:false
	},


	clickDay: function(div,year,month,day,events){

			selected_date = year + "-" + month + "-" + day;
			if(div.hasClassName('hasEvent')){
				var event = events[0];
				if(activeDateDiv){
					activeDateDiv.removeClassName('eventActive');
				}
				activeDateDiv = div;
				div.addClassName('eventActive');


				if(lang()=="fr"){
					var choose = "Vous avez choisi le ";
					var salle = "Salle ";
					var cat = "Cat&eacute;gorie ";
				}else{
					var choose = "You have chosen ";
					var salle = "Location ";
					var cat = "Category  ";
				}

				var eventlocation = event.get('data').location;
				if(eventlocation){
					if(lang()=="fr")
						var txt = choose + day + " " + calA.monthsLabel[lang()][month-1] + " " + year + "</strong><br/><span class='comment'>" + salle + eventlocation +"</span>";
					else
						var txt = choose + calA.monthsLabel[lang()][month-1] + " " + day + " " + year + "</strong><br/><span class='comment'>" + salle + eventlocation +"</span>";
				}else{
					if(lang()=="fr")
						var txt = choose + day + " " + calA.monthsLabel[lang()][month-1] + " " + year + "</strong><br/>";
					else
						var txt = choose + calA.monthsLabel[lang()][month-1] + " " + day + " " + year + "</strong><br/>";
				}

				$('info_salle').update(txt);

				//tarif

				if(lang()=='fr')
				{

					var text_fr = event.get('data').text_fr;

					if(text_fr){
						txt = text_fr;
						var buyticket = document.getElementById("buyticket");
						if(buyticket) buyticket.style.display='none';
					}
					else{

						var buyticket = document.getElementById("buyticket");
						if(buyticket) buyticket.style.display='block';


						txt = "<strong>Tarif :</strong><br/>";
						txt += cat + " 1 : <strong> "+ event.get('data').prices.cat1 +" $</strong><br/>";
						txt += cat + " 2 : <strong> "+ event.get('data').prices.cat2 +" $</strong><br/>";
						txt += cat + " 3 : <strong> "+ event.get('data').prices.cat3 +" $</strong><br/>";
						txt += cat + " 4 : <strong> "+ event.get('data').prices.cat4 +" $</strong><br/>";

						if( selected_production == "LEGALA14EDITION" )
						{
							txt += "<br/>*Cocktail, visibilité partenaire et reçu pour fins d’impôt. Ces prix comprennent les taxes et la redevance aux salles. Les billets ne sont pas remboursables. ";
						}
							txt += '<a class="lien_utile_voir plus_details border_bottom" href="javascript:showSalle(\'fr\');">Voir le plan des salles</a>';
					}
				}
				else
				{


					var text_en = event.get('data').text_en;


					if(text_en){
						txt = text_en;
						var buyticket = document.getElementById("buyticket");
						if(buyticket) buyticket.style.display='none';
						//document.getElementById("buyticket").style.display='none';
					}
					else{
						var buyticket = document.getElementById("buyticket");
						if(buyticket) buyticket.style.display='block';


						txt = "<strong>Rates :</strong><br/>";
						txt += cat + " 1 : <strong> $"+ event.get('data').prices.cat1 +" </strong><br/>";
						txt += cat + " 2 : <strong> $"+ event.get('data').prices.cat2 +" </strong><br/>";
						txt += cat + " 3 : <strong> $"+ event.get('data').prices.cat3 +" </strong><br/>";
						txt += cat + " 4 : <strong> $"+ event.get('data').prices.cat4 +" </strong><br/>";

						if( selected_production == "LEGALA14EDITION" )
						{
							txt += "<br/>*Cocktail, partner visibility, and tax receipt. Prices include taxes and performance hall charge. Tickets are non-refundable.";
						}

						txt += '<a class="lien_utile_voir plus_details border_bottom" href="javascript:showSalle(\'en\');">See Seating Chart</a>';
					}

				}

				$('detail').update(txt);

				if($('continuez')){
					Element.show('continuez');
					var url = event.get('data')['ticket_url_' + lang()];
					$('continuez').href = url;
					$('continuez').target = '_blank';
				}

				if($('continue')){
					Element.show('continue');
					var url = event.get('data')['ticket_url_' + lang()];
					$('continue').href = url;
					$('continue').target = '_blank';
				}

				//if(!text_en){
					if($('buyticket')){
						Element.removeClassName('buyticket','hide');
						$('buyticket').next('img').hide();
						var url = event.get('data')['ticket_url_' + lang()];
						$('buyticket').href = url;
						$('buyticket').target = '_blank';
					}
				//}
			}

	},




	load: function(name,cal){

		var ar = new Ajax.Request('../../data.json');
		ar.options.onSuccess = function(origReq){
			var data = origReq.responseText.evalJSON()[name];


			$H(data).each(function(d){
				var date = d[0].split("-");
				var dataDate = d[1];


				cal.addEvent({
					year:date[0],
					month:date[1],
					day:date[2],
					data:dataDate
				});

			}.bind(this));

		}
	},


	gotoNextMonth: function(cal){
		cal.gotoNextMonth();
		Opera.updateBtnChangeMonth(cal);
	},


	gotoPreviousMonth: function(cal){
		cal.gotoPreviousMonth();
		Opera.updateBtnChangeMonth(cal);
	}
};

/*
function showSalle(lang)
{
   if(lang == 'en'){
   jsWin.instance().setContent('<div id="contenu"><h2 style="padding-bottom:4px;" class="border_bottom"><img src="../../ui/img/titre_plandessalles_en.jpg" /></h2><div id="cartedusite" style="padding-left:10px;margin-top:20px;"><p class="comment">Choose your seats:</p><div class="left" style="width:415px;margin-right:0px;"><h2 style="padding-bottom:3px;" class="border_bottom nomargin"><img src="../../ui/img/titre_wilfrid-pelletier_en.jpg" /></h2> <img src="../../ui/img/salle_WP.jpg" /> </div> <div class="left" style="width:440px;"><h2 style="padding-bottom:3px;" class="border_bottom"><img src="../../ui/img/titre_ludger-duvernay_en.jpg" /></h2><img src="../../ui/img/salle_LD.jpg" /></div></div><div class="clear"></div></div></div>');
   }else {
   jsWin.instance().setContent('<div id="contenu"><h2 style="padding-bottom:4px;" class="border_bottom"><img src="../../ui/img/titre_plandessalles.jpg" /></h2><div id="cartedusite" style="padding-left:10px;margin-top:20px;"><p class="comment">Choisissez votre place :</p><div class="left" style="width:415px;margin-right:0px;"><h2 style="padding-bottom:3px;" class="border_bottom nomargin"><img src="../../ui/img/titre_wilfrid-pelletier.jpg" /></h2> <img src="../../ui/img/salle_WP.jpg" /> </div> <div class="left" style="width:440px;"><h2 style="padding-bottom:3px;" class="border_bottom"><img src="../../ui/img/titre_ludger-duvernay.jpg" /></h2><img src="../../ui/img/salle_LD.jpg" /></div></div><div class="clear"></div></div></div>');
   }
   jsWin.instance().setOptions({modal:true,width:907});
   jsWin.instance().setTitle('');
   jsWin.instance().show();
}*/



function showSalle(lang)
{
  
  if ( lang !='en' && lang !='fr') {
  /* Il se peut que le paramêtre passé ne soit pas la langue (surtout depuis la visionneuse flash)
    Dans ce cas, on détermine la langue grace à l'url du document */
    var location = window.location.href;
    lang = (location.indexOf('/fr')!=-1)?'fr':'en';
  }
  
	jsWin.instance().setContent('<div id="contenu"><img src="/wp-content/themes/opera/img/'+lang+'/planSalles.jpg" /></div>');
	jsWin.instance().setOptions({modal:true,width:907});
	jsWin.instance().setTitle('');
	jsWin.instance().show();
}


function load(url, callback) {
		var xhr;

		if(typeof XMLHttpRequest !== 'undefined') xhr = new XMLHttpRequest();
		else {
			var versions = ["MSXML2.XmlHttp.5.0",
			 				"MSXML2.XmlHttp.4.0",
			 			    "MSXML2.XmlHttp.3.0",
			 			    "MSXML2.XmlHttp.2.0",
			 				"Microsoft.XmlHttp"]

			 for(var i = 0, len = versions.length; i < len; i++) {
			 	try {
			 		xhr = new ActiveXObject(versions[i]);
			 		break;
			 	}
			 	catch(e){}
			 }
		}

		xhr.onreadystatechange = ensureReadiness;

		function ensureReadiness() {
			if(xhr.readyState < 4) {
				return;
			}

			if(xhr.status !== 200) {
				return;
			}

			if(xhr.readyState === 4) {
				callback(xhr);
			}
		}

		xhr.open('GET', url, true);
		xhr.send('');
}


var newsletterTransaction = null;
document.observe('dom:loaded', function(thisEvent)
{
	$('info_top').down('form').onsubmit = function()
	{
		var url = /*Opera.url_base+*/'/proxy.php?optin='+$F('courriel')+'&lang='+lang();

		newsletterTransaction = new Ajax.Request(url, {
			method: 'get',
			onComplete: function(transaction)
			{
				var data;
				data = transaction.responseText.evalJSON();

				aWin = jsWin.instance();
				aWin.setOptions({modal:true, width:400});
				aWin.setTitle('');
				var title ="";
				if (lang()=='fr'){
					title ="Inscription &agrave; l'infolettre";
				}else{
					title ="Newsletter subscription";
				}
				var font="font-family:georgia;";
				var content = "<div style='font-size:12px;padding:10px 20px 60px'><h3 style='font-variant:normal;line-height:1.2em;margin:10px 0 22px;"+font+"'>"+title;
				if (!data.success){
					if (lang()=='fr'){
						content += " - Erreur</h3>Pri&egrave;re d'essayer de nouveau,<br/><span style=color:#d71f0e;>";
					}else{
						content += " - Error</h3>Please try again,<br/><span style=color:#d71f0e;>";
					}
				}else{
					content +="</h3><span>";
				}
				content += data.message+'</span></div>';
				aWin.setContent(content);
				aWin.show();
			}
		});

		return false;
	}



});


showNewsletterTransactionComplete = function()
{
	console.debug('ok');
}

