window.addEvent('domready', function() {
	activateAll();
});

window.addEvent('load', function() {
	normalBox('.normalBox');
	equalHeights('.galeriaPublic');
});

window.addEvent('resize', function() {
});

function activateTrans() {
	if (isset($('peliculaInfo'))) {
		$('pubIntro').setStyle('opacity', '0.7');
	}
}

function normalBox(className) {
	equalHeights(className);
	$$(className).each(function(ele){
		var normalBoxTop = new Element('div', {'class': 'normalBoxTop'});
		var normalBoxBottom = new Element('div', {'class': 'normalBoxBottom'});
		normalBoxTop.inject(ele, 'top');
	});
}
function activateAll() {
	activateTrans();
	activateMenu();
	activateCarrousel('.paginaRevista');
}

function activateCarrousel(className) {
	if (isset($$(className)[0])) {
		var contentDiv = $$(className)[0].getParent();
		var contentMask = new Element('div', {'id': contentDiv.get('id')+'Mask'});
		var widthEle = $$(className)[0].getStyle('width').replace('px','')*1;
		var heightEle = $$(className)[0].getStyle('height').replace('px','')*1;
		contentMask.wraps(contentDiv);
		contentMask.setStyle('height',heightEle);
		contentMask.setStyle('width',widthEle);
		contentMask.setStyle('overflow','hidden');
		contentMask.setStyle('position','relative');
		contentDiv.setStyle('position','absolute');
		contentDiv.setStyle('width',$$(className).length*widthEle);
		$$(className).each(function(ele){ele.setStyle('float','left')});
		setInterval("carrousel('"+contentDiv.get('id')+"', '"+contentMask.get('id')+"')", 5000 );
	}
}

function carrousel(idEleDiv, idEleMask) {
	var eleDiv = $(idEleDiv);
	var eleMask = $(idEleMask);
	var widthTotal = eleDiv.getStyle('width').replace('px','')*1;
	var widthEle = eleMask.getStyle('width').replace('px','')*1;
	var newPos = eleDiv.getStyle('margin-left').replace('px','')*1 - widthEle;
	var myFx = new Fx.Tween(eleDiv);
	if (newPos*(-1) >= widthTotal){
		myFx.start('margin-left', 0);
	} else {
		myFx.start('margin-left', newPos);
	}
}

function activateMenu() {
	$$('.modal a').each(function(ele){
		ele.addEvent('click', function(evt){
			evt.stop();
			showMessageAjax(ele.get('href')+'Modal');
		});
	});
}

function activateRotate(eleClass) {
	var rotater = new Rotater(eleClass,{
		slideInterval:5000,
		transitionDuration:1000
	});
}


function reloadDiv(urlReload, divReload) {
	var reloadRequest = new Request({
		method: 'get',
		url: urlReload,
		onSuccess: function(textResult, xmlResult){
						$(divReload).set('html',textResult);
						if (isset($(divReload).getElement('form'))) {
							cathForm($(divReload).getElement('form'));
						}
						activateAll();
					}
	}).send(); 	
}

function reloadDivSimple(urlReload, divReload) {
	$(divReload).set('html','');
	var reloadRequest = new Request({
		method: 'get',
		url: urlReload,
		onSuccess: function(textResult, xmlResult){
						$(divReload).set('html',textResult);
						activateAll();
					}
	}).send(); 	
}

function injectDivSimple(urlReload, divInject) {
	var reloadRequest = new Request({
		method: 'get',
		url: urlReload,
		onSuccess: function(textResult, xmlResult){
						var newDiv = new Element('div', {'html':textResult});
						newDiv.inject($(divInject));
						activateAll();
					}
	}).send(); 	
}

function reloadDivToogle(urlReload, divReload) {
	if ($(divReload).get('html')!='') {
		eraseContentDiv (divReload);
	} else {
		reloadDivSimple(urlReload, divReload);
	}
}

function eraseContentDiv (divErase) {
	$(divErase).set('html', '');
}

function showHide(eleId) {
	if ($(eleId).getStyle('display') == 'block' || $(eleId).getStyle('display') == '')
		$(eleId).setStyle('display', 'none');
	else
		$(eleId).setStyle('display', 'block');
	return;
}

function showHideElement(ele) {
	if (ele.getStyle('display') == 'block' || ele.getStyle('display') == '')
		ele.setStyle('display', 'none');
	else
		ele.setStyle('display', 'block');
	return;
}

function hideAll(eleClass) {
	$$(eleClass).each(function(el){
		el.setStyle('display', 'none');
	});
}

function showHideAll(eleClass, ele) {
	hideAll(eleClass);
	$(ele).setStyle('display', 'block');
}

function equalHeights(className) {
	var maxHeight = 0;
	$$(className).each(function (ele) {
		var actHeight = parseInt(ele.getStyle('height').replace('px',''));
		if (actHeight > maxHeight) {
			maxHeight = actHeight;
		}
	});
	$$(className).each(function (ele) {
		ele.setStyle('height',maxHeight+'px');
	 });
}

function equalWidths(className) {
	var numClasses = 0;
	var parentWidth = 0;
	$$(className).each(function(ele){
		var eleParent = ele.getParent();
		parentWidth = eleParent.getStyle('width').replace('px','');
		numClasses++;
	});
	$$(className).each(function(ele){
		ele.setStyle('width',parentWidth/numClasses-25);
	});
}

function makeEventsDraggable() {
	$$('.close').each(function(ele){
		var dragContainerOptions = {
			handle: ele
		};
		ele.parentNode.makeDraggable(dragContainerOptions);
	});
}



function deleteParentDiv() {
	$$('.deleteParent').each(function(divDel){
		divDel.addEvent('click', function(eve) {
			eve.stop();
			divDel.getParent().getParent().dispose();
		})
	});
}

function isset(variable_name) {
	try {
		if (typeof(eval(variable_name)) != 'undefined')
			if (eval(variable_name) != null)
				return true;
	} catch(e) { }
	return false;
}

function goUp() {
	window.scrollTo(0,0);	
}

function openPrinterWindow(urlPrint) {
	window.open(urlPrint,'Print','width=750,height=600,toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes');
}

function popUpWindow(urlWindow, height, width) {
	window.open(urlWindow,'Print','width='+width+',height='+height+',toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes');
}


function showMessageAjax(urlPage) {
	var reloadRequest = new Request({
		method: 'get',
		url: urlPage,
		onRequest: function () {
			window.scroll(0,0);
			var divBackgroundBlackDo = new Element ('div', {'id':'backgroundBlack', 'styles': {'opacity': '0.8'}});	
			var divLoader = new Element ('div', {'id':'divLoader'});	
			if (!isset($('backgroundBlack'))) {divBackgroundBlackDo.inject($(document.body), 'top');}
			if (isset($('backgroundBlack'))) {divLoader.inject($('backgroundBlack'));}
		},
		onSuccess: function(textResult, xmlResult){
						if (isset($('backgroundBlack'))) {$('backgroundBlack').dispose();}
						showMessage(textResult);
					}
	}).send(); 	
}

function showMessageForm(urlForm, idDivResult) {
	var reloadRequest = new Request({
		method: 'get',
		url: urlForm,
		onSuccess: function(textResult, xmlResult){
						showMessage(textResult);
						activateReload();
						var form = $('message').getElement('form');
						form.addEvent('submit',function(formEvent){
							new Event(formEvent).stop();
							if (checkForm()==false) {
								var request = new Request({  
									url: form.getProperty('action'),  
									method: 'post', 
									update: 'refresh-me',
									data: form,
									onComplete: function(response) {
										if (isset(idDivResult)) {
											$(idDivResult).set('html', response);
										}
										$('message').dispose();
										activateReload();
									}
								}).post(form);
							} else {
								var htmlError = 'Tiene que completar todos los campos';
								if (isset($('messageError'))) {
									$('messageError').set('html',htmlError);
								} else {
									var divErrorMessage = new Element ('div', {'id':'messageError',
																				'html':htmlError
									});	
									divErrorMessage.inject($('closeMessage'), 'after');
								}
							}
						});
					}
	}).send();
}

function checkForm() {
	var error = false;
	$$('.checkjsRequired').each(function(ele){
		if (ele.get('value')=='') {
			error = true;
		}
	});
	return error;
}

function showMessage(messageHtml) {
	if (isset($('message'))) {
		$('message').dispose();
	}
	var size = window.getSize();
	var posX = size.x/2 - 320;
	var posY = size.y/2 - 200 + window.pageYOffset;
	var divMessage = new Element ('div', {'id':'message',
											'styles': {
												'position':'absolute',
												'z-index':'999',
												'width':'640px',
												'left': posX,
												'top': '50'
											}
						  		});	
	var divClose = new Element ('div', {'id':'closeMessage',
										'html':'[X]'
						  		});	
	var divContent = new Element ('p', {'html':messageHtml,
										'styles': {
											'padding': '30px 10px'
										}
									});
	//divblack
	var divBackgroundBlack = new Element ('div', {'id':'backgroundBlack', 'styles': {'opacity': '0.8'}});	
	if (!isset($('backgroundBlack'))) {divBackgroundBlack.inject($(document.body), 'top');}
//	new Fx.Tween(divBackgroundBlack).start('opacity', 0, .9);
	$('backgroundBlack').addEvent('click', function(){closeMessage();});
	//divblack
	divClose.inject(divMessage);
	divContent.inject(divMessage);
	$('wrapper').setStyle('position','relative');
	divMessage.inject($('wrapper'), 'top');
	$('closeMessage').addEvent('click', function(){closeMessage();});
	window.scroll(0,0);
}

function closeMessage() {
	$(document.body).setStyle('overflow','auto');
	if (isset($('message'))) {$('message').dispose();}
	if (isset($('alert'))) {$('alert').dispose();}
	if (isset($('backgroundBlack'))) {$('backgroundBlack').dispose();}
}

