/*
 * Several functions
 * CB Site
 * some function enabled/disabled
 */

var landgoed = (function () {
//------------

// function max (x, y) {
//     if (x < y) {
//         return y;
//     }
//     return x;
// }

function balance_tops (nodes) {
    var local_max = 0;
    nodes.each(function () {
        local_max = Math.max($(this).offset().top, local_max);
    });
    nodes.each(function () {
        var me = $(this);
        var needs = local_max - me.offset().top;
        me.css('margin-top', needs + 20);
    });
};


function focus_self_label () {
    var me = $(this);
    if (me.hasClass('showing-label')) {
        me.removeClass('showing-label');
        if (me.val() == me.attr('title')) {
            me.val('');
        }
        if (me.attr('title') == 'Password') {
            me.attr('type', 'password');
        }
    }
}

function blur_self_label () {
    var me = $(this);
    if (!me.val() || me.val() == me.attr('title')) {
        me.addClass('showing-label');
        me.val(me.attr('title'));
        if (me.attr('title') == 'Password') {
            me.attr('type', 'text');
        }
    }
}

function label_with_title () {
    var me = $(this);
    if (!me.val()) {
        me.val(me.attr('title'));
        me.addClass('showing-label');
    }
    me.focus(focus_self_label);
    me.blur(blur_self_label);
};

function clear_self_labels () {
    var me = $(this);
    inps = me.find('.self-label');
    inps.each(function () {
        var input = $(this);
        input.unbind('blur');
        input.focus();
        input.blur();
    });
}


function show_skinpanel_with_content (content, callback) {
    containerPos = $('#container').offset();
    $('#skinpanel-mask').css({
        'height': $(document).height(),
        'margin-left': 0,
        'margin-right': 0,
        'width': '100%',
        'filter': 'alpha(opacity=90)'
    }).fadeIn();
    var skinpanel = $('#skinpanel');
    if (!skinpanel.length) {
        var skinpanel = $('<div id="skinpanel" class="container_12"><a href="#close" class="skinpanel-close-link">Sluiten</a><div id="skinpanel-inner" class="clearfix"></div></div>');
        skinpanel.hide();
        $('body').append(skinpanel);
    }
    var inner = skinpanel.find('#skinpanel-inner');
    inner.empty();
    inner.append(content.html());
    skinpanel.css({
        top: $(window).scrollTop() + 10,
        left: ($('body').width() - skinpanel.width()) / 2
    });
    skinpanel.fadeIn(400, callback);
    $('.skinpanel-close-link').click(close_skinpanel);
}

function close_skinpanel () {
    $('#skinpanel').fadeOut();
    $('#skinpanel-mask').fadeOut();
    return false;
}


function show_catering () {
    window.setTimeout(function () {
        show_skinpanel_with_content($('#catering-skinpanel'));        
    }, 600);
    return false;
}

$(function () {
    $('#nav a').add('a.scroll').click(function () {
        var target = $(this.hash);
        var hash = this.hash;
        // $target = $target.length && $target
        // || $('[name=' + this.hash.slice(1) +']');
        if (target.length) {
            var targetOffset = target.offset().top;
            $('html,body').animate({scrollTop: targetOffset}, 600);
            return target;
		}
	});
	
	
	$('#skinpanel-mask').click(close_skinpanel);
	
	$('.catering-link').click(show_catering);
	
	$('.self-label').each(label_with_title);
    $('form').submit(clear_self_labels);

    $('#slider').css({'position': 'absolute'});
	var nav = $('#nav');
	nav.css({'position': 'absolute'});

	var topmost_point = nav.offset().top;
    var left_point = $('#container').offset().left;
	var PADDING_TOP = 98; 
    var REAL_TOP = topmost_point - PADDING_TOP;
	var the_window = $(window);
	var NAV_IS_FIXED = (nav.css('position') == 'fixed');
	the_window.scroll(function () {
        if (the_window.scrollTop() > REAL_TOP) {
            if ($.browser.msie && $.browser.version == "6.0") {
                nav.css('top', the_window.scrollTop() + PADDING_TOP);
            } else if (!NAV_IS_FIXED) {
        	    nav.css({
                    left: left_point,
        	        top: PADDING_TOP,
        	        position: 'fixed'
        	    });
        	    NAV_IS_FIXED = true;
        	}
        } else {
            if (NAV_IS_FIXED) {
                nav.css({
                    position: 'absolute',
                    top: topmost_point,
                    left: ''
                });
                NAV_IS_FIXED = false;
            }
        }
	});
	
	the_window.resize(function () {
	    left_point = $('#container').offset().left;
	    if (NAV_IS_FIXED) {
    	    nav.css('left', left_point);	        
	    }
	});
});


//---

})();

