mirror of
https://github.com/lubuntu-team/lubuntu.me.git
synced 2025-02-23 08:11:08 +00:00
574 lines
15 KiB
JavaScript
574 lines
15 KiB
JavaScript
|
/*! elementor - v1.9.3 - 21-01-2018 */
|
||
|
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
|
||
|
( function( $ ) {
|
||
|
'use strict';
|
||
|
|
||
|
var ElementorAdminApp = {
|
||
|
|
||
|
maintenanceMode: null,
|
||
|
|
||
|
cacheElements: function() {
|
||
|
this.cache = {
|
||
|
$window: $( window ),
|
||
|
$body: $( 'body' ),
|
||
|
$switchMode: $( '#elementor-switch-mode' ),
|
||
|
$goToEditLink: $( '#elementor-go-to-edit-page-link' ),
|
||
|
$switchModeInput: $( '#elementor-switch-mode-input' ),
|
||
|
$switchModeButton: $( '#elementor-switch-mode-button' ),
|
||
|
$elementorLoader: $( '.elementor-loader' ),
|
||
|
$builderEditor: $( '#elementor-editor' ),
|
||
|
$importButton: $( '#elementor-import-template-trigger' ),
|
||
|
$importArea: $( '#elementor-import-template-area' ),
|
||
|
$settingsForm: $( '#elementor-settings-form' ),
|
||
|
$settingsTabsWrapper: $( '#elementor-settings-tabs-wrapper' )
|
||
|
};
|
||
|
|
||
|
this.cache.$settingsFormPages = this.cache.$settingsForm.find( '.elementor-settings-form-page' );
|
||
|
|
||
|
this.cache.$activeSettingsPage = this.cache.$settingsFormPages.filter( '.elementor-active' );
|
||
|
|
||
|
this.cache.$settingsTabs = this.cache.$settingsTabsWrapper.children();
|
||
|
|
||
|
this.cache.$activeSettingsTab = this.cache.$settingsTabs.filter( '.nav-tab-active' );
|
||
|
},
|
||
|
|
||
|
toggleStatus: function() {
|
||
|
var isElementorMode = this.isElementorMode();
|
||
|
|
||
|
this.cache.$body
|
||
|
.toggleClass( 'elementor-editor-active', isElementorMode )
|
||
|
.toggleClass( 'elementor-editor-inactive', ! isElementorMode );
|
||
|
},
|
||
|
|
||
|
bindEvents: function() {
|
||
|
var self = this;
|
||
|
|
||
|
self.cache.$switchModeButton.on( 'click', function( event ) {
|
||
|
event.preventDefault();
|
||
|
|
||
|
if ( self.isElementorMode() ) {
|
||
|
self.cache.$switchModeInput.val( '' );
|
||
|
} else {
|
||
|
self.cache.$switchModeInput.val( true );
|
||
|
|
||
|
var $wpTitle = $( '#title' );
|
||
|
|
||
|
if ( ! $wpTitle.val() ) {
|
||
|
$wpTitle.val( 'Elementor #' + $( '#post_ID' ).val() );
|
||
|
}
|
||
|
|
||
|
if ( wp.autosave ) {
|
||
|
wp.autosave.server.triggerSave();
|
||
|
}
|
||
|
|
||
|
self.animateLoader();
|
||
|
|
||
|
$( document ).on( 'heartbeat-tick.autosave', function() {
|
||
|
self.cache.$window.off( 'beforeunload.edit-post' );
|
||
|
|
||
|
window.location = self.cache.$goToEditLink.attr( 'href' );
|
||
|
} );
|
||
|
}
|
||
|
|
||
|
self.toggleStatus();
|
||
|
} );
|
||
|
|
||
|
self.cache.$goToEditLink.on( 'click', function() {
|
||
|
self.animateLoader();
|
||
|
} );
|
||
|
|
||
|
$( 'div.notice.elementor-message-dismissed' ).on( 'click', 'button.notice-dismiss', function( event ) {
|
||
|
event.preventDefault();
|
||
|
|
||
|
$.post( ajaxurl, {
|
||
|
action: 'elementor_set_admin_notice_viewed',
|
||
|
notice_id: $( this ).closest( '.elementor-message-dismissed' ).data( 'notice_id' )
|
||
|
} );
|
||
|
} );
|
||
|
|
||
|
$( '#elementor-clear-cache-button' ).on( 'click', function( event ) {
|
||
|
event.preventDefault();
|
||
|
var $thisButton = $( this );
|
||
|
|
||
|
$thisButton.removeClass( 'success' ).addClass( 'loading' );
|
||
|
|
||
|
$.post( ajaxurl, {
|
||
|
action: 'elementor_clear_cache',
|
||
|
_nonce: $thisButton.data( 'nonce' )
|
||
|
} )
|
||
|
.done( function() {
|
||
|
$thisButton.removeClass( 'loading' ).addClass( 'success' );
|
||
|
} );
|
||
|
} );
|
||
|
|
||
|
$( '#elementor-library-sync-button' ).on( 'click', function( event ) {
|
||
|
event.preventDefault();
|
||
|
var $thisButton = $( this );
|
||
|
|
||
|
$thisButton.removeClass( 'success' ).addClass( 'loading' );
|
||
|
|
||
|
$.post( ajaxurl, {
|
||
|
action: 'elementor_reset_library',
|
||
|
_nonce: $thisButton.data( 'nonce' )
|
||
|
} )
|
||
|
.done( function() {
|
||
|
$thisButton.removeClass( 'loading' ).addClass( 'success' );
|
||
|
} );
|
||
|
} );
|
||
|
|
||
|
$( '#elementor-replace-url-button' ).on( 'click', function( event ) {
|
||
|
event.preventDefault();
|
||
|
var $this = $( this ),
|
||
|
$tr = $this.parents( 'tr' ),
|
||
|
$from = $tr.find( '[name="from"]' ),
|
||
|
$to = $tr.find( '[name="to"]' );
|
||
|
|
||
|
$this.removeClass( 'success' ).addClass( 'loading' );
|
||
|
|
||
|
$.post( ajaxurl, {
|
||
|
action: 'elementor_replace_url',
|
||
|
from: $from.val(),
|
||
|
to: $to.val(),
|
||
|
_nonce: $this.data( 'nonce' )
|
||
|
} )
|
||
|
.done( function( response ) {
|
||
|
$this.removeClass( 'loading' );
|
||
|
|
||
|
if ( response.success ) {
|
||
|
$this.addClass( 'success' );
|
||
|
}
|
||
|
|
||
|
var dialogsManager = new DialogsManager.Instance();
|
||
|
dialogsManager.createWidget( 'alert', {
|
||
|
message: response.data
|
||
|
} ).show();
|
||
|
} );
|
||
|
} );
|
||
|
|
||
|
self.cache.$settingsTabs.on( {
|
||
|
click: function( event ) {
|
||
|
event.preventDefault();
|
||
|
|
||
|
event.currentTarget.focus(); // Safari does not focus the tab automatically
|
||
|
},
|
||
|
focus: function() { // Using focus event to enable navigation by tab key
|
||
|
var hrefWithoutHash = location.href.replace( /#.*/, '' );
|
||
|
|
||
|
history.pushState( {}, '', hrefWithoutHash + this.hash );
|
||
|
|
||
|
self.goToSettingsTabFromHash();
|
||
|
}
|
||
|
} );
|
||
|
|
||
|
$( '.elementor-rollback-button' ).on( 'click', function( event ) {
|
||
|
event.preventDefault();
|
||
|
|
||
|
var $this = $( this ),
|
||
|
dialogsManager = new DialogsManager.Instance();
|
||
|
|
||
|
dialogsManager.createWidget( 'confirm', {
|
||
|
headerMessage: ElementorAdminConfig.i18n.rollback_to_previous_version,
|
||
|
message: ElementorAdminConfig.i18n.rollback_confirm,
|
||
|
strings: {
|
||
|
confirm: ElementorAdminConfig.i18n.yes,
|
||
|
cancel: ElementorAdminConfig.i18n.cancel
|
||
|
},
|
||
|
onConfirm: function() {
|
||
|
$this.addClass( 'loading' );
|
||
|
|
||
|
location.href = $this.attr( 'href' );
|
||
|
}
|
||
|
} ).show();
|
||
|
} );
|
||
|
|
||
|
$( '.elementor_css_print_method select' ).on( 'change', function() {
|
||
|
var $descriptions = $( '.elementor-css-print-method-description' );
|
||
|
|
||
|
$descriptions.hide();
|
||
|
$descriptions.filter( '[data-value="' + $( this ).val() + '"]' ).show();
|
||
|
} ).trigger( 'change' );
|
||
|
},
|
||
|
|
||
|
init: function() {
|
||
|
this.cacheElements();
|
||
|
|
||
|
this.bindEvents();
|
||
|
|
||
|
this.initTemplatesImport();
|
||
|
|
||
|
this.initMaintenanceMode();
|
||
|
|
||
|
this.goToSettingsTabFromHash();
|
||
|
},
|
||
|
|
||
|
initTemplatesImport: function() {
|
||
|
if ( ! this.cache.$body.hasClass( 'post-type-elementor_library' ) ) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
var self = this,
|
||
|
$importButton = self.cache.$importButton,
|
||
|
$importArea = self.cache.$importArea;
|
||
|
|
||
|
self.cache.$formAnchor = $( 'h1' );
|
||
|
|
||
|
$( '#wpbody-content' ).find( '.page-title-action:last' ).after( $importButton );
|
||
|
|
||
|
self.cache.$formAnchor.after( $importArea );
|
||
|
|
||
|
$importButton.on( 'click', function() {
|
||
|
$( '#elementor-import-template-area' ).toggle();
|
||
|
} );
|
||
|
},
|
||
|
|
||
|
initMaintenanceMode: function() {
|
||
|
var MaintenanceMode = require( 'elementor-admin/maintenance-mode' );
|
||
|
|
||
|
this.maintenanceMode = new MaintenanceMode();
|
||
|
},
|
||
|
|
||
|
isElementorMode: function() {
|
||
|
return !! this.cache.$switchModeInput.val();
|
||
|
},
|
||
|
|
||
|
animateLoader: function() {
|
||
|
this.cache.$goToEditLink.addClass( 'elementor-animate' );
|
||
|
},
|
||
|
|
||
|
goToSettingsTabFromHash: function() {
|
||
|
var hash = location.hash.slice( 1 );
|
||
|
|
||
|
if ( hash ) {
|
||
|
this.goToSettingsTab( hash );
|
||
|
}
|
||
|
},
|
||
|
|
||
|
goToSettingsTab: function( tabName ) {
|
||
|
var $activePage = this.cache.$settingsFormPages.filter( '#' + tabName );
|
||
|
|
||
|
if ( ! $activePage.length ) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
this.cache.$activeSettingsPage.removeClass( 'elementor-active' );
|
||
|
|
||
|
this.cache.$activeSettingsTab.removeClass( 'nav-tab-active' );
|
||
|
|
||
|
var $activeTab = this.cache.$settingsTabs.filter( '#elementor-settings-' + tabName );
|
||
|
|
||
|
$activePage.addClass( 'elementor-active' );
|
||
|
|
||
|
$activeTab.addClass( 'nav-tab-active' );
|
||
|
|
||
|
this.cache.$settingsForm.attr( 'action', 'options.php#' + tabName );
|
||
|
|
||
|
this.cache.$activeSettingsPage = $activePage;
|
||
|
|
||
|
this.cache.$activeSettingsTab = $activeTab;
|
||
|
}
|
||
|
};
|
||
|
|
||
|
$( function() {
|
||
|
ElementorAdminApp.init();
|
||
|
} );
|
||
|
|
||
|
window.elementorAdmin = ElementorAdminApp;
|
||
|
}( jQuery ) );
|
||
|
|
||
|
},{"elementor-admin/maintenance-mode":2}],2:[function(require,module,exports){
|
||
|
var ViewModule = require( 'elementor-utils/view-module' ),
|
||
|
MaintenanceModeModule;
|
||
|
|
||
|
MaintenanceModeModule = ViewModule.extend( {
|
||
|
getDefaultSettings: function() {
|
||
|
return {
|
||
|
selectors: {
|
||
|
modeSelect: '.elementor_maintenance_mode_mode select',
|
||
|
maintenanceModeTable: '#tab-maintenance_mode table',
|
||
|
maintenanceModeDescriptions: '.elementor-maintenance-mode-description',
|
||
|
excludeModeSelect: '.elementor_maintenance_mode_exclude_mode select',
|
||
|
excludeRolesArea: '.elementor_maintenance_mode_exclude_roles',
|
||
|
templateSelect: '.elementor_maintenance_mode_template_id select',
|
||
|
editTemplateButton: '.elementor-edit-template',
|
||
|
maintenanceModeError: '.elementor-maintenance-mode-error'
|
||
|
},
|
||
|
classes: {
|
||
|
isEnabled: 'elementor-maintenance-mode-is-enabled'
|
||
|
}
|
||
|
};
|
||
|
},
|
||
|
|
||
|
getDefaultElements: function() {
|
||
|
var elements = {},
|
||
|
selectors = this.getSettings( 'selectors' );
|
||
|
|
||
|
elements.$modeSelect = jQuery( selectors.modeSelect );
|
||
|
elements.$maintenanceModeTable = elements.$modeSelect.parents( selectors.maintenanceModeTable );
|
||
|
elements.$excludeModeSelect = elements.$maintenanceModeTable.find( selectors.excludeModeSelect );
|
||
|
elements.$excludeRolesArea = elements.$maintenanceModeTable.find( selectors.excludeRolesArea );
|
||
|
elements.$templateSelect = elements.$maintenanceModeTable.find( selectors.templateSelect );
|
||
|
elements.$editTemplateButton = elements.$maintenanceModeTable.find( selectors.editTemplateButton );
|
||
|
elements.$maintenanceModeDescriptions = elements.$maintenanceModeTable.find( selectors.maintenanceModeDescriptions );
|
||
|
elements.$maintenanceModeError = elements.$maintenanceModeTable.find( selectors.maintenanceModeError );
|
||
|
|
||
|
return elements;
|
||
|
},
|
||
|
|
||
|
bindEvents: function() {
|
||
|
var settings = this.getSettings(),
|
||
|
elements = this.elements;
|
||
|
|
||
|
elements.$modeSelect.on( 'change', function() {
|
||
|
elements.$maintenanceModeTable.toggleClass( settings.classes.isEnabled, !! elements.$modeSelect.val() );
|
||
|
elements.$maintenanceModeDescriptions.hide();
|
||
|
elements.$maintenanceModeDescriptions.filter( '[data-value="' + elements.$modeSelect.val() + '"]' ).show();
|
||
|
} ).trigger( 'change' );
|
||
|
|
||
|
elements.$excludeModeSelect.on( 'change', function() {
|
||
|
elements.$excludeRolesArea.toggle( 'custom' === elements.$excludeModeSelect.val() );
|
||
|
} ).trigger( 'change' );
|
||
|
|
||
|
elements.$templateSelect.on( 'change', function() {
|
||
|
var templateID = elements.$templateSelect.val();
|
||
|
|
||
|
if ( ! templateID ) {
|
||
|
elements.$editTemplateButton.hide();
|
||
|
elements.$maintenanceModeError.show();
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
var editUrl = ElementorAdminConfig.home_url + '?p=' + templateID + '&elementor';
|
||
|
|
||
|
elements.$editTemplateButton
|
||
|
.prop( 'href', editUrl )
|
||
|
.show();
|
||
|
elements.$maintenanceModeError.hide();
|
||
|
} ).trigger( 'change' );
|
||
|
}
|
||
|
} );
|
||
|
|
||
|
module.exports = MaintenanceModeModule;
|
||
|
|
||
|
},{"elementor-utils/view-module":4}],3:[function(require,module,exports){
|
||
|
var Module = function() {
|
||
|
var $ = jQuery,
|
||
|
instanceParams = arguments,
|
||
|
self = this,
|
||
|
settings,
|
||
|
events = {};
|
||
|
|
||
|
var ensureClosureMethods = function() {
|
||
|
$.each( self, function( methodName ) {
|
||
|
var oldMethod = self[ methodName ];
|
||
|
|
||
|
if ( 'function' !== typeof oldMethod ) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
self[ methodName ] = function() {
|
||
|
return oldMethod.apply( self, arguments );
|
||
|
};
|
||
|
});
|
||
|
};
|
||
|
|
||
|
var initSettings = function() {
|
||
|
settings = self.getDefaultSettings();
|
||
|
|
||
|
var instanceSettings = instanceParams[0];
|
||
|
|
||
|
if ( instanceSettings ) {
|
||
|
$.extend( settings, instanceSettings );
|
||
|
}
|
||
|
};
|
||
|
|
||
|
var init = function() {
|
||
|
self.__construct.apply( self, instanceParams );
|
||
|
|
||
|
ensureClosureMethods();
|
||
|
|
||
|
initSettings();
|
||
|
|
||
|
self.trigger( 'init' );
|
||
|
};
|
||
|
|
||
|
this.getItems = function( items, itemKey ) {
|
||
|
if ( itemKey ) {
|
||
|
var keyStack = itemKey.split( '.' ),
|
||
|
currentKey = keyStack.splice( 0, 1 );
|
||
|
|
||
|
if ( ! keyStack.length ) {
|
||
|
return items[ currentKey ];
|
||
|
}
|
||
|
|
||
|
if ( ! items[ currentKey ] ) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
return this.getItems( items[ currentKey ], keyStack.join( '.' ) );
|
||
|
}
|
||
|
|
||
|
return items;
|
||
|
};
|
||
|
|
||
|
this.getSettings = function( setting ) {
|
||
|
return this.getItems( settings, setting );
|
||
|
};
|
||
|
|
||
|
this.setSettings = function( settingKey, value, settingsContainer ) {
|
||
|
if ( ! settingsContainer ) {
|
||
|
settingsContainer = settings;
|
||
|
}
|
||
|
|
||
|
if ( 'object' === typeof settingKey ) {
|
||
|
$.extend( settingsContainer, settingKey );
|
||
|
|
||
|
return self;
|
||
|
}
|
||
|
|
||
|
var keyStack = settingKey.split( '.' ),
|
||
|
currentKey = keyStack.splice( 0, 1 );
|
||
|
|
||
|
if ( ! keyStack.length ) {
|
||
|
settingsContainer[ currentKey ] = value;
|
||
|
|
||
|
return self;
|
||
|
}
|
||
|
|
||
|
if ( ! settingsContainer[ currentKey ] ) {
|
||
|
settingsContainer[ currentKey ] = {};
|
||
|
}
|
||
|
|
||
|
return self.setSettings( keyStack.join( '.' ), value, settingsContainer[ currentKey ] );
|
||
|
};
|
||
|
|
||
|
this.forceMethodImplementation = function( methodArguments ) {
|
||
|
var functionName = methodArguments.callee.name;
|
||
|
|
||
|
throw new ReferenceError( 'The method ' + functionName + ' must to be implemented in the inheritor child.' );
|
||
|
};
|
||
|
|
||
|
this.on = function( eventName, callback ) {
|
||
|
if ( ! events[ eventName ] ) {
|
||
|
events[ eventName ] = [];
|
||
|
}
|
||
|
|
||
|
events[ eventName ].push( callback );
|
||
|
|
||
|
return self;
|
||
|
};
|
||
|
|
||
|
this.off = function( eventName, callback ) {
|
||
|
if ( ! events[ eventName ] ) {
|
||
|
return self;
|
||
|
}
|
||
|
|
||
|
if ( ! callback ) {
|
||
|
delete events[ eventName ];
|
||
|
|
||
|
return self;
|
||
|
}
|
||
|
|
||
|
var callbackIndex = events[ eventName ].indexOf( callback );
|
||
|
|
||
|
if ( -1 !== callbackIndex ) {
|
||
|
delete events[ eventName ][ callbackIndex ];
|
||
|
}
|
||
|
|
||
|
return self;
|
||
|
};
|
||
|
|
||
|
this.trigger = function( eventName ) {
|
||
|
var methodName = 'on' + eventName[ 0 ].toUpperCase() + eventName.slice( 1 ),
|
||
|
params = Array.prototype.slice.call( arguments, 1 );
|
||
|
|
||
|
if ( self[ methodName ] ) {
|
||
|
self[ methodName ].apply( self, params );
|
||
|
}
|
||
|
|
||
|
var callbacks = events[ eventName ];
|
||
|
|
||
|
if ( ! callbacks ) {
|
||
|
return self;
|
||
|
}
|
||
|
|
||
|
$.each( callbacks, function( index, callback ) {
|
||
|
callback.apply( self, params );
|
||
|
} );
|
||
|
|
||
|
return self;
|
||
|
};
|
||
|
|
||
|
init();
|
||
|
};
|
||
|
|
||
|
Module.prototype.__construct = function() {};
|
||
|
|
||
|
Module.prototype.getDefaultSettings = function() {
|
||
|
return {};
|
||
|
};
|
||
|
|
||
|
Module.extendsCount = 0;
|
||
|
|
||
|
Module.extend = function( properties ) {
|
||
|
var $ = jQuery,
|
||
|
parent = this;
|
||
|
|
||
|
var child = function() {
|
||
|
return parent.apply( this, arguments );
|
||
|
};
|
||
|
|
||
|
$.extend( child, parent );
|
||
|
|
||
|
child.prototype = Object.create( $.extend( {}, parent.prototype, properties ) );
|
||
|
|
||
|
child.prototype.constructor = child;
|
||
|
|
||
|
/*
|
||
|
* Constructor ID is used to set an unique ID
|
||
|
* to every extend of the Module.
|
||
|
*
|
||
|
* It's useful in some cases such as unique
|
||
|
* listener for frontend handlers.
|
||
|
*/
|
||
|
var constructorID = ++Module.extendsCount;
|
||
|
|
||
|
child.prototype.getConstructorID = function() {
|
||
|
return constructorID;
|
||
|
};
|
||
|
|
||
|
child.__super__ = parent.prototype;
|
||
|
|
||
|
return child;
|
||
|
};
|
||
|
|
||
|
module.exports = Module;
|
||
|
|
||
|
},{}],4:[function(require,module,exports){
|
||
|
var Module = require( './module' ),
|
||
|
ViewModule;
|
||
|
|
||
|
ViewModule = Module.extend( {
|
||
|
elements: null,
|
||
|
|
||
|
getDefaultElements: function() {
|
||
|
return {};
|
||
|
},
|
||
|
|
||
|
bindEvents: function() {},
|
||
|
|
||
|
onInit: function() {
|
||
|
this.initElements();
|
||
|
|
||
|
this.bindEvents();
|
||
|
},
|
||
|
|
||
|
initElements: function() {
|
||
|
this.elements = this.getDefaultElements();
|
||
|
}
|
||
|
} );
|
||
|
|
||
|
module.exports = ViewModule;
|
||
|
|
||
|
},{"./module":3}]},{},[1])
|
||
|
//# sourceMappingURL=admin.js.map
|