//-----------------------
//-- GENERIC SCRIPT -----
//-----------------------

//Add load event
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
	window.onload = func;
  } else {
	window.onload = function() {
	  oldonload();
	  func();
	}
  }
}
//Insert after
function insertAfter(newElement,targetElement) {
  var parent = targetElement.parentNode;
  if (parent.lastChild == targetElement) {
    parent.appendChild(newElement);
  } else {
    parent.insertBefore(newElement,targetElement.nextSibling);
  }
}
//Degrade by javascript function check
function degradeByScript(){
	if (document.getElementsByTagName) return false;
  if (document.getElementById) return false;
  return true;
}
//Degrade by element ids
function degradeByIDs(eleIDs) {
	var degrade = false;
	for (var i=0; i<eleIDs.length; i++) {
		if( !document.getElementById(eleIDs[i]) ){
			degrade = true;
		}
	}
	return degrade;
}
//Degrade by tag names
function degradeByTagNames(tagNams) {
	var degrade = false;
	for (var i=0; i<tagNams.length; i++) {
		if( !document.getElementById(tagNams[i]) ){
			degrade = true;
		}
	}
	return degrade;
}
// is <a> ?
function isAnchorTag(ele){
	if(ele.nodeName == "a" || ele.nodeName == "A"){
		return true;
	}else{
		return false;
	}
}
// is <ul> ?
function isULTag(ele){
	if(ele.nodeName == "ul" || ele.nodeName == "UL"){
		return true;
	}else{
		return false;
	}
}

// is <li> ?
function isLITag(ele){
	if(ele.nodeName == "li" || ele.nodeName == "LI"){
		return true;
	}else{
		return false;
	}
}

// is <img> ?
function isIMGTag(ele){
	if(ele.nodeName == "img" || ele.nodeName == "IMG"){
		return true;
	}else{
		return false;
	}
}

// Ajax Call
function SendAjax(url, callbackFunction, postdata) {
   if (window.XMLHttpRequest) {
      var request = new XMLHttpRequest();
   } else {
      var request = new ActiveXObject("Microsoft.XMLHTTP");
   }
   request.open("POST", url, true);
   request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); 
 
   request.onreadystatechange = function() {
      if (request.readyState == 4 && request.status == 200) {
         if (request.responseText) {
            ReceiveAjax(request.responseText, callbackFunction);
         }
      }
   }
   if(postdata == ""){
      request.send(null);
   }else{
      request.send(postdata);
   }
}

// Ajax Response Handler
function ReceiveAjax(response, callbackFunction) {
  eval(callbackFunction + '(response)');
}
