/************************************ NPTool **********************************************/
NPTool = {toString : new function(){return "NetPortal Javascript Tool";}}

//NPTool constants
NPTool.eventType =
{
	Click		: "click",
	DblClick	: "dblclick",
	MouseOut	: "mouseout",
	MouseOver	: "mouveover",
	MouseDown	: "mousedown",
	MouseUp		: "mouseup",
	MouseMove	: "mousemove",
	Scroll		: "scroll"
}

NPTool.coor =
{
	X		: 0,
	Y 		: 1,
	Width	: 0,
	Height	: 1

}
/******************************* Scroll method ***************************************/
NPTool.getScrollTop			= function(){return document.body.scrollTop;}
NPTool.getScrollLeft		= function(){return document.body.scrollLeft;}

/******************************* Coordinate method ***************************************/
NPTool.sizeTo				= function(elm,w,h){if(h) elm.style.pixelHeight =h;if(w) elm.style.pixelWidth =w;}
NPTool.sizeBy				= function(elm,w,h){elm.style.pixelHeight+=h;elm.style.pixelWidth+=w;}
NPTool.getCoor				= function(elm){return [elm.style.pixelLeft,elm.style.pixelTop]}
NPTool.getSize				= function(elm){return [elm.style.pixelWidth,elm.style.pixelHeight]}
NPTool.getOffsetCoor		= function(elm){
	var parent = elm;
	var l = 0;
	var t = 0;
	
	while(parent)
	{
		if(parent.tagName == "TR") {parent = parent.parentElement;}
		if(parent.offsetLeft) l += parent.offsetLeft;
		if(parent.offsetTop) t += parent.offsetTop;
		parent = parent.parentElement;		
	}
	return [l,t];
}

NPTool.getBorderWidth = function(elm){
	var parent = elm;
	var bw = 0;
	var bh = 0;
	
	while(parent)
	{
		
		if(parent.borderRightWidth) bw += parent.borderRightWidth;
		if(parent.borderLeftWidth) bw += parent.borderLeftWidth;
		if(parent.borderTopWidth) bh += parent.borderTopWidth;
		if(parent.borderBottomWidth) bh += parent.borderBottomWidth;
		var parent = (parent.tagName == "table")? false : parent = parent.parentElement;		
	}
	return [bw,bh];
}

/******************************* Event methods ******************************************/
NPTool.getEvent				= function(e) {return event};

//coordinate
NPTool.getEventPos			= function (e){return [event.clientX + document.body.scrollLeft,event.clientY + document.body.scrollTop];}
NPTool.getEventClientPos 	= function (e){return [event.clientX,event.clientY];}
//event attachement
NPTool.attachEvent			= function(elm,eventType,fct){eval("elm.on" + eventType +"=fct");}
NPTool.releaseEvent			= function(elm,eventType,fct){eval("elm.on" + eventType +"=null");}

/***************************** Content method *********************************************/
NPTool.insertAdjacentHTML	= function(elm,str){elm.insertAdjacentHTML("BeforeEnd", str);}
