$(function() {

    /* fotobalk by snijboon, fix by ronan, refixed by snijboon */

    var maxScroll = $("#foto-balk").attr("scrollWidth") - $("#foto-balk").width();
    var scrollSnelheid = 2000;
    var ScrollUit = 0;
    var sl = false;
    var sr = false;
    $("#foto-balk").scrollLeft(0).animate({
        scrollLeft: maxScroll
    }, { queue: false, duration: 19500 })
    .mousemove(function(event) {
        if (ScrollUit == 0) {
            if (event.pageX > $(this).width() * 0.75  && $("#foto-balk").scrollLeft() !== maxScroll) {//rechts
                if (sl) {
                    $(this).stop();
                    sl = false;
                }
                if (!sr) {
                    sr = true;
					$("#foto-balk-sub").removeClass("test");
                    $(this).animate({
                        scrollLeft: maxScroll
                    }, scrollSnelheid, animComplete);
                }
            }
            else if (event.pageX < $(this).width() * 0.25 && $("#foto-balk").scrollLeft() !== 0) {//links
                if (sr && !sl) {
                    $(this).stop();
                    sr = false;
                }
                if (!sl) {
                    sl = true;
					$("#foto-balk-sub").removeClass("test");
                    $(this).animate({
                        scrollLeft: "0px"
                    }, scrollSnelheid, animComplete);
                }
            }
            else {
                animComplete();
                $(this).stop();
            }
        }
    });

    function animComplete() {
        sl = false;
        sr = false;
		$("#foto-balk-sub").addClass("test");
    }

    $("#foto-balk-mouseout").mouseout(function() {
        animComplete();
        $("#foto-balk").stop();
    });

    if ($.browser.msie && $.browser.version == 6.0) {
        $("#foto-balk-sub.test a").hover(
            function() {
                $(this).find("div").show();
                $(this).find("div").left($(this).left());
            },
            function() {
                $(this).find("div").hide();
            }
        );
    }

    /* einde fotobalk */

    $("#header a[id!=logo], .ajax-wissel, #foto-balk-sub a").click(function() {
        wisselPagina($(this).attr("href"));
        return false;
    });

    $("#header a[id=logo]").click(function() {
        terugHomepage();
        return false;
    });

    var splitter = 0;
    var ajaxKlaar = 1;
    var QS = "";

    //globale ajax vars :)
    $(document).ajaxStart(function() {
        ajaxKlaar = 0;
    }).ajaxStop(function() {
        ajaxKlaar = 1;
    });

    /* ajax pagina wiselaar by snijboon */
    function wisselPagina(url) {
        if (url.indexOf('#') == -1 && ajaxKlaar == 1) {
            QS = "";
            $("#foto-balk").stop();
            $('<div id="laden"></div>').prependTo('#container').fadeIn('slow', function() {
                //kijken of er een querystring achter staat
                if (url.indexOf('?') !== -1) {
                    splitter = url.indexOf('?');
                    QS = url.substring(splitter, url.length).replace("?", "");
                    url = url.substring(0, splitter);
                }
                $.ajax({
                    type: "GET",
                    url: url,
                    data: "ajax=ja&" + QS,
                    cache: false,
                    success: function(d, s) {
                        $('#laden').fadeOut('slow', function() {
                            $(this).remove();
                            $('#content').fadeOut('slow', function() {
                                $("#content").html(d).fadeIn('slow');
                                Cufon.refresh();
                                wisselPaginaBind(url);
                            });
                        });
                    },
                    error: function(o, s, e) {
                        $('#content').html('de pagina kan niet worden geladen: ' + s);
                    }
                });
            });
        }
    }
    
    function wisselPaginaPost(form) {
		
		$("#foto-balk").stop();
		$('<div id="laden"></div>').prependTo('#container').fadeIn('slow', function() {
			$.ajax({
				type: "POST",
				url: form.action,
				data: $(form).serialize(),
				cache: false,
				success: function(d, s) {
					$('#laden').fadeOut('slow', function() {
						$(this).remove();
						$('#content').fadeOut('slow', function() {
							$("#content").html(d).fadeIn('slow');
							Cufon.refresh();
							wisselPaginaBind(form.action);
						});
					});
				},
				error: function(o, s, e) {
					$('#content').html('de pagina kan niet worden geladen: ' + s);
				}
			});
		});
        
    }

    function wisselPaginaBind(pagina) {
        $(".ajax-wissel").bind("click", function() {
            wisselPagina($(this).attr("href"));
            return false;
        });
		$("#content form").submit(function(){
			wisselPaginaPost(this);
			return false;
		});
        if (pagina.search(/projecten/) !== -1) {//projecten custom bindingen en effecten
            ScrollUit = 1;
            $("#foto-balk-sub").fadeTo("slow", 0.23);
            $("#knop-terug").bind("click", function() {
                terugHomepage();
            });
            $("#knop-vorige").bind("click", function() {
                if ($("#content-rechts img.actief").prev().prev().length > 0) {
                    $("#knop-volgende").removeClass("non-actief");
                    $("#content-rechts img.actief").fadeOut().removeClass("actief").prev().fadeIn().addClass("actief");
                }
                else {
                    $(this).addClass("non-actief");
                }
            });
            $("#knop-volgende").bind("click", function() {
                if ($("#content-rechts img.actief").next().length > 0) {
                    $("#knop-vorige").removeClass("non-actief");
                    $("#content-rechts img.actief").fadeOut().removeClass("actief").next().fadeIn().addClass("actief");
                }
                else {
                    $(this).addClass("non-actief");
                }
            });
        }
        else {
            $("#foto-balk-sub").fadeTo("slow", 1.00);
            ScrollUit = 0;
        }
    }

    /* einde ajax pagina wisselaar */

    function terugHomepage() {
        $("#foto-balk-sub").fadeTo("slow", 1.00);
        wisselPagina("./");
        ScrollUit = 0;
    }

});
