﻿function removeEndingZeros(number, maxDecimalPlaces)
{
    var numStr = number.toFixed(maxDecimalPlaces);
    
    while (numStr[numStr.length-1] == '0')
    {
        numStr = numStr.substr(0, numStr.length-1);
    }
    if (numStr[numStr.length-1] == '.')
    {
        numStr = numStr.substr(0, numStr.length-1);
    }
    
    return numStr;
}

function removeStartingZeros(numStr)
{
    while ((numStr[0] == '0') && (numStr.length > 1))
    {
        numStr = numStr.substr(1);
    }
    
    return numStr;
}

function parseIntExact(numStr)
{
    var number = parseInt(removeStartingZeros(numStr));
    if (number.toString() == removeStartingZeros(numStr))
    {
        return number;
    } 
    else
    {
        return NaN;
    }
}

function setCookie( name, value, expires, path, domain, secure )
{
    var today = new Date();
    today.setTime( today.getTime() );

    if ( expires )
    {
        expires = expires * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date( today.getTime() + (expires) );

    document.cookie = name + "=" +escape( value ) +
    ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
    ( ( path ) ? ";path=" + path : "" ) +
    ( ( domain ) ? ";domain=" + domain : "" ) +
    ( ( secure ) ? ";secure" : "" );
}

function getCookie( check_name ) 
{
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false;

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		a_temp_cookie = a_all_cookies[i].split( '=' );

		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}

			return cookie_value;
			break;
		}

		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

function deleteCookie( name, path, domain ) 
{
    if (getCookie(name)) 
    {
        document.cookie = name + "=" + ((path) ? ";path=" + path : "") + ((domain) ? ";domain=" + domain : "") + ";expires=Thu, 01-Jan-1970 00:00:01 GMT";
    }
}

function switchVisibility(bodyDivVar, visibleStyle)
{
    var bodyDiv = document.getElementById(bodyDivVar);
    
    if (bodyDiv.style.display == 'none')
    {
        bodyDiv.style.display = visibleStyle;
    } 
    else
    {
        bodyDiv.style.display = 'none';
    }
}

function setVisibility(bodyDivVar, visible, visibleStyle)
{
    var bodyDiv = document.getElementById(bodyDivVar);
    
    if (visible)
    {
        bodyDiv.style.display = visibleStyle;
    } 
    else
    {
        bodyDiv.style.display = 'none';
    }
}

function getVisibility(bodyDivVar)
{
    var bodyDiv = document.getElementById(bodyDivVar);
    
    return (bodyDiv.style.display != 'none');
}

function setPosition(bodyDivVar, xPos, yPos)
{
    var bodyDiv = document.getElementById(bodyDivVar);   
    
    bodyDiv.style.left = xPos + "px";
    bodyDiv.style.top = yPos + "px";
}

function getAbsoluteLeftOffset(bodyDivVar)
{
    var bodyDiv = document.getElementById(bodyDivVar);       
    var leftOffset = 0;
    
    while ((bodyDiv) && (bodyDiv.nodeName.toLowerCase() != "div"))
    {
        leftOffset += bodyDiv.offsetLeft;
        bodyDiv = bodyDiv.offsetParent;
    }
    
    return leftOffset;
}

function getAbsoluteTopOffset(bodyDivVar)
{
    var bodyDiv = document.getElementById(bodyDivVar);       
    var topOffset = 0;
    
    while ((bodyDiv) && (bodyDiv.nodeName.toLowerCase() != "div"))
    {
        topOffset += bodyDiv.offsetTop;
        bodyDiv = bodyDiv.offsetParent;
    }
    
    return topOffset;
}
