


function delId(eId)
{
 document.getElementById(eId).parentNode.removeChild.getElementById(eId);
}




function eMe(e)
{
 if (!e) e = window.event;
 if (e.target) e = e.target;
 else if (e.srcElement) e = e.srcElement;
 return(e);
}




function formProc(who)
{
 var f = document.getElementById(who);
 var data = '';
 for (var i = 0; i < f.length; i++)
 {
  var ele = f.elements[i];
  if (ele.type == 'checkbox') data += ele.name + "=" + ele.checked;
  else if (ele.type == 'radio')
  {
   if (ele.checked) data += ele.name + "=" + encodeURIComponent(ele.value);
  }
  else data += ele.name + "=" + encodeURIComponent(ele.value);
  if (i + 1 < f.length) data += "&";
 }
 return(data);
}




function genEl(type, targ, attributes, name)
{
 var ele = null;
 
 if (name)
 {
  try
  {
   ele = document.createElement('<' + type + ' name="' + name + '" />');
  }
  catch (ex)
  {
  
  }
  if (! ele || ele.nodeName != type.toUpperCase())
  {
   ele = document.createElement(type);
   ele.name = name;
  }
 }
 else ele = document.createElement(type);
 
 if (type == 'button')
 {
  try
  {
   ele.type = 'button';
  }
  catch (ex)
  {
  
  }
 }
 
 if (attributes)
 {
  var tribs = attributes.split(',');
  
  for (var x = 0; x < tribs.length; x++)
  {
   var aTrib = tribs[x].split('=');
   eval('ele.' + aTrib[0] + '="' + aTrib[1] + '"');
  }
 }
 
 if (targ) targ.appendChild(ele);
 
 return ele;
}




function genTxt(obj,prop)
{
 txt = obj[prop];
 obj[prop] = document.createTextNode(txt);
 return obj[prop];
}




function getMouseOffset (targ, e)
{
	e = e || window.event;

	var docPos = getPosition(targ);
	var dpPos = getPosition(targ.parentNode);
	var mousePos = mouseCoords(e);
	return {x:mousePos.x - (docPos.x -dpPos.x), y:mousePos.y - (docPos.y - dpPos.y)};
}




function getPosition(targ)
{
	var left = 0;
	var top  = 0;
	
	while (targ.offsetParent)
	{
	 left += targ.offsetLeft;
	 top += targ.offsetTop;
	 targ = targ.offsetParent;
	}

	left += targ.offsetLeft;
	top  += targ.offsetTop;

	return {x:left, y:top};
}




function GetXmlHttpObject()
{
 var xmlHttp=null;
 try
 {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
 }
 catch (e)
 {
  // Internet Explorer
  try
  {
   xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
  catch (e)
  {
   xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
 return xmlHttp;
}




function isEmail(email)
{     
 var emailRegEx = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
 
 if (email.search(emailRegEx) == -1) return false;
 else return true;
}




function include(filename)
{
	var head = document.getElementsByTagName('head')[0];
	
	script = document.createElement('script');
	script.src = filename;
	script.type = 'text/javascript';
	
 head.appendChild(script);
 
}




function mouseCoords(e)
{
	if (e.clientX || e.clientY)
	{
		return {x:e.clientX, y:e.clientY};
	}

}




function mouseMove(e)
{
	e = e || window.event;
	var mousePos = mouseCoords(e);
	
	if(undefined !== dragObject && dragObject)
	{
	 var cNames = dragObject.className.split(' ');
  for (var i = 0; i < cNames.length; i++)
  {
   if (cNames[i] == 'noDrag') return false;
  }
		dragObject.style.top      = mousePos.y - mouseOffset.y + 'px';
		dragObject.style.left     = mousePos.x - mouseOffset.x + 'px';

		return false;
	}
}




function viewPort() {
var h = window.innerHeight || document.documentElement.clientHeight || document.getElementsByTagName('body')[0].clientHeight;
var w = window.innerWidth || document.documentElement.clientWidth || document.getElementsByTagName('body')[0].clientWidth;

return { width : w , height : h }
}




document.onmousemove = mouseMove;


