function toogleHighContrast( bodyId, linkId )
{
    toogleClass( bodyId, 'high-contrast' );
    var bodyClassName = document.getElementById( bodyId ).className;
    if( bodyClassName.indexOf( 'high-contrast' ) == -1 )
        document.getElementById( linkId ).innerHTML = 'High Contrast Version';
    else
        document.getElementById( linkId ).innerHTML = 'Return to Normal Contrast';
}

function toogleTextVersion( bodyId, linkId )
{
    toogleClass( bodyId, 'text-only' );
    var bodyClassName = document.getElementById( bodyId ).className;
    if( bodyClassName.indexOf( 'text-only' ) == -1 )
        document.getElementById( linkId ).innerHTML = 'Text Only';
    else
        document.getElementById( linkId ).innerHTML = 'Return to Normal View';
}

function toogleClass( bodyId, className )
{
    var bodyClassName = document.getElementById( bodyId ).className;
    if( bodyClassName.indexOf( className ) == -1 )
        bodyClassName = className + ' ' + bodyClassName;
    else
        bodyClassName = bodyClassName.replace( className, '' );
    setBodyClass( bodyId, bodyClassName ); 
}

function setTextClass( bodyId, className )
{
    var bodyClassName = document.getElementById( bodyId ).className;
    if( bodyClassName.indexOf( 'text-only' ) != 0 )
        bodyClassName = className;
    else
        bodyClassName = 'text-only ' + className;
    setBodyClass( bodyId, bodyClassName );
}

function setBodyClass( bodyId, className )
{
    document.getElementById( bodyId ).className = className;
    setCookie( 'BodyClass', className, 1 );
}

function setCookie( name, value, days ) 
{
    if( days ) 
    {
        var date = new Date();
        date.setTime( date.getTime() + (days * 24 * 60 * 60 * 1000) );
        var expires = "; expires=" + date.toGMTString();
    }
    else 
        var expires = "";
    document.cookie = name + "=" + value + expires + "; path=/";
}

