function logon() 
{
	user	=	document.getElementById('username').value;
	pass	=	document.getElementById('password').value;
	
		if ((user.length < 1)) 
			{
				alert("You need a username to continue!");
				document.getElementById('username').focus();
				return;
			}
		else if ((pass.length < 1)) 
			{
				alert("You need a password to continue!");
				document.getElementById('password').focus();
				return;
			}
		else 
			{ 
				var d					=	new Array(5);
				d[0]					=	'0=0&';
				d[1]					=	'1=' + document.getElementById('username').value + '&';
				d[2]					=	'2=' + document.getElementById('password').value;

				document.getElementById('ui_h').innerHTML = "<h3>LOGGING ON...</h3>";
				document.getElementById('main').innerHTML = "loading data...";	
				document.getElementById('username').value = '';
				document.getElementById('password').value = '';
				ajax_cb('../../../outside.aspx', clean(d.join("")));

			}
}
function recapture()
{
	document.getElementById('main').innerHTML = "refreshing data...";	
	var d					=	new Array(5);
	d[0]					=	'0=0&';
	d[1]					=	'1=' + document.getElementById('username').value + '&';
	d[2]					=	'2=' + document.getElementById('password').value;		
	ajax_cb('../../../outside.aspx', clean(d.join("")));
}
function logoff()
{
	document.getElementById('ui_h').innerHTML = "<h3>LOGGING OFF...</h3>";
		ajax_cb('../../../outside.aspx', "0=1");	
}
function reg()
{
	document.getElementById('main').innerHTML = "loading registration...";
	ajax_cb('../../../outside/registration.asp', " ", "main");				
}
function reg_submit() 
{
	if(document.getElementById('reg_firstname').value < 1){alert("You need a first name to continue!");document.getElementById('reg_firstname').focus();return;}
	if(document.getElementById('reg_lastname').value < 1){alert("You need a last name to continue!");document.getElementById('reg_lastname').focus();return;}
	if(document.getElementById('reg_company').value < 1){alert("You need a company name to continue!");document.getElementById('reg_company').focus();return;}
	if(document.getElementById('reg_email').value < 1){alert("You need a email address to continue!");document.getElementById('reg_email').focus();return;}
	if(document.getElementById('reg_telephone').value < 1){alert("You need a telephone number to continue!");document.getElementById('reg_telephone').focus();return;}
	if(document.getElementById('reg_username').value < 1){alert("You need a username to continue!");document.getElementById('reg_username').focus();return;}
	if(document.getElementById('reg_password').value < 1){alert("You need a password to continue!");document.getElementById('reg_password').focus();return;}		

	var d					=	new Array(8);
	d[0]					=	'id=insert&';
	d[1]					=	'firstname=' 	+ document.getElementById('reg_firstname').value 	+ '&';
	d[2]					=	'lastname=' 	+ document.getElementById('reg_lastname').value 	+ '&';
	d[3]					=	'company=' 		+ document.getElementById('reg_company').value 		+ '&';
	d[4]					=	'email=' 		+ document.getElementById('reg_email').value 		+ '&';
	d[5]					=	'telephone=' 	+ document.getElementById('reg_telephone').value 	+ '&';
	d[6]					=	'username=' 	+ document.getElementById('reg_username').value 	+ '&';
	d[7]					=	'password=' 	+ document.getElementById('reg_password').value;

	document.getElementById('main').innerHTML = "posting registration...";
	
	ajax_cb('../../../outside/registration.asp', clean(d.join("")), 'main');
}
function directory()
{
	document.getElementById('main').innerHTML =  		'<div><img alt="directory" src="../../../outside/direct.gif"/></div>';
}
function sfb()
{
	document.getElementById('main').innerHTML =  		'left-click: new window | right-click: download<hr><br><br>' 			+ 
														'<a target=\'blank\' href="../../../outside/docs/short_form_bol.pdf">short form bol</a>';
}
function xml()
{
	document.report.action = '../../outside/reports/xml.aspx';
	document.report.submit();
}
function prod()
{
	document.report.action = '../../outside/reports/prod.asp';
	document.report.submit();
}
function prod_cont()
{
	document.report.action = '../../outside/reports/prodcont.asp';
	document.report.submit();
}
function prod_cont_lot()
{
	document.report.action = '../../outside/reports/prodcontlot.asp';
	document.report.submit();
}
function create_ticket()
{
	document.report.action = '../../../outside/tickets/create_ticket.aspx';
	document.report.submit();
}
function driver_start()
	{
		$('start_times').innerHTML = "loading...";
		ajax_cb("outside/dispatch/start_times.aspx", "0=" + $("tab_2").value + "&1=" + Date(), "start_times");
	}
function sched_39th(x)
	{
		switch(x)
			{
				case 1:
					var a	=	$('tab_2_39').value;
					$('main').innerHTML = "loading...";
					ajax_cb("outside/dispatch/39th_sched.aspx", "0=" + return_date(a,0) + "&1=" + Date(), "main");
					break;
				case 2:
					var a	=	$('tab_2_39').value;
					$('main').innerHTML = "loading...";
					ajax_cb("outside/dispatch/39th_sched.aspx", "0=" + return_date(a,1) + "&1=" + Date(), "main");
					break;
				default:
					$('main').innerHTML = "loading...";
					var d	=	new Date();
					var e	=	(d.getMonth()+1) + "/" + d.getDate() + "/" + d.getFullYear();
					ajax_cb("outside/dispatch/39th_sched.aspx", "0=" + e + "&1=" + Date(), "main");				
					break;
			}
	}
function change_date(x)
	{
		if(isdate($("tab_2").value))
			{
				if(x)
					{
						$("tab_2").value = return_date($("tab_2").value, 1);
					}
				else
					{
						$("tab_2").value = return_date($("tab_2").value, 0);
					}
				driver_start();
			}
		else
			{
				$("tab_2").select();
			}		
	}
function return_date(x, y)
	{
		var c	=	Date.parse(x);
		var d	=	new Date(c);
		var ret;
		if(y == 1)
			{
				d.setDate(d.getDate()+1);
			}
		else if(y == 0)
			{
				d.setDate(d.getDate()-1);
			}
		else
			{
				d.setDate(d.getDate());
			}
		ret	=	(d.getMonth()+1) + "/" + d.getDate() + "/" + d.getFullYear();
		return ret;			
	}
//ajax getElementById proto
function $()
	{
		var elements = new Array();
		for (var i = 0; i < arguments.length; i++) 
			{
				var element = arguments[i];
				if (typeof element == 'string') 
					{
						if (document.getElementById)
							{
								element = document.getElementById(element);
							}
						else if (document.all)
							{
								element = document.all[element];
							}
					}
				if (arguments.length == 1) 
					{
						return element;
					}
				elements.push(element);
			}
		return elements;
	} 
function view_tickets()
	{
		document.getElementById('main').innerHTML = "loading data...";	
		ajax_cb('../../../outside/tickets/view_tickets.aspx', "0=" + document.getElementById('custid').value + "&1=" + document.getElementById('company').value, 'main');			
	}
//clean data of single quotes
function clean(x)
{
	return	x.replace(/'/g, '');
}
//ajax post call	
function ajax_cb(url, params, x)
	{
  		var xmlhttp = new GetXmlHttp();
  		if (xmlhttp)
  			{
    			xmlhttp.onreadystatechange = 
            		function ()
            			{
              				if (xmlhttp && xmlhttp.readyState==4)
              					{
                					if (xmlhttp.status==200)
                						{
                  							//alert(xmlhttp.responseText);
											if(x == null)
												{
													eval(xmlhttp.responseText);
												}
											else
												{
													document.getElementById(x).innerHTML = xmlhttp.responseText;
												}
											
                						} 
									else
										{
                  							document.write(xmlhttp.responseText);
                						}
              					}
            			}
    		xmlhttp.open("POST",url,true);
			xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			xmlhttp.send(params);
  		}
	}
function GetXmlHttp() 
	{
  		var xmlhttp = false;
  		if (window.XMLHttpRequest)
  			{
    			xmlhttp = new XMLHttpRequest();
  			}
  		else if (window.ActiveXObject)								
  			{
    			try
    				{
      					xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    				} 
				catch (e) 
					{
      					try
      						{
        						xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      						} 
						catch (E) 
							{
        						xmlhttp=false;
      						}
    				}
  			}
  		return xmlhttp;
	}
//isdate
var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++)
	{   
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    return true;
}
function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
		{   
        	var c = s.charAt(i);
        	if (bag.indexOf(c) == -1) returnString += c;
    	}
    return returnString;
}
function daysInFebruary (year)
	{
    	return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
	}
function DaysArray(n) 
	{
		for (var i = 1; i <= n; i++) 
			{
				this[i] = 31
				if (i==4 || i==6 || i==9 || i==11) 
					{this[i] = 30}
				if (i==2) 
					{this[i] = 29}
   			} 
   	return this
	}
function isdate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strMonth=dtStr.substring(0,pos1)
	var strDay=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		alert("The date format should be : mm/dd/yyyy")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Please enter a valid month")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Please enter a valid day")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){

		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		alert("Please enter a valid date")
		return false
	}
return true
}