var default_y=215;
var target_y =default_y;

var has_inner = typeof(window.innerWidth) == 'number';
var has_element = document.documentElement && document.documentElement.clientWidth;

var fm_id='mapcontainer';
var floating_menu =
    document.getElementById
    ? document.getElementById(fm_id)
    : document.all
      ? document.all[fm_id]
      : document.layers[fm_id];

var fm_shift_y, fm_next_y;

function move_menu()
{
    if (document.layers)
    {

        floating_menu.top = fm_next_y;
    }
    else
    {

        floating_menu.style.top = fm_next_y + 'px';
    }
}

function compute_shifts()
{
    fm_shift_y = has_inner
        ? pageYOffset
        : has_element
          ? document.documentElement.scrollTop
          : document.body.scrollTop;
    if (target_y < 0)
        fm_shift_y += has_inner
            ? window.innerHeight
            : has_element
              ? document.documentElement.clientHeight
              : document.body.clientHeight;
}

function float_menu()
{
    var step_y;

    compute_shifts();

    //To manage the advanced search menu
    /*obj=document.getElementById('checkadvanced');
    if (obj.checked) default_y=300; else default_y=215;*/
	default_y=145;

    if (fm_shift_y>default_y)  target_y=0;
    if (fm_shift_y<default_y)  target_y=default_y;

    step_y = (fm_shift_y + target_y  - fm_next_y) * .07;

    if (Math.abs(step_y) < .5)
        step_y = fm_shift_y + target_y - fm_next_y;

    if ( Math.abs(step_y) > 0)
    {
        fm_next_y += step_y;
        move_menu();
    }

    setTimeout('float_menu()', 20);
};

compute_shifts();
if (document.layers)
{
    // Netscape 4 cannot perform init move
    // when the page loads.

    fm_next_y = 0;
}
else
{
    fm_next_y = fm_shift_y + target_y;
    move_menu();
}
float_menu();