//# START script_XMLHTTP.js #//
// initialize XMLHttpRequest object
var xmlobj=null;
var data=new Array();
// send http request
function sendRequest(doc,handler){
    // check for existing requests
    if(xmlobj!=null&&xmlobj.readyState!=0&&xmlobj.readyState!=4){
        xmlobj.abort();
    }
    try{
        // instantiate object for Mozilla, Nestcape, etc.
        xmlobj=new XMLHttpRequest();
    }
    catch(e){
        try{
            // instantiate object for Internet Explorer
            xmlobj=new ActiveXObject('Microsoft.XMLHTTP');
        }
        catch(e){
            // Ajax is not supported by the browser
            xmlobj=null;
            return false;
        }
    }
    // assign state handler
	xmlobj.onreadystatechange=eval(handler);
	// open socket connection
    xmlobj.open('GET',doc,true);
	// send GET request
    xmlobj.send(null);
}
//# END script_XMLHTTP.js #//

//# START script_ftpup.js #//
FTP_UP = {
 	frame : function(c) {
 		var n = 'f' + Math.floor(Math.random() * 99999);
		var d = document.createElement('DIV');
		d.innerHTML = '<iframe style="display:none" src="about:blank" id="'+n+'" name="'+n+'" onload="FTP_UP.loaded(\''+n+'\')"></iframe>';
		document.body.appendChild(d);
		var i = document.getElementById(n);
		if (c && typeof(c.onComplete) == 'function') {
			i.onComplete = c.onComplete;
		}
		return n;
	},
	form : function(f, name) {
		f.setAttribute('target', name);
	},
	submit : function(f, c) {
		FTP_UP.form(f, FTP_UP.frame(c));
		if (c && typeof(c.onStart) == 'function') {
			return c.onStart();
		} else {
			return true;
		}
	},
	loaded : function(id) {
		var i = document.getElementById(id);
		if (i.contentDocument) {
			var d = i.contentDocument;
		} else if (i.contentWindow) {
			var d = i.contentWindow.document;
		} else {
			var d = window.frames[id].document;
		}
		if (d.location.href == "about:blank") {
			return;
		}
 
		if (typeof(i.onComplete) == 'function') {
			i.onComplete(d.body.innerHTML);
		}
	}
}
//# END script_ftpup.js #//
//# START script_forms.js #//
  function validateForm(formName,checkFields) {
	  for (var i=0;i<checkFields.length;i++) {
	    if (document[formName].elements[checkFields[i]].value == '') {
			  alert("A required form field is missing.");
				return false;
			}
		}
	}
	function clearForm(which) {
	  if(which==undefined) {
      for (i = 0; i < document.forms.length; i++) {
        //document[formName].reset();
			  document.forms[i].reset();
      }
		}
		else {
		  document.forms[which].reset();
		}
	}
	function abcMe(formName,whichField) {
    var allowedChars = "abcdefghijklmnopqrstuvwxyz0123456789-";
	  var rebuiltStringCount = 0;
	  allowedChars = allowedChars.split('');
		var myVal=document[formName].elements[whichField].value.toLowerCase();
		myVal = myVal.split('');
	  for(var i=0; i<myVal.length; i++) {
		  for(var j=0;j<=allowedChars.length;j++) {
			  if(myVal[i]==allowedChars[j]) {
				  j=allowedChars.length;
					rebuiltStringCount++;
				}
			}
	  }
	  if(rebuiltStringCount!=myVal.length) {
	    alert("Illegal Value: "+myVal+"\nOnly letters (a-z), numbers (0-9) and dashes are allowed");
		  document[formName].elements[whichField].value="";
		  return false;
	  }
  } 
	function checkConfirm(myMsg) {
	 var c=confirm(myMsg);
	 if(c) {
	 
	 }
	 else {
	  return false;
	 }
	}
	function disableKey(e,keys) {
		 var keyPressed;
     if(window.event) {
          keyPressed = window.event.keyCode;     //IE
		 }
     else {
          keyPressed = e.which;     //firefox
		 }
		 //alert(keyPressed);
		 for(var i=0; i < keys.length; i++) {
       if(keyPressed == keys[i]) {
          return false;
		   }
       else {
          return true;
		   }
		}
  }
//# END script_forms.js #//

//# START script_functions.js #//
function loc_goTo(where) {
	document.location=where;
}
function setDivAlert(area,msg) {
	if(msg.length > 0) {
	    document.getElementById(area).innerHTML=msg;
			document.getElementById(area).style.display="block;";
		}
		else {
		  document.getElementById(area).innerHTML="";
			document.getElementById(area).style.display="none;";
		}
	}
	
	function callMe() {
	  var intrvl = setInterval ("checkTimeout()",1000);
	}
	var countDown=10000;
	function checkTimeout() {
	  countDown-=1000;
		document.getElementById("area_alerts").innerHTML=countDown;
		document.getElementById("area_alerts").style.display="block;";
		if(countDown <= 0) {
		  loc_goTo('?vLogout=1');
		}
	}
	//var tout = setTimeout ( "setDivAlert('area_alerts','Your session is about to time out. Save all unfinished data.')", 15000 );
	//var tout2 = setTimeout ( "callMe()", 20000 );
	function FormatAsMoney(myNum) {
    myNum -= 0;
    myNum = (Math.round(myNum*100))/100;
    return (myNum == Math.floor(myNum)) ? myNum + '.00' : ( (myNum*10 == Math.floor(myNum*10)) ? myNum + '0' : myNum);
  }
function IsNumeric(sText) {
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) { 
     Char = sText.charAt(i); 
     if (ValidChars.indexOf(Char) == -1) {
       IsNumber = false;
     }
   }
   return IsNumber;
  }
	
	//Capture Mouse Movement
	var IE = document.all?true:false;
	if (!IE) document.captureEvents(Event.MOUSEMOVE);
	document.onmousemove = getMouseXY;
	var mouseX = 0;
	var mouseY = 0;
	function getMouseXY(e) {
		if (IE) {
			mouseX = event.clientX + document.body.scrollLeft;
			mouseY = event.clientY + document.body.scrollTop;
		}
		else {  // grab the x-y pos.s if browser is NS
			mouseX = e.pageX;
			mouseY = e.pageY;
		}
		if (mouseX < 0){
			mouseX = 0;
		}
		if (mouseY < 0){
			mouseY = 0;
		}
		return true;
	}		
		//Globally accessed mouse-over box
		function displayInfoBox(which,type) {
			var o=document.getElementById('info-box'); 
			var r=o.style;   
			if(which.length > 0) {
				if(type=="msg") {
					o.innerHTML=which;
					r.position = "absolute";
					r.left = (mouseX + 1) + 'px';
	  			r.top = (mouseY + 15) + 'px';
	  			r.display = "block";
				}
				else if (type=="help") {
					o.innerHTML=which;
					r.position = "absolute";
					r.left = (mouseX + 1) + 'px';
	  			r.top = (mouseY + 15) + 'px';
	  			r.display = "block";
				}
			}
			else {
	  		o.innerHTML="";
				r.display = "none";
			}
		}
function in_array(needle, haystack, strict) {  
   for(var i = 0; i < haystack.length; i++) {  
    if(strict) {  
      if(haystack[i] === needle) {  
        return true;  
      }  
    } else {  
      if(haystack[i] == needle) {  
         return true;  
      }  
    }  
   }
   return false;  
}
  
function mousePosY(evt) {
	if (evt.pageY) {
		return evt.pageY;
	}
	else if (evt.clientY) {
		return evt.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop :document.body.scrollTop);
	}
	else {
		return null;
	}
}

function encode(myValue) {
	return encodeURIComponent(myValue);
}
function decode(myValue) {
	return decodeURIComponent(myValue.replace(/\+/g," "));
}

var countput=0;
function closeOutput(which) {
	$('#output'+which).stop().animate({
	    opacity: 0.25
	},
	100,
	function() {
	    $('#output'+which).remove();
	    if($('.output').size()==0) {
	        $("#output").css('display','none');
	    }
	});
}
function addOutput(msg) {
    $("#output").css('display','block');
	countput++;
	$("#output").append('<div id="output'+countput+'" class="output" style="padding: 0px;" onClick="return closeOutput('+countput+');"><span class="left">!</span><span class="right">'+msg+'</span></div>');
	$('#output'+countput).stop().animate({
	    opacity: 1
	},
	800,
	function() {
	    window.setTimeout('closeOutput('+countput+')', 7000); 
	});
}

