X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=view%2Ftheme%2Ffrio%2Fjs%2Fevent_edit.js;h=628835a5f0ba1958f977cc9376526fae970ab35a;hb=cf9a65cded8e8f270aedbb3ba46d5fe2fe351b4c;hp=1cefed77f5aa1165dca549c06901d8a1a947fb0c;hpb=7886de5c393591eaf4e05f2a496a4f40060cb262;p=friendica.git diff --git a/view/theme/frio/js/event_edit.js b/view/theme/frio/js/event_edit.js index 1cefed77f5..628835a5f0 100644 --- a/view/theme/frio/js/event_edit.js +++ b/view/theme/frio/js/event_edit.js @@ -1,7 +1,7 @@ -$(document).ready(function() { - // go to the permissions tab if the checkbox is checked - $('body').on("change", "#id_share", function() { - if ($('#id_share').is(':checked') && !( $('#id_share').attr("disabled"))) { +$(document).ready(function() { + // Go to the permissions tab if the checkbox is checked. + $('body').on("click", "#id_share", function() { + if ($('#id_share').is(':checked') && !( $('#id_share').attr("disabled"))) { $('#acl-wrapper').show(); $("a#event-perms-lnk").parent("li").show(); toggleEventNav("a#event-perms-lnk"); @@ -13,12 +13,12 @@ $(document).ready(function() { } }).trigger('change'); - // disable the finish time input if the user disable it + // Disable the finish time input if the user disable it. $('body').on("change", "#id_nofinish", function() { enableDisableFinishDate() }).trigger('change'); - // js for the permission sextion + // JS for the permission section. $('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() { var selstr; $('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() { @@ -31,29 +31,46 @@ $(document).ready(function() { }).trigger('change'); - // Change the event nav menu.tabs on click + // Change the event nav menu.tabs on click. $("body").on("click", "#event-nav > li > a", function(e){ e.preventDefault(); toggleEventNav(this); }); - // this is experimental. We maybe can make use of it to inject - // some js code while the event modal opens + // This is experimental. We maybe can make use of it to inject + // some js code while the event modal opens. //$('body').on('show.bs.modal', function () { // enableDisableFinishDate(); //}); - // clear some elements (e.g. the event-preview container) when - // selecting a event nav link so it don't appear more than once + // Clear some elements (e.g. the event-preview container) when + // selecting a event nav link so it don't appear more than once. $('body').on("click", "#event-nav a", function(e) { $("#event-preview").empty(); e.preventDefault(); }); + // Construct a new ACL. We need this everytime the 'event-edit-form' is loaded + // without page reloading (e.g. closing an old modal and open a new modal). + // Otherwise we wouldn't get the ACL data. + /// @todo: Try to implement some kind of ACL reloading in acl.js. + + var eventPerms = document.getElementById('event-edit-form'); + + acl = new ACL( + baseurl + "/acl", + [ + JSON.parse(eventPerms.dataset.allow_cid), + JSON.parse(eventPerms.dataset.allow_gid), + JSON.parse(eventPerms.dataset.deny_cid), + JSON.parse(eventPerms.dataset.deny_gid) + ] + ); + acl.get(0, 100); }); // Load the html of the actual event and incect the output to the -// event-edit section +// event-edit section. function doEventPreview() { $('#event-edit-preview').val(1); $.post('events',$('#event-edit-form').serialize(), function(data) { @@ -63,21 +80,8 @@ function doEventPreview() { } -// this function load the content of the edit url into a modal -function eventEdit(url) { - var char = qOrAmp(url); - url = url + char + 'mode=none'; - - $.get(url, function(data) { - $("#modal-body").empty(); - $("#modal-body").append(data); - }).done(function() { - loadModalTitle(); - }); -} - -// the following functions show/hide the specific event-edit content -// in dependence of the selected nav +// The following functions show/hide the specific event-edit content +// in dependence of the selected nav. function eventAclActive() { $("#event-edit-wrapper, #event-preview, #event-desc-wrapper").hide(); $("#event-acl-wrapper").show(); @@ -94,8 +98,8 @@ function eventEditActive() { $("#event-acl-wrapper, #event-preview, #event-desc-wrapper").hide(); $("#event-edit-wrapper").show(); - //make sure jot text does have really the active class (we do this because there are some - // other events which trigger jot text + // Make sure jot text does have really the active class (we do this because there are some + // other events which trigger jot text. toggleEventNav($("#event-edit-lnk")); } @@ -104,17 +108,17 @@ function eventDescActive() { $("#event-desc-wrapper").show(); } -// Give the active "event-nav" list element the class "active" +// Give the active "event-nav" list element the class "active". function toggleEventNav (elm) { - // select all li of #event-nav and remove the active class + // Select all li of #event-nav and remove the active class. $(elm).closest("#event-nav").children("li").removeClass("active"); - // add the active class to the parent of the link which was selected + // Add the active class to the parent of the link which was selected. $(elm).parent("li").addClass("active"); } -// disable the input for the finish date if it is not available +// Disable the input for the finish date if it is not available. function enableDisableFinishDate() { if( $('#id_nofinish').is(':checked')) $('#id_finish_text').prop("disabled", true);