/** * Scripts within the customizer controls window. **/ (function( $, api ) { wp.customize.bind('ready', function() { // Show message on change. var blogic_settings = ['blogic_reset_settings']; _.each( blogic_settings, function( blogic_setting ) { wp.customize( blogic_setting, function( setting ) { var BlogicNotice = function( value ) { var name = 'needs_refresh'; if ( value && blogic_setting == 'blogic_reset_settings' ) { setting.notifications.add( 'needs_refresh', new wp.customize.Notification( name, { type: 'warning', message: localized_data.reset_msg, } ) ); } else if( value ){ setting.notifications.add( 'reset_name', new wp.customize.Notification( name, { type: 'info', message: localized_data.refresh_msg, } ) ); } else { setting.notifications.remove( name ); } }; setting.bind( BlogicNotice ); }); }); /* === Radio Image Control === */ api.controlConstructor['radio-color'] = api.Control.extend( { ready: function() { var control = this; $( 'input:radio', control.container ).change( function() { control.setting.set( $( this ).val() ); } ); } } ); // Sortable sections jQuery( 'ul.blogic-sortable-list' ).sortable({ handle: '.blogic-drag-handle', axis: 'y', update: function( e, ui ){ jQuery('input.blogic-sortable-input').trigger( 'change' ); } }); // Sortable sections jQuery( "body" ).on( 'hover', '.blogic-drag-handle', function() { jQuery( 'ul.blogic-sortable-list' ).sortable({ handle: '.blogic-drag-handle', axis: 'y', update: function( e, ui ){ jQuery('input.blogic-sortable-input').trigger( 'change' ); } }); }); /* On changing the value. */ jQuery( "body" ).on( 'change', 'input.blogic-sortable-input', function() { /* Get the value, and convert to string. */ this_checkboxes_values = jQuery( this ).parents( 'ul.blogic-sortable-list' ).find( 'input.blogic-sortable-input' ).map( function() { return this.value; }).get().join( ',' ); /* Add the value to hidden input. */ jQuery( this ).parents( 'ul.blogic-sortable-list' ).find( 'input.blogic-sortable-value' ).val( this_checkboxes_values ).trigger( 'change' ); }); // Deep linking for counter section to about section. jQuery('.blogic-edit').click(function(e) { e.preventDefault(); var jump_to = jQuery(this).attr( 'data-jump' ); wp.customize.section( jump_to ).focus() }); $('#sub-accordion-section-blogic_topbar').css( 'display', 'none' ); }); })( jQuery, wp.customize ); jQuery( document ).ready(function($) { $( document ).on( 'click', '.customize_multi_add_field', blogic_customize_multi_add_field ) .on( 'change', '.customize_multi_single_field', blogic_customize_multi_single_field ) .on( 'click', '.customize_multi_remove_field', blogic_customize_multi_remove_field ) /********* Multi Input Custom control ***********/ $( '.customize_multi_input' ).each(function() { var $this = $( this ); var multi_saved_value = $this.find( '.customize_multi_value_field' ).val(); if (multi_saved_value.length > 0) { var multi_saved_values = multi_saved_value.split( "|" ); $this.find( '.customize_multi_fields' ).empty(); var $control = $this.parents( '.customize_multi_input' ); $.each(multi_saved_values, function( index, value ) { $this.find( '.customize_multi_fields' ).append( '
' ); }); } }); function blogic_customize_multi_add_field(e) { var $this = $( e.currentTarget ); e.preventDefault(); var $control = $this.parents( '.customize_multi_input' ); $control.find( '.customize_multi_fields' ).append( '
' ); blogic_customize_multi_write( $control ); } function blogic_customize_multi_single_field() { var $control = $( this ).parents( '.customize_multi_input' ); blogic_customize_multi_write( $control ); } function blogic_customize_multi_remove_field(e) { e.preventDefault(); var $this = $( this ); var $control = $this.parents( '.customize_multi_input' ); $this.parent().remove(); blogic_customize_multi_write( $control ); } function blogic_customize_multi_write( $element) { var customize_multi_val = ''; $element.find( '.customize_multi_fields .customize_multi_single_field' ).each(function() { customize_multi_val += $( this ).val() + '|'; }); $element.find( '.customize_multi_value_field' ).val( customize_multi_val.slice( 0, -1 ) ).change(); } }); (function(api) { const blogic_section_lists = ['slider']; blogic_section_lists.forEach(blogic_homepage_scroll); function blogic_homepage_scroll(item, index) { // Detect when the front page sections section is expanded (or closed) so we can adjust the preview accordingly. item = item.replace(/-/g, '_'); wp.customize.section('blogic_' + item + '_section', function(section) { section.expanded.bind(function(isExpanding) { // Value of isExpanding will = true if you're entering the section, false if you're leaving it. wp.customize.previewer.send(item, { expanded: isExpanding }); }); }); } })(wp.customize);