
function getHTTPRequest(){
    var objHTTP;
   if (window.XMLHttpRequest) {
        objHTTP = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) { 
        try { 
            objHTTP = new ActiveXObject("Msxml2.XMLHTTP"); 
        } 
        catch (e){ 
            try{ 
                objHTTP = new ActiveXObject("Microsoft.XMLHTTP"); 
            } 
            catch (e){} 
        } 
    } 
    return objHTTP;
}

// Created by: Stuart Colville | http://muffinresearch.co.uk/
function getElementsByClassName(strClass, strTag, objContElm) {
  strTag = strTag || "*";
  objContElm = objContElm || document;
  var objColl = objContElm.getElementsByTagName(strTag);
  if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
  var arr = new Array();
  var delim = strClass.indexOf('|') != -1  ? '|' : ' ';
  var arrClass = strClass.split(delim);
  for (var i = 0, j = objColl.length; i < j; i++) {
        var arrObjClass = objColl[i].className.split(' ');
        if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
        var c = 0;
        comparisonLoop:
        for (var k = 0, l = arrObjClass.length; k < l; k++) {
          for (var m = 0, n = arrClass.length; m < n; m++) {
                if (arrClass[m] == arrObjClass[k]) c++;
                if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
                  arr.push(objColl[i]);
                  break comparisonLoop;
                }
          }
        }
  }
  return arr;
}

// To cover IE 5.0's lack of the push method
Array.prototype.push = function(value) {
  this[this.length] = value;
}
