 
//
// Downloads the given image for faster rendering later
//
function PreloadImage(imageAddress)
{
document.writeln("<img src='" + imageAddress + "' style='display:none;'>");
/* var image = document.createElement("img");
image.src = imageAddress; */
}
// Returns true if string1 starts with string2 and false otherwise
function StartsWith(string1, string2)
{
return string1.indexOf(string2) == 0;
}
function IsUsingIE()
{
return (navigator.appName == "Microsoft Internet Explorer");
}

function setCursor( val,type ) {
//alert(val.name)
//  var mb = document.getElementById(val);
  if ( type == 0 )
    val.style.cursor = "default";
  if ( type == 1 )
    val.style.cursor = "pointer";
  if ( type == 2 )
    val.style.cursor = "wait";
}
// BROWSER SPECIFIC FUNCTIONS
////////////////////////////////
 
// IE Functions
if(IsUsingIE())
{
function AddEventListener_IE(DOMObject, eventName,
listenerFunction)
{
eval("DOMObject.on" + eventName + " = listenerFunction;");
}
function DisableSelect_IE(DOMObject)
{
DOMObject.onselectstart = function() { return false; };
}
function GetPageX_IE(evnt)
{
return window.event.clientX;
}
function GetPageY_IE(evnt)
{
return window.event.clientY;
}
function AppendOptionToSelect_IE(selectBox, newOption)
{
selectBox.add(newOption);
}
function SetOpacity_IE(DOMObject, opacityPercent)
{
DOMObject.style.filter = "alpha(opacity=" +
opacityPercent + ")";
}
function GetEvent_IE(evt)
{
window.event.target = window.event.srcElement;
return window.event;
}
function GetClickX_IE(evt)
{
return GetPageX(evt) + document.body.scrollLeft;
}
function GetClickY_IE(evt)
{
return GetPageY(evt) + document.body.scrollTop;
}
 
AddEventListener = AddEventListener_IE;
DisableSelect = DisableSelect_IE;
GetPageX = GetPageX_IE;
GetPageY = GetPageY_IE;
AppendOptionToSelect = AppendOptionToSelect_IE;
SetOpacity = SetOpacity_IE;
GetEvent = GetEvent_IE;
GetClickX = GetClickX_IE;
GetClickY = GetClickY_IE;
}
// Non-IE Functions 
else
{
function AddEventListener_FF(DOMObject, eventName,
listenerFunction)
{
DOMObject.addEventListener(eventName, listenerFunction,
false);
}
function DisableSelect_FF(DOMObject)
{
DOMObject.style.MozUserSelect = "none";
}
function GetPageX_FF(evnt)
{
return evnt.pageX;
}
function GetPageY_FF(evnt)
{
return evnt.pageY;
}
function GetClickX_FF(evt)
{
return GetPageX(evt);
}
function GetClickY_FF(evt)
{
return GetPageY(evt);
}
function AppendOptionToSelect_FF(selectBox, newOption)
{
selectBox.add(newOption, null);
}
function SetOpacity_FF(DOMObject, opacityPercent)
{
DOMObject.style.mozOpacity = (opacityPercent/100);
DOMObject.style.opacity = (opacityPercent/100);
}
function GetEvent_FF(evt)
{
evt.srcElement = evt.target;
return evt;
}
 
AddEventListener = AddEventListener_FF;
DisableSelect = DisableSelect_FF;
GetPageX = GetPageX_FF;
GetPageY = GetPageY_FF;
AppendOptionToSelect = AppendOptionToSelect_FF;
SetOpacity = SetOpacity_FF;
GetEvent = GetEvent_FF;
GetClickX = GetClickX_FF;
GetClickY = GetClickY_FF;
}
 
function AppendToSelect(selectBox, label, value)
{
var option = document.createElement("option");
option.text = label;
option.value = value;
AppendOptionToSelect(selectBox, option);
}
 
function FormatCurrency(currencyValue)
{
currencyValue = parseFloat(currencyValue);
 
var wholePart = Math.floor(Math.abs(currencyValue));
var decPart = Math.abs(currencyValue) - wholePart;
// Round the decimal part to two places
decPart = Math.floor(decPart * 100 + 0.5);
 
if(isNaN(wholePart))
wholePart = 0;
if(isNaN(decPart))
decPart = 0;
 
var retVal = "$" + Math.abs(wholePart) + "." +
GetNDigitString(Math.abs(decPart), 2);
 
if(currencyValue < 0)
retVal = "(" + retVal + ")";
 
return retVal;
}
 
var dbgWindow = null;
var numDbgMsgs = 0;
function DEBUG(msg)
{
if(dbgWindow == null)
{
dbgWindow = document.createElement("div");
dbgWindow.style.position = "absolute";
dbgWindow.style.zIndex = "10000";
dbgWindow.style.overflow = "scroll";
dbgWindow.style.width = "400";
dbgWindow.style.height = "100";
dbgWindow.style.left = "600";
dbgWindow.style.top = "40";
dbgWindow.style.backgroundColor = "#000000";
dbgWindow.style.color = "#FFFFFF";
 
document.body.appendChild(dbgWindow);
}
dbgWindow.innerHTML = (++numDbgMsgs) + " : " + msg + "<br>" +
dbgWindow.innerHTML;
}
function URLEncode(clearString) {
            var output = '';
            var x = 0;
            clearString = clearString.toString();
            var regex = /(^[a-zA-Z0-9_.]*)/;
            while (x < clearString.length) {
            var match = regex.exec(clearString.substr(x));
            if (match != null && match.length > 1 && match[1] != '') {
            output += match[1];
                  x += match[1].length;
      } else {
                  if (clearString[x] == ' ')
            output += '+';
                  else {
                  var charCode = clearString.charCodeAt(x);
                  var hexVal = charCode.toString(16);
                  output += '%' + ( hexVal.length < 2 ? '0' : '' ) + hexVal.toUpperCase();
                  }
            x++;
      }
  }
 return output;
}

