$(function() {
	//este es el dialogo del formulario de ingreso al sistemo
	$('#login_form_dialog #login_btn').button();
	$('#remember_passwd_dialog #remember_btn').button();
	
	$('#remember_passwd_dialog #volver_btn').button().click(function(){
		$('#login_form_dialog').dialog('open');
		$('#remember_passwd_dialog').dialog('close');
	});
	
	$('#login_form_dialog').dialog({
		width: 400,
		autoOpen: false,
		show: 'puff',
		hide: 'puff',
		modal: true,
		resizable: false
	});
	
	$('#remember_passwd_dialog').dialog({
		width: 400,
		autoOpen: false,
		show: 'puff',
		hide: 'puff',
		modal: true,
		resizable: false
	});
	
	//Validacion para navegadores viejos. Ahora no se puede hacer nada en la pagina si esta desactualizado	
	if($.browser.msie){
		if($.browser.version < 8.0){
			//mostrar el mensaje
			$('#outdated_browser').css('display', 'block');
			if($.browser.version <= 6.0){
				/*
				internet explorer antes del 7 no entiende el valor fixed para posotion, por lo que
				me veo obligado a borrar todo el contenido de la pagina y mostrar solo el mensaje.
				*/
				var mensaje = $('#contenido_msj').html();
				$('body').html('');
				$('body').html(mensaje);		
			}			
		}
	}
	
});
function subscribe(){
	var email = $('#txt_suscribe').val();
	var msj   = $('#txt_msjSubscribe').val();
	$.ajax({
			url: '/spa/users/subscribe',
			type: 'POST',
			data: 'email='+email,
			beforeSend: function(){
				
			},
			success: function(respuesta){
				alert(msj);
				 $('#txt_suscribe').val($('#js_suscribe_textbox_text').val());
			}
		});//fin del ajax
}
function validate(){
	var username = $('#login_form_dialog #username').val();
	var password = $('#login_form_dialog #password').val();
	var idioma = $('#js_current_lang').val();//idioma del request
	$('#login_form_dialog #username').removeClass( "ui-state-error" );
	$('#login_form_dialog #password').removeClass( "ui-state-error" );
	$('#login_form_dialog #tips').css('display', 'none');
	
	if(username != "" && password != ""){
		$.ajax({
			url: '/users/login',
			type: 'POST',
			dataType: 'JSON',
			data: 'data[User][user]='+username+'&data[User][password]='+password,
			beforeSend: function(){
				$('#login_form_dialog #process').css('display', 'block');
				$('#login_form_dialog #options').css('display', 'none');
			},
			success: function(respuesta){
				if(respuesta.status == 'notfound'){
					$('#login_form_dialog #tips #text').html( $('#js_login_error_not_found').val() );
					$('#login_form_dialog #tips').css('display', 'block');
					$('#login_form_dialog #process').css('display', 'none');
					$('#login_form_dialog #options').css('display', 'block');
				}
				if(respuesta.status == 'error'){
					$('#login_form_dialog #tips #text').html( $('#js_login_error_unknown').val() );
					$('#login_form_dialog #tips').css('display', 'block');
					$('#login_form_dialog #process').css('display', 'none');
					$('#login_form_dialog #options').css('display', 'block');
				}
				if(respuesta.status == 'disabled'){
					$('#login_form_dialog #tips #text').html(respuesta.name + ', ' + $('#js_login_error_disabled').val() );
					$('#login_form_dialog #tips').css('display', 'block');
					$('#login_form_dialog #process').css('display', 'none');
					$('#login_form_dialog #options').css('display', 'block');
				}
				if(respuesta.status == "ok"){
					if(respuesta.sex == "F"){
						$('#login_form_dialog #process').html('<b>'+ $('#js_login_success_female').val() + ' ' + respuesta.name + '!</b>, ' + $('#js_login_success_wait').val() +'...');
					}else{
						$('#login_form_dialog #process').html('<b>'+ $('#js_login_success_male').val() + ' ' + respuesta.name + '!</b>, ' + $('#js_login_success_wait').val() +'...');
					}
					if(respuesta.type == 'user'){
						window.location.reload();
						//window.location = '/'+idioma+'/products/index';
					}
					if(respuesta.type == 'admin'){
						window.location = '/admin/products/index';
					}
				}
			}
		});//fin del ajax
	}else{
		var errorArray = new Array();
		if(username == ''){
			$('#login_form_dialog #username').addClass( "ui-state-error" );
			errorArray.push(  $('#js_login_error_blank_username').val() );
		}
		if(password == ''){
			$('#login_form_dialog #password').addClass( "ui-state-error" );
			errorArray.push(  $('#js_login_error_blank_passwd').val() );
		}
		var error = errorArray.join( " "+$('#js_login_error_blank_glue').val()+" " );
		$('#login_form_dialog #tips #text').html( $('#js_login_error_blank_please').val() + " "+ error);
		$('#login_form_dialog #tips').css('display', 'block');
		
	}
	return false;
}

function remind(){
	var email = $('#remember_passwd_dialog #email').val();
	var idioma = $('#js_current_lang').val();//idioma del request
	$('#remember_passwd_dialog #email').removeClass( "ui-state-error" );
	$('#remember_passwd_dialog #tips').css('display', 'none');
	if(email != ""){
		if(validEmail(email)){//si es valida la direccion
			$.ajax({
				url : '/'+idioma+'/users/remindme',
				data: 'email='+email,
				dataType: 'JSON',
				type: 'POST',
				beforeSend: function(){
					$('#remember_passwd_dialog #process').css('display', 'block');
					$('#remember_passwd_dialog #options').css('display', 'none');
				},
				success: function(respuesta){
					$('#remember_passwd_dialog #process').css('display', 'none');
					$('#remember_passwd_dialog #options').css('display', 'block');
					if(respuesta.status == 'ok'){
						$('#remember_passwd_dialog #tips #text').html( $('#js_login_reminder_success').val() );
						setTimeout(function(){ $('#remember_passwd_dialog').dialog('close'); }, 3000);
					}
					if(respuesta.status == 'error'){
						$('#remember_passwd_dialog #tips #text').html( $('#js_login_reminder_notfound').val() );
					}
					if(respuesta.status == 'notsent'){
						$('#remember_passwd_dialog #tips #text').html( $('#js_login_reminder_notsent').val() );
					}
					$('#remember_passwd_dialog #tips').css('display', 'block');
				}
			});//fin del ajax
		}else{
			$('#remember_passwd_dialog #email').addClass( "ui-state-error" );
			$('#remember_passwd_dialog #tips #text').html( $('#js_login_error_email_invalid').val() );
			$('#remember_passwd_dialog #tips').css('display', 'block');
		}
	}else{
		$('#remember_passwd_dialog #email').addClass( "ui-state-error" );
		$('#remember_passwd_dialog #tips #text').html( $('#js_login_error_email_empty').val() );
		$('#remember_passwd_dialog #tips').css('display', 'block');
	}
	return false;
}


function login(){
	/*$('#login_form_dialog').bind( "dialogfocus", function(event, ui) {
		$('#login_form_dialog #username').focus();
	});*/
	$( "#login_form_dialog" ).dialog('open');
}

function remind_password(){
	$('#login_form_dialog').dialog('close');
	$('#remember_passwd_dialog').dialog('open');
}

//Funciones utiles para todo el programa
function validEmail(email){
	var criterio = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i;
	if(criterio.test(email)){
		return true;
	}else{
		return false;
	}
}

function validPassword(password){
	//var criterio = /^([0-9a-zA-Z])+$/;//esta expresion regular solo permite a-z y 0-9
	var criterio = 	/^[a-zA-Z]\w{3,14}$/;//esta expresion regular permite caracteres a-z, 0-9, underscores y debe inciiar con una letra
	if(criterio.test(password)){
		return true;
	}else{
		return false;
	}
}

function validAddress(address){
	//var criterio = /^[a-z]([0-9a-z_ #\.\,\-\(\)])+$/i;//esta expresion regular permite caracteres a-z, 0-9 y (#.,-_) y debe inciiar con una letra
	var criterio = /\w([0-9a-z_ #\.\,\-\(\)]{4,})+$/i;//esta expresion regular permite caracteres a-z, 0-9 y (#.,-_) y debe inciiar con una letra, minimo 5 caracteres
	if(criterio.test(address)){
		return true;
	}else{
		return false;
	}
}

function validDocument(documento){
	var criterio = /^[a-z\d_]{4,15}$/i ;//Numeros y letras, minimo 5 caracteres
	if(criterio.test(documento)){
		return true;
	}else{
		return false;
	}
}

function soloNumeros(evt){
	var keyPressed = (evt.which) ? evt.which : event.keyCode
	return !(keyPressed > 31 && (keyPressed < 48 || keyPressed > 57));
}

function main_shopping_cart(){
	var idioma = $('#js_current_lang').val();//idioma del request
	window.location = '/'+idioma+'/products/shopping_cart';
}

function go_ventas(){
	var idioma = $('#js_current_lang').val();//idioma del request
	window.location = '/'+idioma+'/pages/catalog_sales';
}

function watermark_subscribe(state){
	var watermark_text = $('#js_watermark_text').val();//esta en el layout default, es par asaber que texto buscar, segun el idioma
	var input_find = $('#txt_suscribe').val();
	if(state == 0){//onblur
		if( input_find == ''){
			$('#txt_suscribe').val(watermark_text);
		}
	}else{//on focus
		if( input_find = watermark_text){
			$('#txt_suscribe').val('');
		}
	}
	
	
}
