// Funci?n que guarda los atributos en el formulario y lo envia.
//
// Par?metros:
// ==========
//	form	Objeto formulario a enviar. Si no existe, la funci?n no hace nada.
//	action	Propiedad 'ACTION' del formulario.
//	attrs	Objeto JavaScript nativo donde se suministran los campos del formulario con el
//		valor que se quiera enviar.
//	target	Propiedad 'TARGET' del formulario.

var mostrarAviso = true;
function DoSubmit(form, action, attrs, target)
{	
	var ok = true;
	if((document.tripPlanForm!=null || document.purchaseForm!=null)&& mostrarAviso)
		ok = avisoCancelacion(target);
	mostrarAviso = true;
	if(ok)
	{
	    if (form!=null)
	    {
			if (action!=null)  {
	         var j = action.indexOf("?");
	         if ( j != -1){
	           var longitud = action.length;
	           var nuevaAccion = action.substring(0,j);
	           var parametros =  action.substring(j+1,longitud);
	           arrayOfStrings = parametros.split("&");
	           action = nuevaAccion;
	           for (var i=0; i < arrayOfStrings.length; i++) {
	              var aux = arrayOfStrings[i];
	              var longitud2 = aux.length;
	              var k = aux.indexOf("=");
	              if (k != -1) {
	                  var clave = aux.substring(0,k);
	                  var valor = aux.substring(k+1,longitud2);
	                  form[clave].value = valor;
	              }
	          }
	         }
	         form.action = action;
	      }
	      if (attrs!=null)
	      {
	         for (var name in attrs)
	         {
	            if (form[name])  {
	               form[name].value = attrs[name];
	            }
	         }
	      }
	
	      if (target) form.target = target;
	      else form.target = '_top';
	      if( target!='_blank' ){
		     loginEnviado=1;
		  }
	      form.submit();
	   }
	}
}

//funcion q muestra un aviso de cancelacion de reserva.
function avisoCancelacion(target){
	var ok=true;
	if( target!='_blank' ){
		if(document.tripPlanForm!=null 
			&& document.tripPlanForm.cancelRe!=null 
			&& document.tripPlanForm.cancelRe.value=="0" ){
				if(!confirm(document.tripPlanForm.msjError.value)){ok=false;loginEnviado=0;}
		}
		if(document.purchaseForm!=null && document.purchaseForm.cancelRe!=null 
			&& document.purchaseForm.cancelRe.value=="0" ){
				if(!confirm(document.purchaseForm.msjError.value)){ok=false;loginEnviado=0;}
		}
	}
	return ok;
}
function DoRedirectSubmit(form, action, attrs, target)
{
   if (form!=null)
   {

      if (action!=null)  {
         var j = action.indexOf("?");
         if ( j != -1){
           var longitud = action.length;
           var nuevaAccion = action.substring(0,j);
           var parametros =  action.substring(j+1,longitud);
           arrayOfStrings = parametros.split("&");
           action = nuevaAccion;
           for (var i=0; i < arrayOfStrings.length; i++) {
              var aux = arrayOfStrings[i];
              var longitud2 = aux.length;
              var k = aux.indexOf("=");
              if (k != -1) {
                  var clave = aux.substring(0,k);
                  var valor = aux.substring(k+1,longitud2);
                  form[clave].value = valor;
              }
          }
         }
         var jj = action.lastIndexOf("/");
         var redAccion = action.substring(0,jj);
         var redirectPage = action.substring(jj,action.length);
         form["redirectPage"].value = redirectPage;
         form.action = redAccion + "/jsp/common/redirect.jsp";
      }
      if (attrs!=null)
      {
         for (var name in attrs)
         {
            if (form[name])  {
               form[name].value = attrs[name];
            }
         }
      }

      if (target) form.target = target;
      else form.target = '_top';

      form.submit();
   }
}

//****************************************************************

// Funci?n que guarda los atributos en el formulario y lo envia.
//
// Par?metros:
// ==========
//	href	  HREF
//	name	  Nombre
//	width	  Ancho
//	height  Alto
// attrs   Atributos
function OpenWindow(href, name, width, height, attrs)
{
	if (width == null) width = 800;
	if (height == null) height = 600;

	var left = (screen.width-width)/2;
	var top = (screen.height-height-100)/2;

	if (left <0) left = 0;
	if (top <0) top = 0;

    if (attrs == null)
       attrs = "scrollbars=yes,status=yes,resizable=yes,toolbar=no,location=no,menu=no";

	var totalAttrs  = "height=" + height + ",width=" + width + "," + attrs;

	var popup = eval('window.open("'+ href + '", "' + name + '","' + totalAttrs + '")');

}

// Funci?n que abre una nueva ventana y realiza el submit de un formulario. Se puede parametrizar
//para que no se vea la ventana
//
// Par?metros:
// ==========
//	name	  Nombre
//	width	  Ancho
//	height    Alto
//  features  Caracteristicas
//  form      Nombre del formulario
//  action    Nombre del actio
//  attrs     Atributos adicionales
//  oculta    Para si queremos ocultar la ventana o no
// EJEMPLOS:
// javascript:OpenWindowSubmit('ventanaNueva',725,444,'scrollbars=yes,resizable=yes',document.main,'/cgi-bin/ibcomv3_aa/v3/serviberiaPopupContacts.do',{programOid:'8953',channelOid:'%20',menuIdentificator:'footer_3',menuItemFullId:'/00000000000000/01000000000000',%20isWindowPopup:true},false);
// <a href="javascript:OpenWindowSubmit('ventanaNueva','600','500',null,obtencion_<c:out value="${product.oid}"/>, '<%=StringHttpUtil.getAbsoluteUrl(request)%>/detailComp.do',{},false);" class="links">

function OpenWindowSubmit(name, width, height, features, form, action, attrs, oculta)
{
	mostrarAviso = false;
	if (width == null)
		 width = 800;

	if (height == null)
		 height = 600;

	if (features == null)
		 features = "scrollbars=yes,status=yes,resizable=yes,toolbar=no,location=no,menu=no";

	var left;
	var top;

	if (oculta==null) oculta = false;

	if (oculta){
		left = 10000;
		top = 10000;
	}else{
		left = (screen.width-width)/2;
		top = (screen.height-height-100)/2;
	}

	if (left <0) left = 0;
	if (top <0) top = 0;

	

	//modificacion para comprobar si viene en modo seguro(https)o en modo no seguro(http)
	var modo = document.URL.substring(0,document.URL.indexOf(':'));
	document.cookie="modo="+modo;
	//Si viene en modo no seguro abrimos un popup en blanco y luego lo recargamos.
	if(modo == "http"){
		var popup=window.open("",name,"height=" + height + ",width=" + width + ",top=" + top +
	                            ",left=" + left + "," + features);
	}
	//Si viene en modo seguro hacemos un doble submit para q no nos muestre el alerta de cambio de modo seguro a no seguro.
	else{
		var popup=window.open(action,name,"height=" + height + ",width=" + width + ",top=" + top +
	                            ",left=" + left + "," + features);
	}
	DoSubmit(form, action, attrs, name);
	
}


//variable que controla el envio una sola vez de formularios
var loginEnviado = 0 //formulario login header enviado
var formIBCAPS_enviado = 0//cambio de pin
var loginIBLOGN_enviado = 0; //formulario login IBLOGN enviado
var IPPURC_enviado = 0; //formulario compra redencion IPPURC enviado


function inicializar()
{		
   if (esPrivada == 0)
   {
      //P?blica: existe login
      var tLogin = document.getElementById("lLogin");
      tLogin.style.visibility = "hidden";
  }
   leftNav();	 

}

// Funci?n que a?ade a favoritos una url.
//
// Par?metros:
// ==========
//  title     Titulo del elemento a a?adir en favoritos.
//	url 	  Url de la p?gina
// EJEMPLOS:
function addBookmark(url, txtBookmarkInstructions, txtOtherBrowsers)
{
    if( window.sidebar && window.sidebar.addPanel ) {
	    //Gecko (FireFox, Netscape 6 etc.) - a?adir a barra lateral
	    alert(txtBookmarkInstructions);
	    window.sidebar.addPanel(document.title, url, "");
	}else if( window.external ) {//explorer
				window.external.AddFavorite( url, document.title );
	}else {	    
			//otros navegadores 
	    alert(txtOtherBrowsers);
	} 
  
}


// ARGUMENTOS FUNCION Abrir_Ventana
// theURL: Direcci?n
// winName: Nombre que queremos darle a la ventana
// Features:
	// scrollbars: Si tiene barras de desplazamiento
	// resizable: Si puede cambiarse tama?o
	// width y height: Dan tama?o a la ventana
	// top y left: Posiciona la ventana

function Abrir_Ventana(theURL, winName, features)
{
  window.open(theURL, winName, features);
}


// funciones para imprimir el contenido de la capa q recibe como parametro

function imprimir(capa){
	txt = document.getElementById(capa).innerHTML;
	ventanaImp = window.open("/ibcomv3/js/common/listadoImpresion.htm","","toolbar=0, location=0, directories=0, status=0, menubar=0, scrollbars=1, resizable=si, left=3000,top=10, width=780, height=400")
	ventanaImp.document.write('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>Listado</title><link href="/ibcomv3/estilos/estilos.css" rel="stylesheet" type="text/css"></head><body onload="imprimir2()">');
	ventanaImp.document.write(txt);
	ventanaImp.document.write('<script>function imprimir2(){window.print();window.close();}</script>');
	ventanaImp.document.write('</body></html>');
	ventanaImp.document.close();	
}

function GoToPopupURL(url){
   //DoSubmit(document.main,url,{},'_blank');
   window.open(url, "ventanaURL");
}



function mostrarAvisoCancelacion(){
    var mostrarAviso=true;
    var ok = true;
	if((document.tripPlanForm!=null || document.purchaseForm!=null)&& mostrarAviso)
      ok=avisoCancelacion(null);

    return ok;
}