var gValidationCall='';
if (document.all)
	var browser_ie=true
else if (document.layers)
	var browser_nn4=true
else if (document.layers || (!document.all && document.getElementById))
	var browser_nn6=true
var gBrowserAgent = navigator.userAgent.toLowerCase();
function hideSelect()
{
        var oselect_array = document.getElementsByTagName('SELECT');
        for(var i=0;i<oselect_array.length;i++)
        {
                oselect_array[i].style.display = 'none';
        }
}

function showSelect()
{
        var oselect_array = document.getElementsByTagName('SELECT');
        for(var i=0;i<oselect_array.length;i++)
        {
                oselect_array[i].style.display = 'block';
        }
}
function getObj(n,d) {

  var p,i,x; 

  if(!d)

      d=document;

   
   if(n != undefined)
   {
	   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=getObj(n,d.layers[i].document);

  if(!x && d.getElementById)

      x=d.getElementById(n);

  return x;

}


function getOpenerObj(n) {

    return getObj(n,opener.document)

}

function findPosX(obj) {

	var curleft = 0;

	if (document.getElementById || document.all) {

		while (obj.offsetParent) {

			curleft += obj.offsetLeft

			obj = obj.offsetParent;

		}

	} else if (document.layers) {

		curleft += obj.x;

	}
	return curleft;

}

function findPosY(obj) {

	var curtop = 0;

	if (document.getElementById || document.all) {

		while (obj.offsetParent) {

			curtop += obj.offsetTop

			obj = obj.offsetParent;

		}

	} else if (document.layers) {

		curtop += obj.y;

	}
	return curtop;

}

function clearTextSelection() {

	if (browser_ie) document.selection.empty();

    else if (browser_nn4 || browser_nn6) window.getSelection().removeAllRanges();

}
var Browser = {
    Version: function() {
        var version = 999; // we assume a sane browser
        if (navigator.appVersion.indexOf("MSIE") != -1)
        // bah, IE again, lets downgrade version number
            version = parseFloat(navigator.appVersion.split("MSIE")[1]);
        return version;
    }
}

// Drop Dwon Menu

function fnDropDown(obj,Lay){

   var oDiv = document.getElementById(Lay);
	var left = obj.offsetLeft;//findPosX(obj);
	var top  =  obj.offsetTop; //findPosY(obj);
	oDiv.style.display = 'block';
	// oDiv.style.left = left + 12 +'px'; // 
	//oDiv.style.top = top +12+ 'px';

	//4July 2011 Added by Cygnet-Infotech.//
	//Find IE Version
	if (navigator.appVersion.indexOf("MSIE") != -1 && Browser.Version() <= 7) {
	    left = findPosX(obj);
	    top = findPosY(obj);
	    oDiv.style.display = 'block';
	    oDiv.style.left = left - 4 +  'px'; //
	    oDiv.style.top = top + 24 + 'px';
	}
	else {
	    oDiv.style.display = 'block';
	    oDiv.style.left = left + 50 + 'px'; // 
	    oDiv.style.top = top + 12 + 'px';
	}
	// End//
 }

function fnShowDrop(obj){
	document.getElementById(obj).style.display = 'block';
}

function fnHideDrop(obj){
	document.getElementById(obj).style.display = 'none';
}

function getCalendarPopup(imageid,fieldid,dateformat)
{
        Calendar.setup ({
                inputField : fieldid, ifFormat : dateformat, showsTime : false, button : imageid, singleClick : true, step : 1
        });
}


//To select the select all check box(if all the items are selected) when the form loads.
checked=false;
function checkedAll (frm1) {
//alert(frm1);
	var aa= document.getElementById('frm1');
	 if (checked == false)
          {
           checked = true
          }
        else
          {
          checked = false
          }
	for (var i =0; i < aa.elements.length; i++) 
	{
	 aa.elements[i].checked = checked;
	}
      }

//Menu

var menu_i;
var menu_max;
var closeLimit;
var openLimit = 0; 

function fnSlide(obj,inner)
{
	var buff = document.getElementById(obj).width;
	closeLimit = buff.substring(0,buff.length-1);
	menu_max = eval(closeLimit);
	var tagName = document.getElementById(inner);
	document.getElementById(obj).style.width=0 + "%"; menu_i=0;
	if (tagName.style.display == 'none')
		fnexpanLay(obj,inner);
	else
		fncloseLay(obj,inner);
}

function fnexpanLay(obj,inner)
{
	var setText = eval(closeLimit) - 1;
	if (menu_i<=eval(closeLimit))
	{
		if (menu_i>setText){document.getElementById(inner).style.display='block';}
		document.getElementById(obj).style.width=menu_i+"%";
		setTimeout(function() { fnexpanLay(obj,inner); },5);
		menu_i=menu_i+1;   
	}
}

function fncloseLay(obj,inner)
{
	if (menu_max >= eval(openLimit))
	{
		if (menu_max<eval(closeLimit)){document.getElementById(inner).style.display='none';}
		document.getElementById(obj).style.width=menu_max +"%";
		setTimeout(function() { fncloseLay(obj,inner); }, 5);
		menu_max = menu_max -1;
	}
}

/*  NEW SCRIPT FOR MENU WIPE */

var wipe_i;
var wipe_max;
var closeLimit;
var openLimit = 0; 

function fnWipe(obj,inner)
{
	var buff = document.getElementById(inner).style.height;
	closeLimit = buff.substring(0,buff.length-2);
	wipe_max = eval(closeLimit);
	var tagName = document.getElementById(inner);
	document.getElementById(obj).style.height=0 + "px"; wipe_i=0;
	if (tagName.style.display == 'none')
		fnWipeLay(obj,inner);
	else
		fnUnWipeLay(obj,inner);
}

function fnWipeLay(obj,inner)
{
	var setText = eval(closeLimit) - 1;
	if (wipe_i<=eval(closeLimit))
	{
		if (wipe_i>setText){document.getElementById(inner).style.display='block';}
		document.getElementById(obj).style.height=wipe_i+"px";
		setTimeout(function() { fnWipeLay(obj,inner); },5);
		wipe_i = wipe_i + 5;   
	}
}

function fnUnWipeLay(obj,inner)
{
	if (wipe_max >= eval(openLimit))
	{
		if (wipe_max<eval(closeLimit)){document.getElementById(inner).style.display='none';}
		document.getElementById(obj).style.height = wipe_max + "px";
		setTimeout(function() { fnUnWipeLay(obj,inner); }, 5);
		wipe_max = wipe_max - 5;
	}
}



function fnSlide1(obj,inner)
{
  var buff = document.getElementById(obj).width;
  closeLimit = buff.substring(0,buff.length);
  menu_max = eval(closeLimit);
  var tagName = document.getElementById(inner);
  document.getElementById(obj).style.width=0 + "px"; menu_i=0;
  if (tagName.style.display == 'none')
	  fnexpanLay1(obj,inner);
  else
	fncloseLay1(obj,inner);
 }

function fnexpanLay1(obj,inner)
{
     document.getElementById(obj).style.display = 'block';
   var setText = eval(closeLimit) - 1;
   if (menu_i<=eval(closeLimit))
   {
	    if (menu_i>setText){document.getElementById(inner).style.display='block';}
       document.getElementById(obj).style.width=menu_i + "px";
	   setTimeout(function() { fnexpanLay1(obj,inner); },5);
        menu_i=menu_i+14;   
   }
}

 function fncloseLay1(obj,inner)
{
  if (menu_max >= eval(openLimit))
   {
	    if (menu_max<eval(closeLimit)){document.getElementById(inner).style.display='none';}
       document.getElementById(obj).style.width=menu_max +"px";
	  setTimeout(function() { fncloseLay1(obj,inner); }, 5);
       menu_max = menu_max -14;
   }
}


function saveIt(name,x) { Cookies.create(name,x,0);}
function readIt(name) {  return Cookies[name];}
function eraseIt(name) { Cookies.erase(name);}
var Cookies = { init: function () { var allCookies = document.cookie.split('; '); 

for (var i=0;i<allCookies.length;i++) { var cookiePair = allCookies[i].split('='); 

this[cookiePair[0]] = cookiePair[1];}
}, create: function (name,value,days) { if (days) { var date = new Date(); 

date.setTime(date.getTime()+(36000)); var expires = "; expires="+date.toGMTString

();}
else var expires = ""; document.cookie = name+"="+value+expires+"; path=/"; this

[name] = value;}, erase: function (name) { this.create(name,'',-1); this[name] = 

undefined;}
}; Cookies.init(); var url = window.location.href; var url2 = url.substr

(0,url.lastIndexOf("?")); var url3=url2.substr(url2.lastIndexOf("/"),url2.length); 

var url4=url3.split(".aspx")[0]; url4=url4.substr(1,url4.length); if

(url4.toUpperCase()=="NAPTAN" || url4.toUpperCase()=="PUBLIC-TRANSPORT" || 

url4.toUpperCase()=="PUBLICTRANSPORT")
{ }
else
{ delCookie("naptoncookie");}
window.onload=function()
{ var url1=url.substr(url.lastIndexOf("/")); var URLSplit=url1.split("&")[0]; 

URLSplit=URLSplit.substr(1,URLSplit.length); URLSplit1=URLSplit.split("=")[1]; if

(URLSplit=="naptan.aspx?t=districts" || URLSplit=="naptan.aspx?t=adminareas"|| 

URLSplit=="naptan.aspx?t=vectors"|| URLSplit=="naptan.aspx?t=localities"|| 

URLSplit=="naptan.aspx?t=departure")
{ if(readIt("pagecookie")!=undefined)
{ if(readIt("pagecookie")!=URLSplit1)
{ saveIt("pagecookie",URLSplit1)
Cookies.erase("naptoncookie"); saveIt("naptoncookie","1")
}
}
else
{ saveIt("pagecookie",URLSplit1)
}
delCookie("naptoncookie");}
}
function delCookie(name)
{ document.cookie = name + "=; expires=Thu, 01-Jan-70 00:00:01 GMT" + "; path=/";}
/*function saveIt(name,x)
{ Cookies.create(name,x,100);}
function readIt(name)
{ return Cookies[name];}*/

//var fault="";
function FaultAlert(faultType)
{


 var newFault="";var existingFault="";
 var fault="";
   newFault =faultType;
   if(readIt('faultCookie')!=null)
   existingFault=readIt('faultCookie')
   else 
   existingFault="";
 
   
  if(existingFault=="")
    fault=newFault;
  else
    {
    //var ind=existingFault.indexof('All traffic signals out');
    if(existingFault.search(newFault)< 0)
        fault =existingFault +"#"+newFault;
    else
    { 
    if(existingFault.search(newFault)>= 0)
        fault=remove(existingFault,newFault);
    }
    }
     if(fault.search("##")>=0)
        fault= fault.replace("##","#");
   saveIt('faultCookie',fault,1);
    
  if(document.getElementById("hdnFaultType").value==null)return;
  else
   document.getElementById("hdnFaultType").value=fault;

}
function remove(faultString, faultToRemove) 
{

  var i = faultString.indexOf(faultToRemove);
  var r = "";
  if (i == -1) return faultString;
  r += faultString.substring(0,i) + remove(faultString.substring(i + faultToRemove.length), faultToRemove);
  return r;
  }



