var ajax = null;
function ajaxCall(post_url, post_vars, funcOnResponse)
{
    try { ajax.cancel(); } catch(e) {}
    ajax=new Request({method:'post', url: post_url, link: 'cancel', onSuccess: function(responseText, responseXML) { funcOnResponse(responseText); }});
    ajax.send(post_vars);
}

var scroll = null;

function initWindow()
{
    $$('.dropmain').each(function(item) { var c = item.getCoordinates(); item.store('he',c.height); });
    hideAllDD(false);
    initMainMenu();   
    initMainPage();
    initFlash();
    initGoHome();
    try {
        scroll = new Fx.Scroll(window, {wait:false, duration: 1000, transition: Fx.Transitions.Quad.easeInOut });
    } catch(e) { }
}

function initGoHome()
{
    var c = $('nav1').getCoordinates();
    var gh = $('gohome');
    gh.setStyle('left',c.left);
    gh.setStyle('top',c.top);
}

function initFlash()
{
    var jsflash = $('jsflash');
    var jsuri = $('jsflashuri');
    if(jsflash && jsuri) {
        ajaxCall(jsuri.value, 'loc=flashloader&cacheid='+Math.random()+'&flash='+jsflash.value, onReceiveFlash);
    }
}

function onReceiveFlash(txt)
{
    $('flash').set('html', txt);
    $('flash').setStyle('z-index',1);
}

function initMainPage()
{
    var lnk = $('movelnk');
    if(!lnk) return;
    var mmo = $('mainmove');
    var c = mmo.getCoordinates();
    mmo.store('he', c.height);
    mmo.setStyle('height', 120);
    lnk.addEvent('click', function() {
        if(lnk.hasClass('uarr')) {
            // must toggle up
            mmo.tween('height', 120);
            lnk.set('html','Vezi toate articolele');
            lnk.removeClass('uarr');
        } else {
            // must toggle down
            mmo.tween('height', mmo.retrieve('he'));
            lnk.set('html', 'Doar articolele principale');
            lnk.addClass('uarr');
        }
    }); 
}

function initMainMenu()
{
    var last_x = 0;
    var kx = $('content_main').getCoordinates();
    last_x = kx.width + kx.left;

    $$('.mmlnk').each(function(item)
    {
        var mmid = item.id.substring(3);
        var dd = $('dd_'+mmid);
        item.addEvent('mouseover', function() {
            hideAllDD(false);
            item.addClass('on');
            var ci = $('ma_'+dd.id.substring(3)).getCoordinates();
            
            var offs_x = ci.left+1;
            var offs_y = ci.top+18;
            if(Browser.Engine.webkit) {
                offs_x = ci.left;
            } else if(Browser.Engine.trident) {
                offs_x = ci.left-1; //  - 2;
                offs_y = ci.top + 24;
            }
            var hack_x = offs_x+1;
            if(offs_x + 194 > last_x) {
                offs_x = last_x - 193;
                if(Browser.Engine.webkit) offs_x -=1;
                else if(Browser.Engine.trident) offs_x-=2;
            }
           
            $('ddhack').setStyle('width', ci.width-2);
            $('ddhack').setPosition({x:hack_x, y:offs_y-2});
            $('ddhack').setStyle('display','block');
            
            dd.setPosition({x:offs_x, y:offs_y});
            dd.setStyle('height',1);
            dd.setStyle('display','block');
            var th = dd.retrieve('he');
            if(th < 306) th = 306;
            dd.tween('height',th);
        });
        item.addEvent('mouseout', function() { hideAllDD(true); });
        
        dd.getElements('a').each(function(item) {
            item.addEvent('mouseover', function() { clearTimeout(mmto); });
            item.addEvent('mouseout', function() { hideAllDD(true); });
        });
        dd.addEvent('mouseover', function() { clearTimeout(mmto); });
        dd.addEvent('mouseout', function() { hideAllDD(true); });
        $('ddhack').addEvent('mouseover', function () { clearTimeout(mmto); });
        $('ddhack').addEvent('mouseout', function() { hideAllDD(true); });
    });
}

var mmto=null;
function hideAllDD(isto)
{
    if(mmto) { clearTimeout(mmto); mmto = null; }
    if(isto==true) {
        mmto = setTimeout('hideAllDD()',500);
        return;
    }
    $('ddhack').setStyle('display','none');
    $$('.mmlnk').each(function(item) { item.removeClass('on'); });

    $$('.dropmain').each(function(item) { if(item.get('tween')) item.get('tween').cancel(); item.setStyle('display','none');});
}

function scrollToTop()
{
    if(scroll != null) scroll.toTop();
    else window.scrollTo(0,0);
}


function showOnlyOne(idShow, classHide)
{
    $$('.'+classHide).each(function(item) { item.setStyle('display','none'); });
    $(''+idShow).setStyle('display','block');
}
