advancedConfigWriteHandler: function()

in script.js [104:182]


		advancedConfigWriteHandler: function() {
			$('div#fbmcc-page-params ul li .fbmcc-displaySetting').on('change',
				function () {
          var pages = [];
          if ($(this).hasClass("fbmcc-menuParentItem")) {
            that = $(this);
            $(this).parent().find('ul.fbmcc-submenu').find('input:checkbox').each(function() {
              if (that.is(":checked")) {
                $(this).prop("checked", true);
              } else {
                $(this).prop("checked", false);
              }
            });
          } else if ($(this).hasClass("fbmcc-submenuOption")) {
            var has_selected_item = false;
            var has_unselected_item = false;

            $(this).parent().parent().find('input:checkbox.fbmcc-submenuOption').each(function() {
              if ($(this).is(":checked")) {
                has_selected_item = true;
                if ($(this).hasClass("fbmcc-activePageOption")) {
                  pages.push($(this).attr('id').replace('pageid_', ''));
                }
              } else {
                has_unselected_item = true;
              }
            });
            if (has_selected_item && has_unselected_item) {
              $(this).parent().parent().parent().find('input:checkbox.fbmcc-menuParentItem').prop({
                checked: false,
                indeterminate: true
              });
            }
          }

          var data = {
            'action' : 'fbmcc_update_options',
            'pageTypes' : {
              all: $('#fbmcc-deploymentSelector').val() == 1 ? 1 : 0,
              category_index : $("#cbShowCategoryIndex").is(":checked") ? 1 : 0,
              front_page : $("#cbShowFrontPage").is(":checked") ? 1 : 0,
              pages : $("#cbShowPages").is(":checked") ? [] : pages,
              pages_all : $("#cbShowPages").is(":checked") ? 1 : 0,
              posts : $("#cbShowSinglePostView").is(":checked") ? 1 : 0,
              product_pages : $("#cbShowProductPages").is(":checked") ? 1 : 0,
              tag_index : $("#cbShowTagsIndex").is(":checked") ? 1 : 0,
            },
            '_wpnonce' : ajax_object.nonce,
          };
          if (!$('div.fbmcc-deploymentMenu').hasClass("hidden")) {
            $('#fbmcc-saveStatus-error').addClass('hidden');
            $('#fbmcc-saveStatus-saved').addClass('hidden');
            $('#fbmcc-saveStatus-saving').removeClass('hidden');
            $('#fbmcc-saveStatus-saving').delay(2000).fadeOut();
          }
          jQuery.ajax({
            type: 'POST',
            url: ajax_object.ajaxurl,
            data: data,
            error: function(results) {
              if (!$('div.fbmcc-deploymentMenu').hasClass("hidden")) {
                $('#fbmcc-saveStatus-error').removeClass('hidden');
                $('#fbmcc-saveStatus-saved').addClass('hidden');
                $('#fbmcc-saveStatus-saving').addClass('hidden');
                $('#fbmcc-saveStatus-error').delay(2000).fadeOut();
              }
            },
            success: function(results) {
              if (!$('div.fbmcc-deploymentMenu').hasClass("hidden")) {
                $('#fbmcc-saveStatus-error').addClass('hidden');
                $('#fbmcc-saveStatus-saved').removeClass('hidden');
                $('#fbmcc-saveStatus-saving').addClass('hidden');
                $('#fbmcc-saveStatus-saved').delay(2000).fadeOut();
              }
            }
          });
				}
			)
    },