// JavaScript Document

function downloadTrack(urlLicense,urlDownload) {
	document.getElementById('drm_client_info').value = document.getElementById('netobj').GetSystemInfo();
	loadAlertLoadingBox();

	new Ajax.Request(urlLicense, {
					 method: 'post',
					 parameters : '?drm_client_info='+document.getElementById('drm_client_info').value,
					 onSuccess: function(transport) {
						closeAlertLoadingBox();
						if (transport.responseText=='error') {
							loadAlertMessageBox('error','Neste momento, não é possível efectuar o download.');
						}else{
							//alert(transport.responseText);
							document.getElementById('netobj').StoreLicense("<LICENSERESPONSE>"+transport.responseText+"</LICENSERESPONSE>");
							document.getElementById('downloadMusic').href = urlDownload;
							document.getElementById('downloadMusic').click();
						}
					 }
	});
}

function downloadConcourseTrack(urlLicense,urlDownload) {
	document.getElementById('drm_client_info').value = document.getElementById('netobj').GetSystemInfo();
	loadAlertLoadingBox();

	new Ajax.Request(urlLicense, {
					 method: 'post',
					 parameters : '?drm_client_info='+document.getElementById('drm_client_info').value,
					 onSuccess: function(transport) {
						closeAlertLoadingBox();

						if (transport.responseText=='error') {
							loadAlertMessageBox('error','Neste momento, não é possível efectuar o download.');
						}else{
							//alert(transport.responseText);
							document.getElementById('netobj').StoreLicense("<LICENSERESPONSE>"+transport.responseText+"</LICENSERESPONSE>");
							document.getElementById('downloadMusic').href = urlDownload;
							document.getElementById('downloadMusic').click();
						}
					 }
	});
}

/* BEGIN open_videoclip */
function open_videoclip(url,width,height) {
	if (!overacting) {
		var url = url;
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: url, 
			type: 'page',
			width: width,
			height: height,
			title: ""
		});
	}else{
		loadAlertOveractingBox();
	}
}
/* END open_videoclip */

/* BEGIN galleryScroll */
function loadGalleryScrollItems(type,args) {
	document.getElementById('galleryScrollItemNumber').innerHTML = '0'+args[1];
}

function galleryScrollBackFirstItem() {
	/*if (document.getElementById('galleryScrollItemNumber').innerHTML == '01') {
		carousel.scrollTo(3);
	}*/
}
/* END galleryScroll */

/* BEGIN userRegister */
function changeCountry(elem) {
	var selValue = elem.value;

	if (selValue==1) {
		$('countryPortugal').style.display = 'block';
		$('cityDiv').style.display = 'none';
		$('address').focus();
	}else{
		$('countryPortugal').style.display = 'none';
		$('cityDiv').style.display = 'block';
		$('address').focus();
	}
}
/* END userRegister */

/* BEGIN alertsBox */
function loadAlertMessageBox(type,text) {
	var time = 5000;
	switch (type) {
		case 'error':
			$('alertMessageBoxTitle').innerHTML = 'Erro!';	
			$('alertMessageBoxTitle').className = 'alertError';	
			time = 10000;
			break;
		case 'oops':
			$('alertMessageBoxTitle').innerHTML = 'Oops!';	
			$('alertMessageBoxTitle').className = 'alertOops';	
			break;
		case 'success':
			$('alertMessageBoxTitle').innerHTML = 'Sucesso!';	
			$('alertMessageBoxTitle').className = 'alertSuccess';	
			break;
		case 'info':
			$('alertMessageBoxTitle').innerHTML = 'Informação';	
			$('alertMessageBoxTitle').className = 'alertInfo';	
			break;
		default:
			break;
	}
	$('alertMessageBoxText').innerHTML = text;	
	Effect.Appear('alertMessageBox',{to:0.90});
	setTimeout(function() { Effect.Fade('alertMessageBox');},time);
}

function loadAlertLoadingBox() {
	Effect.Fade('alertMessageBox',{duration:0.2});
	Effect.Appear('alertLoadingBox',{duration:0.2,to:0.90});
}

function closeAlertLoadingBox() {
	Effect.Fade('alertLoadingBox',{duration:0.1});
}

function loadAlertQuestionBox(text,func) {
	if (!overacting) {
		Effect.Fade('alertMessageBox',{duration:0.2});
		$('questionMessage').innerHTML = text;
		$('questionYes').onclick = func;
		Effect.Appear('alertQuestionBox',{duration:0.2,to:0.90});
		overacting = true;
	}
}

function closeAlertQuestionBox() {
	Effect.Fade('alertQuestionBox',{duration:0.1});
	overacting = false;
}

function loadAlertOveractingBox() {
	Effect.Appear('alertOveractingBox',{duration:0.2,to:0.90});
	setTimeout(function() {closeAlertOveractingBox();},1000);
}

function closeAlertOveractingBox() {
	Effect.Fade('alertOveractingBox',{duration:0.2});
}
/* END alertsBox */

/* BEGIN lists */
function removeListAll() {
	closeAlertQuestionBox();
	if (!overacting) {
		var url = $('baseURL').value+'?s=account&v='+encodeURIComponent($('listView').value)+'DeleteAll';
		var params = '';
		
		overacting = true;
		loadAlertLoadingBox();

		params += '&tp='+encodeURIComponent($('listType').value);
		params += '&page=1';
		
		new Ajax.Request(url, {
						 method: 'post',
						 parameters : params,
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								closeAlertLoadingBox();
								
								if (response=='error') {
									loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para remover itens da lista.');							
								}else{
									$('main').innerHTML = response;
									loadAlertMessageBox('success','Itens <b>removidos</b> da lista com sucesso.');							
								}
						}
		});
	}else {
		loadAlertOveractingBox();
	}
}

function removeList(id) {
	if (!overacting) {
		var url = $('baseURL').value+'?s=account&v='+encodeURIComponent($('listView').value)+'Delete';
		var params = '';
		
		overacting = true;
		loadAlertLoadingBox();

		params += '&tp='+encodeURIComponent($('listType').value);
		params += '&page='+encodeURIComponent($('page').value);
		params += '&id='+encodeURIComponent(id);
		
		new Ajax.Request(url, {
						 method: 'post',
						 parameters : params,
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								closeAlertLoadingBox();
								
								if (response=='error') {
									loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para remover itens da lista.');							
								}else{
									$('main').innerHTML = response;
									loadAlertMessageBox('success','Item <b>removido</b> da lista com sucesso.');							
								}
						}
		});
	}else {
		loadAlertOveractingBox();
	}
}
/* END lists */

/* BEGIN share */
function share_open(type) {
	if (!overacting) {
		var url = '';
		if (type=='homepage') {
			var url = $('baseURL').value+'?s=share&v=shareLW&t='+encodeURIComponent(type);
		}else{
			url = $('baseURL').value+'?s=share&v=shareLW&t='+encodeURIComponent(type)+'&i='+encodeURIComponent($('shareI').value);
		}
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: url, 
			title: "",
			width: 660,
			height: 400
		});
	}else{
		loadAlertOveractingBox();
	}
}

function sendEmail_validate() {
    var sendEmail = new Validation('sendEmailForm'); // OR new Validation(document.forms[0]);
	return sendEmail.validate();
}

function sendEmail(url) {
	if (!overacting) {
		if ($('sendEmailLoading').style.display == 'none') {
			var params = '&mailFrom=' + encodeURIComponent($('mailFrom').value);
			params += '&name=' + encodeURIComponent($('name').value);
			params += '&mailTo=' + encodeURIComponent($('mailTo').value);
			params += '&shareTitle=' + encodeURIComponent($('shareSocialTitle').value);
			params += '&shareLink=' + encodeURIComponent(document.URL);
			
			overacting = true;
			$('sendEmailLoading').style.display = 'block';
			$('sendEmailMessage').style.display = 'none';
	
			$('sendEmailMessageSuccess').style.display = 'none';
	
	
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('sendEmailLoading');
									
									Effect.Appear('sendEmailMessageSuccess');
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}
}


function shareWindow(type,u,t) {
	if (type=='delicious') {
		return 'http://del.icio.us/post?v=4&noui&jump=close&url='+encodeURIComponent(u)+'&title='+encodeURIComponent(t);
	}else
	if (type=='facebook') {
		return 'http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t);
	}else
	if (type=='googleBookmarks') {
		return 'http://www.google.com/bookmarks/mark?op=edit&output=popup&bkmk='+encodeURIComponent(u)+'&title='+encodeURIComponent(t);
	}else
	if (type=='magnolia') {
		return 'http://ma.gnolia.com/bookmarklet/add?url='+encodeURIComponent(u)+'&title='+encodeURIComponent(t);
	}else{
		return '';
	}
}

function facebookShare(page) {
	if (!overacting) {
		var documentURL = document.URL;
		var documentTitle = $('shareSocialTitle').value;

		if (page=='homepage')
			documentURL = $('baseURL').value;

		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: shareWindow('facebook',documentURL,documentTitle), 
			type: "external",
			title: "",
			width: 626,
			height: 460
		});
	}else{
		loadAlertOveractingBox();
	}
}

function deliciousShare(page) {
	if (!overacting) {
		var documentURL = document.URL;
		var documentTitle = $('shareSocialTitle').value;

		if (page=='homepage')
			documentURL = $('baseURL').value;

		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: shareWindow('delicious',documentURL,documentTitle), 
			type: "external",
			title: "",
			width: 700,
			height: 400
		});
	}else{
		loadAlertOveractingBox();
	}
}

function magnoliaShare(page) {
	if (!overacting) {
		var documentURL = document.URL;
		var documentTitle = $('shareSocialTitle').value;

		if (page=='homepage')
			documentURL = $('baseURL').value;
		
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: shareWindow('magnolia',documentURL,documentTitle), 
			type: "external",
			title: "",
			width: 600,
			height: 460
		});
	}else{
		loadAlertOveractingBox();
	}
}

function googleBookmarksShare(page) {
	if (!overacting) {
		var documentURL = document.URL;
		var documentTitle = $('shareSocialTitle').value;
		
		if (page=='homepage')
			documentURL = $('baseURL').value;
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: shareWindow('googleBookmarks',documentURL,documentTitle), 
			type: "external",
			title: "",
			width: 600,
			height: 460
		});
	}else{
		loadAlertOveractingBox();
	}
}
/* END share */

/* BEGIN newsletter */
function newsletterSubscription_open() {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: $('baseURL').value+'?s=newsletter&v=subscription', 
			title: "",
			width: 468,
			height: 300
		});
	}else{
		loadAlertOveractingBox();
	}
}

function newsletterSubscription_validate() {
    var subscribeForm = new Validation('subscribeForm'); // OR new Validation(document.forms[0]);
	return subscribeForm.validate();
}

function subscribe(url) {
	if (!overacting) {
		if ($('subscribeLoading').style.display == 'none') {
			var params = '&email=' + encodeURIComponent($('email').value);
			
			if ($('name').value.strip() != '')
				params += '&name=' + encodeURIComponent($('name').value);
		
			overacting = true;
			
			$('subscribeError').style.display = 'none';
			$('subscribeMessageSuccess').style.display = 'none';
			$('subscribeMessage').style.display = 'none';
			$('subscribeLoading').style.display = 'block';
		
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('subscribeLoading');
									
									if (response=='error') {
										Effect.Appear('subscribeMessage');
										Effect.Appear('subscribeError');
									}else{
										Effect.Appear('subscribeMessageSuccess');
									}
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}
}

function openUnsubscribe(email) {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: $('baseURL').value+'?s=newsletter&v=unsubscribeForm&e='+email,
			width: 468,
			height: 300,
			title:''});
	}
}

function unsubscribe() {
	Validation.add('validate-email-equal', 'O endereço de email introduzido não está correcto.', {
		 equalToField : 'oldemail' // value is equal to the form element with this ID
	});
	var unsubscribeValid = new Validation('unsubscribeForm'); // OR new Validation(document.forms[0]);
	
	if (!overacting && unsubscribeValid.validate()) {
		var params = '';

		overacting = true;
		params += '&e='+encodeURIComponent($('md5email').value);
		params += '&email='+encodeURIComponent($('email').value);

		$('unsubscribeLoading').style.display = 'block';
		$('unsubscribeError').style.display = 'none';
		$('unsubscribeMessageSuccess').style.display = 'none';
		
		new Ajax.Request($('baseURL').value+'?s=newsletter&v=remove', {
						 method: 'post',
						 parameters : params,
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								$('unsubscribeLoading').style.display = 'none';
								
								if (response=='error') {
									$('unsubscribeError').style.display = 'block';
								}else{
									$('unsubscribeMessageSuccess').style.display = 'block';
									$('divUnsubscribeForm').style.display = 'none';
								}
						}
		});
	}
}

/* END newsletter */

/* BEGIN feedback */
function feedback_open() {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: $('baseURL').value+'?s=feedback', 
			title: "",
			width: 468,
			height: 500
		});
	}else{
		loadAlertOveractingBox();
	}
}

function feedback_validate() {
    var feedbackForm = new Validation('feedbackForm'); // OR new Validation(document.forms[0]);
	return feedbackForm.validate();
}

function feedback(url) {
	if (!overacting) {
		if ($('feedbackLoading').style.display == 'none') {
			var params = '&email=' + encodeURIComponent($('email').value);
			params += '&name=' + encodeURIComponent($('name').value);
			params += '&subject=' + encodeURIComponent($('subject').value);
			params += '&message=' + encodeURIComponent($('message').value);
		
			overacting = true;
			
			$('feedbackMessageSuccess').style.display = 'none';
			$('feedbackMessage').style.display = 'none';
			$('feedbackLoading').style.display = 'block';
		
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('feedbackLoading');
									Effect.Appear('feedbackMessageSuccess');
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}
}
/* END feedback */

/* BEGIN podcastComment */
function comment_open(podcastItem) {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: $('baseURL').value+'?s=podcasts&v=commentForm&p='+podcastItem, 
			title: "",
			width: 468,
			height: 500
		});
	}else{
		loadAlertOveractingBox();
	}
}

function comment_validate() {
    var commentForm = new Validation('commentForm'); // OR new Validation(document.forms[0]);
	return commentForm.validate();
}

function comment(url) {
	if (!overacting) {
		if ($('commentLoading').style.display == 'none') {
			var params = '&email=' + encodeURIComponent($('email').value);
			params += '&name=' + encodeURIComponent($('name').value);
			params += '&website=' + encodeURIComponent($('website').value);
			params += '&commentContent=' + encodeURIComponent($('commentContent').value);
			params += '&podcastItem=' + encodeURIComponent($('podcastItem').value);
		
			overacting = true;
			
			$('commentMessageSuccess').style.display = 'none';
			$('commentMessage').style.display = 'none';
			$('commentLoading').style.display = 'block';
		
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('commentLoading');
									Effect.Appear('commentMessageSuccess');
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}
}
/* END podcastComment */

/* BEGIN shop */
function paymentModeOption(id) {
	if ($('transferInfo') && id=='transferInfo') {
		if ($('transferInfo')) $('transferInfo').style.display = 'block';
		if ($('paypalInfo')) $('paypalInfo').style.display = 'none';
		if ($('creditInfo')) $('creditInfo').style.display = 'none';
		if ($('atmInfo')) $('atmInfo').style.display = 'none';
	}else
	if ($('paypalInfo') && id=='paypalInfo') {
		if ($('transferInfo')) $('transferInfo').style.display = 'none';
		if ($('paypalInfo')) $('paypalInfo').style.display = 'block';
		if ($('creditInfo')) $('creditInfo').style.display = 'none';
		if ($('atmInfo')) $('atmInfo').style.display = 'none';
	}else
	if ($('creditInfo') && id=='creditInfo') {
		if ($('transferInfo')) $('transferInfo').style.display = 'none';
		if ($('paypalInfo')) $('paypalInfo').style.display = 'none';
		if ($('creditInfo')) $('creditInfo').style.display = 'block';
		if ($('atmInfo')) $('atmInfo').style.display = 'none';
	}else
	if ($('atmInfo') && id=='atmInfo') {
		if ($('transferInfo')) $('transferInfo').style.display = 'none';
		if ($('paypalInfo')) $('paypalInfo').style.display = 'none';
		if ($('creditInfo')) $('creditInfo').style.display = 'none';
		if ($('atmInfo')) $('atmInfo').style.display = 'block';
	}	
}

function confirmShop() {
	if ($('creditMode').checked) {
		if ($('balance') && $('shopTotal')) {
			if (parseFloat($('balance').value,10)<parseFloat($('shopTotal').value,10)) {
				loadAlertMessageBox('error','O seu saldo de conta é insuficiente para efectuar a compra.');
			}else {
				document.forms[1].submit();
				//return false;
			}
		}else
			loadAlertMessageBox('error','O seu saldo de conta é insuficiente para efectuar a compra.');
	}else
	if ($('transferMode').checked) {
		if ($('shopTotal')) {
			if (5>parseFloat($('shopTotal').value,10)) {
				loadAlertMessageBox('error','Compras por transferência bancária, têm um mínimo de €5.');
			}else {
				document.forms[1].submit();
				//return false;
			}
		}else
			loadAlertMessageBox('error','Compras por transferência bancária, têm um mínimo de €5.');
	}else
	if ($('atmMode') && $('atmMode').checked) {
		if ($('shopTotal')) {
			document.forms[1].submit();
		}else
			loadAlertMessageBox('error','Compras por multibanco, têm um mínimo de €5.');
	}else
	if ($('paypalMode').checked)
		document.forms[1].submit();
}

function confirmShopP() {
	if ($('creditMode').checked) {
		if ($('balance') && $('shopTotal')) {
			if (parseFloat($('balance').value,10)<parseFloat($('shopTotal').value,10)) {
				loadAlertMessageBox('error','O seu saldo de conta é insuficiente para efectuar a compra.');
			}else {
				if (valid.validate())
					document.forms[1].submit();
				//return false;
			}
		}else
			loadAlertMessageBox('error','O seu saldo de conta é insuficiente para efectuar a compra.');
	}else
	if ($('transferMode').checked) {
		if ($('shopTotal')) {
			if (5>parseFloat($('shopTotal').value,10)) {
				loadAlertMessageBox('error','Compras por transferência bancária, têm um mínimo de €5.');
			}else {
				if (valid.validate())
					document.forms[1].submit();
				//return false;
			}
		}else
			loadAlertMessageBox('error','Compras por transferência bancária, têm um mínimo de €5.');
	}else
	if ($('atmMode') && $('atmMode').checked) {
		if ($('shopTotal')) {
			if (valid.validate())
				document.forms[1].submit();
		}else
			loadAlertMessageBox('error','Compras por multibanco, têm um mínimo de €5.');
	}else
	if ($('paypalMode').checked && valid.validate())
		document.forms[1].submit();
}

function confirmShopT() {
	if ($('creditMode').checked) {
		if ($('balance') && $('shopTotal')) {
			if (parseFloat($('balance').value,10)<parseFloat($('shopTotal').value,10)) {
				loadAlertMessageBox('error','O seu saldo de conta é insuficiente para efectuar a compra.');
			}else {
				document.forms[1].submit();
				//return false;
			}
		}else
			loadAlertMessageBox('error','O seu saldo de conta é insuficiente para efectuar a compra.');
	}else
	if ($('paypalMode').checked)
		document.forms[1].submit();
}
/* END shop */

/* BEGIN concourse-functions */
function openConcourse(concourseURL) {
	if (!overacting) {
		overacting = true;
	
		if (($('termsAndConditions') && $('termsAndConditions').checked)||(!$('termsAndConditions'))) {
			var url = $('baseURL').value+'?s=passatempos&v=isLogged';
			loadAlertLoadingBox();
			new Ajax.Request(url, {
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									closeAlertLoadingBox();
									
									if (response!='success') {
										loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para se inscrever no passatempo.');							
									}else{
										myLightWindow.deactivate();
										myLightWindow.activateWindow({
											href: concourseURL, 
											title: "",
											width: 660,
											height: 400
										});
									}
							}
			});
		}else{
			overacting = false;
			loadAlertMessageBox('error','Parar se <b>inscrever</b> no passatempo tem de aceitar os <b>termos e condições</b>.');							
		}
	}else{
		loadAlertOveractingBox();
	}
}

function inscriptionForm_validate() {
	if ($('fileSendErrorDiv')) {
		$('fileSendErrorDiv').style.display = 'none';
	}
	Validation.add('validate-promo-code', 'O código promocional introduzido não está correcto.', {
		 equalToField : 'concoursePromoCode' // value is equal to the form element with this ID
	});
    var inscriptionForm = new Validation('inscription'); // OR new Validation(document.forms[0]);
	var fileSend = false;
	
	if ($('uploadInfo')) {
		if ($('uploadInfo').innerHTML != 'Nenhum ficheiro anexado.')
			fileSend = true;
	}else{
		fileSend = true;
	}

	if (!fileSend) {
		Effect.Appear('fileSendErrorDiv');
	}
		
	return inscriptionForm.validate() && fileSend;
}

function sendInscription(url) {
	if (!overacting) {
		if ($('sendInscriptionLoading').style.display == 'none') {
			var params = '&concourse='+ encodeURIComponent($('idConcourse').value);
			params += '&userFullName='+ encodeURIComponent($('userFullName').value);
			
			if ($('promoCode'))
				params += '&promoCode='+ encodeURIComponent($('promoCode').value);
			if ($('phraseOrText'))
				params += '&phraseOrText='+ encodeURIComponent($('phraseOrText').value);
			if ($('uploadInfo')) {
				params += '&fileNameO='+ encodeURIComponent($('uploadInfo').innerHTML);
				params += '&fileExtension='+ encodeURIComponent($('fileExtension').value);
				params += '&uploadDate='+ encodeURIComponent($('uploadDate').value);
				params += '&uploadDateStart='+ encodeURIComponent($('uploadDateStart').value);
			}

			overacting = true;
			$('sendInscriptionLoading').style.display = 'block';
			$('sendInscriptionMessage').style.display = 'none';
	
			$('sendInscriptionMessageSuccess').style.display = 'none';
			$('sendInscriptionMessageError').style.display = 'none';
	
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('sendInscriptionLoading');
									
									if (response=='error') {
										$('sendInscriptionMessage').style.display = 'block';
										Effect.Appear('sendInscriptionMessageError');
									}else{
										$('alreadyInConcourse').style.display = 'block';
										Effect.Appear('sendInscriptionMessageSuccess');
										$('userFullName').value = '';
										if ($('promoCode'))
											$('promoCode').value = '';
										if ($('phraseOrText'))
											$('phraseOrText').value = '';
										if ($('uploadInfo')) {
											$('uploadInfo').innerHTML = 'Nenhum ficheiro anexado.';
											$('fileExtension').value = '';
											$('uploadDate').value = '';
											$('uploadDateStart').value = '';
											$('btnSend1').style.display = 'block';
											$('btnRemove1').style.display = 'none';
										}
										myLightWindow.deactivate();
										loadAlertMessageBox('success','A sua inscrição foi enviada com sucesso.<br />Obrigado pela sua participação.');
									}
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}
}

function inscriptionViewDetails(url) {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: url, 
			title: ""
		});
	}else{
		loadAlertOveractingBox();
	}
}
/* END concourse-functions */

/* BEGIN addToLists */
function addToList(listURL) {
	if (!overacting) {
		var url = $('baseURL').value+'?s=lists&v=isLogged';
		overacting = true;
		loadAlertLoadingBox();
	
		new Ajax.Request(url, {
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								closeAlertLoadingBox();
								
								if (response!='success') {
									loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para adicionar às suas listas.');							
								}else{
									myLightWindow.deactivate();
									myLightWindow.activateWindow({
										href: listURL, 
										title: "",
										width: 468,
										height: 260
									});
								}
						}
		});
	}else{
		loadAlertOveractingBox();
	}
}

function checkLists_validate() {
	var wList = $('wishList');
	var fList = $('favouriteList');
	var wishListCool = wList.checked && !wList.disabled;
	var favouriteListCool = fList.checked && !fList.disabled;
	var resultState = wishListCool || favouriteListCool;

	$('listsGeneralError').style.display = 'none';
	$('listsMessageSuccess').style.display = 'none';

	if (!resultState) {
		if (wList.disabled && fList.disabled)
			Effect.Appear('listsNoCanDo');
		else
			Effect.Appear('listsFormError');
	}else{
		Effect.Fade('listsFormError');
		Effect.Fade('listsNoCanDo');
	}

	return resultState;
}

function checkLists(url) {
	if (!overacting) {
		if ($('checkListLoading').style.display == 'none') {
			var params = '';
			var wList = $('wishList');
			var fList = $('favouriteList');
			var wListCool = wList.checked && !wList.disabled;
			var fListCool = fList.checked && !fList.disabled;
			
			if (wListCool)
				params += '&wl=1';

			if (fListCool)
				params += '&fl=1';
		
			overacting = true;
			
			$('listsNoCanDo').style.display = 'none';
			$('listsFormError').style.display = 'none';
			$('listsGeneralError').style.display = 'none';
			$('listsMessageSuccess').style.display = 'none';

			$('checkListLoading').style.display = 'block';
		
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('checkListLoading');
									
									if (response == 'error') {
										Effect.Appear('listsGeneralError');
									}else{
										if (wListCool) {
											wList.checked = true;
											wList.disabled = true;
											$('wListLBL').className = "checkbox added";
										}
										if (fListCool) {
											fList.checked = true;
											fList.disabled = true;
											$('fListLBL').className = "checkbox added";
										}
										Effect.Appear('listsMessageSuccess');
									}
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}	
}

/* END addToLists */

/* BEGIN login */
function login_open(url) {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: url,
			title: "",
			width: 478,
			height: 328
		});
	}else{
		loadAlertOveractingBox();
	}
}

function logout_open(url) {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: url+($('section').value=='account' || $('section').value=='account_authors' ? '&ac=true' : ''), 
			title: "",
			width: 250,
			height: 220
		});
	}else{
		loadAlertOveractingBox();
	}
}

function closeLogout() {
	myLightWindow.deactivate();
}

function loginHideShow(show) {
	if (show=='login') {
		Effect.Fade('getPassword',{duration:0.5});
		setTimeout(function() {Effect.Appear('login',{duration:0.5});},500);
	}else{
		Effect.Fade('login',{duration:0.5});
		setTimeout(function() {Effect.Appear('getPassword',{duration:0.5});},500);
	}
}

function login_validate() {
    var login = new Validation('loginForm'); // OR new Validation(document.forms[0]);
	return login.validate();
}

function makeLogin(url) {
	if (!overacting) {
		if ($('loginLoading').style.display == 'none') {
			var params = '&username=' + encodeURIComponent($('lusername').value);
			params += '&pass=' + encodeURIComponent($('lpass').value);
		
			overacting = true;
			
			$('loginError').style.display = 'none';
			$('loginLoading').style.display = 'block';
		
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('loginLoading');
									
									if (response=='error') {
										Effect.Appear('loginError');
									}else{
										myLightWindow.deactivate();
										if ($('section').value=='users') {
											document.getElementById('redirectBtnUser').click();
										}else{
											$('metaInfoWrapper').innerHTML = response;
											Effect.Fade('metaNav');
											setTimeout(function() {Effect.Appear('metaInfoWrapper');},1100);
											setTimeout(function() { $('metaNav').innerHTML = '<li><a id="metaAccount" href="'+$('baseURL').value+'?s=account" title="Área Pessoal" onclick="this.blur();">Área pessoal</a></li><li><a id="metaLogout" href="javascript:;" onclick="this.blur();logout_open(\''+$('baseURL').value+'?s=users&amp;v=logout\');" title="Sair">Sair</a></li>';},1100);
											setTimeout(function() { Effect.Appear('metaNav'); },1100);
											
											if ($('starsVoteValue')) {
												loadAlertLoadingBox();
												var urlVote = $('baseURL').value+'?s=vote';
												var paramsVote = '';
												if ($('starsVoteType').value=='album')
													paramsVote += '&v=' + encodeURIComponent('getUserAlbumVote');
												else
												if ($('starsVoteType').value=='author')
													paramsVote += '&v=' + encodeURIComponent('getUserAuthorVote');
												else
													paramsVote += '&v=' + encodeURIComponent('getUserArtistVote');											
												paramsVote += '&i=' + encodeURIComponent($('starsVoteItem').value);
		
												overacting = true;
			
												new Ajax.Request(urlVote, {
																 method:'get',
																 parameters: paramsVote,
																 onSuccess: function(transport) {
																		var response = transport.responseText;
																		
																		overacting = false;
																		closeAlertLoadingBox();
											
																		$('starsVoteValue').value = response;
																		starsVoteOut();
																}
												});
											}
										}
									}
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}
}

function makeLogout(url) {
	new Ajax.Request(url);

	if ($('starsVoteValue')) {
		$('starsVoteValue').value = 0;
		starsVoteOut();
	}
	myLightWindow.deactivate();
	
	if ($('section').value!='account' && $('section').value!='account_authors') {
		Effect.Fade('metaInfoWrapper');
		Effect.Fade('metaNav');
		
		setTimeout(function() { $('metaNav').innerHTML = '<li><a id="metaLogin" href="javascript:;" onclick="this.blur();login_open(\''+$('baseURL').value+'?s=users&amp;v=login\');" title="Entrar">Entrar</a></li><li><a id="metaSignup" href="'+$('baseURL').value+'?s=users&amp;v=register" onclick="this.blur();" title="Registar">Registar</a></li>';},1100);
		setTimeout(function() { Effect.Appear('metaNav'); },1100);
		setTimeout(function() { $('metaInfoWrapper').innerHTML = '';},1100);
	
	}
}

function getPass_validate() {
    var getPassForm = new Validation('getPass'); // OR new Validation(document.forms[0]);
	return getPassForm.validate();
}

function recoverPassword(url) {
	if (!overacting) {
		if ($('recoverPasswordLoading').style.display == 'none') {
			var params = '&username=' + encodeURIComponent($('lusernamep').value);
			overacting = true;
			$('recoverPasswordLoading').style.display = 'block';
	
			$('passwordRecoveryError').style.display = 'none';
			$('passwordRecoveryMessageSuccess').style.display = 'none';
	
			$('passwordRecoveryMessage').style.display = 'block';
	
			new Ajax.Request(url, {
							 method: 'post',
							 parameters : params,
							 onSuccess: function(transport) {
									var response = transport.responseText;
									overacting = false;
									Effect.Fade('recoverPasswordLoading');
									
									if (response=='error') {
										Effect.Appear('passwordRecoveryError');
									}else{
										Effect.Fade('passwordRecoveryMessage');
										Effect.Appear('passwordRecoveryMessageSuccess');
									}
							}
			});
		}
	}else{
		loadAlertOveractingBox();
	}
}
/* END login */

/* BEGIN cart */
function addToCart(url,type,track) {
	if (!overacting) {
		var url = url;
		var params = '';
		
		overacting = true;
		loadAlertLoadingBox();

		params += '&tp='+encodeURIComponent(type);
		if (type=='track' || type=='authorTrack')
			params += '&rel='+track;
		else
			params += '&rel='+encodeURIComponent($('shopI').value);
			
		new Ajax.Request(url, {
						 method: 'post',
						 parameters : params,
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								closeAlertLoadingBox();
								
								if (response=='error') {
									loadAlertMessageBox('error','Ocorreu um problema ao tentar adicionar o item ao carrinho de compras.');							
								}else
								if (response=='errorL') {
									loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para adicionar itens ao carrinho de compras.');															
								}else
								if (response=='errorE') {
									loadAlertMessageBox('error','O item que escolheu já se encontra no carrinho de compras.');															
								}else
								if (response=='errorC') {
									loadAlertMessageBox('error','Ocorreu um problema ao tentar adicionar o item ao carrinho de compras.');															
								}else
								if (response=='errorLimit') {
									loadAlertMessageBox('error','Só pode adicionar 9 itens do mesmo '+(type=='ticket' ? 'bilhete' : 'produto')+'.');																								
								}else
								if (response=='errorTicketLimit') {
									loadAlertMessageBox('error','Não estão disponíveis mais bilhetes para venda.');																								
								}else
								if (response=='success') {
									$('metaShopCartItems').innerHTML = parseInt($('metaShopCartItems').innerHTML,10)+1;
									loadAlertMessageBox('success','Item <b>adicionado</b> ao carrinho de compras.');																																	
								}else
								if (response.indexOf('success')==0) {
									var totalItems = response.replace('success','');
									if (parseInt(totalItems,10)==0) {
										loadAlertMessageBox('error','Os itens que escolheu já se encontram no carrinho de compras.');															
									}else{
										$('metaShopCartItems').innerHTML = parseInt($('metaShopCartItems').innerHTML,10)+parseInt(totalItems,10);
										loadAlertMessageBox('success','Itens <b>adicionados</b> ao carrinho de compras.');							
									}
								}
						}
		});
	}else {
		loadAlertOveractingBox();
	}
}

function removeCartAll() {
	closeAlertQuestionBox();
	if (!overacting) {
		var url = $('baseURL').value+'?s=account&v='+encodeURIComponent($('cartView').value)+'DeleteAll';
		var params = '';
		
		overacting = true;
		loadAlertLoadingBox();

		params += '&page=1';
		
		new Ajax.Request(url, {
						 method: 'post',
						 parameters : params,
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								closeAlertLoadingBox();
								
								if (response=='error') {
									loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para remover itens do carrinho de compras.');							
								}else{
									$('metaShopCartItems').innerHTML = parseInt($('metaShopCartItems').innerHTML,10)-parseInt($('shopCartTotalItems').value,10);
									$('main').innerHTML = response;
									loadAlertMessageBox('success','Itens <b>removidos</b> do carrinho de compras com sucesso.');							
								}
						}
		});
	}else {
		loadAlertOveractingBox();
	}
}

function removeCart(id) {
	if (!overacting) {
		var url = $('baseURL').value+'?s=account&v='+encodeURIComponent($('cartView').value)+'Delete';
		var params = '';
		
		overacting = true;
		loadAlertLoadingBox();

		params += '&page='+encodeURIComponent($('page').value);
		params += '&id='+encodeURIComponent(id);
		
		new Ajax.Request(url, {
						 method: 'post',
						 parameters : params,
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								closeAlertLoadingBox();
								
								if (response=='error') {
									loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para remover itens do carrinho de compras.');							
								}else{
									if ($('cartView').value=='shopCartProducts') {
										$('metaShopCartItems').innerHTML = parseInt($('metaShopCartItems').innerHTML,10)-parseInt($('amount'+id).value,10);					
									}else{
										$('metaShopCartItems').innerHTML = parseInt($('metaShopCartItems').innerHTML,10)-1;					
									}
									$('main').innerHTML = response;
									loadAlertMessageBox('success','Item <b>removido</b> do carrinho de compras com sucesso.');							
								}
						}
		});
	}else {
		loadAlertOveractingBox();
	}
}

function updateCart(id,action) {
	if (!overacting) {
		var cartView = $('cartView').value;
		var url = $('baseURL').value+'?s=account&v='+encodeURIComponent($('cartView').value)+'Update';
		var params = '';
		
		overacting = true;
		loadAlertLoadingBox();

		params += '&page='+encodeURIComponent($('page').value);
		params += '&id='+encodeURIComponent(id);
		params += '&action='+encodeURIComponent(action);
		
		new Ajax.Request(url, {
						 method: 'post',
						 parameters : params,
						 onSuccess: function(transport) {
								var response = transport.responseText;
								overacting = false;
								closeAlertLoadingBox();
								
								if (response=='error') {
									loadAlertMessageBox('oops','Precisa de ser um <b>utilizador registado</b> e <b>entrar</b> para remover itens do carrinho de compras.');							
								}else
								if (response=='errorLimit') {
									loadAlertMessageBox('error','Só pode <b>modificar</b> a quantidade do '+(cartView=='shopCartTickets' ? 'bilhete' : 'produto')+' até 9 itens.');							
								}else
								if (response=='errorTicketLimit') {
									loadAlertMessageBox('error','Não estão disponíveis mais bilhetes para venda.');							
								}else{
									if (action=='plus') {
										$('metaShopCartItems').innerHTML = parseInt($('metaShopCartItems').innerHTML,10)+1;					
									}else{
										$('metaShopCartItems').innerHTML = parseInt($('metaShopCartItems').innerHTML,10)-1;					
									}
									$('main').innerHTML = response;
									loadAlertMessageBox('success','Quantidade <b>modificada</b> com sucesso.');							
								}
						}
		});
	}else {
		loadAlertOveractingBox();
	}
}

function confirmShopCartT() {
	if ($('hasExceededT').value=='1') {
		loadAlertMessageBox('error','Diminua as quantidades dos bilhetes com a quantidade a encarnado.');							
		return false;
	}
	else
		return true;
}
/* END cart */

/* BEGIN samples */
var actPlayer = 0;

function clickSample(n,id,url) {
	var sampleBTs = document.getElementsByName('sampleBT');
	var trackRows = $('tracksTable').rows;

	if (actPlayer!=0) {
		sendEvent(actPlayer,'stop');
		for (var i=1; i<(trackRows.length-1); i++) {
			trackRows[i].className = 'tableRowContent '+(i % 2 == 0 ? 'even' : 'odd');
			if (document.getElementById("player"+i) && i!=n)
				//Effect.Fade("player"+i,{duration:0.5});
					document.getElementById('player'+i).style.display = 'none';
	
		}
	
		for (var i=0; i<sampleBTs.length; i++) {
			$(sampleBTs[i].id).className = 'sample';
		}
	}
	
	if (actPlayer!=n) {
		new Ajax.Request(url, {method: 'get',parameters: '?s=music&v=sampleClick&id=' + id});

		actPlayer = n;
		$('trackRow'+n).className = 'tableRowContent '+(n % 2 == 0 ? 'even' : 'odd')+' selected';
		$('sampleBT'+n).className = 'sample selected';
		$('sampleBT'+n).blur();
		//Effect.Appear('player'+n,{duration:0.5,to:0.80});
		document.getElementById('player'+n).style.display = 'block';
		//setTimeout(function() {sendEvent(n,'stop');},900);
		setTimeout(function() {sendEvent(n,'playpause',0);},1000);
	}else{
		$('sampleBT'+n).blur();
		Effect.Fade("player"+n,{duration:0.5});
		//document.getElementById('player'+n).style.display = 'none';
		actPlayer = 0;
	}
}

function clickAuthorSample(n,id,url) {
	var sampleBTs = document.getElementsByName('sampleBT');
	var trackRows = $('tracksTable').rows;

	if (actPlayer!=0) {
		sendEvent(actPlayer,'stop');
		for (var i=1; i<(trackRows.length-1); i++) {
			trackRows[i].className = 'tableRowContent '+(i % 2 == 0 ? 'even' : 'odd');
			if (document.getElementById("player"+i) && i!=n)
				//Effect.Fade("player"+i,{duration:0.5});
					document.getElementById('player'+i).style.display = 'none';
	
		}
	
		for (var i=0; i<sampleBTs.length; i++) {
			$(sampleBTs[i].id).className = 'sample';
		}
	}
	
	if (actPlayer!=n) {
		new Ajax.Request(url, {method: 'get',parameters: '?s=authors&v=sampleClick&id=' + id});

		actPlayer = n;
		$('trackRow'+n).className = 'tableRowContent '+(n % 2 == 0 ? 'even' : 'odd')+' selected';
		$('sampleBT'+n).className = 'sample selected';
		$('sampleBT'+n).blur();
		//Effect.Appear('player'+n,{duration:0.5,to:0.80});
		document.getElementById('player'+n).style.display = 'block';
		//setTimeout(function() {sendEvent(n,'stop');},900);
		setTimeout(function() {sendEvent(n,'playpause',0);},1000);
	}else{
		$('sampleBT'+n).blur();
		Effect.Fade("player"+n,{duration:0.5});
		//document.getElementById('player'+n).style.display = 'none';
		actPlayer = 0;
	}
}

function thisMovie(movieName) {
	if(navigator.appName.indexOf("Microsoft") != -1) {
		return window[movieName];
	} else {
		return document[movieName];
	}
};
function sendEvent(number,typ,prm) { thisMovie("mp"+number).sendEvent(typ,prm); };
/* END samples */

/* BEGIN receipts */
function shopViewDetails(url,elem) {
	if (!overacting) {
		myLightWindow.deactivate();
		myLightWindow.activateWindow({
			href: url+'&elem='+encodeURIComponent(elem), 
			title: ""
		});
	}else{
		loadAlertOveractingBox();
	}
}
/* END receipts */

/* BEGIN preload */
var imagens=new Array();
function preload() {
	for (i=0;i<preload.arguments.length;i++) {
		imagens[i]=new Image();
		imagens[i].src=preload.arguments[i];
	}
}

preload("img/layout/black-70.png",
		"img/layout/black-80.png",
		"img/layout/black.png",
		"img/layout/loadingB.gif",
		"img/layout/loadingG.gif",
		"img/layout/loadingW.gif",
		"img/layout/errorIconB.gif",
		"img/layout/errorIconW.gif",
		"img/layout/infoIconB.gif",
		"img/layout/infoIconW.gif",
		"img/layout/oopsIconB.gif",
		"img/layout/oopsIconW.gif",
		"img/layout/pixelBGBlack70.png",
		"img/layout/pixelBGBlack80.png",
		"img/layout/pixelBGBlack90.png",
		"img/layout/pixelBGBlack100.png",
		"img/layout/playerWrapperBG70.png",
		"img/layout/playerWrapperBG80.png",
		"img/layout/playerWrapperBG90.png",
		"img/layout/playerWrapperBG100.gif",
		"img/layout/playerWrapperBG100.png",
		"img/layout/questionIconB.gif",
		"img/layout/radioBTHover.gif",
		"img/layout/resultBarPollBG.gif",
		"img/layout/stepInfoWrapperBG70.png",
		"img/layout/stepInfoWrapperBG80.png",
		"img/layout/stepInfoWrapperBG90.png",
		"img/layout/stepInfoWrapperBG100.png",
		"img/layout/successIconB.gif",
		"img/layout/successIconW.gif",
		"img/layout/stepInfoWrapperBG100.png",
		"img/layout/stepInfoWrapperBG100.png");
/* END preload*/

var overacting = false;

document.onclick=check;

function check(e){
	var target = (e && e.target) || (event && event.srcElement);

	var obj = document.getElementById('searchOptionsWrapper');

	var obj2 = document.getElementById('searchTypeText');

	//alert(target.id);
	checkParent(target) ? (obj.style.display!='none' ? Effect.BlindUp(obj.id,{duration:0.2}) : null) : null;

	target==obj2 ? (obj.style.display!='none' ? Effect.BlindUp(obj.id,{duration:0.2}) : Effect.SlideDown(obj.id,{duration:0.2})) : null;
}

function checkParent(t){
	while(t.parentNode){
		if(t==document.getElementById('searchOptionsWrapper') || t==document.getElementById('searchTypeText')){
			return false
		}
		t=t.parentNode
	}
	return true
}
