  direccion = '';
  direccion = 'http://www.alternativateatral.com/';
  
  function aleatorio() {  
     return (Math.round( Math.random() * 10000 )+'');
  } 
  
  function VerificarValor(sCampo, sRegEx, sAviso)
  {
  	var re = new RegExp(sRegEx);
  	var sValor = $F(sCampo);
  	
  	if (!sValor.match(re)) {
	     alert(sAviso);
			 $(sCampo).activate();
  		 return false;
  	} else {
  	   return true;
  	}
  }

  function CargarEspectaculo(codigo)
	{
	 $('codigo_funcion').update('');
	 $('codigo_precio').update('');
     $('localidades').update('');
	 $('mensaje').update('');
	 $('forma-pago').update('');
     if (codigo!='') {
        $('progreso-obra').show();
        $('codigo_obra').disable();
        
        URL = direccion + 'cargar-funciones-obra.asp?id='+codigo+'&r='+aleatorio();
	    new Ajax.Request(URL, {
           onSuccess: function(transport) 
           {
              $('progreso-obra').hide();
              scs = transport.responseText.extractScript(); 
              scs.evalScript(); 
              $('codigo_obra').enable();
           },
           onFailure: function(transport) 
           {
              $('progreso-obra').hide();
              scs = transport.responseText.extractScript(); 
              alert(transport.responseText.stripScript());
              // $('debug').update(transport.responseText.stripScript())
              scs.evalScript(); 
            }
        });
      }
  }

  function CargarFuncion(codigo, clave)
	{
     $('codigo_precio').update('');
	 $('localidades').update('');
     if (codigo!='') {
        $('progreso-fecha').show();
        $('codigo_precio').disable();
        
        URL = direccion + 'cargar-parametros-funcion.asp?id='+codigo+'&c='+clave+'&r='+aleatorio();
	    new Ajax.Request(URL, {
           onSuccess: function(transport) 
           {
              $('progreso-fecha').hide();
              scs = transport.responseText.extractScript(); 
              scs.evalScript(); 
              $('codigo_precio').enable();
           },
           onFailure: function(transport) 
           {
              $('progreso-fecha').hide();
              scs = transport.responseText.extractScript(); 
              alert(transport.responseText.stripScript());
              // $('debug').update(transport.responseText.stripScript())
              scs.evalScript(); 
            }
        });
      }
  }

  function CargarFuncionModificada(reserva, codigo)
  {
     $('codigo_precio').update('');
     if (codigo!='') {
        $('progreso-fecha').show();
        $('codigo_precio').disable();
        
        URL = direccion + 'cargar-parametros-funcion-modificada.asp?id='+codigo+'&o='+reserva+'&r='+aleatorio();
	      new Ajax.Request(URL, {
           onSuccess: function(transport) 
           {
              $('progreso-fecha').hide();
              $('codigo_precio').update(transport.responseText.stripScript());
              $('codigo_precio').enable();
           },
           onFailure: function(transport) 
           {
              $('progreso-fecha').hide();
              scs = transport.responseText.extractScript(); 
              alert(transport.responseText.stripScript());
              // $('debug').update(transport.responseText.stripScript())
              scs.evalScript(); 
           }
        });
      }
  }
   
	function CargarPrecio(codigo)
	{
     $('progreso-precio').show();
     $('localidades').update('');
     $('localidades').disable();
     
     URL = direccion + 'cargar-localidades.asp?id='+codigo+'&f='+$F('codigo_funcion')+'&r='+aleatorio();
     // $('debug').update(URL);
	   new Ajax.Request(URL, {
        onSuccess: function(transport) 
        {
           // $('debug').update(transport.responseText);

           $('progreso-precio').hide();
           scs = transport.responseText.extractScript(); 
           scs.evalScript(); 
           $('localidades').enable();

        },
        onFailure: function(transport) 
        {
           $('progreso-precio').hide();
           scs = transport.responseText.extractScript(); 
           alert(transport.responseText.stripScript());
           scs.evalScript(); 
        }
     });
  }
  
  function GrabarReserva(validacion) {
		if (!VerificarValor('codigo_funcion', /^([\S']){3,}$/, 'Por favor, selecciona una fecha y hora de funcion')) return false;
		if (!VerificarValor('codigo_precio', /^([\S']){1,}$/, 'Por favor, selecciona un precio de localidad')) return false;
		if (!VerificarValor('localidades', /^([\d']){1,}$/, 'Por favor, indica una cantidad de localidades')) return false;
		if ((validacion==1) && (!VerificarValor('nombre', /^([ \u00c0-\u01ffa-zA-Z']){3,}$/, 'Por favor, ingresa tu nombre'))) return false;
		if ((validacion==1) && (!VerificarValor('apellido', /^([ \u00c0-\u01ffa-zA-Z']){3,}$/, 'Por favor, ingresa tu apellido'))) return false;
		if ((validacion==1) && (!VerificarValor('email', /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.(af|ax|al|dz|as|ad|ao|ai|aq|ag|ar|am|aw|au|at|az|bs|bh|bd|bb|by|be|bz|bj|bm|bt|bo|ba|bw|bv|br|io|bn|bg|bf|bi|kh|cm|ca|cv|ky|cf|td|cl|cn|cx|cc|co|km|cg|cd|ck|cr|ci|hr|cu|cy|cz|dk|dj|dm|do|ec|eg|sv|gq|er|ee|et|fk|fo|fj|fi|fr|gf|pf|tf|ga|gm|ge|de|gh|gi|gr|gl|gd|gp|gu|gt| gg|gn|gw|gy|ht|hm|va|hn|hk|hu|is|in|id|ir|iq|ie|im|il|it|jm|jp|je|jo|kz|ke|ki|kp|kr|kw|kg|la|lv|lb|ls|lr|ly|li|lt|lu|mo|mk|mg|mw|my|mv|ml|mt|mh|mq|mr|mu|yt|mx|fm|md|mc|mn|ms|ma|mz|mm|na|nr|np|nl|an|nc|nz|ni|ne|ng|nu|nf|mp|no|om|pk|pw|ps|pa|pg|py|pe|ph|pn|pl|pt|pr|qa|re|ro|ru|rw|sh|kn|lc|pm|vc|ws|sm|st|sa|sn|cs|sc|sl|sg|sk|si|sb|so|za|gs|es|lk|sd|sr|sj|sz|se|ch|sy|tw|tj|tz|th|tl|tg|tk|to|tt|tn|tr|tm|tc|tv|ug|ua|ae|gb|us|um|uy|uz|vu|ve|vn|vg|vi|wf|eh|ye|zm|zw|com|edu|gov|int|mil|net|org|biz|info|name|pro|aero|coop|museum|arpa))|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/, "Por favor, ingresa tu e-mail"))) return false;
		if ((validacion==1) && (!VerificarValor('telefono', /^([ \u00c0-\u01ff0-9']){4,}$/, 'Por favor, ingresa tu celular sin el 15 ni guiones'))) return false;
		if (!VerificarValor('forma-pago', /^([\S']){1,}$/, 'Por favor, indica la forma de pago')) return false;
  	
  	URL = direccion + 'grabar-localidad.asp?'+$('formulario-localidad').serialize()+'&r='+aleatorio();
    $('formulario-localidad').disable();
    $('progreso-continuar').show();
    new Ajax.Request(URL, {
        onSuccess: function(transport) 
        {
           scs = transport.responseText.extractScript(); 
           $('progreso-continuar').hide();
           $('sector-formulario').update(transport.responseText);
           $('formulario-localidad').enable();
           scs.evalScript(); 
		   
        },
        onFailure: function(transport) 
        {
           $('progreso-continuar').hide();
           scs = transport.responseText.extractScript(); 
           alert(transport.responseText.stripScript());
           scs.evalScript(); 
           $('formulario-localidad').enable();           
        }
     });
  }
  
  function GrabarReservaUbicacion(validacion,localidades) {
    var cantidad, codigos;
	
	if (!VerificarValor('codigo_funcion', /^([\S']){3,}$/, 'Por favor, selecciona una fecha y hora de funcion')) return false;
	if (!VerificarValor('codigo_precio', /^([\S']){1,}$/, 'Por favor, selecciona un precio de localidad')) return false;
	if (!VerificarValor('localidades', /^([\d']){1,}$/, 'Por favor, indica una cantidad de localidades')) return false;
	if ((validacion==1) && (!VerificarValor('nombre', /^([ \u00c0-\u01ffa-zA-Z']){3,}$/, 'Por favor, ingresa tu nombre'))) return false;
	if ((validacion==1) && (!VerificarValor('apellido', /^([ \u00c0-\u01ffa-zA-Z']){3,}$/, 'Por favor, ingresa tu apellido'))) return false;
	if ((validacion==1) && (!VerificarValor('email', /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.(af|ax|al|dz|as|ad|ao|ai|aq|ag|ar|am|aw|au|at|az|bs|bh|bd|bb|by|be|bz|bj|bm|bt|bo|ba|bw|bv|br|io|bn|bg|bf|bi|kh|cm|ca|cv|ky|cf|td|cl|cn|cx|cc|co|km|cg|cd|ck|cr|ci|hr|cu|cy|cz|dk|dj|dm|do|ec|eg|sv|gq|er|ee|et|fk|fo|fj|fi|fr|gf|pf|tf|ga|gm|ge|de|gh|gi|gr|gl|gd|gp|gu|gt| gg|gn|gw|gy|ht|hm|va|hn|hk|hu|is|in|id|ir|iq|ie|im|il|it|jm|jp|je|jo|kz|ke|ki|kp|kr|kw|kg|la|lv|lb|ls|lr|ly|li|lt|lu|mo|mk|mg|mw|my|mv|ml|mt|mh|mq|mr|mu|yt|mx|fm|md|mc|mn|ms|ma|mz|mm|na|nr|np|nl|an|nc|nz|ni|ne|ng|nu|nf|mp|no|om|pk|pw|ps|pa|pg|py|pe|ph|pn|pl|pt|pr|qa|re|ro|ru|rw|sh|kn|lc|pm|vc|ws|sm|st|sa|sn|cs|sc|sl|sg|sk|si|sb|so|za|gs|es|lk|sd|sr|sj|sz|se|ch|sy|tw|tj|tz|th|tl|tg|tk|to|tt|tn|tr|tm|tc|tv|ug|ua|ae|gb|us|um|uy|uz|vu|ve|vn|vg|vi|wf|eh|ye|zm|zw|com|edu|gov|int|mil|net|org|biz|info|name|pro|aero|coop|museum|arpa))|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/, "Por favor, ingresa tu e-mail"))) return false;
	if ((validacion==1) && (!VerificarValor('telefono', /^([ \u00c0-\u01ff0-9']){4,}$/, 'Por favor, ingresa tu celular sin el 15 ni guiones'))) return false;
	if (!VerificarValor('forma-pago', /^([\S']){1,}$/, 'Por favor, indica la forma de pago')) return false;
	
	cantidad = 0;
	codigos = "";

    $$('input[class=butaca]').each( function(n) {
		if ($(n).checked) { 
		   cantidad++;
		   if (codigos!='') { codigos += ','; };
		      codigos += n.value;
		}
    });
	if (cantidad==localidades) {
  	   URL = direccion + 'grabar-localidad.asp?'+$('formulario-localidad').serialize()+'&u='+codigos+'&r='+aleatorio();
       $('formulario-localidad').disable();
       $('progreso-continuar').show();
       new Ajax.Request(URL, {
           onSuccess: function(transport) 
           {
              scs = transport.responseText.extractScript(); 
              $('progreso-continuar').hide();
              $('sector-formulario').update(transport.responseText);
              $('formulario-localidad').enable();
              scs.evalScript(); 
	   	   
           },
           onFailure: function(transport) 
           {
              $('progreso-continuar').hide();
              scs = transport.responseText.extractScript(); 
              alert(transport.responseText.stripScript());
              scs.evalScript(); 
              $('formulario-localidad').enable();           
           }
       });
	} else {
	  if (localidades>1)
	     alert('Debes seleccionar las '+localidades+' localidades.');
	  else
	     alert('Debes seleccionar una localidad.');
	}
  }
  
  function SolicitarPagoDecidir() {
	URL = direccion + 'grabar-localidad.asp?'+$('formulario-localidad').serialize()+'&o=p&r='+aleatorio();
    $('formulario-localidad').disable();
    $('progreso-continuar').show();
    new Ajax.Request(URL, {
        onSuccess: function(transport) 
        {
		   operacion = transport.responseText;
		   $('NROOPERACION').setValue(operacion);
		   $('pago').action = 'https://sps.decidir.com/sps-ar/Validar';
	       $('pago').submit();
        },
        onFailure: function(transport) 
        {
           $('progreso-continuar').hide();
           scs = transport.responseText.extractScript(); 
           alert(transport.responseText.stripScript());
           scs.evalScript(); 
           $('formulario-localidad').enable();           
        }
     });
  }
  
  function SolicitarPagoDineroMail() {
	URL = direccion + 'grabar-localidad.asp?'+$('formulario-localidad').serialize()+'&o=p&r='+aleatorio();
    $('formulario-localidad').disable();
    $('progreso-continuar').show();
    new Ajax.Request(URL, {
        onSuccess: function(transport) 
        {
		   operacion = transport.responseText;
		   $('NroItem').setValue(operacion);
		   $('DireccionExito').setValue('http://www.alternativateatral.com/validacion-dineromail.asp?r=1&id='+operacion);
		   $('DireccionFracaso').setValue('http://www.alternativateatral.com/validacion-dineromail.asp?r=0&id='+operacion);
		   $('pago').action = 'https://argentina.dineromail.com/Shop/Shop_Ingreso.asp';
	       $('pago').submit();
        },
        onFailure: function(transport) 
        {
           $('progreso-continuar').hide();
           scs = transport.responseText.extractScript(); 
           alert(transport.responseText.stripScript());
           scs.evalScript(); 
           $('formulario-localidad').enable();           
        }
     });
  }

  function SolicitarPagoCuentaDigital() {
	URL = direccion + 'grabar-localidad.asp?'+$('formulario-localidad').serialize()+'&o=p&r='+aleatorio();
    $('formulario-localidad').disable();
    $('progreso-continuar').show();
    new Ajax.Request(URL, {
        onSuccess: function(transport) 
        {
		   operacion = transport.responseText;
		   window.open(direccion + 'reserva-pagofacil.asp?id='+operacion,'_top');
        },
        onFailure: function(transport) 
        {
           $('progreso-continuar').hide();
           scs = transport.responseText.extractScript(); 
           alert(transport.responseText.stripScript());
           scs.evalScript(); 
           $('formulario-localidad').enable();           
        }
     });
  }

  function GrabarLocalidad(codigo) {
     valores = $('formulario-localidad').serialize();
     if (valores!='') valores = '&'+valores;
     URL = 'grabar-localidad-modificada.asp?id='+codigo+valores+'&r='+aleatorio();
     // $('debug').update(URL);
     new Ajax.Request(URL, {
        onSuccess: function(transport) 
         {
	  	   Lightview.hide();
             window.location.href=window.location.href;
          },
          onFailure: function(transport) 
          {
             // $('debug').update(transport.responseText);
             alert(transport.responseText);
          }
     });
     return false;
  }
  
  function LocalidadPorMail(codigo) {
     $('mail-'+codigo).update("<img src=imagenes/6-0.gif height=16 width=16 border=0>");
  	 URL = direccion + 'localidadpormail.asp?id='+codigo+'&r='+aleatorio();
     new Ajax.Request(URL, {
        onSuccess: function(transport) 
        {
		   $('mail-'+codigo).update("<img src=imagenes/email.png height=16 width=16 border=0>");
        },
        onFailure: function(transport) 
        {
           // $('debug').update(transport.responseText);
           alert(transport.responseText);
		   $('mail-'+codigo).update("<img src=imagenes/email.png height=16 width=16 border=0>");
        }
     });
  }
  
  function SeleccionarUbicacion(objeto,funcion,ubicacion,localidades) {
     var cantidad;
	 cantidad = 0;
     $$('input[class=butaca]').each( function(n) {
		if ($(n).checked) { 
		   cantidad++;
		}
     });
	 if (cantidad<=localidades) {
	    
		if (cantidad!=localidades) $('boton-continuar').disable(); else $('boton-continuar').enable();
		if (objeto.checked) estado=1; else estado=0;
        
  	    URL = direccion + 'seleccionar-ubicacion.asp?f='+funcion+'&u='+ubicacion+'&e='+estado+'&r='+aleatorio();
        $('formulario-localidad').disable();
        new Ajax.Request(URL, {
           onSuccess: function(transport) 
           {
              scs = transport.responseText.extractScript(); 
              scs.evalScript(); 
	  	      $('formulario-localidad').enable();
           },
           onFailure: function(transport) 
           {
              scs = transport.responseText.extractScript(); 
              scs.evalScript(); 
	 	      $('formulario-localidad').enable();
           }
        });
	 } else {
	   if (localidades>1) {
	      alert('Ya has seleccionado todas tus '+localidades+' ubicaciones. Pulsa continuar para confirmar la operación o deselecciona las actuales si quieres seleccionar otras ubicaciones.');
	   } else {
	      alert('Ya has seleccionado tu ubicación. Pulsa continuar para confirmar la operación o deselecciona la actual si quieres seleccionar otra ubicación.');
	   }
	 }
	 return false;
  }

