/**
 * @author Pampalini
 */


/**
 * Legördülő menü vezérlése
 */
function Menu(){
    this.speedy = 1;
    this.isSliding = false;
    this.isOut = true;
    this.margin = -80;
};

Menu.prototype.cmdSlideIn = function(){

    if (classMenu.isSliding || classMenu.isOut) {
        return;
    }
    classCore.cmdAddEvent(document, 'mousemove', classMenu.checkPositions);
    
    classMenu.isSliding = true;
    classMenu.isOut = true;
    var menu = $('menu');
    
    
    classMenu.timer = setInterval(function(){
        if (classMenu.speedy >= 22) {
            clearInterval(classMenu.timer);
            classMenu.isSliding = false;
            classMenu.margin = -80;
            classMenu.speedy = 1;
            return;
        }
        if (menu.style.cssText) { //IE kompatibilis
            menu.style.cssText = 'margin-top:' + classMenu.margin + 'px;';
        }
        //menu.setAttribute('topMargin',classMenu.margin);
        
        
        classMenu.margin = classMenu.margin + classMenu.speedy;
        classMenu.speedy++;
    }, 15);
    
};

Menu.prototype.cmdSlideOut = function(){

    if (classMenu.isSliding || !classMenu.isOut) {
        return;
    }
    classCore.cmdRemoveEvent(document, 'mousemove', classMenu.checkPositions);
    
    classMenu.isSliding = true;
    classMenu.isOut = false;
    var menu = $('menu');
    
    
    classMenu.timer = setInterval(function(){
        if (classMenu.speedy >= 22) {
        
            clearInterval(classMenu.timer);
            classMenu.isSliding = false;
            classMenu.margin = -288;
            classMenu.speedy = 1;
            return;
        }
        
        if (menu.style.cssText) { //IE kompatibilis
            menu.style.cssText = 'margin-top:' + classMenu.margin + 'px;';
        }
        classMenu.margin = classMenu.margin - classMenu.speedy;
        classMenu.speedy++;
    }, 10);
};

Menu.prototype.checkPositions = function(event){
    if (classMenu.isOut && !classMenu.isSliding) {
    
        var posx = 0, posy = 0;
        if (event == null) 
            event = window.event;
        if (event.pageX || event.pageY) {
            posx = event.pageX;
            posy = event.pageY;
        } else if (event.clientX || event.clientY) {
            if (document.documentElement.scrollTop) {
                posx = event.clientX + document.documentElement.scrollLeft;
                posy = event.clientY + document.documentElement.scrollTop;
            } else {
                posx = event.clientX + document.documentElement.scrollLeft;
                posy = event.clientY + document.documentElement.scrollTop;
            }
        }
        classMenu.pos_x = posx;
        classMenu.pos_y = posy;
        
        this.offset = classCore.getElementOffset($('menu'));
        
        var result = (classMenu.pos_y >= this.offset[1] &&
        classMenu.pos_y < this.offset[1] + this.offset[3] &&
        classMenu.pos_x >= this.offset[0] &&
        classMenu.pos_x < this.offset[0] + this.offset[2]);
        
        if (result) {
        } else {
            classMenu.cmdSlideOut();
        }
    }
};



var classMenu = new Menu();

