
//====================================================================================================
//	File Name		:	functions.js
//----------------------------------------------------------------------------------------------------

//====================================================================================================
//	Function Name	:	popupWindowURL
//	Purpose			:	Whenever you wanna open a link into a new window just call this function
//								you need to pass some arguemnts as described below.
//	Parameters		:
//								url  = url to be open in the new window
//								winname = winname is the window name for the reference of that window
//								w is the width
//								h is the height
//								menu is the parameter, if you want menubar to be enabled on the window
//								resize if you wanna resize the window
//								scroll i fyou needed
//	Return			:	true or false
//----------------------------------------------------------------------------------------------------
function popupWindowURL(url, winname,  w, h, menu, resize, scrollbar) {

    var x = (screen.width-w)/2;
    var y = (screen.height-h)/3;
 	if (winname == null) winname = "newWindow";
	if (w == null) w = 800;
	if (h == null) h = 600;
	if (resize == null) resize = 1;

	menutype   = "nomenubar";
	resizetype = "noresizable";
	scrolltype = "noscrollbars";
	if (menu) menutype = "menubar";
	if (resize) resizetype = "resizable";
	if (scrollbar) scrolltype = "scrollbars";
	//alert(url+","+x+","+winname);
    cwin=window.open(url,winname,"top=" + y + ",left=" + x + ",screenX=" + x + ",screenY=" + y + "," + "status," + menutype + "," + scrolltype + "," + resizetype + ",width=" + w + ",height=" + h);

	if (!cwin.opener) cwin.opener=self;
	cwin.focus();

	return true;
}

//====================================================================================================
//	Function Name	:	ShowHide()
//----------------------------------------------------------------------------------------------------
function ShowHide(div)
{
	elem = document.getElementById(div);
 	
 	if(elem.style.display == 'none')
	{
		elem.style.display = 'block';
	}
	else
	{
		elem.style.display = 'none';
	}
}

//====================================================================================================
//	Function Name		:	removeElement
//----------------------------------------------------------------------------------------------------
function removeElement(eleId)
{
	var el	= document.getElementById(eleId);

	if(el)
   		el.parentNode.removeChild(el);
}

//====================================================================================================
//	Function Name	:	CheckUncheck_Click
//----------------------------------------------------------------------------------------------------
function CheckUncheck_Click(fld, status)
{
	if(fld.length)
		for(i=0; i < fld.length; i++)
			fld[i].checked = status;
	else
		fld.checked = status;
}

//====================================================================================================
//	File Name		:	truebody.js
//----------------------------------------------------------------------------------------------------
function truebody(){
	return (!window.opera && document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

//====================================================================================================
//	File Name		:	addToWimpy.js
//----------------------------------------------------------------------------------------------------
function addToWimpy(some_id)
{
	return true;
}

function GetCookie (name) 
{
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen) 
	{
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg)
			return getCookieVal (j);

		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0) break; 
	}
	return null;
}

function SetCookie (name, value) 
{
	var argv = SetCookie.arguments;
	var argc = SetCookie.arguments.length;
	
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	
	document.cookie = name + "=" + escape (value) +
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
	((path == null) ? "" : ("; path=" + path)) +
	((domain == null) ? "" : ("; domain=" + domain)) +
	((secure == true) ? "; secure" : "");
}

//====================================================================================================
/**
 * Deletes the specified cookie.
 *
 * name      name of the cookie
 * [path]    path of the cookie (must be same as path used to create cookie)
 * [domain]  domain of the cookie (must be same as domain used to create cookie)
 */
//----------------------------------------------------------------------------------------------------
function DeleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}

function Menu_ShowHide(id)
{
	var blockId = document.getElementById(id);
	if(blockId)
	{
		if(blockId.style.display == 'none')
		{
			blockId.style.visibility	= 'visible';
			blockId.style.display		= 'block';
			SetCookie(id, 'open');
		}
		else
		{
			blockId.style.visibility 	= 'hidden';
			blockId.style.display 		= 'none';
			SetCookie(id, 'close');
		}
	}
}


function attachEventListener(target, eventType, functionRef, capture) 
{ 
	if (typeof target.addEventListener != "undefined") 
	{ 
		target.addEventListener(eventType, functionRef, capture); 
	} 
	else if (typeof target.attachEvent != "undefined") 
	{ 
		var functionString = eventType + functionRef; 
		target["e" + functionString] = functionRef; 
		
		target[functionString] = function(event) 
		{ 
			if (typeof event == "undefined") 
			{ 
				event = window.event; 
			} 
			target["e" + functionString](event); 
		}; 
		
		target.attachEvent("on" + eventType, target[functionString]); 
	} 
	else 
	{ 
		eventType = "on" + eventType; 
		
		if (typeof target[eventType] == "function") 
		{ 
			var oldListener = target[eventType]; 
			
			target[eventType] = function() 
			{ 
				oldListener(); 
				
				return functionRef(); 
			} 
		} 
		else 
		{ 
			target[eventType] = functionRef; 
		} 
	} 
} 

function detachEventListener(target, eventType, functionRef, capture) 
{ 
	if (typeof target.removeEventListener != "undefined") 
	{ 
		target.removeEventListener(eventType, functionRef, capture) 
	} 
	else if (typeof target.detachEvent != "undefined") 
	{ 
		var functionString = eventType + functionRef; 
		
		target.detachEvent("on" + eventType, target[functionString]); 
		
		target["e" + functionString] = null; 
		target[functionString] = null; 
	} 
	else 
	{ 
		target["on" + eventType] = null; 
	} 
}

function resizeImage(img, width, height)
{
	thumbWidth 	= width;
	thumbHeight	= (thumbWidth/img.width)*img.height;
	
	if(thumbHeight > height)
	{
		thumbHeight	= height;
		thumbWidth 	= (thumbHeight/img.height)*img.width;
	}
	img.width 	= thumbWidth;
	img.height	= thumbHeight;
}

function ToggleLoader(flg, msg)
{
	if(flg)
	{
		DisableBodyArea(true);

		var x = (truebody().clientWidth - 200)/2;
		var y = (truebody().clientHeight - 100)/2;
		//var y = 475;
//		var y = 475+120;
		if(msg)
			document.getElementById('stdLoaderMsg').innerHTML = msg;
		else
			document.getElementById('stdLoaderMsg').innerHTML = LM_LOADING;

		document.getElementById('stdLoader').style.left = x+"px";
		document.getElementById('stdLoader').style.top = y+"px";
		document.getElementById('stdLoader').style.display = '';
	}
	else
	{
		document.getElementById('stdLoader').style.display = 'none';
		DisableBodyArea(false) ;
	}
}

function DisableBodyArea(flg)
{
	if(flg)
	{
		document.getElementById('stdDisableArea').style.width	= truebody().scrollWidth + 'px';
		document.getElementById('stdDisableArea').style.height	= truebody().scrollHeight + 'px';
		document.getElementById('stdDisableArea').style.display = '';
	}
	else
	{
		document.getElementById('stdDisableArea').style.display = 'none';
	}
}

var t_id = setInterval(animate, 20);
var pos=0;
var dir=2;
var len=0;

function animate()
{
	return;
	var elem = document.getElementById('progress');

	if(elem != null) {
//		alert('here');
		if (pos==0) len += dir;
		if (len>32 || pos>79) pos += dir;
		if (pos>79) len -= dir;
		if (pos>79 && len==0) pos=0;
		elem.style.left = pos;
		elem.style.width = len;
	}
}

function remove_loading() {
	this.clearInterval(t_id);
	var targelem = document.getElementById('loader_container');
	targelem.style.display='none';
	targelem.style.visibility='hidden';
	var t_id = setInterval(animate,60);
}

function removeID(objname,code_name)
{
	var objcode = document.getElementById(code_name);
	if ((objname.value=='') || (objname.length==0))
		objcode.value='';
}

//====================================================================================================
//	Function Name	:	number_format(ctl,DescNo,Round)
//----------------------------------------------------------------------------------------------------
function number_format(ctl,DescNo,Round)
{

	// checking for value 
	if ((isNaN(Number(ctl.value))) || (Number(ctl.value)==0))
	{ 
		var num = 0;
		ctl.value = num.toFixed(DescNo);

		return 1;
	}  

	var num = Number(ctl.value) ;
	ctl.value = num.toFixed(DescNo);
	
	return 1;	

}

/*
function add_Decimal_Place(Num,Deci)
{
	var dot;  
	dot = Num.indexOf('.');
	if (dot==-1) 
	{ 
		Num += '.';
	}

	var snum = new String(Num);  
	var sec = snum.split('.');  
	for(i=sec[1].length;i<parseInt(Deci);i++)
	{
		Num += '0'; 
	}
	
	if (Deci==0)
	{
		Num=(Math.round(Num));
	}
	
	return Num;  
}

//====================================================================================================
//	Function Name	:	number_format(ctl,DescNo,Round)
//----------------------------------------------------------------------------------------------------
function number_format(ctl,DescNo,Round)
{	
	// checking for value 
	if ((isNaN(Number(ctl.value))) || (Number(ctl.value)==0))
	{ 
		ctl.value = 0;
		ctl.value = add_Decimal_Place(ctl.value,DescNo);

		return 1;
	}  

	// checking for -ve 
	var IsNegative=(Number(ctl.value)<0); 
	Num = add_Decimal_Place(ctl.value,DescNo);

	var snum = new String(Num);  
	var sec = snum.split('.');  
	var dec = new String(sec[1]);  
	var no = "";
	for(i=1;i<dec.length;i++)
	{
		if(dec.substring(i-1,i)==0)
		{	no=no+'0';	}
		else
		{	break;		}
	}
	
	while((dec.length)>DescNo)
	{
		if ((dec.substring(dec.length-1,dec.length))>4)
		{
			dec= dec.substring(0,dec.length-1);
			decNum = Number(dec)+1;
			if(decNum==Math.pow(10, parseInt(dec.length)))
			{ 
				sec[0]++; 
				dec="0"; 
				if(IsNegative) 
				{ sec[0] = "-" + sec[0]	} 
			} 
			else
			{	
				NN=Number(dec);
				var NN = new String(NN);  
				if(decNum==Math.pow(10, parseInt(NN.length)))
				{ 	dec = no.substring(0,no.length-1) + decNum;  } 
				else
				{	dec = no + decNum;  }
			}
		}
		else
		{	dec= dec.substring(0,dec.length-1);		}
	}

	ctl.value = String(sec[0]) + "." + String(dec) ;
	ctl.value = add_Decimal_Place(ctl.value,DescNo);

	return 1;	
}
*/