<!--
var myLastSwichedLayerObjs = new MyHashMap();
var useLayerBugControl = ( navigator.userAgent.toLowerCase().indexOf('gecko') == -1 );

function myChangeClass ( obj, newClassName )
{
	if ( obj && obj.className )
	{
		obj.className = newClassName;
	}
}

function myAddOrRemoveClass ( obj, className, doAdd )
{
	if ( obj && obj.className && className != null && className.length > 0 )
	{
		if ( doAdd )
		{
			if ( obj.className.indexOf( className ) == -1 ||
			     obj.className.indexOf( className ) != obj.className.length - className.length )
			{
				obj.className += ' ' + className;
			}
		}
		else
		{
			if ( obj.className.indexOf( ' ' + className ) != -1 && 
			     obj.className.indexOf( ' ' + className ) == obj.className.length - className.length - 1 )
			{
				obj.className = obj.className.substring( 0, obj.className.indexOf( ' ' + className ) );
			}
		}
	}
}

function mySwitchLayerImgSrc ( imgId, newImgSrc )
{
	var imgObj = myGetObj( imgId );
	if (imgObj) imgObj.src = newImgSrc
}

function myIsLayerVisible ( layerObj )
{
    var returnValue = false;

	if ( layerObj.style )
	{
    	returnValue = ( layerObj.style.visibility == 'visible' );
	}
    else
	{
    	returnValue = ( layerObj.visibility == 'show' );
	}

    return returnValue;
}

function myShowHideLayerObj ( layerObj, show )
{
	if ( layerObj.style )
	{
		layerObj.style.visibility = (show)?'visible':'hidden';
	}
	else
	{
		layerObj.visibility = (show)?'show':'hide';
	}
}

function myToggleLayerVisability ( layerId )
{
	var layerObj = myGetObj( layerId );
    if ( layerObj != null )
    {
        myShowHideLayerObj( layerObj , !myIsLayerVisible( layerObj ) );
    }
}

function myShowLayer ( layerId )
{
    var layerObj = myGetObj( layerId );
    if ( layerObj != null )
    {
        myShowHideLayerObj( layerObj , true );
    }
}

function myHideLayer ( layerId )
{
    var layerObj = myGetObj( layerId );
    if ( layerObj != null )
    {
        myShowHideLayerObj( layerObj , false );
    }
}

function mySwitchLayer ( layerId, closeLayerId, nrCloseLayers, layerGroup )
{
	var i = null;
	var layerObj = myGetObj( layerId );

    if ( arguments.length < 4 || layerGroup == null || layerGroup == '' )
    {
        layerGroup = "myStdLayerGrp";
    }
    var lastSwitchedLayerObj = myGetFromMyHashMap( myLastSwichedLayerObjs, layerGroup );

	if ( lastSwitchedLayerObj )
	{
		myShowHideLayerObj( lastSwitchedLayerObj, false );
		myRemoveFromMyHashMap( myLastSwichedLayerObjs, layerGroup );
	}
	else
	{
		for ( i = 1; i <= nrCloseLayers; i++ )
	        myShowLayer( closeLayerId + i );
	}
	if ( layerObj )
	{
		myShowHideLayerObj( layerObj, true );
        myAddToMyHashMap( myLastSwichedLayerObjs, layerGroup, layerObj );
	}
	else
	{
	    if ( myLastSwichedLayerObjs.size == 0 )
		{
			for ( i = 1; i <= nrCloseLayers; i++ )
	   	     {
				var layerObj = myGetObj( closeLayerId + i );
				if (layerObj) myShowHideLayerObj( layerObj, false );
			}
	        for ( var i = 0; i < myLastSwichedLayerObjs.size; i++ )
	        {
	            myShowHideLayerObj( myLastSwichedLayerObjs.data[i][1], false );
	        }
	        myLastSwichedLayerObjs = new MyHashMap()
		}
	}
}

function myCenterLayer ( layerId, horizontal, vertical )
{
	var layerObj = myGetObj( layerId );
	var winWidth = myGetWindowWidth();
	var winHeight = myGetWindowHeight();
	
	if ( winWidth != null && layerObj != null && layerObj.style )
	{
		if ( horizontal )
		{
			layerObj.style.left = ( myGetRelXPos( layerObj ) - myGetLeftOffset( layerObj ) + Math.floor ( ( winWidth - myGetWidth( layerObj ) ) / 2 ) ) + "px";
		}
		if ( vertical )
		{
			layerObj.style.top = ( myGetRelYPos( layerObj ) - myGetTopOffset( layerObj ) + Math.floor ( ( winHeight - myGetHeight( layerObj ) ) / 2 ) + myGetActScrollY() ) + "px";
		}
	}

}

function myReposLayerByLink ( layerId, linkObj, addX, addY, reposX, reposY )
{
    var layerObj = myGetObj( layerId );
    var posX = 0;
    var posY = 0;

    if ( layerObj )
    {
        if ( linkObj.offsetLeft || linkObj.offsetLeft == 0 )
        {
            if ( reposX )
            {
                posX = myGetLeftOffset( linkObj );
                if ( layerObj.style.left || layerObj.style.left == '' )
                {
                    layerObj.style.left = (posX + addX) + 'px';
                }
                else
                {
                    layerObj.style.posLeft = (posX + addX) + 'px';
                }
            }
            if ( reposY )
            {
                posY = myGetTopOffset( linkObj );
                if ( layerObj.style.top || layerObj.style.top == '' )
                {
                    layerObj.style.top = (posY + addY) + 'px';
                }
                else
                {
                    layerObj.style.posTop = (posY + addY) + 'px';
                }
            }
        }
        else if ( linkObj.x || linkObj.x == 0 )
        {
            if ( reposX )
            {
                posX = linkObj.x;
                layerObj.left = posX + addX;
            }
            if ( reposY )
            {
                posY = linkObj.y;
                layerObj.top = posY + addY;
            }
        }
    }
}

function myReposLayerByLinkAndDesktop ( layerId, linkObj, addX, addY, reposX, reposY )
{	
	var layerObj = myGetObj( layerId );
	
    if ( layerObj )
    {
		var posX = 0;
    	var posY = 0;
		var winWidth = myGetWindowWidth();
		var winHeight = myGetWindowHeight();
		var layerObjHeight = myGetHeight( layerObj );
		var layerObjWidth = myGetWidth( layerObj );
		var actScrollY = myGetActScrollY();
		var actScrollX = myGetActScrollX();
		
        if ( linkObj.offsetLeft || linkObj.offsetLeft == 0 )
        {
            if ( reposX )
            {
                posX = myGetLeftOffset( linkObj );
				var newPosX = posX + addX;
				
				var rightWidth = ( winWidth - ( newPosX - actScrollX ) );
				if ( rightWidth < layerObjWidth )
				{
					newPosX -= ( layerObjWidth - rightWidth );
				}
				
				if ( newPosX < actScrollX )
				{
					newPosX = actScrollX;
				}
				
                if ( layerObj.style.left || layerObj.style.left == '' )
                {
                    layerObj.style.left = newPosX + 'px';
                }
                else
                {
                    layerObj.style.posLeft = newPosX + 'px';
                }
            }
            if ( reposY )
            {
                posY = myGetTopOffset( linkObj );
				var newPosY = posY + addY;
				
				var bottomHeight = ( winHeight - ( newPosY - actScrollY ) );
				if ( bottomHeight < layerObjHeight )
				{
					newPosY -= ( layerObjHeight - bottomHeight );
				}
				
				if ( newPosY < actScrollY )
				{
					newPosY = actScrollY;
				}
				
                if ( layerObj.style.top || layerObj.style.top == '' )
                {
                    layerObj.style.top = newPosY + 'px';
                }
                else
                {
                    layerObj.style.posTop = newPosY + 'px';
                }
            }
        }
        else if ( linkObj.x || linkObj.x == 0 )
        {
            if ( reposX )
            {
                posX = linkObj.x;
				var newPosX = posX + addX;
				
				var rightWidth = ( winWidth - ( newPosX - actScrollX ) );
				if ( rightWidth < layerObjWidth )
				{
					newPosX -= ( layerObjWidth - rightWidth );
				}
				
				if ( newPosX < actScrollX )
				{
					newPosX = actScrollX;
				}
				
                layerObj.left = newPosX;
            }
            if ( reposY )
            {
                posY = linkObj.y;
				var newPosY = posY + addY;
				
				var bottomHeight = ( winHeight - ( newPosY - actScrollY ) );
				if ( bottomHeight < layerObjHeight )
				{
					newPosY -= ( layerObjHeight - bottomHeight );
				}
				
				if ( newPosY < actScrollY )
				{
					newPosY = actScrollY;
				}
				
                layerObj.top = newPosY;
            }
        }
    }
}

function mySetXPos ( obj, x )
{
	if ( obj.style.left || obj.style.left == '' )
	{
	    obj.style.left = x + 'px';
	}
	else if ( obj.style.posLeft || obj.style.posLeft == '' )
	{
	    obj.style.posLeft = x + 'px';
	}
	else
	{
		obj.left = x;
	}
}

function mySetYPos ( obj, y )
{
	if ( obj.style.top || obj.style.top == '' )
	{
	    obj.style.top = y + 'px';
	}
	else if ( obj.style.posTop || obj.style.posTop == '' )
	{
	    obj.style.posTop = y + 'px';
	}
	else
	{
		obj.top = y;
	}
}

function myGetWidth ( obj )
{
    var returnValue = 0;

    if ( obj && obj.offsetWidth != null )
    {
		returnValue = obj.offsetWidth;
    }

    return returnValue;
}

function myGetHeight ( obj )
{
    var returnValue = 0;

    if ( obj && obj.offsetHeight != null )
    {
		returnValue = obj.offsetHeight;
    }

    return returnValue;
}

function myGetRelXPos ( obj )
{
    var returnValue = 0;

    if ( obj )
    {
		if ( obj.offsetLeft != null )
		{
        	returnValue += obj.offsetLeft;
        }
        else if ( obj.x )
        {
			returnValue += obj.x;
        }
    }

    return returnValue;
}

function myGetRelYPos ( obj )
{
    var returnValue = 0;

    if ( obj )
    {
		if ( obj.offsetTop != null )
		{
        	returnValue += obj.offsetTop;
        }
        else if ( obj.y )
        {
			returnValue += obj.y;
        }
    }

    return returnValue;
}

function myGetTopOffset ( obj )
{
    var returnValue = 0;
    var browserOk = true;

    while ( obj && browserOk )
    {
        if ( obj.offsetTop != null )
        {
            returnValue += obj.offsetTop;
            obj = obj.offsetParent;
        }
        else
        {
			if ( obj.y )
			{
				returnValue += obj.y;
			}
            browserOk = false;
        }
    }

    return returnValue;
}

function myGetLeftOffset ( obj )
{
    var returnValue = 0;
    var browserOk = true;
	
    while ( obj && browserOk )
    {
        if ( obj.offsetLeft != null )
        {
            returnValue += obj.offsetLeft;
            obj = obj.offsetParent;
        }
        else
        {
			if ( obj.x )
			{
				returnValue += obj.x;
			}
            browserOk = false;
        }
    }

    return returnValue;
}

function myGetWindowAvailHeight ()
{
    var returnValue = screen.availHeight ? screen.availHeight : 580;

	if (self.innerHeight) // all except Explorer
	{
		returnValue = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight) // Explorer 6 Strict Mode
	{
		returnValue = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		returnValue = document.body.clientHeight;
	}

    return returnValue;
}

function myGetWindowAvailWidth ()
{
    var returnValue = screen.availWidth ? screen.availWidth : 780;

	if (self.innerWidth) // all except Explorer
	{
		returnValue = self.innerWidth;
	}
	else if (document.documentElement && document.documentElement.clientWidth) // Explorer 6 Strict Mode
	{
		returnValue = document.documentElement.clientWidth;
	}
	else if (document.body) // other Explorers
	{
		returnValue = document.body.clientWidth;
	}

    return returnValue;
}

function myGetMaxHeight ( maxHeight )
{
	var returnValue = myGetWindowAvailHeight ();
	
	if ( returnValue > maxHeight )
	{
		returnValue = maxHeight;
	}
	
	return returnValue;
}

function myGetMaxWidth ( maxWidth )
{
	var returnValue = myGetWindowAvailWidth ();
	
	if ( returnValue > maxWidth )
	{
		returnValue = maxWidth;
	}
	
	return returnValue;
}

function myResizeLayerToMax ( layerId, ignoreContentDimension )
{
    var layerObj = myGetObj( layerId );
    var height = myGetWindowAvailHeight() - myGetTopOffset( layerObj ) - 10;
    var width = myGetWindowAvailWidth() - myGetLeftOffset( layerObj ) - 10;

    if ( !ignoreContentDimension )
    {
        if ( layerObj.scrollHeight )
        {
            if ( height > layerObj.scrollHeight )
            {
                height = layerObj.scrollHeight + 16;
            }
            if ( width > layerObj.scrollWidth )
            {
                width = layerObj.scrollWidth + 16;
            }
        }
    }
	mySetWidth( layerObj, width );
	mySetHeight( layerObj, height );
}

function mySetWidth ( obj, width )
{
	if ( obj.style.width )
    {
        obj.style.width = width;
    }
    else if ( obj.style.posWidth )
    {
        obj.style.posWidth = width;
    }
    else if ( obj.width )
    {
        obj.width = width;
    }
}

function mySetHeight ( obj, height )
{
	if ( obj.style.height )
    {
        obj.style.height = height;
    }
    else if ( obj.style.posHeight )
    {
        obj.style.posHeight = height;
    }
    else if ( obj.height )
    {
        obj.heigth = height;
    }
}

function mySwitchAndReposLayer ( layerId, linkObj, closeLayerId, nrCloseLayers, addX, addY, reposX, reposY, layerGroup )
{
    myHideLayerBugControls();
    myReposLayerByLink( layerId, linkObj, addX, addY, reposX, reposY );
    mySwitchLayer( layerId, closeLayerId, nrCloseLayers, layerGroup );
}

function mySwitchReposAndResizeLayerToMax ( layerId, linkObj, closeLayerId, nrCloseLayers, addX, addY, reposX, reposY, layerGroup, ignoreContentDimension )
{
    myHideLayerBugControls();
    myReposLayerByLink( layerId, linkObj, addX, addY, reposX, reposY );
    myResizeLayerToMax ( layerId, ignoreContentDimension );
    mySwitchLayer( layerId, closeLayerId, nrCloseLayers, layerGroup );
}

function writeHTMLToLayer ( layerId, htmlCode )
{
    var layerObj = myGetObj( layerId );

    if ( layerObj != null && layerObj.innerHTML != null )
    {
        layerObj.innerHTML = htmlCode;
    }
}

function swapLayerContent ( layerId1, layerId2, form )
{
    var layerObj1 = myGetObj( layerId1 );
    var layerObj2 = myGetObj( layerId2 );

    if ( layerObj1 != null && layerObj1.innerHTML != null &&
	     layerObj2 != null && layerObj2.innerHTML != null )
    {
        if( form && form != null && typeof(form) != 'undefined' && form.elements && form.elements.length > 0 )
        {
            var formFields = new MyHashMap();
            for ( var i = 0; i < form.elements.length; i++ )
            {
                var fieldId = form.elements[i].id;
                if ( myGetFromMyHashMap( formFields, fieldId ) == null )
                {
                    var fieldType = form.elements[i].type;
                    var fieldValue = null;
                    
                    if ( fieldType == 'text' || fieldType == 'textarea' )
                    {
                        fieldValue = form.elements[i].value;
                    }
                    else if ( fieldType == 'checkbox' || fieldType == 'radio' )
                    {
                        fieldValue = form.elements[i].checked;
                    }
                    else if ( fieldType == 'select-one' )
                    {
                        fieldValue = myGetSelectValue( form.elements[i] );
                    }
                    else if ( fieldType == 'select-multiple' )
                    {
                        fieldValue = myGetSelectValues( form.elements[i] );
                    }
                    
                    myAddToMyHashMap( formFields, fieldId, fieldValue );
                }
            }
        }
        
        var holdHTML = layerObj1.innerHTML;
        layerObj1.innerHTML = layerObj2.innerHTML;
        layerObj2.innerHTML = holdHTML;
        
        if( form && form != null && typeof(form) != 'undefined' && form.elements && form.elements.length > 0 )
        {
            for ( var i = 0; i < form.elements.length; i++ )
            {
                var fieldId = form.elements[i].id;
                var fieldValue = myGetFromMyHashMap( formFields, fieldId )
                
                if ( fieldValue != null )
                {
                    var fieldType = form.elements[i].type;
                    
                    if ( fieldType == 'text' || fieldType == 'textarea' )
                    {
                        form.elements[i].value = fieldValue;
                    }
                    else if ( fieldType == 'checkbox' || fieldType == 'radio' )
                    {
                        form.elements[i].checked = fieldValue;
                    }
                    else if ( fieldType == 'select-one' )
                    {
                        mySelectValueIfInSelect( form.elements[i], fieldValue );
                    }
                    else if ( fieldType == 'select-multiple' )
                    {
                        mySelectValues( form.elements[i], fieldValue );
                    }
                }
            }
        }
    }
}

function MyHashMap ()
{
    this.size = 0;
    this.data = new Array();
}

function myAddToMyHashMap ( hashMap, key, value )
{
    if ( hashMap != null )
    {
        myRemoveFromMyHashMap( hashMap, key );
        hashMap.size++;
        hashMap.data[hashMap.data.length] = new Array( key, value );
    }
}

function myRemoveFromMyHashMap ( hashMap, key )
{
    var entryFound = false;

    if ( hashMap != null )
    {
        for ( var i = 0; i < hashMap.size; i++ )
        {
            if ( entryFound )
            {
                hashMap.data[i-1] = hashMap.data[i];
            }
            else
            {
                if ( hashMap.data[i][0] == key )
                {
                    entryFound = true;
                }
            }
        }
        if ( entryFound )
        {
            hashMap.data.length = hashMap.data.length-1;
            hashMap.size--;
        }
    }
}

function myGetFromMyHashMap ( hashMap, key )
{
    var returnValue = null;

    if ( hashMap != null )
    {
        for ( var i = 0; i < hashMap.size; i++ )
        {
            if ( hashMap.data[i][0] == key )
            {
                returnValue = hashMap.data[i][1];
                break;
            }
        }
    }

    return returnValue;
}

function myMakeImgArray ( n ) 
{
	this.length = n
	for (var i = 0; i < n; i++) 
	{
         this[i] = new Image()
	}
	return this
}

var myActiveRolloverImg = -1;
 
function myHandleImgRollover ( imgArrayNorm, imgArrayMOver, indexOfImg, baseIdOfImg ) 
{
	if ( indexOfImg >= 0 && indexOfImg < imgArrayNorm.length && indexOfImg != myActiveRolloverImg ) 
	{
		mySetActiveImgToNorm( imgArrayNorm, imgArrayMOver, baseIdOfImg );
		var imgObj = myGetObj( baseIdOfImg + indexOfImg );
		if ( imgObj )
		{
			imgObj.srv = imgArrayMOver[indexOfImg].src;
		}
		myActiveRolloverImg = indexOfImg;
	}
}
 
function myHandleImgRollout ( imgArrayNorm, imgArrayMOver, indexOfImg, baseIdOfImg ) 
{
	if ( indexOfImg >= 0 && indexOfImg < imgArrayNorm.length ) 
	{
		var imgObj = myGetObj( baseIdOfImg + indexOfImg );
		if ( imgObj )
		{
			imgObj.srv = imgArrayNorm[indexOfImg].src;
		}
		if ( myActiveRolloverImg == indexOfImg )
		{
			myActiveRolloverImg = -1;
		}
	}
}

function mySetActiveImgToNorm ( imgArrayNorm, imgArrayMOver, baseIdOfImg ) 
{
	if ( myActiveRolloverImg != -1 )
	{
		myHandleImgRollout( imgArrayNorm, imgArrayMOver, myActiveRolloverImg, baseIdOfImg );
	}
}
 

// handle layer bug in ie
var myLayerBugObjs = new Array();

function myAddFieldToLayerBugObjs ( objId )
{
	myLayerBugObjs[myLayerBugObjs.length] = objId;
}

function myHideLayerBugControls ()
{
	if ( useLayerBugControl )
	{
		for ( var i = 0; i < myLayerBugObjs.length; i++ )
		{
	        myHideLayer( myLayerBugObjs[i] );
		}
	}
}
function myShowLayerBugControls()
{
	if ( useLayerBugControl )
	{
	    for ( var i = 0; i < myLayerBugObjs.length; i++ )
		{
	        myShowLayer( myLayerBugObjs[i] );
		}
	}
}

function myHideLayerBugControlsInForm ( form )
{
	myShowHideLayerBugControlsInForm( form, false );
}

function myShowLayerBugControlsInForm ( form )
{
	myShowHideLayerBugControlsInForm( form, true );
}

function myShowHideLayerBugControlsInForm ( form, show )
{
	if ( form != null && useLayerBugControl)
	{
		for ( var i = 0; i < form.elements.length; i++ )
		{
			if ( form.elements[i].type == "select-one" || form.elements[i].type == "select-multiple" )
			{
				myShowHideLayerObj( form.elements[i], show );
			}
		}
	}
}

function myGetActScrollY ()
{
	var returnValue = 0;
	
	if ( window.pageYOffset )
	{
    	returnValue = window.pageYOffset;
	}
	else if ( document.documentElement && document.documentElement.scrollTop )
	{
		returnValue = document.documentElement.scrollTop;
	}
	else if ( document.body && document.body.scrollTop )
	{
		returnValue = document.body.scrollTop;
	}
	
	return returnValue;
}

function myGetActScrollX ()
{
	var returnValue = 0;
	
	if ( window.pageXOffset )
	{
    	returnValue = window.pageXOffset;
	}
	else if ( document.documentElement && document.documentElement.scrollLeft )
	{
		returnValue = document.documentElement.scrollLeft;
	}
	else if ( document.body && document.body.scrollLeft )
	{
		returnValue = document.body.scrollLeft;
	}
	
	return returnValue;
}

function myGetWindowWidth ()
{
	var returnValue = 0;
	
	if ( window.innerWidth )
	{
		returnValue = window.innerWidth;
	}
	else if ( document.documentElement && document.documentElement.clientWidth )
	{
		returnValue = document.documentElement.clientWidth;
	}
	else if ( document.body && document.body.clientWidth )
	{
		returnValue = document.body.clientWidth;
	}
	
	return returnValue;
}

function myGetWindowHeight ()
{
	var returnValue = 0;
	
	if ( window.innerHeight )
	{
		returnValue = window.innerHeight;
	}
	else if ( document.documentElement && document.documentElement.clientHeight )
	{
		returnValue = document.documentElement.clientHeight;
	}
	else if ( document.body && document.body.clientHeight )
	{
		returnValue = document.body.clientHeight;
	}
	
	return returnValue;
}

//-->