ru-se.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

customizer-current-page-settings.js (3109B)


      1 (function (root, CP_Customizer, $) {
      2 
      3     var containerTemplate = $('' +
      4         '<li id="cp-current-page-settings-popup" class="customizer-right-section">' +
      5         '    <span data-close-right-sidebar="true" title="' + window.CP_Customizer.translateCompanionString('Close Panel') + '" class="close-panel"></span>' +
      6         '    <ul class="current-page-settings-container section-settings-container accordion-section-content no-border"></ul>' +
      7         ' </li>');
      8 
      9     CP_Customizer.addModule(function (CP_Customizer) {
     10 
     11         var control = wp.customize.panel('page_content_panel');
     12         control.container.append(containerTemplate);
     13 
     14         var $container = $("#cp-current-page-settings-popup .current-page-settings-container");
     15 
     16         CP_Customizer.panels.pageContentPanel = CP_Customizer.panels.instantiate({
     17             init: function (data) {
     18                 if (this._initialized) {
     19                     return;
     20                 }
     21 
     22                 this._initialized = true;
     23 
     24                 var self = this;
     25 
     26                 // sort asc by priority
     27                 var areas = Object.getOwnPropertyNames(this._areas).sort(function (a, b) {
     28                     return self._areas[a].priority - self._areas[b].priority;
     29                 });
     30 
     31                 areas = CP_Customizer.hooks.applyFilters('page_settings_sidebar_sort_areas', areas);
     32 
     33                 areas.forEach(function (area) {
     34                     if (self._areas[area] && self._areas[area].canInclude()) {
     35                         CP_Customizer.hooks.doAction('before_page_settings_sidebar_area_' + name, $container);
     36 
     37                         self._processExtendAreaQueue(self._areas[area]);
     38                         self._areas[area].initAreaTitle($container);
     39                         self._areas[area].init($container);
     40 
     41                         CP_Customizer.hooks.doAction('after_page_settings_sidebar_area_' + name, $container);
     42                     }
     43                 });
     44 
     45                 this.update(data);
     46             },
     47             update: function (data) {
     48                 for (var area in this._areas) {
     49 
     50                     if (this._areas[area].canInclude()) {
     51 
     52                         CP_Customizer.hooks.doAction('update_before_page_settings_sidebar_area_' + name, data);
     53                         this._areas[area].update(data);
     54                         CP_Customizer.hooks.doAction('update_after_page_settings_sidebar_area_' + name, data);
     55 
     56                     }
     57                 }
     58             }
     59         });
     60 
     61         CP_Customizer.hooks.addAction('right_sidebar_opened', function (sidebarId) {
     62             if (sidebarId !== 'cp-current-page-settings') {
     63                 return;
     64             }
     65 
     66             var data = {
     67                 'id': CP_Customizer.preview.data('pageID')
     68             };
     69 
     70             CP_Customizer.panels.pageContentPanel.init(data);
     71             CP_Customizer.panels.pageContentPanel.update(data);
     72             CP_Customizer.hooks.doAction('page_setting_sidebar_opened', {});
     73         });
     74     });
     75 
     76 })(window, CP_Customizer, jQuery);