var popCal ;

function OpenCalendar(id,CodAereoOffLine,IDDataIdaVerificar)
{
	var DateControl ;
	var DataIda = "0" ;
		
	//eval('DateControl = document.Form1.' + id) ;
	DateControl = document.Form1.elements[id];
	
	
	if( IDDataIdaVerificar != '0' )
	{
		//eval('DataIda = document.Form1.' + IDDataIdaVerificar + '.value ;') ;
		DataIda = document.Form1.elements[IDDataIdaVerificar];
	}
				
	popCal = window.open('Calendario.aspx?id=' + id + '&selected=' + DateControl.value + '&CodAereoOffLine=' + CodAereoOffLine + '&DataIdaVerificar=' + DataIda, 
		'popupcal', 
		'width=162,height=160,left=250,top=150');
}

function SetCalendar(id,newDate)
{
	if( newDate == 1 )
	{
		spanErro.innerText = 'Data da Ida esta fora do intervalo permitido para viagens. Use o calendario para selecionar uma data correta.' ;
		popCal.close();
		return 
	}
	else
	{
		spanErro.innerText = '' ;
		
		var DateControl ;
		//eval('DateControl = document.Form1.' + id) ;
		DateControl = document.Form1.elements[id];
		
		popCal.close();
		DateControl.value = newDate ;
	}
}

var data = new Date();
var dia = data.getDate();
var mes = data.getMonth();
var ano = Number(data.getFullYear());
    
if (Number(dia) < 10)
    dia = "0" + dia;
if (Number(mes) < 10)
    mes = "0" + String(Number(mes) + 1);
if (ano < 2000)
    ano = 1900 + ano

var CalS = mes + '/' + dia + '/' + ano;

//Volta
if ( dia == '29' && mes == '2' )
    dia = '28';
ano = ano + 1;
var CalE = mes + '/' + dia + '/' + ano;

var ictrl = null;
var objCP,objED,objEDP,objDMin,objDMax;
var cF=null;
var cW=null;
var objTid=0;
var objFNoCal=false;
var objCalShown = false;
var objCalCB;
var daysMonth=new Array(12);
daysMonth[0]=daysMonth[2]=daysMonth[4]=daysMonth[6]=daysMonth[7]=daysMonth[9]=daysMonth[11]=31;
daysMonth[3]=daysMonth[5]=daysMonth[8]=daysMonth[10]=30;
daysMonth[1]=28;

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
function ShowCalendar(eP,eD,eDP,dmin,dmax,tp)
{
    if(tp == 0){
        ExibeCalend(eP,eD,eDP,dmin,dmax);
	    ictrl = eP;
    }
    else if(ictrl && ictrl.value != ''){
        var mindate = ConvertToDate(ictrl.value);
        if(mindate != null)
            ExibeCalend(eP,eD,eDP,mindate,dmax);
        else
            ExibeCalend(eP,eD,eDP,dmin,dmax);
    }
    else{
        ExibeCalend(eP,eD,eDP,dmin,dmax);
    }
}

function ExibeCalend(cP,eD,eDP,dmin,dmax)
{
    clearTimeout(objTid);
    if(objFNoCal){objFNoCal=false;return;}
    if(objCalShown && eD==objED)return;
    objCalShown = true;
    objCalCB = null;
    objCP=cP;
    objED=eD;
    objEDP=eDP;
    objDMin=dmin;
    objDMax=dmax;
    Aguarda();
 }

function Aguarda()
{ 
    if(!cW)cW=frames['CalFrame'];

alert(cW.objFCL)
    if(cW==null||cW.objFCL==null||cW.objFCL==false){
        objTid=setTimeout("Aguarda()", 200);
    }
    else{
        if(!cF)cF=getObj('CalFrame');
        cF.style.visibility="hidden";
        setTimeout("DoCal()",1);
    }
}

function DoCal()
{
    Posicao(objCP);
    if(!cW)cW=frames['CalFrame'];
    cW.DoCal(objED,objEDP,objDMin,objDMax);
}

function Posicao(cP)
{
	var dB=document.body;var eL=0;var eT=0;
    if(!cF)cF=getObj('CalFrame');
	
	for(var p=cP; p&&p.tagName!='BODY'; p=p.offsetParent)
	{
	    eL+=p.offsetLeft;
	    eT+=p.offsetTop;
    }
	
	var eH=cP.offsetHeight;
	var dH=parseInt(cF.style.height);
	var sT=getScrollTop();
	if(eT-dH>=sT&&eT+eH+dH>getWinHeight()+sT)eT-=dH;else eT+=eH;
	cF.style.left=eL+'px';
	cF.style.top=eT+'px';
}

function ConvertToDate(valorstring){
	data = valorstring ;
	pos0 = data.indexOf("/");
	
	if(pos0 == -1) return null;
	
	pos1 = data.indexOf("/", pos0 + 1);
	
	if(pos1 == -1) return null;
	
	if(data.indexOf("/", pos1 + 1) != -1) return null;
	
	dia = data.substring(0,pos0);
	dia = (dia.charAt(0) == "0")?dia.charAt(dia.length - 1):dia ;
	
	mes = data.substring(pos0 + 1, pos1);
	mes = (mes.charAt(0) == "0")?mes.charAt(mes.length - 1):mes ;
	mes = mes - 1;
	
	ano = data.substring(pos1 + 1, data.length);
	ano = (ano.charAt(0) == "0")?ano.charAt(ano.length - 1):ano ;

	objData = new Date(ano,mes,dia);
	return objData;
}

function getObj(objID)
{
	if (document.getElementById) {return document.getElementById(objID);}
	else if (document.all) {return document.all[objID];}
	else if (document.layers) {return document.layers[objID];}
}
function getScrollTop()
{
	if(document.documentElement.scrollTop) return document.documentElement.scrollTop;
	if(document.body.scrollTop) return document.body.scrollTop;
	if(window.pageYOffset) return window.pageYOffset;
	return 0;
}

function getWinHeight()
{
	if(window.innerHeight) return window.innerHeight;
	if(document.documentElement.clientHeight) return document.documentElement.clientHeight;
	if(document.body.clientHeight) return document.body.clientHeight;
	return 0;
}

function SetFocusCalend(e){if(e){objFNoCal=true;e.focus();setTimeout("RemoveFocus()", 200);}}
function RemoveFocus(){objFNoCal=false;}

function CalDateSet(eInp,d,m,y,giveFocus)
{
	var ds=GetDateSep();
	var fmt=GetDateFmt();

	if(fmt=="mmddyy")eInp.value=m+ds+d+ds+y;
	else if(fmt=="ddmmyy")eInp.value=d+ds+m+ds+y;
	else eInp.value=y+ds+m+ds+d;
	if(!giveFocus)
	SetFocusCalend(eInp);
}

function SetCalShown(fcshown){objCalShown=fcshown;}
function CalendarCallback(){if(objCalCB)objCalCB();}

function GetInputDate(t)
{
	if(!t.length) return null;
	t=t.replace(/\s+/g,"");
	if(t.match(/[^-|\d|\.|\/]/)) return null;
	var rgt=t.split(/-|\.|\//);
	for(var i=0;i<rgt.length;i++) rgt[i]=parseInt(rgt[i],10);
	if(!rgt[1]) return null;
	var m,d,y;
	var fmt=GetDateFmt();
	if(fmt=="yymmdd")
	{
	if(!rgt[2]) return null;
	m=rgt[1];d=rgt[2];y=rgt[0];
	}
	else
	{
	if(fmt=="mmddyy"){m=rgt[0];d=rgt[1];}
	else{m=rgt[1];d=rgt[0];}
	if(rgt[2])y=rgt[2];
	else y=DefYr(m-1,d);
	}
	m-=1;if(y<100)y+=2000;
	if(y<1601||y>4500||m<0||m>11||d<1||d>GetMonthCount(m,y))return null;
	return new Date(y,m,d);
}

function GetMonthCount(m,y){var c=daysMonth[m];if((m==1)&&EhBissexto(y))c++;return c;}
function EhBissexto(y){if(y%4==0&&((y%100!=0)||(y%400==0)))return true;else return false;}
function DefYr(m,d){var dt=new Date();var yC=(dt.getYear()<1000)?1900+dt.getYear():dt.getYear();if(m<dt.getMonth()||(m==dt.getMonth()&&d<dt.getDate()))yC++;return yC;}

function UpdDt(e)
{    
    //if(null!=f&&null!=t&&null!=GetInputDate(f.value)&&(null==GetInputDate(t.value)||GetInputDate(f.value)>GetInputDate(t.value))){t.value=f.value;}    
}

function GetDowStart() {return 0;}
function GetDateFmt() {return "ddmmyy";}
function GetDateSep() {return "/";}


var data = new Date();
var dia = data.getDate();
var mes = data.getMonth();
var ano = Number(data.getFullYear());
    
if (Number(dia) < 10)
    dia = "0" + dia;
if (Number(mes) < 10)
    mes = "0" + String(Number(mes) + 1);
if (ano < 2000)
    ano = 1900 + ano

var CalS = mes + '/' + dia + '/' + ano;

//Volta
if ( dia == '29' && mes == '2' )
    dia = '28';
ano = ano + 1;
var CalE = mes + '/' + dia + '/' + ano;

var ictrl = null;
var objCP,objED,objEDP,objDMin,objDMax;
var cF=null;
var cW=null;
var objTid=0;
var objFNoCal=false;
var objCalShown = false;
var objCalCB;
var daysMonth=new Array(12);
daysMonth[0]=daysMonth[2]=daysMonth[4]=daysMonth[6]=daysMonth[7]=daysMonth[9]=daysMonth[11]=31;
daysMonth[3]=daysMonth[5]=daysMonth[8]=daysMonth[10]=30;
daysMonth[1]=28;

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
function ShowCalendar(eP,eD,eDP,dmin,dmax,tp)
{
    if(tp == 0){
        ExibeCalend(eP,eD,eDP,dmin,dmax);
	    ictrl = eP;
    }
    else if(ictrl && ictrl.value != ''){
        var mindate = ConvertToDate(ictrl.value);
        if(mindate != null)
            ExibeCalend(eP,eD,eDP,mindate,dmax);
        else
            ExibeCalend(eP,eD,eDP,dmin,dmax);
    }
    else{
        ExibeCalend(eP,eD,eDP,dmin,dmax);
    }
}

function ExibeCalend(cP,eD,eDP,dmin,dmax)
{
    clearTimeout(objTid);
    if(objFNoCal){objFNoCal=false;return;}
    if(objCalShown && eD==objED)return;
    objCalShown = true;
    objCalCB = null;
    objCP=cP;
    objED=eD;
    objEDP=eDP;
    objDMin=dmin;
    objDMax=dmax;
    Aguarda();
 }

function Aguarda()
{ 
    if(!cW)cW=frames['CalFrame'];

    if(cW==null||cW.objFCL==null||cW.objFCL==false){
        objTid=setTimeout("Aguarda()", 200);
    }
    else{
        if(!cF)cF=getObj('CalFrame');
        cF.style.visibility="hidden";
        setTimeout("DoCal()",1);
    }
}

function DoCal()
{
    Posicao(objCP);
    if(!cW)cW=frames['CalFrame'];
    cW.DoCal(objED,objEDP,objDMin,objDMax);
}

function Posicao(cP)
{
	var dB=document.body;var eL=0;var eT=0;
    if(!cF)cF=getObj('CalFrame');
	
	for(var p=cP; p&&p.tagName!='BODY'; p=p.offsetParent)
	{
	    eL+=p.offsetLeft;
	    eT+=p.offsetTop;
    }
	
	var eH=cP.offsetHeight;
	var dH=parseInt(cF.style.height);
	var sT=getScrollTop();
	if(eT-dH>=sT&&eT+eH+dH>getWinHeight()+sT)eT-=dH;else eT+=eH;
	cF.style.left=eL+'px';
	cF.style.top=eT+'px';
}

function ConvertToDate(valorstring){
	data = valorstring ;
	pos0 = data.indexOf("/");
	
	if(pos0 == -1) return null;
	
	pos1 = data.indexOf("/", pos0 + 1);
	
	if(pos1 == -1) return null;
	
	if(data.indexOf("/", pos1 + 1) != -1) return null;
	
	dia = data.substring(0,pos0);
	dia = (dia.charAt(0) == "0")?dia.charAt(dia.length - 1):dia ;
	
	mes = data.substring(pos0 + 1, pos1);
	mes = (mes.charAt(0) == "0")?mes.charAt(mes.length - 1):mes ;
	mes = mes - 1;
	
	ano = data.substring(pos1 + 1, data.length);
	ano = (ano.charAt(0) == "0")?ano.charAt(ano.length - 1):ano ;

	objData = new Date(ano,mes,dia);
	return objData;
}

function getObj(objID)
{
	if (document.getElementById) {return document.getElementById(objID);}
	else if (document.all) {return document.all[objID];}
	else if (document.layers) {return document.layers[objID];}
}
function getScrollTop()
{
	if(document.documentElement.scrollTop) return document.documentElement.scrollTop;
	if(document.body.scrollTop) return document.body.scrollTop;
	if(window.pageYOffset) return window.pageYOffset;
	return 0;
}

function getWinHeight()
{
	if(window.innerHeight) return window.innerHeight;
	if(document.documentElement.clientHeight) return document.documentElement.clientHeight;
	if(document.body.clientHeight) return document.body.clientHeight;
	return 0;
}

function SetFocusCalend(e){if(e){objFNoCal=true;e.focus();setTimeout("RemoveFocus()", 200);}}
function RemoveFocus(){objFNoCal=false;}

function CalDateSet(eInp,d,m,y,giveFocus)
{
	var ds=GetDateSep();
	var fmt=GetDateFmt();

	if(fmt=="mmddyy")eInp.value=m+ds+d+ds+y;
	else if(fmt=="ddmmyy")eInp.value=d+ds+m+ds+y;
	else eInp.value=y+ds+m+ds+d;
	if(!giveFocus)
	SetFocusCalend(eInp);
}

function SetCalShown(fcshown){objCalShown=fcshown;}
function CalendarCallback(){if(objCalCB)objCalCB();}

function GetInputDate(t)
{
	if(!t.length) return null;
	t=t.replace(/\s+/g,"");
	if(t.match(/[^-|\d|\.|\/]/)) return null;
	var rgt=t.split(/-|\.|\//);
	for(var i=0;i<rgt.length;i++) rgt[i]=parseInt(rgt[i],10);
	if(!rgt[1]) return null;
	var m,d,y;
	var fmt=GetDateFmt();
	if(fmt=="yymmdd")
	{
	if(!rgt[2]) return null;
	m=rgt[1];d=rgt[2];y=rgt[0];
	}
	else
	{
	if(fmt=="mmddyy"){m=rgt[0];d=rgt[1];}
	else{m=rgt[1];d=rgt[0];}
	if(rgt[2])y=rgt[2];
	else y=DefYr(m-1,d);
	}
	m-=1;if(y<100)y+=2000;
	if(y<1601||y>4500||m<0||m>11||d<1||d>GetMonthCount(m,y))return null;
	return new Date(y,m,d);
}

function GetMonthCount(m,y){var c=daysMonth[m];if((m==1)&&EhBissexto(y))c++;return c;}
function EhBissexto(y){if(y%4==0&&((y%100!=0)||(y%400==0)))return true;else return false;}
function DefYr(m,d){var dt=new Date();var yC=(dt.getYear()<1000)?1900+dt.getYear():dt.getYear();if(m<dt.getMonth()||(m==dt.getMonth()&&d<dt.getDate()))yC++;return yC;}

function UpdDt(e)
{    
    //if(null!=f&&null!=t&&null!=GetInputDate(f.value)&&(null==GetInputDate(t.value)||GetInputDate(f.value)>GetInputDate(t.value))){t.value=f.value;}    
}

function GetDowStart() {return 0;}
function GetDateFmt() {return "ddmmyy";}
function GetDateSep() {return "/";}