(function ($) { $.fn.OptionsMenu = function (caller) { // Init var modalcontent = $(this); this.$body = $(document.body); // Afmetingen var open_width = $(modalcontent).find("ul").width(); var open_height = $(modalcontent).find("ul").height(); var close_height = $(modalcontent).find(".sticky-content-close").height(); // Open menu $(modalcontent).addClass("sticky-open"); $(modalcontent).find(".sticky-content-open").css("width", open_width); $(modalcontent).find(".sticky-content-open").css("height", open_height); // Zet de content 'voor' de background $(modalcontent).css("z-index", "1041"); $(caller).addClass("modal-opened"); // Aanmaken achtergrond var backdrop = $(document.createElement('div')) .addClass('modal-backdrop fade') .appendTo(this.$body); // Trigger fade in voor achtergrond $(backdrop)[0].offsetWidth; $(backdrop).addClass('in'); // Achtergrond en initiele opener 'click' alles verwijderen en uitfaden $(".modal-backdrop, .sticky-content-open").on('click', function () { $(modalcontent).removeClass("sticky-open"); $(modalcontent).find(".sticky-content-open").css("width", 0); $(modalcontent).find(".sticky-content-open").css("height", 0); $(backdrop).removeClass('in').one("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function () { $(this).remove(); $(modalcontent).css("z-index", ""); $(caller).removeClass("modal-opened"); }); }); // Modal content fade in $(modalcontent).fadeIn(150); return this; }; }(jQuery)); $(document).ready(function () { initModule({ module: "Erkenning", labels: ["Leerbedrijf"] }); $(document).on("LanguageChange", function (e) { var url = '/UI/ChangeLanguage'; $.ajax({ url: url, cache: false, cancelExisting: true, success: function (data) { location.reload(); }, error: function (data, error) { console.log(error); } }); }); $(document).on("OrganisatieChange", function (e) { location.reload(); }); initHomePage(); }); function initHomePage() { if ($('#home').length) { initErkenningActiesPartial(); initErkenningKwalificatieDetailsModal(); initStickyOptions(); } } function initErkenningActiesPartial() { var container = $("#erkenning-acties-container"); $(".message-success, .message-fail", container).fadeOut(5000); $(".btn-pdf").click(function () { var action = $(this).data('action'); $.post(action) .done(function (result) { if (result.IsToegevoegd) openDocumentGereedModal(result.Bestandsnaam); }); }); } function initErkenningKwalificatieDetailsModal() { $(".wp-warning").on("click", function (e) { e.preventDefault(); e.stopPropagation(); }); $('div').on('show.bs.collapse', function (e) { if (e.currentTarget.id.includes('opleidingmogelijkheid') && $(window).width() < 768) { // Backbutton moet de overlay sluiten if (window.history && window.history.pushState) { window.history.pushState('detailsoverlay', null, './#detailsoverlay'); $(window).on('popstate', function () { $(window).off('popstate'); $("#ekdetail").removeClass("overlay-open"); }); } // Ophalen brond var s_kwalificatie = $(e.target).parent(); var s_titel = $(s_kwalificatie).find(".kolom-titel").html(); var s_kerntakenwerkprocessen = $(s_kwalificatie).find("ul").first(); var s_crebo = $(s_kwalificatie).find(".kolom-crebo").text(); var s_niveau = $(s_kwalificatie).find(".kolom-niveau").text(); var s_startdatum = $(s_kwalificatie).find(".kolom-startdatum").text(); var s_warning = $(s_kwalificatie).find(".wp-warning").length > 0; // Zoek overlay componenten var overlay = $("#ekdetail"); var overlay_body = $(overlay).find(".overlay-body"); var d_titel = $(overlay).find(".ol-kerntaak-titel"); var d_crebo = $(overlay).find(".kolom-crebo span"); var d_niveau = $(overlay).find(".kolom-niveau > span"); var d_startdatum = $(overlay).find(".kolom-startdatum > span"); var d_kerntakenwerkprocessen = $(overlay).find(".ol-kt-wp"); // Zet gegevens if (s_kwalificatie.hasClass("inaanvraag")) { $(overlay_body).addClass("inaanvraag"); } else { $(overlay_body).removeClass("inaanvraag"); } $(d_titel).html(s_titel); $(d_crebo).text(s_crebo); $(d_niveau).text(s_niveau); $(d_startdatum).text(s_startdatum); $(d_kerntakenwerkprocessen).html($(s_kerntakenwerkprocessen).clone()); if (s_warning) { $(".ol-kerntaak-warning").show(); } else { $(".ol-kerntaak-warning").hide(); } $('body').css("overflow", "hidden"); $(overlay).addClass("overlay-open"); $(overlay).find("a:first").on('click', function () { $('body').css("overflow", ""); }); // Cancel collapse e.stopPropagation(); e.preventDefault(); } }); $(document).on('click', "#ekdetailsclose", function () { history.back(); }); } function initStickyOptions() { $(".sticky-opener").on("click", function (e) { $('.sticky-options').OptionsMenu(".sticky-opener"); }); }