// JavaScript Document

function getByTagName(strTagName,objParent) {
		if (objParent == null) {objParent = document;}
		var objElements= objParent.getElementsByTagName(strTagName)
		if (objElements.length == 0) {
			objElements= objParent.getElementsByTagName(strTagName.split(":")[1])
		}
		return (objElements)
	}
	
function getByID(strID) {
		return document.getElementById(strID)
	}
function getElementWidth(objElement){
		var blnIE = (window.innerWidth > 0) ? false : true
		if (objElement == "window") {
			objElement = (blnIE) ? document.body : window
		}
		if (objElement != null) {
			return (blnIE) ? objElement.offsetWidth : objElement.clientWidth
		}else{
			return -1
		}
	}
	function getElementHeight(objElement){
		var intReturn = 0
		if (objElement != null) {
			var blnIE = (window.innerHeight > 0) ? false : true
			if (objElement == "window") {
				intReturn = (blnIE) ? document.body.offsetHeight : window.innerHeight
				intReturn = (blnIE) ? document.documentElement.clientHeight : window.innerHeight
			}else{
				intReturn = (blnIE) ? objElement.offsetHeight : objElement.clientHeight
			}
			return intReturn
		}else{
			return -1
		}
	}
function hexElement() {
		this.ID = null
		this.Type = null


		this.create = function create(strID,strType) {
			this[strID] = (function (vars) {return function () {return document.getElementById(vars)}})(strID)
			var objTemp = document.createElement(strType)
			objTemp.id = strID
			return objTemp;
			objTemp = null;
		}
		this.getElement = function getElement() {
			return document.getElementById(this.ID)
		}

	}
function getAttr(objElement,strAttribute) {
		var strReturn = null
		if (objElement != null) {
			if (objElement.attributes.getNamedItem(strAttribute) != null) {
				strReturn = objElement.attributes.getNamedItem(strAttribute).nodeValue
			}
		}
		return strReturn 
	}
	
function isObject() {
		if (arguments[0] == null) {return false;}
		if (typeof arguments[0] == 'object') {
			return true;
		}
		return false;
	}
	function isString() {
		if (arguments[0] == null) {return false;}
		if (typeof arguments[0] == 'string') return true;
		if (typeof arguments[0] == 'object') {
			var criterion = arguments[0].constructor.toString().match(/string/i); 
			return (criterion != null);  
		}
		
		return false;
		
		/*-| Credits |-------------------------------------------------------------------\*
		
		Author: Kas Thomas
		Date:	01 February 2001
		original script found @: http://www.planetpdf.com/developer/article.asp?ContentID=testing_for_object_types_in_ja
		
		changes Made:
			added line "if (arguments[0] == null) {return false;}"
			
		^^^| Credits |^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/	
	}
	function isArray() {
		if (arguments[0] == null) {return false;}
		if (typeof arguments[0] == 'object') {  
			var criterion = arguments[0].constructor.toString().match(/array/i); 
 			return (criterion != null);  
		}
		return false;
		
		/*-| Credits |-------------------------------------------------------------------\*
		
		see function "_isString"
			
		^^^| Credits |^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/	
	}
	function isNumric() {
		if (arguments[0] == null) {return false;}
		if (typeof arguments[0] == 'number') return true;
		if (isString(arguments[0]) && (!isNaN(arguments[0]))) return true;
		return false;
	}
	
	function cNum() {
		var objNullValue = (arguments[2] != null) ? ((arguments[2] == true) ? arguments[0]  : arguments[2] )  : 0
		if (arguments[0] == null) {return objNullValue;}
		if (isNumric(arguments[0]) || (arguments[1] != null && (arguments[1]==true))) {
			return (!isNaN(parseInt(arguments[0]))) ? parseInt(arguments[0]) : objNullValue
		}
		return objNullValue
	}
	
	
	
	function arrayInsert( i, v ) {
	 if( i>=0 ) {
		 
	  var a = this.slice(), b = a.splice( i );
	  a[i] = v;
	  return a.concat( b );
	 }
	};
	
function cleanUpTags(objElement) {
		if (objElement != null && (!isObject(objElement))) {
			objElement = hex.getByID(objElement)
		}
		var objTags = (objElement != null) ? objElement.getElementsByTagName("*") : document.getElementsByTagName("*")
		if (objTags != null) {
		for (var i=0;i<objTags.length;i++){
			
			objTags[i].onload 		= null
			objTags[i].onclick 		= null
			objTags[i].onmouseover 	= null
			objTags[i].onmouseout 	= null
			objTags[i].onmousewheel	= null
		}
		}
	}