// PHEAA Global JavaScript Document

// Method to fire Urchin page load;
var fnFireUrchin = function () {
  // Instantiate variables;
  var oTimeout, 
  sLocation = window.location.pathname, 
  iCountdown = 500,
  
  // Method to loop until PHEAA.Urchin can be called;
  fnCallUrchin = (function () {
    // Clear timeout, if present;
    if (oTimeout) {
      clearTimeout(oTimeout);
    }
    
    // Check if PHEAA.Urchin is defined;
    if (typeof PHEAA !== "undefined" && 
        typeof PHEAA.Urchin !== "undefined") {
      // Call PHEAA.Urchin
      PHEAA.Urchin.callUrchin(sLocation, "Page_Load");  
      // Remove method from DOM;
      fnFireUrchin = null;
      
    // Else try again in a 10th of a second (for 500 tries total);
    } else if (iCountdown > 0) {
      iCountdown -= 1;
      oTimeout = setTimeout(fnCallUrchin, 100);
    }
  }());  
};

// Bind fnFireUrchin to onload event;
if (window.addEventListener) {
  window.addEventListener("load", fnFireUrchin, false);	
} else if (window.attachEvent) {
  window.attachEvent("onload", fnFireUrchin);
}

//Live Online Contact Script

function MM_openBrWindow(theURL,winName,features) { 
  window.open(theURL,winName,features);
}

function MM_swapImgRestore() { 
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { 
  var p,i,x;  if(!d) d=document; 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=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { 
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

//Calculators Script

function openCalcWindow(theURL,winName,features) { 
  window.open(theURL,winName,features);
}

// General Function to add load events to a page load queue

function addLoadEvent(func) {
  var oldOnload = window.onload;
  if (typeof window.onload != "function") {
    window.onload = func;
  } else {
    window.onload = function() {
      oldOnload();
      func();
    }
  }
}

// General Function to collect an array of DOM elements based on their class name

function getElementsByClassName(searchClass,node,tag) { 
  var classElements = new Array(); 
  if (node == null ) 
    node = document; 
  if (tag == null ) 
    tag = '*'; 
  var els = node.getElementsByTagName(tag); 
  var elsLen = els.length; 
  var pattern = new RegExp('\\b' + searchClass + '\\b'); 
  for (i = 0, j = 0; i < elsLen; i++) { 
    if (pattern.test(els[i].className) ) { 
      classElements[j] = els[i]; 
      j++; 
    } 
  } 
  return classElements; 
}