 /*var ua = navigator.userAgent.toLowerCase(); 

   // browser engine name
   this.isGecko       = (ua.indexOf('gecko') != -1 && ua.indexOf('safari') == -1);
   this.isAppleWebKit = (ua.indexOf('applewebkit') != -1);

   // browser name
   this.isKonqueror   = (ua.indexOf('konqueror') != -1); 
   this.isSafari      = (ua.indexOf('safari') != - 1);
   this.isOmniweb     = (ua.indexOf('omniweb') != - 1);
   this.isOpera       = (ua.indexOf('opera') != -1); 
   this.isIcab        = (ua.indexOf('icab') != -1); 
   this.isAol         = (ua.indexOf('aol') != -1); 
   this.isIE          = (ua.indexOf('msie') != -1 && !this.isOpera && (ua.indexOf('webtv') == -1) ); 
   this.isMozilla     = (this.isGecko && ua.indexOf('gecko/') + 14 == ua.length);
   this.isFirefox     = (ua.indexOf('firefox/') != -1 || ua.indexOf('firebird/') != -1);
   this.isNS          = ( (this.isGecko) ? (ua.indexOf('netscape') != -1) : ( (ua.indexOf('mozilla') != -1) && !this.isOpera && !this.isSafari && (ua.indexOf('spoofer') == -1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('webtv') == -1) && (ua.indexOf('hotjava') == -1) ) );
   */
function getTop( oElement ) {
    var iReturnValue = 0;
    while( oElement != null ) {
      iReturnValue += oElement.offsetTop;
      oElement = oElement.offsetParent;
    }
    return iReturnValue;
  }
  function getLeft( oElement ) {
    var iReturnValue = 0;
    while( oElement != null ) {
      iReturnValue += oElement.offsetLeft;
      oElement = oElement.offsetParent;
    }
    return iReturnValue;
  }
 function showMe(id){
    var el = document.getElementById(id);
    var idText;
    var idspan = "";
    var idhyper = "";
    var args = showMe.arguments;
	if ( args.length > 1 && args[1].toString() != '') 
		{idspan = args[1].toString();
		idhyper = args[2].toString();}
	else
		{idspan = "hdDesc";
		idhyper = "hyperDes";}
	
    idText = el.id.toString().replace("_" + idhyper ,"_" + idspan);
    var des = document.getElementById(idText).innerHTML;
    var width = el.offsetWidth;
    var left = getLeft(el);
    //var left = el.offsetLeft;
    var top = getTop(el);
    //top = top - el.parentNode.parentNode.parentNode.parentNode.parentNode.scrollTop;
    var divScroll = document.getElementById("divScroll");
    if ( divScroll != null )
		top = top - divScroll.scrollTop;
    //var top = el.offsetTop;
    var obj = document.getElementById("span1");
    //var els = document.getElementById("dgViewInfo").id;
    if (des == "") {
		hideMe();
    }
    else if ( obj !== null ) {
		obj.innerHTML = des;
		obj.style.display = "inline";
		obj.style.zIndex = "1";
		var objWidth = obj.offsetWidth;
		var lastWith = left + width - objWidth - 15; 
		if (lastWith < 0 ) {  
			//if (this.isMozilla || this.isFirefox) 
				//{obj.setAttribute("left",left + width - 15    + "px");}
			//else
			obj.style.left = left + width - 15 + "px" ;
		}
		else {  
			//if (this.isMozilla || this.isFirefox) 
				//{obj.setAttribute("left",lastWith + "px");}
			//else
				obj.style.left = lastWith + "px";
			}
		/*if (top + obj.offsetHeight > screen.availHeight)
		{	obj.style.top= top - obj.offsetHeight + 10 +  "px" ;
		}
		else
		{	obj.style.top= top + 10 +  "px" ;
		}*/
		
		////////////////////////////////////////////
		var ie=document.all;
		var ns6=document.getElementById && !document.all;
		var offsetfromcursorY=0;
		var offsetdivfrompointerY=5;

		//var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
		var e = window.event;
		var mouseX, mouseY, standardbody;
		if (e) { 
			standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body //create reference to common "body" across doctypes
			//mouseX = (ns6)? e.pageX: e.clientX + standardbody.scrollLeft;
			//mouseY = (ns6)? e.pageY: e.clientY + standardbody.scrollTop;
			mouseX = (ns6)? e.pageX: e.clientX ;
			mouseY = (ns6)? e.pageY: e.clientY ;
		}
		else if ( args.length > 3 ) {
			mouseX = args[3];
			mouseY = args[4];
		}
		var winheight=ie&&!window.opera? ietruebody().clientHeight : window.innerHeight-20;
		//var bottomedge=ie&&!window.opera? winheight - mouseY : winheight-e.clientY-offsetfromcursorY;
		
		var bottomedge=winheight - mouseY;
		var h = obj.offsetHeight;
		if (bottomedge < h){
			obj.style.top= (top-h)+"px";
		}
		else{
			obj.style.top=(top+20)+ "px" ;//curY+offsetfromcursorY+offsetdivfrompointerY+"px";
		}
		////////////////////////////////////////////
		obj.style.position = "absolute";
		//if(HideSelect)	win_ele_vis1("SELECT", obj);
		if(HideSelect) {
			  win_ele_abs_pos("SELECT", obj);
		      var frm = document.createElement('iframe');
              frm.id = 'temp';
              
              frm.style.position = 'absolute';
              obj.style.display = 'inline';
              
              //if (this.isMozilla || this.isFirefox) 
					//{frm.setAttribute("left",obj.offsetLeft);}
			  //else
                  frm.style.left = obj.offsetLeft;
             // if (this.isMozilla || this.isFirefox) 
				// {frm.setAttribute("top",obj.offsetTop);}
			  //else
			  frm.style.top = obj.offsetTop;
              frm.style.width = obj.offsetWidth+10;
              frm.style.height = obj.offsetHeight+10;
              frm.style.zIndex = '-1';
              obj.parentNode.insertBefore(frm, obj);
		}
    }
 }
 //////////////////////////////////////
 function ietruebody(){
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}
 /////////////////////////////////////
function positiontip(e,tipobj){
var ie=document.all;
var ns6=document.getElementById && !document.all;
var offsetfromcursorX=12;
var offsetfromcursorY=10;
var offsetdivfrompointerX=10;
var offsetdivfrompointerY=14;
//if (enabletip){
var nondefaultpos=false;
var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
var winwidth=ie&&!window.opera? ietruebody().clientWidth : window.innerWidth-20;
var winheight=ie&&!window.opera? ietruebody().clientHeight : window.innerHeight-20;
var rightedge=ie&&!window.opera? winwidth-event.clientX-offsetfromcursorX : winwidth-e.clientX-offsetfromcursorX;
var bottomedge=ie&&!window.opera? winheight-event.clientY-offsetfromcursorY : winheight-e.clientY-offsetfromcursorY;
var leftedge=(offsetfromcursorX<0)? offsetfromcursorX*(-1) : -1000;
if (rightedge<tipobj.offsetWidth){
tipobj.style.left=curX-tipobj.offsetWidth+"px";
nondefaultpos=true;
}
else if (curX<leftedge)
tipobj.style.left="5px";
else{
tipobj.style.left=curX+offsetfromcursorX-offsetdivfrompointerX+"px";
}
if (bottomedge<tipobj.offsetHeight){
tipobj.style.top=curY-tipobj.offsetHeight-offsetfromcursorY+"px";
nondefaultpos=true;
}
else{
tipobj.style.top=curY+offsetfromcursorY+offsetdivfrompointerY+"px";
}
tipobj.style.visibility="visible";
}
//}
  function hideMe(){
	var obj = document.getElementById("span1");
	if ( !obj ) 
		return ;
    if(HideSelect)
    {
		 //win_ele_vison("SELECT",obj);
		 //ck_win_els1(+1,obj);
         var frm = document.getElementById('temp');
         if (obj.parentNode.childNodes[0].tagName == "IFRAME") {	
			obj.parentNode.removeChild(frm);
         }
    }
    obj.style.display = "none";
 }
 
function win_ele_vison(tagName, obj)
{
	var els=nNN6 ? document.getElementsByTagName(tagName) : document.all.tags(tagName);
	var i;
	for (i=0;i<els.length;i++)
	{
		var el=els.item(i);
		if (el.style.display == "none")
		 {el.style.display="inline";}
	}
}
function win_ele_vis1(tagName, obj)
{
	var els=nNN6 ? document.getElementsByTagName(tagName) : document.all.tags(tagName);
	var i;
	for (i=0;i<els.length;i++)
	{
		var el=els.item(i);
		if(elements_overlap1(el,obj))
		{
			el.style.display="none";
		}
	}
}

function win_ele_abs_pos(tagName, obj)
{
	var els=nNN6 ? document.getElementsByTagName(tagName) : document.all.tags(tagName);
	var i;
	for (i=0;i<els.length;i++)
	{
		var el=els.item(i);
	    
		//if(elements_overlap1(el,obj))
		//{
			el.style.position="relative";
		//}
	}
}

function elements_overlap1(el,obj)
{
	var left=0;
	var top=0;
	var width=el.offsetWidth;
	var height=el.offsetHeight;
	/*if(width)
		el._width=width;
	else
		width=el._width;
	if(height)
		el._height=height;
	else
		height=el._height;*/
	
	while(el)
	{
		left+=el.offsetLeft;
		top+=el.offsetTop;
		el=el.offsetParent;
	}
	var objWidth = obj.offsetWidth;
	var objHeight = obj.offsetHeight;
	var objLeft = getLeft(obj);
    var objTop = getTop(obj);
	
	return ((left<objWidth+objLeft) && (left+width>objLeft) && (top<objHeight+objTop) && (top+height>objTop));
}

/*Using modified select_deselectAll script function of my original one, from Developerfusion.com forum members - ketcapli & thombo Forum Post - [http://www.developerfusion.co.uk/forums/topic-22773]*/
function select_deselectAll (chkVal, idVal) {
	var frm = document.forms[0];
	var chkid;
	var chkallid;
	var args = select_deselectAll.arguments;
	if ( args.length > 2 ) 
		{chkid = args[2].toString();
		 chkallid = args[3].toString();}
	else
		{chkid = "chkSelect";
		 chkallid = "CheckAll";}
	if (idVal.indexOf(chkid) != -1 && chkVal == true){
		var AllAreSelected = true;
		for (i=0; i<frm.length; i++) {
			if (frm.elements[i].id.indexOf(chkid) != -1 && frm.elements[i].checked == false){ 
				AllAreSelected = false;
				break;
			} 
		} 
		if(AllAreSelected == true){
			for (j=0; j<frm.length; j++) {
				if (frm.elements[j].id.indexOf (chkallid) != -1) {
					frm.elements[j].checked = true;
					break;
				}
			}
		}
	} else {
		for (i=0; i<frm.length; i++) {
			if (idVal.indexOf (chkallid) != -1) {
				if (frm.elements[i].id.indexOf(chkid) != -1){
					if(chkVal == true) {
						frm.elements[i].checked = true;
					} else {
						frm.elements[i].checked = false; 
					}
				}
			} else if (idVal.indexOf(chkid) != -1 && frm.elements[i].checked == false) {
				for (j=0; j<frm.length; j++) {
					if (frm.elements[j].id.indexOf (chkallid) != -1) { 
						frm.elements[j].checked = false;
						break; 
					} 
				} 
			} 
		} 
	} 
} 
function win_ele_Empty(tagName, obj)
{
	var els=nNN6 ? obj.getElementsByTagName(tagName) : obj.all.tags(tagName);
	var i;
	for (i=0;i<els.length;i++)
	{
		var el=els.item(i);
		el.innerHTML = "";
	}
}