// Script written by Alex

/*

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0030)http://www.galileo.lv/mask.htm -->
<HTML><HEAD><TITLE>Manual Mask v4.51 (Apollo/Galileo keyb.layout & VP3.0) - All rights reserved © Galileo Baltic - Riga</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1251"><LINK 
href="mask.files/styles.css" type=text/css rel=STYLESHEET>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0042)http://old.galileo.com.ua/uploads/mask.htm -->
<!-- saved from url=(0030)http://www.galileo.lv/mask.htm --><HTML><HEAD><TITLE>Manual Mask v4.51 (Apollo/Galileo keyb.layout & VP3.0) - All rights reserved © Galileo Baltic - Riga</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1251"><LINK 
href="Manual Mask v4_51 (Apollo-Galileo keyb_layout &amp; VP3_0) - All rights reserved © Galileo Baltic - Riga.files/styles.css" 
type=text/css rel=STYLESHEET>




*/


var TE = new ActiveXObject("DAT32COM.TERMINALEMULATION");
var glbFC = "*"
var glbFCIT = "*"
var glbXF = ''
var glbXF1 = ''
var glbZP = ''
var glbLoaded = false;
var glbGuar = true;
var pax


function MakeSame(obj)
{
	for (var i=1; obj[i] != undefined ; i++)
	{
		obj[i].disabled=true
		obj[i].value=obj[0].value
	}
}

function MakeNotSame(obj)
{
	for (var i=1; obj[i] != undefined ; i++)
	{
		obj[i].disabled=false
	}
}

function FBsame_onclick()
{
	if (FBsame.checked)  // will use 1 FB/TD from 1st line for all segments
	{
		MakeSame(FB)
		MakeSame(TD)
	}
	else
	{
		MakeNotSame(FB)
		MakeNotSame(TD)
	}
}

function NVBsame_onclick()
{
	if (NVBsame.checked)  // will use 1 NVB from 1st line for all segments
	{
		MakeSame(NVB)
	}
	else
	{
	    MakeNotSame(NVB)
	}
}


function NVAsame_onclick()
{
	if (NVAsame.checked)  // will use 1 NVA from 1st line for all segments
	{
		MakeSame(NVA)
	}
	else
	{
		MakeNotSame(NVA)
	}
}

function BGsame_onclick()
{
	if (BGsame.checked)  // will use 1 BG from 1st line for all segments
	{
		MakeSame(BG)
	}
	else
	{
		MakeNotSame(BG)
	}
}

function LoseGuar()
{
 glbGuar=false;
 GuarBox.value='LOST';
 GuarBox.style.backgroundColor='LightSalmon';

}

function maska()
{
	TE.MakeEntry("<FORMAT>*FB</FORMAT>");
	var lidojums = new Array (new Array())
	var top
	var mid
	var n
	var xx
	mid = ""
	top12 = ""
	top3 = ""
	n=0	
	if 	( (TE.ResponseLine(1).search("NO AIR SEGMENTS FOUND") != -1) || (TE.ResponseLine(1).search("NO MANUAL FARE EXISTS") != -1) || (TE.ResponseLine(0).search("SIGN IN") != -1) )
	{
	//alert("NO MANUAL FARE EXISTS or NO AIR SEGMENTS FOUND or YOU ARE NOT SIGNED IN")
  	alert("NENÍ OTEV?ENA TARIFNÍ MASKA(např. FBC nebo *FB1) nebo REZERVACE nebo NEJSTE ZAPSÁNI V SYSTÉMU")
	
	self.close()
	}
	else	
	{

		// getting all 'MoveDown' screens
		while (TE.More == 1)
		{
			TE.GetMore(-1, 0)
		}

		mid = "<table border=1>"
		
		
		
		if ( TE.ResponseLine(1).slice(0,20) == "ENDORSEMENTS PRESENT" & TE.ResponseLine(2).slice(0,2) == "P0")
		{
			var a=1
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(1)+"<br>&nbsp"+TE.ResponseLine(2)+ "</div>"
		  		
         COPYFARE.style.visibility="hidden"
         SPANCOPYFARE.style.display="none"
		 COPYALLPAX.style.visibility="hidden"
         COPPAX.style.visibility="hidden"

		  //alert(top12)
		}
		
		
		
		if ( TE.ResponseLine(1).slice(0,2) == "P0")
		{
		 	var a=0
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(1)+ "</div>"
		
		COPYFARE.style.visibility="hidden"
		SPANCOPYFARE.style.display="none"
		COPYALLPAX.style.visibility="hidden"
		COPPAX.style.visibility="hidden"

		//alert(top12)

		}
		
		
	
		if ( TE.ResponseLine(1).slice(24,45) == "TAX MODIFICATION ONLY" & TE.ResponseLine(2).slice(0,20) == "ENDORSEMENTS PRESENT" )
		{
			var a=2
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(2)+"<br>&nbsp"+TE.ResponseLine(3)+ "</div>"
		  
		  SAVEBUTTON.style.visibility="hidden"
		
		  //alert(top12)
		  
		}

		
		if ( TE.ResponseLine(1).slice(24,45) == "TAX MODIFICATION ONLY" & TE.ResponseLine(2).slice(0,2) == "P0" )
		{
			var a=1
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(1)+"<br>&nbsp"+TE.ResponseLine(2)+ "</div>"
		  
		  SAVEBUTTON.style.visibility="hidden"

		  //alert(top12)
		  
		}

					
//&&&
// 3rd header line with checkboxes
		top31 = "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp" + TE.ResponseLine(2+a).slice(0,30) + "&nbsp&nbsp&nbsp&nbsp&nbspFareBasis&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp/&nbsp&nbsp&nbspTD<INPUT type=checkbox id=FBsame name=same onclick=FBsame_onclick() size=1 title='Po zaškrtnutí bude stejná hodnota vložena na všechny segmenty' >"
		
		//alert(top31)
		
		top32 = "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbspNVB<INPUT type=checkbox id=NVBsame  onclick=NVBsame_onclick() name=same size=1 title='Po zaškrtnutí bude stejná hodnota vložena na všechny segmenty'> &nbsp&nbsp"
		
		//alert(top32)
		
		top33 = "&nbsp&nbspNVA<INPUT type=checkbox id=NVAsame  onclick=NVAsame_onclick() name=same size=1 title='Po zaškrtnutí bude stejná hodnota vložena na všechny segmenty'> &nbsp"
		
		//alert(top33)
		
		top34 = "&nbspBAGG<INPUT type=checkbox id=BGsame onclick=BGsame_onclick() name=same size=1 title='Po zaškrtnutí bude stejná hodnota vložena na všechny segmenty'>"
		
		//alert(top34)
		
		top3 = top31+top32+top33+top34
		
        //alert(top3)

		for (var rind_nr=3+a; TE.ResponseLine(rind_nr).slice(0,4) != "FARE" ; rind_nr++)
		{
			mid = mid + "<tr><td><INPUT type=checkbox id=oo"+n+" onchange='LoseGuar()' title='Zaškrtn?te, jedná-li se o transfer, pro stopover ponechte nezaškrtnuté' name=oo size=1></td><td>"+TE.ResponseLine(rind_nr).slice(2,30)+"</td><td><INPUT class=binp type=text id=FB"+n+" onchange='LoseGuar()' title='Fare Basis (tariff name)' name=FB size=10 maxlength=10 ></td><td>/</font></td><td><INPUT class=binp type=text id=TD"+n+" title='[optional] Ticked Designator' name=TD size=4 maxlength=4 class='RetainsGuarantee'></td><td><INPUT class=binp  type=text id=NVB"+n+" title='Not-Valid-Before date' name=NVB size=7 maxlength=7  onchange='LoseGuar()' ></td><td><INPUT class=binp  type=text id=NVA"+n+" name=NVA title='Not-Valid-After date' size=7 maxlength=7  onchange='LoseGuar()' ></td><td><INPUT type=text class=binp  id=BG"+n+" name=BG title='Baggage allowance (ie 20K, 2PC etc)' size=3 maxlength=3 class='RetainsGuarantee'></td><td><INPUT class=binp  type=text disabled align=middle id=Nr"+n+" name=Nr size=2></td></tr>"
			lidojums[n] = TE.ResponseLine(rind_nr).slice(2,30)
			n++
		}

		mid = mid + "</table>"
		
		//alert(mid)
		
		cikls.value = n
		izvade_top12.innerHTML = top12
// alert(top3)
		izvade_top3.innerHTML = top3
		izvade_mid.innerHTML = mid
// alert (mid)

		oo0.style.visibility="hidden"
		FB[n-1].style.visibility="hidden"
		TD[n-1].style.visibility="hidden"
		NVB[n-1].style.visibility="hidden"
		NVA[n-1].style.visibility="hidden"
		BG[n-1].style.visibility="hidden"
		oo[n-1].style.visibility="hidden"	

		Nr[n-1].style.visibility="hidden"
		cikls.style.visibility="hidden"
		var z 
		z = 1

		for (var n=0; lidojums[n+1] != undefined; n++)

		{
			if ( lidojums[n].search("ARNK") != -1 )
			{
				FB[n].style.visibility="hidden"
				TD[n].style.visibility="hidden"
				NVB[n].style.visibility="hidden"
				NVA[n].style.visibility="hidden"
				BG[n].style.visibility="hidden"
				oo[n].style.visibility="hidden"	
				Nr[n].style.visibility="hidden"	
			}
			else
			{
				Nr[n].value = z
				z++
			}
		}
	}
}
// Script written by Robert Berzinsh (Galileo Baltic), extensively modified by Alex Lyaschenko (Galileo Baltic)

function vertibas()  // saves entered content into FB
{
		var start = "FBU*"
		var komandaX = ""
		var komanda2 = ""
		var komandaFB = ""
		var komandaNVB = ""
		var komandaNVA = ""

		var komandaBG = ""
		var komandaTD = ""
		var komandaTax = ""
		var komandaEB = ""
		var k = 0

		  if(glbLoaded && glbGuar)
		  {
			 						//var start = "FBU*";
		              for (var z=0; oo[z] != undefined ; z++)
              		{
              			if ( FB[z].style.visibility != "hidden" )
              			{
              				k++
              				komandaTD += "+TD" + k + "/" +TD[z].value
              				komandaBG += "+BG" + k + "/" + BG[z].value
              			}
              		}
              
              		komandaTax = "+TAX1/" +TAX11.value+TAX12.value+ "+TAX2/" +TAX21.value+TAX22.value+ "+TAX3/" +TAX31.value+TAX32.value
             			
			 komandaTax+= "+TAX4/" +TAX41.value+TAX42.value+ "+TAX5/" +TAX51.value+TAX52.value+ "+TAX6/" +TAX61.value+TAX62.value+ "+TAX7/" +TAX71.value+TAX72.value+ "+TAX8/" +TAX81.value+TAX82.value+ "+TAX9/" +TAX91.value+TAX92.value+ "+TAX10/" +TAX101.value+TAX102.value+ "+TAX11/" +TAX111.value+TAX112.value+ "+TAX12/" +TAX121.value+TAX122.value+ "+TAX13/" +TAX131.value+TAX132.value+ "+TAX14/" +TAX141.value+TAX142.value+ "+TAX15/" +TAX151.value+TAX152.value+ "+TAX16/" +TAX161.value+TAX162.value+ "+TAX17/" +TAX171.value+TAX172.value+ "+TAX18/" +TAX181.value+TAX182.value+ "+TAX19/" +TAX191.value+TAX192.value+ "+TAX20/" +TAX201.value+TAX202.value + "+TTL/"
           



              		if (EB1.value == "" && EB2.value != "")
              		{EB1.value = EB2.value; EB2.value = ""} 
              		EB1.value = EB1.value.replace('/', '-')
              		EB2.value = EB2.value.replace('/', '-')   
              		
              		if (EB1.value != "" )
              		{
              		   komandaEB = "FBUEB/"+EB1.value + "/" + EB2.value
              		}
              
              		if (komandaEB == "" )  // to send 1 space instead of empty endorsements.
              		{
              		   komandaEB = "FBUEB/ /"
              		}

									var FullEntry1=(start+komandaTD+komandaBG).replace('*+','')
									var FullEntry2=(start+komandaTax).replace('*+','')
              		
              		
              		TE.MakeEntry("<FORMAT>"+FullEntry1+"</FORMAT>");
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Chyba v polí?ku TD nebo BG.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              


              		TE.MakeEntry("<FORMAT>"+FullEntry2+"</FORMAT>");
              
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Chyba v polí?ku TAX.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
									

               		TE.MakeEntry("<FORMAT>"+komandaEB+"</FORMAT>");
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Chyba v polí?ku ENDORSEMENT.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              		else
              		{
              			//alert("DATA ACCEPTED")
              			//alert("***  KOMANDA PRINIATA - DATA ACCEPTED ***")
						
						alert("***  Vstup p?ijat – DATA ACCEPTED ***")
              			
						self.close()
              		}
									
			}
			else
			{

              		for (var z=0; oo[z] != undefined ; z++)
              		{
              			if ( FB[z].style.visibility != "hidden" )
              			{
              				if ( oo[z].checked )
              				{
              					komandaX += "X" + k + "/X+"
              				}
              				else
              				{
              					if ( z > 0 )
              					{ komandaX += "X" + k + "/O+" }
              				}
              				k++
              
              				komandaFB += "+FB" + k + "/" +FB[z].value
											if(TD[z].value != '')
											{
              				 		komandaFB += "/" +TD[z].value
											}
              				komandaNVB += "+NVB" +k+ "/" + NVB[z].value
              				komandaNVA += "+NVA" + k + "/" + NVA[z].value
              				komandaBG += "+BG" + k + "/" + BG[z].value
              			}
              		}
									komandaX = komandaX.slice(0, komandaX.length-1)
              
              		var UseSame = 0
              		if (FBsame.checked)
              		{
              			komandaFB = "+FB/" + FB[0].value
              			if (TD[0].value!="")
              			{
              			   komandaFB+="/"+TD[0].value;
              			}
              			UseSame++
              		}
              
              		if (NVBsame.checked)
              		{
              			komandaNVB = "+NVB/" + NVB[0].value
              			UseSame++
              		}
              
              		if (NVAsame.checked)
              		{
              			komandaNVA = "+NVA/" + NVA[0].value
              			UseSame++
              		}
              
              		if (BGsame.checked)
              		{
              			komandaBG = "+BG/" + BG[0].value
              			UseSame++
              		}
              
              
              		komanda2 = komandaX+komandaFB + komandaNVB + komandaNVA + komandaBG //FB includes already TD
              
              		var komandaTTL = "FBUFARE/" + FARE1.value + FARE2.value + "+EQ/" +EQ1.value+EQ2.value+ "+ROE/" +ROE.value
          
              		if (UseSame < 4)
              		{
                			// use additional TE entry
                			segmentsData=start+komanda2
                			segmentsData=segmentsData.replace(/[*][+]{0,1}/gi, '')

                			TE.MakeEntry("<FORMAT>"+segmentsData+"</FORMAT>");
                
                		
                			if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
                			{
                  			  if 	( TE.ResponseLine(TE.NumResponseLines-2).search("VERIFY DATE") != -1 )
                  				{
                  				  alert("Datum v polí?ku NVB/NVA je t?eba vložit i s uvedením roku (správný formát DDMMMYY, nap?. 11JAN10).\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
                  				}
                  				else
                  				{
                  				   alert("Chyba ve vložených datech.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
                  				}
                  				return;
                			}
                			//komandaTTL += komandaNVB + komandaNVA
              		}
              		else
              		{
                			komandaTTL += "+"+komandaX + komanda2
              		}
              

              		komandaTax = "+TAX1/" +TAX11.value+TAX12.value+ "+TAX2/" +TAX21.value+TAX22.value+ "+TAX3/" +TAX31.value+TAX32.value
                    
						  
			  
			  var komanda = komandaTTL + komandaTax
              komanda = komanda.replace(/[*][+]/gi, '')

              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
              		
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Chyba ve vložených datech.\n Odpov?? systému: "+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              
			  //--------------------------------
              		
					komanda= "FBUTAX1/" +TAX11.value+TAX12.value+ "+TAX2/" +TAX21.value+TAX22.value+ "+TAX3/" +TAX31.value+TAX32.value+"+TAX4/" +TAX41.value+TAX42.value+ "+TAX5/" +TAX51.value+TAX52.value+ "+TAX6/" +TAX61.value+TAX62.value+ "+TAX7/" +TAX71.value+TAX72.value+ "+TAX8/" +TAX81.value+TAX82.value+ "+TAX9/" +TAX91.value+TAX92.value+ "+TAX10/" +TAX101.value+TAX102.value+ "+TAX11/" +TAX111.value+TAX112.value+ "+TAX12/" +TAX121.value+TAX122.value+ "+TAX13/" +TAX131.value+TAX132.value+ "+TAX14/" +TAX141.value+TAX142.value+ "+TAX15/" +TAX151.value+TAX152.value+ "+TAX16/" +TAX161.value+TAX162.value+ "+TAX17/" +TAX171.value+TAX172.value+ "+TAX18/" +TAX181.value+TAX182.value+ "+TAX19/" +TAX191.value+TAX192.value+ "+TAX20/" +TAX201.value+TAX202.value + "+TTL/"
					

              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
				
								
              
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Chyba ve vložených taxách.\n Odpov?? systému: "+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              
              // -------------------------------
              		if (PFC.value != '')
              		{
									
              			TE.MakeEntry("<FORMAT>"+'FBUPFC/'+PFC.value+"</FORMAT>");
              			if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              			{
              			 	alert("Chyba v taxe PFC *Passenger facility charge“,\n nebo jste zapomn?li vložit taxu XF.\n Odpov?? systému: "+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              				return;
              			}					
              		}
              
              		if (ZPtax.value != '')
              		{
              			TE.MakeEntry("<FORMAT>"+'FBUTB1/ZP'+ZPtax.value+"</FORMAT>");
              			if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              			{
              			 	alert("Chyba v rozpisu taxy ZP (ZP breakdown)\n nebo jste taxu ZP zapomn?li vložit.\n Odpov?? systému: "+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              				return;
              			}					
              		}
              // -------------------------------
              
              		komanda = "FBUEB/"
              		if (EB1.value == "" && EB2.value != "")
              		{EB1.value = EB2.value; EB2.value = ""} 
              		// ----- replacing '/' in EB with '-'
              		EB1.value = EB1.value.replace('/', '-')
              		EB2.value = EB2.value.replace('/', '-')   
              		
              		if (EB1.value != "" )
              		{
              		   komanda += EB1.value + "/" + EB2.value
              		}
              
              		if (komanda == "FBUEB/" )  // to send 1 space instead of empty endorsements.
              		{
              		   komanda += " /"
              		}
              		komandaEB=komanda
              		
              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Chyba v polí?ku Endorsement.\n Odpov?? systému: "+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              
              // -------------------------------
              		komanda = "FBUFC/" +FC1.value+FC2.value+FC3.value+FC4.value

              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
              
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Chyba v polí?ku tarifní kalkulace (FC DATA).\n Odpov?? systému: "+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              		else
              		{
              			//alert("DATA ACCEPTED")
              			//alert("***  KOMANDA PRINIATA - VAM NADO BUDET VNESTI KOMANDU **FBFALL** V BRONI DLIA SOHRANENIA TARIFNOI MASKI VSEM PASSAZHIRAM***")
          			   
          			   //alert("***  KOMANDA PRINIATA - DATA ACCEPTED ***")
   			          	
					    alert("***  Vstup p?ijat – DATA ACCEPTED ***")
              			
						self.close()
              		}
			}
//		alert(TE.ResponseLine(TE.NumResponseLines-2))
}




function vertibascopy()  // saves entered content into FB
        {
		var start = "FBU*"
		var komandaX = ""
		var komanda2 = ""
		var komandaFB = ""
		var komandaNVB = ""
		var komandaNVA = ""

		var komandaBG = ""
		var komandaTD = ""
		var komandaTax = ""
		var komandaEB = ""
		var k = 0
		var fbcpax 
		
      
              	 

                    TE.MakeEntry("<FORMAT>"+"FBI"+"</FORMAT>");
                    
                    //alert(TE.ResponseLine(0)+TE.ResponseLine(1))
			 		
			 					 		
			 		fbcpax = "FBC"
			 		

      if (COPYALLPAX.checked)  
	   {
		
		fbcpax = "FBCP"+pax
		
       }

       //alert(fbcpax)
       

        TE.MakeEntry("<FORMAT>"+fbcpax+"</FORMAT>");
		           
		//alert(TE.ResponseLine(0)+TE.ResponseLine(1))
                
                    

              		for (var z=0; oo[z] != undefined ; z++)
              		{
              			if ( FB[z].style.visibility != "hidden" )
              			{
              				if ( oo[z].checked )
              				{
              					komandaX += "X" + k + "/X+"
              				}
              				else
              				{
              					if ( z > 0 )
              					{ komandaX += "X" + k + "/O+" }
              				}
              				k++
              
              				komandaFB += "+FB" + k + "/" +FB[z].value
											if(TD[z].value != '')
											{
              				 		komandaFB += "/" +TD[z].value
											}
              				komandaNVB += "+NVB" +k+ "/" + NVB[z].value
              				komandaNVA += "+NVA" + k + "/" + NVA[z].value
              				komandaBG += "+BG" + k + "/" + BG[z].value
              			}
              		
              		  }
									komandaX = komandaX.slice(0, komandaX.length-1)
              
              		var UseSame = 0
              		if (FBsame.checked)
              		{
              			komandaFB = "+FB/" + FB[0].value
              			if (TD[0].value!="")
              			{
              			   komandaFB+="/"+TD[0].value;
              			}
              			UseSame++
              		}
              
              		if (NVBsame.checked)
              		{
              			komandaNVB = "+NVB/" + NVB[0].value
              			UseSame++
              		}
              
              		if (NVAsame.checked)
              		{
              			komandaNVA = "+NVA/" + NVA[0].value
              			UseSame++
              		}
              
              		if (BGsame.checked)
              		{
              			komandaBG = "+BG/" + BG[0].value
              			UseSame++
              		}
              
              
              		komanda2 = komandaX+komandaFB+komandaNVB+komandaNVA+komandaBG //FB includes already TD
              
              		var komandaTTL = "FBUFARE/" + FARE1.value + FARE2.value + "+EQ/" +EQ1.value+EQ2.value+ "+ROE/" +ROE.value
          
              		if (UseSame < 4)
              		{
                			// use additional TE entry
                			segmentsData=start+komanda2
                			segmentsData=segmentsData.replace(/[*][+]{0,1}/gi, '')

                			TE.MakeEntry("<FORMAT>"+segmentsData+"</FORMAT>");
                
                		
                			if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
                			{
                  			  if 	( TE.ResponseLine(TE.NumResponseLines-2).search("VERIFY DATE") != -1 )
                  				{
                  				  alert("NVB/NVA musí obsahovat rok (správný formát DDMMMYY, nap?. 11JAN10).\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
                  				}
                  				else
                  				{
                  				   alert("Vložená data jsou ve špatném formátu.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
                  				}
                  				return;
                			}
                			//komandaTTL += komandaNVB + komandaNVA
              		}
              		else
              		{
                			komandaTTL += "+"+komandaX + komanda2
              		}
              

              		komandaTax = "+TAX1/" +TAX11.value+TAX12.value+ "+TAX2/" +TAX21.value+TAX22.value+ "+TAX3/" +TAX31.value+TAX32.value
              var komanda = komandaTTL + komandaTax
              		komanda = komanda.replace(/[*][+]/gi, '')

              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
              		
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Vložená data jsou ve špatném formátu.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              
              
              //-------------------------------------------------------------------------------
              
              
              		komanda = "FBUTAX4/" +TAX41.value+TAX42.value+ "+TAX5/" +TAX51.value+TAX52.value+ "+TAX6/" +TAX61.value+TAX62.value+ "+TAX7/" +TAX71.value+TAX72.value+ "+TAX8/" +TAX81.value+TAX82.value+ "+TAX9/" +TAX91.value+TAX92.value+ "+TAX10/" +TAX101.value+TAX102.value+ "+TAX11/" +TAX111.value+TAX112.value+ "+TAX12/" +TAX121.value+TAX122.value+ "+TAX13/" +TAX131.value+TAX132.value+ "+TAX14/" +TAX141.value+TAX142.value+ "+TAX15/" +TAX151.value+TAX152.value+ "+TAX16/" +TAX161.value+TAX162.value+ "+TAX17/" +TAX171.value+TAX172.value+ "+TAX18/" +TAX181.value+TAX182.value+ "+TAX19/" +TAX191.value+TAX192.value+ "+TAX20/" +TAX201.value+TAX202.value + "+TTL/"

              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
              
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Taxy 4-20 jsou ve špatném formátu.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              
              // -------------------------------
              		if (PFC.value != '')
              		{
									
              			TE.MakeEntry("<FORMAT>"+'FBUPFC/'+PFC.value+"</FORMAT>");
              			if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              			{
              			 	alert("Passenger facility charge contains INCORECT FORMAT(S).\nOr you forgot XF tax. PLEASE CHECK AND RETRY.\n SYSTEM TOLD:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              				return;
              			}					
              		}
              
              		if (ZPtax.value != '')
              		{
              			TE.MakeEntry("<FORMAT>"+'FBUTB1/ZP'+ZPtax.value+"</FORMAT>");
              			if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              			{
              			 	alert("Rozpis taxy ZP (ZP breakdown) je vložen ve špatném formátu nebo jste zapomn?li ZP taxu vložit.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              				return;
              			}					
              		}
              // -------------------------------
              
              		komanda = "FBUEB/"
              		if (EB1.value == "" && EB2.value != "")
              		{EB1.value = EB2.value; EB2.value = ""} 
              		// ----- replacing '/' in EB with '-'
              		EB1.value = EB1.value.replace('/', '-')
              		EB2.value = EB2.value.replace('/', '-')   
              		
              		if (EB1.value != "" )
              		{
              		   komanda += EB1.value + "/" + EB2.value
              		}
              
              		if (komanda == "FBUEB/" )  // to send 1 space instead of empty endorsements.
              		{
              		   komanda += " /"
              		}
              		komandaEB=komanda
              		
              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Endorsement je vložen ve špatném formátu.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              
              // -------------------------------
              		komanda = "FBUFC/" +FC1.value+FC2.value+FC3.value+FC4.value

              		TE.MakeEntry("<FORMAT>"+komanda+"</FORMAT>");
              
              		if 	( TE.ResponseLine(TE.NumResponseLines-2).search("DATA ACCEPTED *") == -1 )
              		{
              			alert("Tarifní kalkulace (FC DATA) je vložena ve špatném formátu.\n Odpov?? systému:"+TE.ResponseLine(TE.NumResponseLines-2).slice(0,TE.ResponseLine(TE.NumResponseLines-2).length-18))
              			return;
              		}
              		else
              		{
              		   
              		   
              		   if (fbcpax == "FBC" )
              			{           		             		
              			alert("***  Vstup p?ijat – nyní tarifní masku dokon?ete v systému vstupem FBFALL. Tarifní maska pro všechny cestující.***")
              			}
              			  else
              			  {
              			  alert("***  Vstup p?ijat – nyní tarifní masku dokon?ete v systému vstupem FBF. Tarifní maska pro všechny cestující. ***")
        			      }
              			        			
              			
              			alert("           POZOR!      POZOR!       POZOR! \n\nNezapome?te k danému tarifu vložit TOUR CODE (vstup TMU1TC …….)")
              		           		        			
              			
              			self.close()
              		}
			}




function trimE(txt)
{
	return(txt.slice(0,txt.search(" ")))
}
function trimB(txt)
{
	for( var a=txt.length; a!=0; a=a-1)
	{
		if (txt.slice(a-1,a)==" ")
		{
			break;
		}
	}
	return(txt.slice(a,txt.length))
}

function clearDots(txt) // by Alex
{
	for( var a=txt.length; a!=0; a=a-1)
	{
		if (txt == "..." || txt == "......." || txt == "." || txt == ".........." || txt == "....." || txt == ".............." || txt == "......." || txt == ".." || txt == "........" || txt == "............" || txt == ".............................................................")
		{
			txt = "";
		}
	}
	return(txt)
}

function load()
{
//	var texts
	var lidojums
	var maska
	var kopa = new Array()
	var ENDORS
	var EB = " "
	var FC
	var i = 0 
	var a;
	var EBline1noted = 0

	
//	texts = ""
	TE.MakeEntry("<FORMAT>*FB</FORMAT>");
	
	while (TE.More == 1)
	{
		TE.GetMore(-1, 0)
	}

	var RegExp = /<PILLOW[/]>/g




       if ( TE.ResponseLine(1).slice(0,20) == "ENDORSEMENTS PRESENT" & TE.ResponseLine(2).slice(0,2) == "P0")
		{
			var a=1
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(1)+"<br>&nbsp"+TE.ResponseLine(2)+ "</div>"
		  
		 pax = String(TE.ResponseLine(2).slice(1,3))
		 
		 	  
		  //alert(top12)
		}
		
		
		
		if ( TE.ResponseLine(1).slice(0,2) == "P0")
		{
		 	var a=0
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(1)+ "</div>"
		
		pax = String(TE.ResponseLine(1).slice(1,3))
		
		 	  
		//alert(top12)

		}
		
		
	
		if ( TE.ResponseLine(1).slice(24,45) == "TAX MODIFICATION ONLY" & TE.ResponseLine(2).slice(0,20) == "ENDORSEMENTS PRESENT" )
		{
			var a=2
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(2)+"<br>&nbsp"+TE.ResponseLine(3)+ "</div>"
		  
		 pax = String(TE.ResponseLine(3).slice(1,3))
      
         //alert(pax)
		  
		  //alert(top12)
		  
		}

		
		if ( TE.ResponseLine(1).slice(24,45) == "TAX MODIFICATION ONLY" & TE.ResponseLine(2).slice(0,2) == "P0" )
		{
			var a=1
			top12 = "<div>&nbsp" + TE.ResponseLine(0).slice(0,TE.ResponseLine(0).length-18)+"<br>&nbsp"+TE.ResponseLine(1)+"<br>&nbsp"+TE.ResponseLine(2)+ "</div>"
		 
        pax = String(TE.ResponseLine(2).slice(1,3))
 
		  
		  //alert(top12)
		  
		}

	
	
		
	for (var rind_nr=3+a; TE.ResponseLine(rind_nr+1).slice(0,4) != "FARE" ; rind_nr++)
	{

			lidojums = TE.ResponseLine(rind_nr).replace(RegExp, '.')

			FB[rind_nr-3-a].value=clearDots(trimE(lidojums.slice(30,45)))
			var FBreg = /[/]/g
			
			if(FB[rind_nr-3-a].value.match(FBreg)!=null)
			{
				 TD[rind_nr-3-a].value = FB[rind_nr-3-a].value.slice(FBreg.lastIndex,FB[rind_nr-3-a].value.length)
				 FB[rind_nr-3-a].value = FB[rind_nr-3-a].value.slice(0, FBreg.lastIndex-1)
			}
			
			
			NVB[rind_nr-3-a].value=clearDots(lidojums.slice(46,51))

			NVA[rind_nr-3-a].value=clearDots(lidojums.slice(52,57))
			BG[rind_nr-3-a].value=clearDots(lidojums.slice(58,61))


			if ( lidojums.slice(0,1) == "X"  )
			{
				oo[rind_nr-3-a].checked = true
			}

	}

	for (rind_nr=rind_nr+1; TE.ResponseLine(rind_nr).slice(0,6) != "<SOM/>"; rind_nr++)
	{

		maska = TE.ResponseLine(rind_nr).replace(RegExp, '.')			

		kopa[i] = maska


		i++

		ENDORS = TE.ResponseLine(rind_nr)
		
		if ( EBline1noted == 1 )
		{
			EB = EB + ENDORS.slice(0,ENDORS.search("/<CARRIAGE_RETURN/>")+1 )
			EBline1noted = 0
		}
		if ( ENDORS.search("ENDORSEMENTS<SOM/>") == 0 && EBline1noted == 0)
		{
			var ansv = ENDORS.search("/<CARRIAGE_RETURN/>")
			if (ansv == -1)
			{var add = 69}
			else
			{var add = 0}
			EB = ENDORS.slice(24,ansv+1+add)
			EBline1noted = 1
		}

	}

FARE1.value=clearDots(kopa[0].slice(5,8))
FARE2.value=clearDots(trimB(kopa[0].slice(9,17)))
EQ1.value=clearDots(kopa[0].slice(22,25))
EQ2.value=clearDots(trimB(kopa[0].slice(26,34)))
ROE.value=clearDots(kopa[0].slice(40,kopa[0].length-18))
TTL.value=clearDots(trimB(kopa[3].slice(18,26)))

TE.MakeEntry("<FORMAT>*FBTAX</FORMAT>");

// ----------- read normally taxes here ---------------
TAX11.value=clearDots(trimB(TE.ResponseLine(3).slice(10,17)))
TAX12.value=clearDots(trimB(TE.ResponseLine(3).slice(18,20)))
TAX21.value=clearDots(trimB(TE.ResponseLine(3).slice(24,31)))
TAX22.value=clearDots(TE.ResponseLine(3).slice(32,34))
TAX31.value=clearDots(trimB(TE.ResponseLine(3).slice(38,45)))
TAX32.value=clearDots(TE.ResponseLine(3).slice(46,48))
TAX41.value=clearDots(trimB(TE.ResponseLine(3).slice(52,59)))
TAX42.value=clearDots(TE.ResponseLine(3).slice(60,62))

TAX51.value=clearDots(trimB(TE.ResponseLine(4).slice(10,17)))
TAX52.value=clearDots(trimB(TE.ResponseLine(4).slice(18,20)))
TAX61.value=clearDots(trimB(TE.ResponseLine(4).slice(24,31)))
TAX62.value=clearDots(TE.ResponseLine(4).slice(32,34))
TAX71.value=clearDots(trimB(TE.ResponseLine(4).slice(38,45)))
TAX72.value=clearDots(TE.ResponseLine(4).slice(46,48))
TAX81.value=clearDots(trimB(TE.ResponseLine(4).slice(52,59)))
TAX82.value=clearDots(TE.ResponseLine(4).slice(60,62))

TAX91.value=clearDots(trimB(TE.ResponseLine(5).slice(10,17)))
TAX92.value=clearDots(trimB(TE.ResponseLine(5).slice(18,20)))
TAX101.value=clearDots(trimB(TE.ResponseLine(5).slice(24,31)))
TAX102.value=clearDots(TE.ResponseLine(5).slice(32,34))
TAX111.value=clearDots(trimB(TE.ResponseLine(5).slice(38,45)))
TAX112.value=clearDots(TE.ResponseLine(5).slice(46,48))
TAX121.value=clearDots(trimB(TE.ResponseLine(5).slice(52,59)))
TAX122.value=clearDots(TE.ResponseLine(5).slice(60,62))

TAX131.value=clearDots(trimB(TE.ResponseLine(6).slice(10,17)))
TAX132.value=clearDots(trimB(TE.ResponseLine(6).slice(18,20)))
TAX141.value=clearDots(trimB(TE.ResponseLine(6).slice(24,31)))
TAX142.value=clearDots(TE.ResponseLine(6).slice(32,34))
TAX151.value=clearDots(trimB(TE.ResponseLine(6).slice(38,45)))
TAX152.value=clearDots(TE.ResponseLine(6).slice(46,48))
TAX161.value=clearDots(trimB(TE.ResponseLine(6).slice(52,59)))
TAX162.value=clearDots(TE.ResponseLine(6).slice(60,62))

TAX171.value=clearDots(trimB(TE.ResponseLine(7).slice(10,17)))
TAX172.value=clearDots(trimB(TE.ResponseLine(7).slice(18,20)))
TAX181.value=clearDots(trimB(TE.ResponseLine(7).slice(24,31)))
TAX182.value=clearDots(TE.ResponseLine(7).slice(32,34))
TAX191.value=clearDots(trimB(TE.ResponseLine(7).slice(38,45)))
TAX192.value=clearDots(TE.ResponseLine(7).slice(46,48))
TAX201.value=clearDots(trimB(TE.ResponseLine(7).slice(52,59)))
TAX202.value=clearDots(TE.ResponseLine(7).slice(60,62))

var FC = clearDots(kopa[5].slice(0,kopa[5].length-18))

if ( kopa[6] != undefined )
{
	FC=FC + clearDots(kopa[6].slice(0,61))

	if ( kopa[7] != undefined )
	{
		FC=FC + clearDots(kopa[7].slice(0,61))
		if ( kopa[8] != undefined )
		{
			FC=FC + clearDots(kopa[8].slice(0,61))
		}
	}
}


/*
if (FC.search(" XF ") != -1) //means ' XF ' present in FC
{
   glbXF = FC.slice(FC.search(" XF ")+1,FC.search("<CARRI"))
   var RegExp = /[X][F][ ]\d+[.]\d+[ ]/gi // will search 'XF 2.44 ' etc
   glbXF = glbXF.replace(RegExp, '')
   PFC.value = glbXF
}

*/





if (FC.search(" XF ") != -1) //means ' XF ' present in FC
{
  
        glbXF1 = (FC.slice(FC.search(" XF ")+1,FC.search("ENDORS"))).replace(/\<CARRIAGE_RETURN\/\>/gi,'')
   		//alert(glbXF1)
   		
		glbXF = glbXF1.replace("<","") 
		//alert(glbXF)
		
		var RegExp = /[X][F][ ]\d+[ ]/gi // will search 'XF 2.44 ' etc
   		glbXF = glbXF.replace(RegExp, '')
   		PFC.value = glbXF
}






if (FC.search(" ZP ") != -1) //means ' ZP ' present in FC
{
   glbZP = FC.slice(FC.search(" ZP ")+1,FC.search("<CARR"))
   var RegExp = /[Z][P][ ][^ <]+[ <]/gi // will search 'ZP SFO1.50LAX2.4 ' etc
   glbZP = glbZP.match(RegExp).toString()
   glbZP = glbZP.replace(/[Z][P][ ]/gi, '')
   glbZP = glbZP.replace(/[ ]/gi, '')
   ZPtax.value = glbZP
}

// ------------- analyze FC to make it 'IT' -------------------
var FCIT = FC

FCIT = FCIT.slice(0,FCIT.search("NUC"))

var RegExp = /[ M]\d+[.]\d\d\w+[/]\w+[ ]/gi // will search for 195.94QAP21SK/CHTD
FCIT = FCIT.replace(RegExp, ' M/IT ')

var RegExp = /[ M]\d+[.]\d\d\w+[ ]/gi // will search for 195.94QAP21SK
FCIT = FCIT.replace(RegExp, ' M/IT ')

glbFC = FC
glbFCIT = FCIT
// ------------ FCIT contains now correct IT calculation -----

// *** inserting Fare Calculation into page fields (4 x 61 chars) ***

insertfc(FC)

// *** inserting Endorsements into page fields (2 x 29 chars) ***

EB1.value = EB.slice(0,EB.search("/"))
EB2.value = EB.slice(EB.search("/")+1, EB.length-1)

glbLoaded=true;

}

function roe()
{
	if (FARE1.value.toUpperCase() == "" || FARE1.value.toUpperCase() == "...")
	{
		alert("Please enter FARE currency first")
	}
	else
	{
		TE.MakeEntry("<FORMAT>FZI"+FARE1.value.toUpperCase()+"</FORMAT>");		

		if (TE.ResponseLine(1).slice(0,length-18) != "INVALID CURRENCY CODE")
		{
			ROE.value=TE.ResponseLine(4).slice(23,32)
		}
		else
		{
			alert(TE.ResponseLine(1).slice(0,length-18)+" IN FARE")
		}
	}
}

function makeit()
{
	insertfc(glbFCIT)
    LoseGuar()
}



function deltax()

{

LoseGuar()

PFC.value = ''
ZPtax.value = ''

TAX11.value = ''
TAX12.value = ''

TAX21.value = ''
TAX22.value = ''

TAX31.value = ''
TAX32.value = ''

TAX41.value = ''
TAX42.value = ''

TAX51.value = ''
TAX52.value = ''

TAX61.value = ''
TAX62.value = ''

TAX71.value = ''
TAX72.value = ''

TAX81.value = ''
TAX82.value = ''

TAX91.value = ''
TAX92.value = ''

TAX101.value = ''
TAX102.value = ''

TAX111.value = ''
TAX112.value = ''

TAX121.value = ''
TAX122.value = ''

TAX131.value = ''
TAX132.value = ''

TAX141.value = ''
TAX142.value = ''

TAX151.value = ''
TAX152.value = ''

TAX161.value = ''
TAX162.value = ''

TAX171.value = ''
TAX172.value = ''

TAX181.value = ''
TAX182.value = ''

TAX191.value = ''
TAX192.value = ''

TAX201.value = ''
TAX202.value = ''

}



function makenormal()
{
	insertfc(glbFC)
}


function insertfc(FC)
{

if (FC == "*" )
{
	alert('First, please load existing mask')
	return
}
FC = FC.slice(0,FC.search("END"))

FC1.value = FC.slice(0,61)
FC2.value = ""
FC3.value = ""
FC4.value = ""

if (FC.length > 61)
{
	FC2.value=FC.slice(61,121)
	if (FC.length > 122)
	{
		FC3.value=FC.slice(121,182)
		if (FC.length > 183)
		{
			FC4.value=FC.slice(182,243)
		}
	}
}



}

