/*---------------------------------------/
/   GESTIÓN DE FORMS
/---------------------------------------*/

	//cuando estoy onfocus en el input, borro contenido
	function clickClear(this_field, default_text){
		if(this_field.get("value") == default_text){
			//this_field.value = "";
			this_field.set("value","");
		}
	}

	//cuando salgo del focus en el input, devuelvo el contenido
	function clickRecall(this_field, default_text){
		if(this_field.get("value") == ""){
			//this_field.value = default_text;
			this_field.set("value",default_text);
		}
	}


	/*Añadimos a un input de form varias funcionalidades
	-------------------------------------------------------------------*/

	function addEventToInput(inputEl,defaultText){

		inputEl.addEvent('focus',function(){
			clickClear(	this, defaultText );
		});

		inputEl.addEvent('blur',function(){
			clickRecall( this, defaultText );			
		});

	}

	/*Añadimos comprobacion ajax de comprobacion de usuario on blur
	-------------------------------------------------------------------*/
	
	function addEventUserCheck(inputEl){
		
		$(inputEl).addEvents({
		    
			'blur': function(){
			
		      	//sino, en explorer peta
				if($(inputEl).get('value') == "")$(inputEl).set('value','usuario');

				valorCampo = $(inputEl).get('value');

				$('mensaje_usuario_libre').empty().addClass('ajax-loading-registro');

		        	var req = new Request.HTML({
			            method: 'post',
						encoding: 'utf-8',
			            url: $('checkUserHref').get('href')+$(inputEl).get('value'),
			            //onRequest: $('mensaje_usuario_libre').addClass('ajax-loading-registro'),
			            update: $('mensaje_usuario_libre'),
			            onComplete: function(response) {$('mensaje_usuario_libre').removeClass('ajax-loading-registro');
			           	}
			        }).send();

				$(inputEl).set("value",valorCampo);
			
		     },
			'focus': function(){
				
		        if(this.get("value") == "usuario" || this.get("value") == "usuari" || this.get("value") == "USUARIO" || this.get("value") == "USUARI"){
					this.set("value","");
				}
				
				$('mensaje_usuario_libre').empty();
						 
			}
		
		});
		
	}
	
	
	/*Añadimos comprobacion ajax para sacar la pregunta secreta y bloquear lo que haga falta
	-------------------------------------------------------------------*/
	
	function addEventSacarPregunta(inputEl,campoUser,capaUpdate){

		$('respuesta_olvido').set('disabled','true');
		$('enviar_olvido').set('disabled','true');
		
		$(inputEl).addEvents({
		    
			'click': function(e){
				
				e.stop();
			
		      	valorCampo = $(campoUser).get('value');

				$(capaUpdate).empty().addClass('ajax-loading-registro');

		        	var req = new Request.HTML({
			            method: 'post',
						encoding: 'utf-8',
			            url: this.get('href')+$(campoUser).get('value'),
			            update: $(capaUpdate),
			            onComplete: function(response) {
							
							$(capaUpdate).removeClass('ajax-loading-registro');
			           		
							if($$('div.pregunta').length > 0){
								$('respuesta_olvido').removeProperty('disabled');
								$('enviar_olvido').removeProperty('disabled');
							}else{
								$('respuesta_olvido').set('disabled','true');
								$('enviar_olvido').set('disabled','true');
							}
							
						}
			        }).send();

				
			
			
		     }
		
		});
		
		
	}
	

	/*refresca captcha*/
	function refrescar_captcha(){
	
		$('refrescar_captcha_ajax').addEvent('click', function(e) {
			
			if(e)e.stop();
			
				
			$('captcha_image').empty().addClass('ajax-loading');

				   var req = new Request.HTML({
						method: 'post',
						encoding: 'utf-8',
						url: this.get('href'),
						update: $('captcha_image'),
						onComplete:$('captcha_image').removeClass('ajax-loading')
				   }).send();		
		});
	}
	

	function open_popup(id_capa){
		ventana = window.getSize();
		pop_up = new Element('div', {
			'id':'overlay',
			'events': {
			        'click': function(){
			         	$('overlay').destroy();
						$('pop_up_content').destroy();
						$('redAbsolute').style.display='none';
			        }
			 }
		} );									
		pop_up_content = new Element('div', {
			'html':$(id_capa).get('html'),
			'id':'pop_up_content',
			'style':'width:'+$(id_capa).style.width
			
		} );
		pop_up_cerrar = new Element('span', {
			'html':'<div class="cierre_msg"></div>',
			'id':'pop_up_cerrar',
			'events': {
			        'click': function(){
			         	$('overlay').destroy();
						$('pop_up_content').destroy();
						$('redAbsolute').style.display='none';
			        }
			 }
						
		} );
		
		pop_up.inject($('body'),'top');
		pop_up_content.inject($('detregalo2'),'top');
		pop_up_cerrar.inject($('pop_up_content'),'bottom');
		$('pop_up_content').style.position='static';
		if(document.all){
			$('pop_up_content').style.margin='0px';
			$('pop_up_content').style.width='506px';
		}
		$('redAbsolute').style.display='block';
		//$('redAbsolute').style.left='none';
		$('redAbsolute').style.left=(window['xleft']-300)+'px';
		$('redAbsolute').style.top=(window['xtop']-200)+'px';
	}

/*------------------------------------------------------------------------------------------------------------
/
/	ON DOM READY
/
-------------------------------------------------------------------------------------------------------------*/

window.addEvent('domready', function() {



		
	//---ZONA DE REGISTRO, gestión de forms con ajax, inputs, etc  ------------------------------------------------
	
	if( $('form_olvido_password')) addEventSacarPregunta("link_olvido","literalCid_olvido","pregunta_olvido");
	
	
		// SECCIÓN : CUENTA ---------------------------------------------------------------------------------------


		/* Introduce tus codigos
		-------------------------------------------------*/
		
		if($('validar_pincodes_form')){
			
			

				refrescar_captcha(); //añadimos evento de click para refrescar captcha
			
				$('validar_pincodes_form').addEvent('submit', function(e) {

					e.stop(); // evitamos que su evento normal se dispare

					//Comprobamos que esté todo validado

					if($('overlay')){return false;}
					
					this.set('send', {

						method: 'post',
						async: false,
				        encoding: 'utf-8',
						onRequest: $( 'loader' ).empty().addClass('ajax-loading') ,
						onComplete: function(response) { 

								$( 'loader' ).removeClass('ajax-loading');
							
								var respuesta = new Element('div', {'html':response} );
								var resultado = respuesta.getChildren('span#resultado').get('html');
								var resultado_puntos_consumidor = respuesta.getChildren('span#resultado_puntos_consumidor').get('html');
								
												
								if(resultado == "OK" || resultado == "1"){
									
									document.getElementById("pincode_1").removeAttribute("READONLY");

									for(i=2;i<10;i++){ 
										$("linea_pincode_"+i).set('style','display:none');
										//$("pincode_"+i).set('READONLY','false');
									 	document.getElementById("pincode_"+i).removeAttribute("READONLY");
									}
									
									var puntos = respuesta.getChildren('span#puntos').get('html');
									
									$('puntos_consumidor').set('text',resultado_puntos_consumidor);
									
									//limpiamos todos los inputs
									$$('form#validar_pincodes_form input[type=text]').each(function(value){	
										value.set('value','');
										value.removeClass('validado');
									});
									
									//limpiamos los puntos que se han indicado al validar
									$$('form#validar_pincodes_form span.puntos_pincode').set('text','___ puntos');
										
									//refrescamos el captcha
									$('refrescar_captcha_ajax').fireEvent('click');
									
									//limpiamos texto de captcha
									$$('form#validar_pincodes_form input[name=captcha]').each(function(value){	

										labelValue = this.getElement("label[for=" + value.get('name') + "]").get('text');

										value.set('value',labelValue);

									},$('validar_pincodes_form'));
									
									
									//SqueezeBox.setOptions({size: {x: $('popup-pincodes-enhorabuena').getStyle('width').toInt(), y: $('popup-pincodes-enhorabuena').getStyle('width').toInt()}}).setContent('clone', $('popup-pincodes-enhorabuena') );
									
							
									popup = new Element('div', {'html':respuesta.getChildren('span#mensaje').get('html'),'id':'popup'} );
									popup.inject($('popup-container').empty(),'top');
													
								//si el pincode NO ha validado
								}else if (resultado == "OK_ERRORES"){
									
								
											
									var puntos = respuesta.getChildren('span#puntos').get('html');

									
									$('puntos_consumidor').set('text',resultado_puntos_consumidor);
									
									popup = new Element('div', {'html':respuesta.getChildren('span#error').get('html'),'id':'popup'} );
									popup.inject($('popup-container').empty(),'top');
								
								}else{
									
									
									popup = new Element('div', {'html':respuesta.getChildren('span#error').get('html'),'id':'popup'} );
									popup.inject($('popup-container').empty(),'top');
									
									//open_popup('popup');
									
								}

								//Abrimos popup con el contenido que llega de popup si es que existe
								if($('popup')){
								
									//SqueezeBox.setOptions({size: {x: $('popup').getStyle('width').toInt(), y: $('popup').getStyle('width').toInt()}}).setContent('adopt', $('popup') );
									
									//alert($('popup').get('html'));
									open_popup('popup');
									
									
									
								}
						}

					});
					
					
					todosValidados = true;
					todosVacios = true;
					//comprobamos si se han validado todos, o si estan todos vacios
					$$('form#validar_pincodes_form input.pincode').each(function(value){
						
						if( (value.get('value') !="") ) todosVacios = false;
						if( (value.get('value') !="") && (!value.hasClass('validado')) ) todosValidados = false;
						
					});
					
					
					//si están todos los campos vacios
					if(todosVacios == true ) {
						$( 'loader' ).removeClass('ajax-loading');
						//SqueezeBox.setOptions({size: {x: $('popup-pincodes-vacios').getStyle('width').toInt(), y: $('popup-pincodes-vacios').getStyle('width').toInt()}}).setContent('clone', $('popup-pincodes-vacios') );
						open_popup('popup-pincodes-vacios');
						
					//si todos se han validado previamente enviamos el form
					}else if(todosValidados == true ) {
						this.send();
					//sino pedimos que se validen todos
					}else{
						$( 'loader' ).removeClass('ajax-loading');
						//SqueezeBox.setOptions({size: {x: $('popup-pincodes-no-validados').getStyle('width').toInt(), y: $('popup-pincodes-no-validados').getStyle('width').toInt()}}).setContent('clone', $('popup-pincodes-no-validados') );
						open_popup('popup-pincodes-no-validados');
					} 
				
				});

			$$('form#validar_pincodes_form input[name=captcha]').each(function(value){	
				if(this.getElement("label[for=" + value.get('name') + "]")){
					labelValue = this.getElement("label[for=" + value.get('name') + "]").get('text');
					addEventToInput( value , labelValue );
				}
			},$('validar_pincodes_form'));


			$$('input.escribechrcaptcha').addEvent('focus', function(){
				if(this.value=='escribe aquí los carácteres'){this.value=''}
			});
			
			$$('input.escribechrcaptcha').addEvent('blur', function(){
				if(this.value==''){this.value='escribe aquí los carácteres'}
			});
			
			$$('a.validar_ajax_link').addEvent('click', function(event) {
								
					if($('overlay')){return false;}
				
					event.stop();
					
					link_element = this;

		        	var req = new Request({
			            
						method: 'post',
			            encoding: 'utf-8',
			            //url: link_element.get('href')+"/"+$(link_element.get('rel')).get('value'),
						url: link_element.get('href'),
			            data: { 'do' : '1' , 'pincode': $(link_element.get('rel')).get('value')},						
						onRequest: $( link_element.get('rel')+'_puntos' ).empty().addClass('ajax-loading') ,

				        onComplete: function(response) { 

							var respuesta = new Element('div', {'html':response} );
							
							$( link_element.get('rel')+'_puntos' ).removeClass('ajax-loading');
							
							var resultado = respuesta.getChildren('span#resultado').get('html');

							//si el pincode ha validado bien
							if(resultado == 1){

								$(link_element.get('rel')).set('READONLY','TRUE');
								
								
								if( $("linea_"+link_element.get('rel')).getNext('tr') ){
									$("linea_"+link_element.get('rel')).getNext('tr').set('style','display:block');
									
									siguiente = document.getElementById("linea_"+link_element.get('rel')).nextSibling;
									
									if(siguiente.nodeType==3){siguiente = siguiente.nextSibling;}
																	
									siguiente.getElementsByTagName('input')[0].focus();																				
									

									
									//$("linea_"+link_element.get('rel')).getNext('tr').getChildren(".pincode").focus();
								
								}
								
								//cogemos los puntos 
								var puntos = respuesta.getChildren('span#puntos').get('html');
								//los añadimos a la casilla de puntos 
								$( link_element.get('rel')+'_puntos' ).set('text',puntos);
								$( link_element.get('rel') ).addClass('validado');
							
							//si el pincode NO ha validado
							}else{
								
								//reseteamos el valor del campo pincode invalido
								$(link_element.get('rel')).set('value','');
								
								//creamos el elemnto que será el popup con el mensaje de error
								popup = new Element('div', {'html':respuesta.getChildren('span#error').get('html'),'id':'popup'} );
								
								//lo inyectamos en el popup-container invisible 
								popup.inject($('popup-container').empty(),'top');
								
								//Abrimos popup con el contenido que llega de popup si es que existe
								if($('popup')){
									//SqueezeBox.setOptions({size: {x: $('popup').getStyle('width').toInt(), y: $('popup').getStyle('width').toInt()}}).setContent('adopt', $('popup') );
									open_popup('popup');
								}
							
							};
							
							
						
						
						}
						
					}).send();
				
				
			});



		}
		
		//formulario de envio de codigo plus
		if($('codigo_plus_form')){
				
			
				//Ajax para el formulario de código plus.
				$('codigo_plus_form').addEvent('submit', function(e) {

					e.stop(); // evitamos que su evento normal se dispare
					
					this.set('send', {
						method: 'post',
				        encoding: 'utf-8',
						onRequest: $( 'loader_plus' ).empty().addClass('ajax-loading') ,
						
						onComplete: function(response) { 

								$( 'loader_plus' ).removeClass('ajax-loading');
							
								var respuesta = new Element('div', {'html':response} );
								var resultado = respuesta.getChildren('span#resultado').get('html');
								var resultado_puntos_consumidor = respuesta.getChildren('span#resultado_puntos_consumidor').get('html');

								$('puntos_consumidor').set('text',resultado_puntos_consumidor);
										
																
								popup = new Element('div', {'html':respuesta.getChildren('span#popup').get('html'),'id':'popup'} );
								popup.inject($('popup-container').empty(),'top');
												
								//limpiamos el input
								$('codigo_plus_input').set('value',"");
								//$('codigo_plus_input').fireEvent('blur');
							
								//Abrimos popup con el contenido que llega de popup si es que existe
								if( $('popup') ){								
									//SqueezeBox.setOptions({size: {x: $('popup').getStyle('width').toInt(), y: $('popup').getStyle('width').toInt()}}).setContent('adopt', $('popup') );
									open_popup('popup');
								}
						}

					});
					
					
					error = false;
					
					//comprobamos si se intenta validar un codigo vacio
					if($('codigo_plus_input').get('value') == ""){
						$( 'loader_plus' ).removeClass('ajax-loading');
						//SqueezeBox.setOptions({size: {x: $('popup-codigo-plus-vacio').getStyle('width').toInt(), y: $('popup-codigo-plus-vacio').getStyle('width').toInt()}}).setContent('clone', $('popup-codigo-plus-vacio') );
						open_popup('popup-codigo-plus-vacio');
						error = true;
					}
					
					if(error == false ) this.send();
					
				
				});
		
		//fin del if codigo_plus
		}




    
});




