﻿$(function() {
    // rating
    if ($.fn.rating) {
        $("input:ratio.star").rating();
        $(".star-rating a").qtip({
            show: { delay: 0 },
            position: { corner: { target: "topMiddle", tooltip: 'bottomMiddle'} },
            style: {
                padding: 0,
                background: 'none',
                color: '#0b88b7',
                border: { width: 0 }
            }
        });
    }

    // tab
    registerTab(".tabs", "Tab1");
    registerTab(".tabs", "Tab2");
    registerTab(".tabs", "Tab3");
    registerTab(".tabs", "Tab4");
    registerTab(".tabs", "Tab5");
    registerTab(".tabs", "Tab6");

    // accordion
    registerAccordion(".accordion", "foldMenu", "openclose");
    registerAccordion(".accordion", "vraag", "openclose02");

    // datepicker
    $(".datepicker").datepicker({
        constrainInput: true,
        dateFormat: "dd-mm-yy",
        showOtherMonths: true,
        currentText: "Vandaag",
        closeText: "<span>Sluiten</span>",
        prevText: "Vorige",
        nextText: "Volgende",
        showButtonPanel: true,
        buttonImage: "/Style%20Library/ReaalNL/images/icon-agenda.png",
        buttonImageOnly: true,
        changeMonth: true,
        changeYear: true,
        showOn: "button",
        dayNamesMin: ['ZO', 'MA', 'DI', 'WO', 'DO', 'VR', 'ZA'],
        dayNames: ['Zondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag'],
        monthNamesShort: ['Januari', 'Februari', 'Maart', 'April', 'Mei', 'Juni', 'Juli', 'Augustus', 'September', 'Oktober', 'November', 'December']
    });

    // slider
    $(".slider").slider({
        min: 0,
        max: 41,
        change: function(event, ui) {
            var input = $(this).parent(".slider-container").next("input:text.slider-input");
            if (ui.value <= 40 || (ui.value > 40 && input.val() <= 40)) {
                input.val(ui.value);
            }
        }
    });
    $(".slider-input").blur(function() {
        $(this).prev(".slider-container").children(".slider").slider("value", $(this).val());
    });
});

function registerTab(containerSelector, classSuffix) {
    var showClass = "show" + classSuffix;
    var hiddenClass = "hidden" + classSuffix;
    $(containerSelector + ">div[class$=" + classSuffix + "]>div[class$=_tabs] li[class!=active] .tab_middle a").click(function() {
        var index = $(this).parents("ul").children("li").index($(this).parents("li")[0]);
        var tabContainer = $(this).parents("div." + showClass).parent(containerSelector);
        tabContainer.children("div." + showClass).removeClass(showClass).addClass(hiddenClass);
        $(tabContainer.children("div")[index]).removeClass(hiddenClass).addClass(showClass);
    });
}

function registerAccordion(containerSelector, classPrefix, triggerClass) {
    var openClass = classPrefix + "Open";
    var closedClass = classPrefix + "Closed";
    $(containerSelector + " a." + triggerClass).click(function() {
        var current = $(this).parent();
        if (!current.hasClass(openClass) && !current.hasClass(closedClass)) {
            current = current.parent();
        }
        var current = $(this).parents("[class^=" + classPrefix + "]");
        if (current.hasClass(openClass)) {
            current.removeClass(openClass).addClass(closedClass);
        }
        else {
            current.parents(containerSelector).children("." + openClass).removeClass(openClass).addClass(closedClass);
            current.removeClass(closedClass).addClass(openClass);
        }
    });
}
