function trim(str)
{
    var i = 0,j = str.length - 1;
    while(str.charAt(i) == ' ') i++;
    while(str.charAt(j) == ' ') j--;
    j++;
    var str = str.substring(i,j)
    for(i = 0; i < str.length; i++){
        if (str.charAt(i) != ' '){
            return str;
        }
    }
    return '';
}

function DisableControl(control)
{
    if (document.getElementsByTagName(control.id).length > 0)
        setTimeout('DelayedDisableControl("' + control.id + '")', 1);
}

function DelayedDisableControl(controlID)
{
    if (document.getElementsByTagName(controlID).length > 0)
        document.all[controlID].disabled = true;
}

function CheckRegExConstraint(RegExMatch)
{
    if (String.fromCharCode(window.event.keyCode).match(RegExMatch) != null)
        return true;
    else
    {
        window.event.returnValue=false;
        return false;
    }
}

function CheckDigitConstraint()
{
    var RegExDigitMatch = /[0-9]/;
    if (CheckRegExConstraint(RegExDigitMatch))
        return true;
    else
    {
        window.event.returnValue=false;
        return false;
    }
}

function CheckPhoneConstraint()
{
    var RegExPhoneMatch = /[0-9xX\+\-\.\(\)\ ]/;
    if (CheckRegExConstraint(RegExPhoneMatch))
        return true;
    else
    {
        window.event.returnValue=false;
        return false;
    }
}
    
function CheckNoSpacesConstraint()
{
    var RegExNoSpacesMatch = /[A-Za-z0-9_@\+\-\.]/;
    if (CheckRegExConstraint(RegExNoSpacesMatch))
        return true;
    else
    {
        window.event.returnValue=false;
        return false;
    }
}

function SuppressEnter(OnKeyPressEvent)
{
    if (OnKeyPressEvent.type=="keypress" && OnKeyPressEvent.keyCode=="13")
    {
        event.returnValue=false; return false;
    }
}

function getCookieVal(offset)
{
    var endstr = document.cookie.indexOf(";", offset);

    if (endstr == -1)
        endstr = document.cookie.length;

    return unescape(document.cookie.substring(offset, endstr));
}

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" : "");
}

function deleteCookie(name)
{
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval = getCookie(name);
    document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString() + "; path=/";
}
    
function CheckAllDataGridCheckBoxes(aspCheckBoxID, checkVal)
{
    re = new RegExp(aspCheckBoxID);
    for(i = 0; i < Form1.elements.length; i++)
    {
        elm = document.forms[0].elements[i];
        if (elm.type == 'checkbox')
        {
            if (re.test(elm.name) && elm.disabled == false)
            {
                if (checkVal == 'true')
                    elm.checked = true;
                else
                    elm.checked = false;
            }
        }
    }
}