	function trim (str) {
		str = str.replace(/^\s+/, '');
		for (var i = str.length - 1; i >= 0; i--) {
			if (/\S/.test(str.charAt(i))) {
				str = str.substring(0, i + 1);
				break;
			}
		}
		return str;
	}

	function isUrl(str) {
		var regex = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
	    return regex.test(str);
	}

	function isEmail(str) {
		var regex = /^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i;
		return regex.test(str);
	}

	function createJSCheckField(formid, fieldid, value){
//		var inp = document.getElementById(fieldid);
		var inp = document.createElement('input');
		inp.setAttribute('type', 'hidden');
		inp.setAttribute('id', fieldid);
		inp.setAttribute('name', fieldid);
		inp.setAttribute('value', value);
	
		var e = document.getElementById(formid);
		e.appendChild(inp);
	}

	function findPos(obj) {
		var curleft = 0;
		var curtop = 0;
		if (obj.offsetParent) {
			curleft = obj.offsetLeft;
			curtop = obj.offsetTop;
			obj = obj.offsetParent;
			while (obj) {
				curleft += obj.offsetLeft;
				curtop += obj.offsetTop;
				obj = obj.offsetParent;
			}
		}
		return [curleft,curtop];
	}

function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }


	function showDiv(show, elemid, clickedObj, offsetx, offsety) {
		var elem = document.getElementById(elemid);
		var pos = findPos(clickedObj);
		if ((elem) && (elem.style)) {
		if (show) {
			elem.style.left = (pos[0] + offsetx) + 'px';
			elem.style.top = (pos[1] + offsety) + 'px';
			elem.style.overflow = 'auto';
			elem.style.visibility = 'visible';
		}  else {
			elem.style.overflow = 'hidden';
			elem.style.visibility = 'hidden';
		}
		}
	}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}
