123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273 |
- ( function( $, api ) {
- var $document = $( document );
- wp.customize.bind( 'preview-ready', function() {
- var defaultTarget = window.parent === window ? null : window.parent;
- $document.on(
- 'click',
- '.site-header-focus-item .item-customizer-focus, .builder-item-focus .edit-row-action',
- function(e) {
- e.preventDefault();
- e.stopPropagation();
- var p = $( this ).closest( '.site-header-focus-item' );
- var section_id = p.attr( 'data-section' ) || '';
- if ( section_id ) {
- if ( defaultTarget.wp.customize.section( section_id ) ) {
- defaultTarget.wp.customize.section( section_id ).focus();
- }
- }
- }
- );
- $document.on(
- 'click',
- '.site-footer-focus-item .item-customizer-focus',
- function(e) {
- e.preventDefault();
- e.stopPropagation();
- var p = $( this ).closest( '.site-footer-focus-item' );
- var section_id = p.attr( 'data-section' ) || '';
- if ( section_id ) {
- if ( defaultTarget.wp.customize.section( section_id ) ) {
- defaultTarget.wp.customize.section( section_id ).focus();
- }
- }
- }
- );
- /**
- * Register partial refresh events at once asynchronously.
- */
- wp.customize.preview.bind( 'active', function() {
- var partials = $.extend({}, astraCustomizer.dynamic_partial_options), key;
- var register_partial = async function () {
- for ( key in partials) {
- wp.customize.selectiveRefresh.partial.add(
- new wp.customize.selectiveRefresh.Partial(
- key,
- _.extend({params: partials[key]}, partials[key])
- )
- );
- await null;
- }
- }
- register_partial();
- });
- } );
- /**
- * Inline logo and title css only.
- */
- wp.customize( 'astra-settings[logo-title-inline]', function( value ) {
- value.bind( function( is_checked ) {
- jQuery('#masthead').toggleClass( 'ast-logo-title-inline', is_checked );
- } );
- } );
- } )( jQuery, wp );
- /**
- * Apply Advanced CSS for the element
- *
- * @param string section Section ID.
- * @param string selector Base Selector.
- */
- function astra_builder_advanced_css( section, selector ) {
- var tablet_break_point = astraBuilderPreview.tablet_break_point || 768,
- mobile_break_point = astraBuilderPreview.mobile_break_point || 544;
- // Padding.
- wp.customize( 'astra-settings[' + section + '-padding]', function( value ) {
- value.bind( function( padding ) {
- if( ! padding.hasOwnProperty('desktop') ) {
- return
- }
- if(
- padding.desktop.bottom != '' || padding.desktop.top != '' || padding.desktop.left != '' || padding.desktop.right != '' ||
- padding.tablet.bottom != '' || padding.tablet.top != '' || padding.tablet.left != '' || padding.tablet.right != '' ||
- padding.mobile.bottom != '' || padding.mobile.top != '' || padding.mobile.left != '' || padding.mobile.right != ''
- ) {
- var dynamicStyle = '';
- dynamicStyle += selector + ' {';
- dynamicStyle += 'padding-left: ' + padding['desktop']['left'] + padding['desktop-unit'] + ';';
- dynamicStyle += 'padding-right: ' + padding['desktop']['right'] + padding['desktop-unit'] + ';';
- dynamicStyle += 'padding-top: ' + padding['desktop']['top'] + padding['desktop-unit'] + ';';
- dynamicStyle += 'padding-bottom: ' + padding['desktop']['bottom'] + padding['desktop-unit'] + ';';
- dynamicStyle += '} ';
- dynamicStyle += '@media (max-width: ' + tablet_break_point + 'px) {';
- dynamicStyle += selector + ' {';
- dynamicStyle += 'padding-left: ' + padding['tablet']['left'] + padding['tablet-unit'] + ';';
- dynamicStyle += 'padding-right: ' + padding['tablet']['right'] + padding['tablet-unit'] + ';';
- dynamicStyle += 'padding-top: ' + padding['tablet']['top'] + padding['tablet-unit'] + ';';
- dynamicStyle += 'padding-bottom: ' + padding['tablet']['bottom'] + padding['tablet-unit'] + ';';
- dynamicStyle += '} ';
- dynamicStyle += '} ';
- dynamicStyle += '@media (max-width: ' + mobile_break_point + 'px) {';
- dynamicStyle += selector + ' {';
- dynamicStyle += 'padding-left: ' + padding['mobile']['left'] + padding['mobile-unit'] + ';';
- dynamicStyle += 'padding-right: ' + padding['mobile']['right'] + padding['mobile-unit'] + ';';
- dynamicStyle += 'padding-top: ' + padding['mobile']['top'] + padding['mobile-unit'] + ';';
- dynamicStyle += 'padding-bottom: ' + padding['mobile']['bottom'] + padding['mobile-unit'] + ';';
- dynamicStyle += '} ';
- dynamicStyle += '} ';
- astra_add_dynamic_css( section + '-padding-toggle-button', dynamicStyle );
- } else {
- astra_add_dynamic_css( section + '-padding-toggle-button', '' );
- }
- } );
- } );
- // Margin.
- wp.customize( 'astra-settings[' + section + '-margin]', function( value ) {
- value.bind( function( margin ) {
- if( ! margin.hasOwnProperty('desktop') ) {
- return
- }
- if(
- margin.desktop.bottom != '' || margin.desktop.top != '' || margin.desktop.left != '' || margin.desktop.right != '' ||
- margin.tablet.bottom != '' || margin.tablet.top != '' || margin.tablet.left != '' || margin.tablet.right != '' ||
- margin.mobile.bottom != '' || margin.mobile.top != '' || margin.mobile.left != '' || margin.mobile.right != ''
- ) {
- var dynamicStyle = '';
- dynamicStyle += selector + ' {';
- dynamicStyle += 'margin-left: ' + margin['desktop']['left'] + margin['desktop-unit'] + ';';
- dynamicStyle += 'margin-right: ' + margin['desktop']['right'] + margin['desktop-unit'] + ';';
- dynamicStyle += 'margin-top: ' + margin['desktop']['top'] + margin['desktop-unit'] + ';';
- dynamicStyle += 'margin-bottom: ' + margin['desktop']['bottom'] + margin['desktop-unit'] + ';';
- dynamicStyle += '} ';
- dynamicStyle += '@media (max-width: ' + tablet_break_point + 'px) {';
- dynamicStyle += selector + ' {';
- dynamicStyle += 'margin-left: ' + margin['tablet']['left'] + margin['tablet-unit'] + ';';
- dynamicStyle += 'margin-right: ' + margin['tablet']['right'] + margin['tablet-unit'] + ';';
- dynamicStyle += 'margin-top: ' + margin['tablet']['top'] + margin['tablet-unit'] + ';';
- dynamicStyle += 'margin-bottom: ' + margin['tablet']['bottom'] + margin['tablet-unit'] + ';';
- dynamicStyle += '} ';
- dynamicStyle += '} ';
- dynamicStyle += '@media (max-width: ' + mobile_break_point + 'px) {';
- dynamicStyle += selector + ' {';
- dynamicStyle += 'margin-left: ' + margin['mobile']['left'] + margin['mobile-unit'] + ';';
- dynamicStyle += 'margin-right: ' + margin['mobile']['right'] + margin['mobile-unit'] + ';';
- dynamicStyle += 'margin-top: ' + margin['mobile']['top'] + margin['mobile-unit'] + ';';
- dynamicStyle += 'margin-bottom: ' + margin['mobile']['bottom'] + margin['mobile-unit'] + ';';
- dynamicStyle += '} ';
- dynamicStyle += '} ';
- astra_add_dynamic_css( section + '-margin-toggle-button', dynamicStyle );
- } else {
- astra_add_dynamic_css( section + '-margin-toggle-button', '' );
- }
- } );
- } );
- }
- // Single Post Content Width
- wp.customize( 'astra-settings[blog-single-width]', function( value ) {
- value.bind( function( value ) {
- var single_post_max_width = wp.customize('astra-settings[blog-single-max-width]').get();
- var dynamicStyle = '';
- if ( 'custom' === value ) {
- dynamicStyle += '.single-post .site-content > .ast-container {';
- dynamicStyle += 'max-width: ' + single_post_max_width + 'px;';
- dynamicStyle += '} ';
- }
- astra_add_dynamic_css( 'blog-single-width', dynamicStyle );
- } );
- } );
- // Blog Post Content Width
- wp.customize( 'astra-settings[blog-width]', function( value ) {
- value.bind( function( value ) {
- var blog_max_width = wp.customize('astra-settings[blog-max-width]').get();
- var dynamicStyle = '';
- if ( 'custom' === value ) {
- dynamicStyle += '.blog .site-content > .ast-container, .archive .site-content > .ast-container, .search .site-content > .ast-container {';
- dynamicStyle += 'max-width: ' + blog_max_width + 'px;';
- dynamicStyle += '} ';
- }
- astra_add_dynamic_css( 'blog-width', dynamicStyle );
- } );
- } );
- // Blog Post Content Width
- wp.customize( 'astra-settings[edd-archive-grids]', function( value ) {
- value.bind( function( value ) {
- for ( var i = 1; i < 7; i++ ) {
- jQuery('body').removeClass( 'columns-' + i );
- jQuery('body').removeClass( 'tablet-columns-' + i );
- jQuery('body').removeClass( 'mobile-columns-' + i );
- }
- if ( jQuery('body').hasClass( 'ast-edd-archive-page' ) ) {
- jQuery('body').addClass( 'columns-' + value['desktop'] );
- jQuery('body').addClass( 'tablet-columns-' + value['tablet'] );
- jQuery('body').addClass( 'mobile-columns-' + value['mobile'] );
- }
- } );
- } );
- // Blog Post Content Width
- wp.customize( 'astra-settings[edd-archive-width]', function( value ) {
- value.bind( function( value ) {
- var edd_archive_max_width = wp.customize('astra-settings[edd-archive-max-width]').get();
- edd_archive_max_width = ( 'custom' === value ) ? edd_archive_max_width : edd_archive_max_width + 40;
- var dynamicStyle = '';
- dynamicStyle += '.ast-edd-archive-page .site-content > .ast-container {';
- dynamicStyle += 'max-width: ' + edd_archive_max_width + 'px;';
- dynamicStyle += '} ';
- astra_add_dynamic_css( 'edd-archive-width', dynamicStyle );
- } );
- } );
- // Global Typography Refresh - START
- const bodyFontFamily = [
- 'body-font-family',
- 'body-font-variant',
- 'font-size-body',
- 'body-font-weight',
- 'body-text-transform',
- 'body-line-height',
- 'headings-font-family',
- 'headings-font-variant',
- 'headings-font-weight',
- 'headings-text-transform',
- 'headings-line-height'
- ];
- bodyFontFamily.forEach(element => {
- // Body Font Family
- wp.customize( 'astra-settings['+element+']', function( value ) {
- value.bind( function( value ) {
- wp.customize.preview.send( 'refresh' );
- } );
- } );
- });
- // Global Typography Refresh - END
|