function MM_findObj(n, d) { //v4.01
  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 showLoading(id) {
	var b = MM_findObj(id);
	b.innerHTML = "<p style='background-color:#ffffff; padding: 15px; font-family: Arial; font-size: 12px'><img src='images/vip/loading.gif' align='absmiddle'>&nbsp;&nbsp;Loading, please wait....</p>";
}
function setContent(id,str) {
	var b = MM_findObj(id);
	b.innerHTML = str;
}

// Load a page into a div layer
function ajaxLoadPage(){
    var url = arguments[0];
    var id = arguments[1];
    var close = (typeof arguments[2] == 'undefined') ? 0 :arguments[2];
    var xpos = (typeof arguments[3] == 'undefined') ? 'center' : arguments[3];
    var ypos = (typeof arguments[4] == 'undefined') ? 'center' : arguments[4];

    var xmlobj;
    // 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 {
            xmlobj = new ActiveXObject('Microsoft.XMLHTTP'); // IE
        }
        catch(e) {
            // Ajax not supported
            xmlobj = null;
        }
    }
    // what to do with data from hit
    xmlobj.onreadystatechange = function () {
	   // if request is completed
	   if (xmlobj.readyState == 4 ) {
	        if(xmlobj.status == 200 ) {
			// do something with returned data
			var b = MM_findObj(id);
			b.innerHTML = xmlobj.responseText
			evalScripts(b.innerHTML);
			if (close == 1) {
				b.innerHTML = "<p align=center style='font-family: Arial; background-color: #ffffff;'><a href='javascript:;' onclick='removeDiv(\""+id+"\");hidePopUp(\"overlay\");'>X Close/Cancel</a></p>" + b.innerHTML;
			}
			if (xpos == 'center') {
				centerDivH(b);
			} else {
				b.style.left = parseInt(xpos) + "px";
			}
			if (ypos == 'center') {
				centerDivV(b);
			} else {
				b.style.top = parseInt(ypos) + "px";
			}
         	} else if (xmlobj.status != 0) {
			alert(url + ' Failed:'+ xmlobj.statusText);
	        }
	   }

    }

    //make the hit
    xmlobj.open('GET',url,true);
    xmlobj.setRequestHeader('Content-Type','text/html'); //GET
    //receiverXMLHttpObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); //POST
    xmlobj.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT" ); //for IE caching
    xmlobj.send('null');
}


// example of creating a div layer
function createDiv() {
	var id = arguments[0];
	var xpos = (typeof arguments[1] == 'undefined') ? 'center' : arguments[1];
	var ypos = (typeof arguments[2] == 'undefined') ? 'center' : arguments[2];
	var hide = (typeof arguments[3] == 'undefined') ? 0 : arguments[3];
	var divTag = document.createElement("div");
	divTag.id = id;
	divTag.setAttribute("align","center");
	divTag.style.margin = "0px auto";
	divTag.style.padding = "5px";
	divTag.style.zIndex = "5000";
	divTag.style.position = "absolute";
	divTag.style.top = 0;
	divTag.style.left = 0;
	divTag.style.backgroundColor = "transparent";
	divTag.style.overflow = "visible";
	divTag.style.border = "0px";
	divTag.style.display = "none";
	divTag.className = "popup_layer"; //this can override styles above
	//divTag.innerHTML = "<p style='font-family: Arial'>Loading.  Please wait...</p>";
	divTag.innerHTML = "<p style='background-color:#ffffff; width: 200px; padding: 15px; font-family: Arial; font-size: 12px'><img src='images/vip/loading.gif' align='absmiddle'>&nbsp;&nbsp;Loading, please wait....</p>";
                //Make new window at 75% of screen width & height
                var winwidth = document.body.clientWidth * .75;
                var winheight = document.body.clientHeight * .75;
	if (xpos == 'center') {
		centerDivH(divTag);
	} else {
		divTag.style.left = parseInt(xpos) + "px";
	}
	if (ypos == 'center') {
		centerDivV(divTag);
	} else {
		divTag.style.top = parseInt(ypos) + "px";
	}
	if (hide == 0) {
		divTag.style.display = "inline";
	} else {
		divTag.style.display = "none";
	}
	document.body.appendChild(divTag);
} 

//create overlay div layer
function overlayDiv() {
	var divTag = document.createElement("div");
	divTag.id = "overlay";
	divTag.setAttribute("align","center");
	divTag.style.margin = "0px auto";
	divTag.style.padding = "5px";
	divTag.style.zIndex = "3000";
	divTag.style.position = "absolute";
	divTag.style.top = 0;
	divTag.style.left = 0;
	divTag.style.backgroundColor = "transparent";
	divTag.style.overflow = "auto";
	divTag.style.border = "0px";
	divTag.style.display = "none";
	divTag.style.width = "100%";
	divTag.style.height = "100%";
	divTag.style.backgroundColor = "#333333";
	divTag.opacity=".8";
	divTag.style.display = "inline";
	divTag.className = "overlay_layer"; //this can override styles above
	divTag.innerHTML = "";
	document.body.appendChild(divTag);
	divTag.style.filter = "alpha(opacity=80)";
	divTag.style.opacity=".8";
	divTag.style.MozOpacity=".8";
} 

// remove a div layer (or object)
function removeDiv(id)
{
	var elem = document.getElementById(id);
	var old = (elem.parentNode).removeChild(elem);
}

function centerDiv(div) {
	centerDivH(div);
	centerDivV(div);
}
function centerDivH(div) {
                //Make new window at 75% of screen width & height
                var winwidth = document.body.clientWidth * .75;
                var x = (document.body.clientWidth-div.offsetWidth)/2;
		div.style.left = x + "px";
}
function centerDivV(div) {
                //Make new window at 75% of screen width & height
                var winheight = document.body.clientHeight * .75;
                var y = (document.body.clientHeight-div.offsetHeight)/2;
		div.style.top = y + "px";
}

// run javascript returned by ajax
function evalScripts(scripts)
{	try
	{	if(scripts != '')	
		{	var script = "";
			scripts = scripts.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi, function(){ if (scripts !== null) script += arguments[1] + '\n'; return '';});
			if(script) (window.execScript) ? window.execScript(script) : window.setTimeout(script, 0);
		}
		return false;
	}
	catch(e)
	{	alert(e)
	}
}

//AJAX Form Post

   //see ajaxPostForm below
   function makeRequest(url, parameters, fname) {
      var fargs = (typeof arguments[3] == 'undefined') ? '' :arguments[3]; //arg string for return function
      var http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      //http_request.onreadystatechange = alertContents;
      http_request.onreadystatechange = function () {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            //alert(http_request.responseText);
            result = http_request.responseText;
            //document.getElementById('myspan').innerHTML = result;            
		fname.apply(null, [result,fargs]); //for return function, use arguments[0] (or result),  arguments[1] (can't use fargs though)
         } else if (http_request.status != 0) {
            alert('There was a problem with the request.');
         }
      }

      }
      http_request.open('POST', url, true);
      http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
      http_request.send(parameters);
      return false;
   }
   
   function ajaxPostForm(url,obj,fname) {
      var showload = (typeof arguments[3] == 'undefined') ? 0 :arguments[3]; //div layer to show loading, optional
      var poststr = "";
      for (i=0; i<obj.elements.length; i++) {
        if (obj.elements[i].type == "checkbox") {
           if (obj.elements[i].checked) {
              poststr += obj.elements[i].name + "=" + 
                   obj.elements[i].value + "&";
           } else {
              poststr += obj.elements[i].name + "=&";
           }
        } else if (obj.elements[i].type == "radio") {
           if (obj.elements[i].checked) {
              poststr += obj.elements[i].name + "=" + 
                   obj.elements[i].value + "&";
           }
        }  else if (obj.elements[i].type == "select") {
  	    for (j=0; j<obj.elements[i].length; j++) {
            	var sel = obj.elements[i][j];
            	poststr += sel.name + "=" + sel.options[sel.selectedIndex].value + "&";
  	    }
        }  else if (obj.elements[i].type == "select-multiple" ) {
	    var vals = '';
  	    for (j=0; j<obj.elements[i].length; j++) {
            	var sel = obj.elements[i][j];
		if (sel.selected) {
			if (vals != '') {
				vals = vals + "," + sel.value;
			} else {
				vals = vals + sel.value;
			}
		}
  	    }
	    if (vals != '') {
            	poststr += obj.elements[i].name + "=" + vals + "&";
	    }
	} else {
        //if (obj.elements[i].type == "text" || obj.elements[i].type == "hidden") {
           poststr += obj.elements[i].name + "=" + 
                   obj.elements[i].value + "&";
        }
      }
      if (showload != 0) { showLoading(showload); }


      makeRequest(url, poststr, fname);
      return false;
   }

function setClassHTML (className, val) {
  var all = document.all ? document.all :
    document.getElementsByTagName('*');
  for (var e = 0; e < all.length; e++)
    if (all[e].className == className)
      all[e].innerHTML = val;
}
function changeFlashImageByClass (className, val) {
  var all = document.all ? document.all :
    document.getElementsByTagName('*');
  for (var e = 0; e < all.length; e++) {
    if (all[e].className == className) {
      if (all[e].src) {
	all[e].src = "images/UserImage.swf?dropshadow=0&UserImage=" + val;
      }
      if (all[e].movie) {
	all[e].movie = "images/UserImage.swf?dropshadow=0&UserImage=" + val;
      }
    }
  }
}
