function findPosX(obj)
{
	//	var pos = Position.get(obj);
	//	if (pos==null) { return null; }
	//	return pos.left;
	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 pos = Position.get(obj);
//	if (pos==null) { return null; }
//	return pos.top;
	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;
}


//NSUtils.sizeString2Int = function( strsize )
function sizeString2Int( strsize )
{
	var strwidth = strsize;//arrow.style.width;
	var arroww = parseInt( strwidth.substring(0,strwidth.length-2) );
	return arroww;
}


//NSUtils.hasFilters = function (obj)
function hasFilters(obj)
{
	if(obj.filters && obj.filters[0] && typeof(obj.filters[0].Enabled) != 'undefined')
		return true;

	return false;
}

//NSUtils.canBrowserDoDHTML = function()
function canBrowserDoDHTML()
{
	if (document.getElementById || document.all || document.layers)
		return true;
	return false;
}
//NSUtils.canBrowserDoW3CDOM = function()
function canBrowserDoW3CDOM()
{
	if (document.getElementById && document.createElement)
		return true;
	return false;
}
//NSUtils.showlayer function(name)
function showlayer(name)
{
	var alayer = new getObj(name);
	if( alayer )
		alayer.display = "block";
}
//NSUtils.hidelayer function(alayer)
function hidelayer(alayer)
{
	var alayer = new getObj(name);
	if( alayer )
		alayer.display = "none";
		//alayer.display = alayer.display? "":"none";
}

//var check4NN4 = false;
function getObj(name)
{
	if (document.getElementById)
	{
		this.obj = document.getElementById(name);
		this.style = document.getElementById(name).style;
	}
	else if (document.all)
	{
		this.obj = document.all[name];
		this.style = document.all[name].style;
	}
	else if (document.layers)
	{
		if( true )//check4NN4 )
			this.obj = getObjNN4(document,name);
		else
			this.obj = document.layers[name];
		this.style = this.obj;
	}
}
function getObjNN4(obj,name)
{
	var x = obj.layers;
	var foundLayer;
	for (var i=0;i<x.length;i++)
	{
		if (x[i].id == name)
		 	foundLayer = x[i];
		else if (x[i].layers.length)
			var tmp = getObjNN4(x[i],name);
		if (tmp) foundLayer = tmp;
	}
	return foundLayer;
}

/* png functionality */
var reFilter;
var reFilterStr = "(\\s*progid.*\\(\\s*src\\s*\\=\\s*\\')(.*)(\\'\\s*\\,.*\\)\\s*)";

function getrealimgsrc( pElement )
{
	var imgsrc = pElement.obj.getAttribute('src');

	if (imgsrc.indexOf('blank.gif') !=-1)
		imgsrc = xtractpngsrc(pElement,imgsrc);
	return imgsrc;
}
function setrealimgsrc( pElement, newsrc )
{
	var oldsrc = pElement.obj.getAttribute('src');
	if (oldsrc.indexOf('blank.gif') !=-1)
	{
		var cls = pElement.obj.className;
		if( cls && cls.indexOf('maimg') !=-1)
		{
			fixpngsrc(pElement,newsrc);
			return;
		}
	}
	pElement.obj.setAttribute('src', newsrc );
}
function fixpngsrc( pElement, src )
{
	var useRuntime = true;
	var filter = pElement.obj.runtimeStyle.filter;
	if( filter=='' )
	{
		useRuntime = false;
		filter = pElement.style.filter;
	}
	if( !reFilter )
		reFilter = new RegExp(reFilterStr, "i");
	var m = reFilter.exec(filter);
	
	if (m == null)
		return src;//no match
	if( m.length<4 )
		return src;
	var oldsrc = m[2];
	var newfilter = m[1] + src + m[3];
	if( useRuntime )
		pElement.obj.runtimeStyle.filter = newfilter;
	else
		pElement.style.filter = newfilter;
}
function xtractpngsrc( pElement, src )
{
	var cls = pElement.obj.className;
	if( !cls || cls.indexOf('maimg') ==-1)
		return src;
	var filter = pElement.obj.runtimeStyle.filter;
	if( filter=='' )
		filter = pElement.style.filter;
	if( !reFilter )
		reFilter = new RegExp(reFilterStr, "i");
	var m = reFilter.exec(filter);
	
	if (m == null)
		return src;//no match
	if( m.length<4 )
		return src;
	var masrc = m[2];
	return masrc;
}

//function $(elementID){return document.getElementById(elementID);}
function moveObj(obj, left, top) {
	obj.style.left = left + 'px';
	obj.style.top = top + 'px';
};

function moveBeneath( el, objel2move )
{
    //if (event.srcElement == element)
    {
        var thisheight;
        var thiswidth;
        if( el.clientHeight )
            thisheight = el.clientHeight;
        else if( el.offsetHeight )
            thisheight = el.offsetHeight;
        if( el.clientWidth )
            thiswidth = el.clientWidth;
        else if( el.offsetWidth )
            thiswidth = el.offsetWidth;
        var thisX = findPosX(el);
        var thisY = findPosY(el);
        //var contX = findPosX($('ourcontainer'));
        //alert( thiswidth + "," +thisheight + "," + thisX + "," + thisY );
        moveObj( objel2move, thisX, thisY + thisheight);//thisX-260-contX, thisY + thisheight);//-58);
    }
}

function MyValidate( validationGroup )
{
    var validationResult = false;
    if (typeof(Page_ClientValidate) == 'function') {
        validationResult = Page_ClientValidate( validationGroup );
    }
    if (!validationResult)
        return false;
    return true;
}

//var radgrid1;
//function GetGridObject()
//{
//    radgrid1 = this;
//}
//function RowMouseOut(rowIndex)
//{
//    selectedrow = radgrid1.MasterTableView.SelectedRows[0];
//    currentrow = radgrid1.MasterTableView.Rows[rowIndex];
//    if( selectedrow!=null && (selectedrow.Index==rowIndex) )
//        currentrow.Control.className = "tableRowClick";
//    else
//        currentrow.Control.className = "";
//}
//function RowMouseOver(rowIndex)
//{
//    currentrow = radgrid1.MasterTableView.Rows[rowIndex];
//    currentrow.Control.className = "tableRollOver";
//}
