// NAVMENU - LEFT RIGHT
/* ******************************************************************************** */

/*
 function getXCoordinate() {
 return new Array(0, 1125, 2250, 3375, 4450, 5140, 6343, 7038, 8525, 9178, 11462, 13322, 15362, 16867, 19122, 20000, 22000, 24000, 26000, 28000, 30000, 32000, 34000, 36000, 38000, 40000, 42000);
 }
 */
function getXCoordinate(){
    return new Array(0, 2000, 4000, 6000, 8000, 10000, 12000, 14000, 16000, 18000, 20000, 22000, 24000, 26000, 28000, 30000, 32000, 34000, 36000, 38000, 40000, 42000, 44000, 46000, 48000, 50000);
}



function generateMenu(){
    var ScrollWidth = 2000;
    
    var MainContainerWidth = $("#MainContainer").width();
    var MainContainerHeight = $("#MainContainer").height();
    var MainContainerHeight = parseFloat(MainContainerHeight);
    
    // remove link-text
    $(".NavMenuDotsItem a").html('');
    $(".NavMenuDots a").html('');
    
    // function bindinds for navigation to the left and right
    $(".NavMenuClass").children("#NavMenuCenter").children("#NavMenuLeft").children("a").bind("click", navigateOneLeft);
    $(".NavMenuClass").children("#NavMenuCenter").children("#NavMenuRight").children("a").bind("click", navigateOneRight);
    
    // function binding for dot-navigation
    $(".NavMenuDotsItem").bind("click", navigateViaDots);
    
    // function binding for internal-links
    $(".internal-link").bind("click", navigateViaInternalLink);
}

function navigateOneLeft(){
    if (animating) {
        return false;
    };
    
    var XCoordinate = getXCoordinate();
    
    var PositionNow1 = $("#MainContainer").css("left");
    var PositionNow = parseFloat(PositionNow1);
    
    for (i = 0; i < (XCoordinate.length + 1); i++) {
        if ((XCoordinate[i] == -PositionNow) && (PositionNow < 0)) {
            var ScrollWidth = -(XCoordinate[i - 1] + PositionNow);
            break;
        };
            };
    
    var ScrollCurrent = $("#MainContainer").css("left");
    var ScrollCurrent = parseFloat(ScrollCurrent)
    var ScrollWidthLeft = ScrollCurrent + ScrollWidth
    
    if (ScrollCurrent >= 0) {
        animating = true;
        $("#MainContainer").animate({
            left: -22000
        }, 2000, "easeInOutQuad", function(){
            animating = false;
        });
    }
    else {
        animating = true;
        $("#MainContainer").animate({
            left: ScrollWidthLeft
        }, 2000, "easeInOutQuad", function(){
            animating = false;
        });
    };
    
    return false;
}

function navigateOneRight(){

    var XCoordinate = getXCoordinate();
    
    var MenuAnzahl = $("#StartMenu").children("div").length;
    
    if (animating) {
        return false;
    };
    
    var PositionNow1 = $("#MainContainer").css("left");
    
    var PositionNow = parseFloat(PositionNow1);
    
    var MaxWidth = XCoordinate[MenuAnzahl - 1];
    
    for (i = 0; i < (XCoordinate.length + 1); i++) {
        if ((XCoordinate[i] == -PositionNow) && (-PositionNow < MaxWidth)) {
            var ScrollWidth = XCoordinate[i + 1] + PositionNow;
            break;
        };
            };
    
    var ScrollCurrent = $("#MainContainer").css("left");
    var ScrollCurrent = parseFloat(ScrollCurrent)
    var ScrollWidthRight = ScrollCurrent - ScrollWidth
    
    
    // we have to navigate to the beginning
    if (ScrollCurrent <= -22000) {
        animating = true;
        $("#MainContainer").animate({
            left: 0
        }, 2000, "easeInOutQuad", function(){
            animating = false;
        });
    }
    // we can navigate one step further
    else {
        animating = true;
        $("#MainContainer").animate({
            left: ScrollWidthRight
        }, 2000, "easeInOutQuad", function(){
            animating = false;
        });
    };
    return false;
}

function navigateViaDots(){

    // don't navigate if user clicks on the active dot	
    if ($(this).hasClass("NavMenuDotsItemCurrent")) {
        return false;
    }
    
    var DotId = $(this).attr("id");
    var DotIdZahl = DotId.split("m");
    
    navigateToId(DotIdZahl[1]);
    
    return false;
}

function navigateViaInternalLink(){

    var _href = $(this).attr("href");
    
    var _id = _href.split("&")[0].split("=")[1];
    
    // overlay is visible => hide it first
   
	var OverlayPos = parseFloat($("#OverlayWrapper").css("top"));

    
    if (OverlayPos <= 0) {
        $("#OverlayWrapper").animate({
            top: "1000px"
        }, "slow", "linear", function(){
            navigateToId(_id);
            return false;
        });
    }
    else {
        navigateToId(_id);
        return false;
    }
    
    return false;
}

function navigateToId(_id){
    var PageContainerX = "PageContainer" + _id;
    
    var PageContainerScroll = $("#" + PageContainerX).position();
    
    var PageContainerScrollNegative = -PageContainerScroll.left
    
    $("#MainContainer").animate({
        left: PageContainerScrollNegative
    }, 3000, "easeInOutQuad", function(){
    
        if (PageContainerScrollNegative == 0) {
            $(".FCE-Frage1").addClass("FCE-Frage-selected");
        }
        else 
            if (PageContainerScrollNegative == -2000) {
                $(".FCE-Frage2").addClass("FCE-Frage-selected");
            }
            else 
                if (PageContainerScrollNegative == -4000) {
                    $(".FCE-Frage3").addClass("FCE-Frage-selected");
                }
        
        // $(".NavMenuClass").children("#NavMenuCenter").children("#NavMenuDots").("#NavMenuDotsItem" + DotIdZahl[1]).addClass("NavMenuDotsItemCurrent");
    });
    
    return false;
}
