// valida el formulario de inserción de comentarios de bar
function validar(x){
	
	
	var msnError = "";
	if(x.comentario_nombre.value == ""){
		msnError = "El nombre no puede ser nulo.\n";
	}
	if(x.comentario_email.value == "") {
		msnError += "El email no puede ser nulo.\n";
	}
	if(!isEmail(x.comentario_email.value)){
		msnError += "El email debe de ser válido.\n";
	}
	if(x.comentario_texto.value == ""){
		msnError += "El texto no puede ser nulo.\n";
	}
	if(!x.acepto.checked){
		msnError += "Debes aceptar la condiciones.\n";
	}
	
	if( msnError == "" ){
		x.submit();
	}else{
		alert(msnError);
	}
}
// valida el formulario de actualización de comentarios de bar
function validarUpdate(x){
	
	
	var msnError = "";
	if(x.comentario_nombre.value == ""){
		msnError = "El nombre no puede ser nulo.\n";
	}
	if(x.comentario_email.value == "") {
		msnError += "El email no puede ser nulo.\n";
	}
	if(!isEmail(x.comentario_email.value)){
		msnError += "El email debe de ser válido.\n";
	}
	if(x.comentario_texto.value == ""){
		msnError += "El texto no puede ser nulo.\n";
	}
	if( msnError == "" ){
		x.submit();
	}else{
		alert(msnError);
	}
}
// elimina comentario de bar
function Eliminar(x){

		x.submit();

}

var req = createXMLHttpRequest();
var id_comentario;
var texto_comentario;

// funciones de ajax
function createXMLHttpRequest() {
 var ua;
 if(window.XMLHttpRequest) {
 try {
  ua = new XMLHttpRequest();
 } catch(e) {
  ua = false;
 }
 } else if(window.ActiveXObject) {
  try {
	ua = new ActiveXObject("Microsoft.XMLHTTP");
  } catch(e) {
	ua = false;
  }
 }
return ua;
}

function sendRequest(frm, file) {

 if(str = getForm(frm)) {
  req.open("GET", file + "?" + str);
  req.onreadystatechange = handleResponse;
  req.send(null);
 }
 return false;
}

function getForm(fobj) {
 var str = "";
 var ft = "";
 var fv = "";
 var fn = "";
 var els = "";
 for(var i = 0;i < fobj.elements.length;i++) {
  els = fobj.elements[i];
  ft = els.title;
  fv = els.value;
  fn = els.name;
 switch(els.type) {
  case "text":
  case "hidden":
  case "password":
  case "textarea":
  // is it a required field?
  /*
  if(encodeURI(ft) == "required" && encodeURI(fv).length < 1) {
	alert("'" + fn + "' is a required field, please complete.");
	els.focus();
	return false;
  }
  */
  //str += fn + "=" + encodeURI(fv) + "&";
  str += fn + "=" + escape(fv) + "&";
  break; 

  case "checkbox":
  case "radio":
   if(els.checked) str += fn + "=" + escape(fv) + "&";//str += fn + "=" + encodeURI(fv) + "&";
  break;	

  case "select-one":
	str += fn + "=" +
	els.options[els.selectedIndex].value + "&";
  break;
  } // switch
 } // for
 str = str.substr(0,(str.length - 1));
 return str;
}



// funcion de login de modificación de comentario
function loginComentario(x){
id_comentario = x.id_bares_comentario.value;
texto_comentario = x.texto_comentario.value;
sendRequest(x, "login.asp");
}

// Muestra el formulario de inserción de comentario
function MostrarFormComentario(x){
	if (x.className == "formulario_oculto"){
		x.className = "formulario_activo";
		document.getElementById("opina").innerHTML = "ocultar formulario";
	}else{
		x.className = "formulario_oculto";
		document.getElementById("opina").innerHTML = "opina";
	}

}

//muestra la casilla de validacion de login para modificar un comentario de bar
function MostrarEditor(x){

	var objeditor = eval("document.getElementById('editar" + x + "')");
	var objlogin = eval("document.getElementById('login_editar" + x + "')");
	if(objlogin.className == "login_oculto" ){
		objlogin.className = "login_activo";
		objeditor.innerHTML = "ocultar login";
	}else{
		objlogin.className = "login_oculto";
		objeditor.innerHTML = "editar";
	}


}

// funcion validación de correo
function isEmail(email) {
var emailreg = /^[a-z][a-z-_0-9\.]+@[a-z-_=>0-9\.]+\.[a-z]{2,3}$/i
return emailreg.test(email);
}
  // valida el formulario anunciar un concierto
function validarConcierto(x){
	
	var msnError = "";
	var foco ="";
	if(x.NOMBRE.value == ""){
		msnError = "El nombre no puede ser nulo.\n";
		foco = "NOMBRE";
		x.NOMBRE.className = "inputvacio";
	}else{x.NOMBRE.className = "inputlleno";}
	if(x.EMAIL.value == "") {
		msnError += "El email no puede ser nulo.\n";
		if(foco == "")foco = "EMAIL";
		x.EMAIL.className = "inputvacio";
	}else{x.EMAIL.className = "inputlleno";}
	if(!isEmail(x.EMAIL.value)){
		msnError += "El email debe de ser válido.\n";
		if(foco == "")foco = "EMAIL";
		x.EMAIL.className = "inputvacio";
	}else{x.EMAIL.className = "inputlleno";}
	if(x.BANDA.value == ""){
		msnError += "La banda no puede ser nulo.\n";
		if(foco == "")foco = "BANDA";
		x.BANDA.className = "inputvacio";
	}else{x.BANDA.className = "inputlleno";}
	if(x.BAR.value == ""){
		msnError += "La sala no puede ser nulo.\n";
		if(foco == "")foco = "SALA";
		x.BAR.className = "inputvacio";
	}else{x.BAR.className = "inputlleno";}
	if(x.LOCALIDAD.value == ""){
		msnError += "La localidad no puede ser nulo.\n";
		if(foco == "")foco = "LOCALIDAD";
		x.LOCALIDAD.className = "inputvacio";
	}else{x.LOCALIDAD.className = "inputlleno";}
	if(x.PROVINCIA.value == ""){
		msnError += "La provincia no puede ser nulo.\n";
		if(foco == "")foco = "PROVINCIA";
		x.PROVINCIA.className = "inputvacio";
	}else{x.PROVINCIA.className = "inputlleno";}
	if((x.FECHA.length < 10) || (!isDate(x.FECHA.value))){
		msnError += "La fecha está vacia o no es correcta.\n";
		if(foco == "")foco = "FECHA";
		x.FECHA.className = "inputvacio";
	}else{x.FECHA.className = "inputlleno";}
	if((x.HORA.length < 5)||(!IsTime(x.HORA.value))){
		msnError += "La Hora no es correcta.\n";
		if(foco == "")foco = "HORA";
		x.HORA.className = "inputvacio";
	}else{x.HORA.className = "inputlleno";}
	if(!x.ACEPTO.checked){
		msnError += "Debes aceptar la condiciones.\n";
	}
	if( msnError == "" ){
		
		document.getElementById("formConcierto").style.visibility = "hidden";
		document.getElementById("cargando").style.visibility = "visible";
		sendConcierto(x,"conciertos-guardar.asp");
	}else{

		alert(msnError);
		
	}
	return false;
}




function sendConcierto(frm, file) {

 if(str = getForm(frm)) {

  req.open("POST", file + "?" + str,true);
  req.setRequestHeader("Content-Type","application/xhtml+xml;charset=ISO-8859-1");
  req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
  req.onreadystatechange = handleResponseConcierto;
  req.send(null);
 }
 return false;
}
function handleResponseConcierto() {
 if(req.readyState == 4){
  var response = req.responseText;
	
	if (response.toLowerCase() == "true"){
		document.getElementById("cargando").style.visibility = "hidden";
		document.getElementById("formConcierto").style.visibility = "visible";
		document.formConciertosAnunciar.NOMBRE.value = "";ComprobarDatos(document.formConciertosAnunciar.NOMBRE);
		document.formConciertosAnunciar.EMAIL.value = "";  ComprobarDatos(document.formConciertosAnunciar.EMAIL);
		document.formConciertosAnunciar.BANDA.value = "";  ComprobarDatos(document.formConciertosAnunciar.BANDA);   				
		document.formConciertosAnunciar.SALA.value = "";  ComprobarDatos(document.formConciertosAnunciar.SALA);
		document.formConciertosAnunciar.LOCALIDAD.value = ""; ComprobarDatos(document.formConciertosAnunciar.LOCALIDAD);		
		document.formConciertosAnunciar.PROVINCIA.value = "" ;ComprobarDatos(document.formConciertosAnunciar.PROVINCIA);		
		document.formConciertosAnunciar.PRECIO.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.PRECIO);		
		document.formConciertosAnunciar.FECHA.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.FECHA);		
		document.formConciertosAnunciar.HORA.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.HORA);
		document.formConciertosAnunciar.LINK.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.LINK);
		document.formConciertosAnunciar.COMENTARIO.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.COMENTARIO);
		document.formConciertosAnunciar.ACEPTO.checked = false;
		
	}else{
		alert(response);
		location.href="conciertos-anunciar.asp"
	}

 }else{
	document.getElementById("formConcierto").style.visibility = "hidden";
	document.getElementById("cargando").style.visibility = "visible";
	 
 }
 return false;
}


function Fecha(x){

window.open('cal.htm?'+x,'calendario','width=250,height=175,scrollbars=no');
	
}

function ComprobarDatos(x){
	if(x.value.length > 0) {x.className = "inputlleno";}else{x.className = "inputvacio";}
}

function isDate(dateStr) {

var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
var matchArray = dateStr.match(datePat); // is the format ok?

if (matchArray == null) {
//alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
return false;
}

month = matchArray[3]; // p@rse date into variables
day = matchArray[1];
year = matchArray[5];

if (month < 1 || month > 12) { // check month range
alert("El mes debe de ser entre 1 and 12.");
return false;
}

if (day < 1 || day > 31) {
alert("El día debe de estar entre 1 and 31.");
return false;
}

if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("¡El mes "+month+" no tiene 31 días!")
return false;
}

if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day==29 && !isleap)) {
alert("¡Febrero del año " + year + " no tiene " + day + " días!");
return false;
}
}
return true; // date is valid
}

function IsTime(strTime) {
	var strTime1 = /^(\d{1,2})(\:)(\d{2})\2(\d{2})(\ )\w[AM|PM|am|pm]$/;
	var strTime2 = /^(\d{1,2})(\:)(\d{2})(\ )\w[A|P|a|p]\w[M|m]$/;
	var strTime3 = /^(\d{1,2})(\:)(\d{1,2})$/;
	
	var strFormat1 = strTime.match(strTime1);
	var strFormat2 = strTime.match(strTime2);
	var strFormat3 = strTime.match(strTime3);
	// Check to see if it matches one of the
	//     3 Format Strings.
	
	if (strFormat1 == null && strFormat2 == null && strFormat3 == null) {
	return false;
	}
	else if (strFormat1 != null) {
	// Validate for this format: 3:48:01 PM
	if (strFormat1[1] > 12 || strFormat1[1] < 00) {
	return false;
	}
	if (strFormat1[3] > 59 || strFormat1[3] < 00) {
	return false;	
	}
	if (strFormat1[4] > 59 || strFormat1[4] < 00) {
	return false;	
	}
	}
	else if (strFormat2 != null) {
	// Validate for this format: 3:48 PM
	if (strFormat2[1] > 12 || strFormat2[1] < 00) {
	return false;
	}
	if (strFormat2[3] > 59 || strFormat2[3] < 00) {
	return false;	
	}
	}
	else if (strFormat3 != null) {
	// Validate for this format: 15:48
	if (strFormat3[1] > 23 || strFormat3[1] < 00) {
	return false;
	}
	if (strFormat3[3] > 59 || strFormat3[3] < 00) {
	return false;	
	}
	}
	return true;
	}
	
// valida el formulario anunciar un bar
function validarBar(x){
	
	var msnError = "";
	var foco ="";
	if(x.NOMBRE.value == ""){
		msnError = "El nombre no puede ser nulo.\n";
		foco = "NOMBRE";
		x.NOMBRE.className = "inputvacio";
	}else{x.NOMBRE.className = "inputlleno";}
	if(x.EMAIL.value == "") {
		msnError += "El email no puede ser nulo.\n";
		if(foco == "")foco = "EMAIL";
		x.EMAIL.className = "inputvacio";
	}else{x.EMAIL.className = "inputlleno";}
	if(!isEmail(x.EMAIL.value)){
		msnError += "El email debe de ser válido.\n";
		if(foco == "")foco = "EMAIL";
		x.EMAIL.className = "inputvacio";
	}else{x.EMAIL.className = "inputlleno";}
	if(x.BAR.value == ""){
		msnError += "La banda no puede ser nulo.\n";
		if(foco == "")foco = "BANDA";
		x.BAR.className = "inputvacio";
	}else{x.BAR.className = "inputlleno";}
	if(x.DIRECCION.value == ""){
		msnError += "La sala no puede ser nulo.\n";
		if(foco == "")foco = "SALA";
		x.DIRECCION.className = "inputvacio";
	}else{x.DIRECCION.className = "inputlleno";}
	if(x.LOCALIDAD.value == ""){
		msnError += "La localidad no puede ser nulo.\n";
		if(foco == "")foco = "LOCALIDAD";
		x.LOCALIDAD.className = "inputvacio";
	}else{x.LOCALIDAD.className = "inputlleno";}
	if(x.PROVINCIA.value == ""){
		msnError += "La provincia no puede ser nulo.\n";
		if(foco == "")foco = "PROVINCIA";
		x.PROVINCIA.className = "inputvacio";
	}else{x.PROVINCIA.className = "inputlleno";}
	if(!x.ACEPTO.checked){
		msnError += "Debes aceptar la condiciones.\n";
	}
	if( msnError == "" ){
		//formulario = document.getElementById("formConcierto").innerHTML;
		//document.getElementById("formConcierto").innerHTML = 
		document.getElementById("formConcierto").style.visibility = "hidden";
		document.getElementById("cargando").style.visibility = "visible";
		sendBar(x,"bares-guardar.asp");
	}else{
		//eval(" x."+ foco +".focus()");
		alert(msnError);
		
	}
	return false;
}

function sendBar(frm, file) {

 if(str = getForm(frm)) {
  req.open("GET", file + "?" + str,true);
  req.onreadystatechange = handleResponseBar;
  req.send(null);
 }
 return false;
}
function handleResponseBar() {
 if(req.readyState == 4){
  var response = req.responseText;
	
	if (response.toLowerCase() == "true"){
		document.getElementById("cargando").style.visibility = "hidden";
		document.getElementById("formConcierto").style.visibility = "visible";
		document.formConciertosAnunciar.NOMBRE.value = "";ComprobarDatos(document.formConciertosAnunciar.NOMBRE);
		document.formConciertosAnunciar.EMAIL.value = "";  ComprobarDatos(document.formConciertosAnunciar.EMAIL);
		document.formConciertosAnunciar.BANDA.value = "";  ComprobarDatos(document.formConciertosAnunciar.BANDA);   				
		document.formConciertosAnunciar.SALA.value = "";  ComprobarDatos(document.formConciertosAnunciar.SALA);
		document.formConciertosAnunciar.LOCALIDAD.value = ""; ComprobarDatos(document.formConciertosAnunciar.LOCALIDAD);		
		document.formConciertosAnunciar.PROVINCIA.value = "" ;ComprobarDatos(document.formConciertosAnunciar.PROVINCIA);		
		document.formConciertosAnunciar.PRECIO.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.PRECIO);		
		document.formConciertosAnunciar.FECHA.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.FECHA);		
		document.formConciertosAnunciar.HORA.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.HORA);
		document.formConciertosAnunciar.LINK.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.LINK);
		document.formConciertosAnunciar.COMENTARIO.value = "" ;  ComprobarDatos(document.formConciertosAnunciar.COMENTARIO);
		document.formConciertosAnunciar.ACEPTO.checked = false;
		
	}else{
		alert("el correo electronico no es correcto");
	}

 }else{
	document.getElementById("formConcierto").style.visibility = "hidden";
	document.getElementById("cargando").style.visibility = "visible";
	 
 }
 return false;
}