(function($){ if(typeof acf === 'undefined') return; acf.addAction('new_field/type=flexible_content', function(flexible){ var $clones = flexible.$clones(); var $layouts = flexible.$layouts(); // ACFE: Layout State - Collapse if(flexible.$el.attr('data-acfe-flexible-collapse')){ if($layouts.length){ $layouts.each(function(){ flexible.closeLayout($(this)); }); } } // ACFE: Layout State - Open if(flexible.$el.attr('data-acfe-flexible-open')){ if($layouts.length){ $layouts.each(function(){ flexible.openLayout($(this)); }); } } // ACFE: Stylised button if(flexible.$el.attr('data-acfe-flexible-stylised-button')){ $(flexible.$el).find('> .acf-input > .acf-flexible-content > .acf-actions .button-primary').removeClass('button-primary'); $(flexible.$el).find('> .acf-input > .acf-flexible-content > .acf-actions').wrap('
'); } // ACFE:1 layout available - OneClick if($clones.length === 1){ flexible.acfe_flexible_oneclick = function(e, $el){ var $layout_name = $($clones[0]).attr('data-layout'); var $layout = null; if($(this).hasClass('acf-icon')){ $layout = $(this).closest('.layout'); $layout.addClass('-hover'); } flexible.add({ layout: $layout_name, before: $layout }); // Hide native ACF tooltip if($('.acf-fc-popup').length) $('.acf-fc-popup').hide(); } // Remove native ACF Tooltip action flexible.removeEvents({'click [data-name="add-layout"]': 'onClickAdd'}); // Add ACF Extended Modal action flexible.addEvents({'click [data-name="add-layout"]': 'acfe_flexible_oneclick'}); } // Compatibility: some plugins for not use native layout close method if(!flexible.$el.attr('data-acfe-flexible-modal-edition')){ if($layouts.length){ $layouts.each(function(){ var $layout = $(this); if(!flexible.isLayoutClosed($layout)) return; flexible.closeLayout($layout); }); } flexible.addEvents({'click .acfe-flexible-collapsed-placeholder': 'onClickCollapse'}); } }); acf.addAction('show', function($layout, type){ if(type != 'collapse' || !$layout.is('.layout')) return; var $flexible = $layout.closest('.acf-field-flexible-content'); if(!$flexible.attr('data-acfe-flexible-modal-edition')){ // Remove duplicate $layout.find('> .acfe-flexible-collapsed-placeholder').remove(); } }); acf.addAction('hide', function($layout, type){ if(type != 'collapse' || !$layout.is('.layout')) return; var $flexible = $layout.closest('.acf-field-flexible-content'); if(!$flexible.attr('data-acfe-flexible-modal-edition')){ // Remove duplicate $layout.find('> .acfe-flexible-collapsed-placeholder').remove(); if($flexible.attr('data-acfe-flexible-preview')){ var previews = $.parseJSON($flexible.attr('data-acfe-flexible-preview')); var layout_name = $layout.data('layout'); var preview = previews[layout_name]; } if(typeof preview !== 'undefined'){ // Create button $layout.find('> .acf-fc-layout-controls').after('' + '' + ' ' + '
' + ' ' + '
' ); } else{ // Create button $layout.find('> .acf-fc-layout-controls').after('' + '' + '
' + ' ' + '
' + '
' ); } } }); })(jQuery);