/*
 * Mouseover und Mouseout Aktionen für Topcart
 * 
 * Funktionen aus der ansonsten nicht mehr genutzten Erweiterung 
 * 'J2t_Ajaxcheckout'
 * 
 */

var carttimeout = false;
var carteffect = false;
var cartup = true;
var cartdown = false;


function observeTopCart()
{
    $('topcart').stopObserving('mouseout');
    $('topcart').stopObserving('mouseover');
    $('cart_top_link').stopObserving('mouseout');
    $('cart_top_link').stopObserving('mouseover');
    Event.observe($("topcart"), 'mouseout', function(e) {  
        if(Position.within($("topcart"), Event.pointerX(e), Event.pointerY(e))) return;
        carttimeout = setTimeout ("hideCart()", 2000 );
    });  
    Event.observe($("cart_top_link"), 'mouseout', function(e) {  
        carttimeout = setTimeout ("hideCart()", 2000 );
    });  
    Event.observe($("topcart"), 'mouseover', function() {  
        clearTimeout(carttimeout);
    });  
    Event.observe($("cart_top_link"), 'mouseover', function() {  
        clearTimeout(carttimeout);
        if (!carteffect && cartup)
        {
            carteffect = true;
            Effect.SlideDown("topcart", {
                duration: 1.0, 
                afterFinish: function() {
                    cartdown = true;
                    cartup = false;
                    carteffect = false;

                }
            });
        }
    });  
}

function hideCart()
{
    if (!carteffect && cartdown)
    {
        carteffect = true;
        Effect.SlideUp("topcart", {
            duration: 2.0, 
            afterFinish: function() { 
                carteffect = false; 
                cartup = true; 
                cartdown = false; 
            }
        });
    }
    else
    {
        carttimeout = setTimeout ("hideCart()", 500 );
    }
}

document.observe("dom:loaded", function() {
    observeTopCart();
});



