var images, thumbs=false, current_image;
var viewPhoto = function(n){
	images.each(function(img,i){
		if(i==n){
			current_image = n;
			img.removeClass('hidden');
			if(thumbs){
				thumbs[i].addClass('active').setOpacity(1);
			}
			$('fzoom')[(fotos_full[n]?'remove':'add')+'Class']('hidden');
		}else{
			img.addClass('hidden');
			if(thumbs){
				thumbs[i].removeClass('active').setOpacity(0.4);
			}
		}
	});
};

var photoFullc = false;
var viewPhotoFull = function(){
	if(!photoFullc){
		photoFullc = new Element('div',{'id':'photoFullc','class':'hidden'}).addEvent('click',hidePhotoFull).inject(document.body);
	}
	photoFullc.innerHTML = '<img src="'+images[current_image].src.replace('productos','productos/full')+'" />';
	
	Overlay.show();
	//Overlay.overlay.addClass('overlaypf');
	photoFullc.removeClass('hidden')
	
	////window.open(images[current_image].src.replace('productos','productos/full'));
};
var hidePhotoFull = function(){
	photoFullc.addClass('hidden');
	//Overlay.overlay.removeClass('overlaypf');
	Overlay.hide();
};

var Alerta = {
	init: function(){
		this.inputs = $('alerta').getElements('span,b').associate(['fecha','submit','contador']);
		this.inputs.submit.addEvent('click',this.save.pass([false], this));
		this.inputs.fecha.datePicker($merge(fechas,{
			onShow: function(container){
				container.fade('hide').fade('in');
			},
			onHide: function(container){
				container.fade('out');
			}
		}),'click');
		this.request = new Request({url:BASE.ajax+'alertas.ajax',onSuccess:function(r){this['on'+this.request.action](r)}.bind(this),onFailure:onError});

		this.alertaStock = $('alertaStock');
		if(this.alertaStock){
			this.alertaStock.addEvent('click',this.save.pass(['alertaStock'],this));
		}
	},

	checkData: function(){
		if(this.inputs.fecha.innerHTML.test(iRules.date.regx)){
			if(this.fechas.contains(this.inputs.fecha.innerHTML.replace(/\//g,''))){
				alert('Ya tienes una alerta de este producto para esta fecha.');
				return false;
			}else{
				return true;
			}
		}else{
			alert('Debes seleccionar una fecha.');
			this.inputs.fecha.retrieve('dp').show();
			return false;
		}
	},

	save: function(mode){
		if(mode || this.checkData()){
			Loading.show();
			this.inputs.fecha.retrieve('dp').hide();
			if(mode){
				this.request.action = alertaStock ? 'RemoveAlertaStock' : 'CreateAlertaStock';
			}else{
				this.request.action = 'Save';
				this.data.fechaEnvio = this.inputs.fecha.innerHTML;
			}
			this.request.send({data:'lng='+lng.code+'&action='+this.request.action+'&data='+JSON.encode(this.data)});
		}
	},

	onSave: function(response){
		if(response=='true'){
			Loading.set('Alerta creada correctamente!','success');
			this.fechas.push(this.inputs.fecha.innerHTML.replace(/\//g,''));
			this.inputs.contador.innerHTML = this.fechas.length;
			this.inputs.fecha.innerHTML = 'dd/mm/aaaa';
			Loading.hide.delay(2000,Loading);
		}else if(response=='false'){
			alert('No se ha podido crear la Alerta.');
		}else{
			alert(response);
		}
	},

	onCreateAlertaStock: function(response){
		if(response=='true'){
			var msg2 = $('msg2');
			if(msg2){
				msg2.removeClass('hidden');
			}else{
				new Element('strong',{'id':'msg2'}).set('html',messages._ALERTASTOCK_TEAVISAREMOS).injectBefore(this.alertaStock);
			}
			this.alertaStock.innerHTML = messages._ALERTASTOCK_NOAVISARME;
			alertaStock = true;
			Loading.hide();
		}
	},

	onRemoveAlertaStock: function(response){
		if(response=='true'){
			var msg2 = $('msg2');
			if(msg2){
				msg2.addClass('hidden');
			}
			this.alertaStock.innerHTML = messages._ALERTASTOCK_AVISARME;
			alertaStock = false;
			Loading.hide();
		}
	}
};

window.addEvent('domready',function(){
	images = $('photos').getElements('img');
	if(images.length>1){
		thumbs = new Element('div',{'id':'thumbs'}).injectAfter($('photos'));
		images.each(function(img,i){
			img.clone().addEvent('mouseenter',viewPhoto.pass([i],img)).inject(new Element('p').inject(thumbs));
		});
		thumbs = thumbs.getChildren();
	}
	viewPhoto(0);
	$('fzoom').addEvent('click',viewPhotoFull);

	if(loged){
		Alerta.init();
	}
});
