var toggle_save_height = new Object();
var toogle_showing     = new Object();

function rico_toggle_slide(itemid, linkid, openmark, closemark)
{
    if ( toogle_showing[itemid] )
    {
        rico_toggle_up_slide(itemid, linkid);
        toogle_showing[itemid] = false;
        $(linkid).innerHTML    = openmark;
    }
    else
    {
        rico_toggle_down_slide(itemid, linkid);
        toogle_showing[itemid] = true;
        $(linkid).innerHTML    = closemark;
    }

    return false;
}

function rico_toggle_up_slide(itemid, linkid)
{
    var menu = $(itemid);

    menu.style.overflow = 'hidden';
    new Rico.Effect.Size(menu, null, 1, 120, 8, {complete:function() { $(menu).style.visibility = 'hidden'; }});
}

function rico_toggle_down_slide(itemid, linkid)
{
    var menu = $(itemid);

    menu.parentNode.style.height = '';
    menu.style.visibility        = 'visible';
    new Rico.Effect.Size(menu, null, toggle_save_height[itemid], 120, 8, {complete:function() { $(menu).style.overflow = 'visible'; }});
}

function rico_init_toggle_slide(className,  showmode)
{
    var entries = document.getElementsByClassName(className);

    for (var i = 0;entries.length > i;i++)
    {
        var e = entries[i];

        toogle_showing[e.id]     = showmode;
        toggle_save_height[e.id] = e.offsetHeight;

        if ( showmode )
        {
            e.style.height     = toggle_save_height[e.id];
            e.style.visibility = 'visible';
            e.style.overflow   = 'visible';
        }
        else
        {
            e.style.height     = '1px';
            e.style.visibility = 'hidden';
            e.style.overflow   = 'hidden';
        }
    }
}

window.onload = function()
{
    rico_init_toggle_slide('rico-toggle-slide-close', false);
    rico_init_toggle_slide('rico-toggle-slide-open',  true );
}
