WordPress.org

Make WordPress Core

Ticket #23449: 23449.12.diff

File 23449.12.diff, 5.3 KB (added by aaroncampbell, 9 months ago)
  • wp-admin/js/accordion.js

     
    1 jQuery(document).ready( function($) { 
    2         // Expand/Collapse 
    3         $('.accordion-container').on( 'click keydown', '.accordion-section-title', function(e) { 
    4                 if ( e.type === 'keydown' && 13 !== e.which ) // "return" key 
    5                                 return; 
    6                 e.preventDefault(); // Keep this AFTER the key filter above 
     1( function( $ ){ 
    72 
    8                 var section = $( this ).closest( '.accordion-section' ), 
    9                     siblings = section.siblings( '.open' ), 
     3        $( document ).ready( function () { 
     4 
     5                // Expand/Collapse on click 
     6                $( '.accordion-container' ).on( 'click keydown', '.accordion-section-title', function( e ) { 
     7                        if ( e.type === 'keydown' && 13 !== e.which ) // "return" key 
     8                                        return; 
     9                        e.preventDefault(); // Keep this AFTER the key filter above 
     10 
     11                        accordionSwitch( $( this ) ); 
     12                        accordionCorners(); 
     13                }); 
     14 
     15                // Refresh selected accordion option when screen options are toggled 
     16                $( '.hide-postbox-tog' ).click( function () { 
     17                        accordionInit(); 
     18                }); 
     19 
     20        }); 
     21 
     22        // Rounded corners 
     23        function accordionCorners () { 
     24                var accordionOptions = $( '.accordion-container li.accordion-section' ); 
     25 
     26                accordionOptions.removeClass( 'top bottom' ); 
     27                accordionOptions.filter( ':visible' ).first().addClass( 'top' ); 
     28                accordionOptions.filter( ':visible' ).last().addClass( 'bottom' ).find('.accordion-section-content ').addClass('bottom'); 
     29        }; 
     30 
     31        function accordionInit () { 
     32                accordionSwitch( $( '.accordion-container li.accordion-section' ).filter( ':visible' ).first() ); 
     33                accordionCorners(); 
     34        } 
     35 
     36        function accordionSwitch ( el ) { 
     37                var section = el.closest( '.accordion-section' ), 
     38                    siblings = section.parent().find( '.open' ), 
    1039                    content = section.find( '.accordion-section-content' ); 
    1140 
    12                 if ( section.hasClass('cannot-expand') ) 
     41                if ( section.hasClass( 'cannot-expand' ) ) 
    1342                        return; 
    1443 
    1544                siblings.removeClass( 'open' ); 
    1645                siblings.find( '.accordion-section-content' ).show().slideUp( 150 ); 
    1746                content.toggle( section.hasClass( 'open' ) ).slideToggle( 150 ); 
    1847                section.toggleClass( 'open' ); 
    19         }); 
    20 }); 
     48        } 
     49 
     50        // Show the first accordion option by default 
     51        accordionInit(); 
     52 
     53})(jQuery); 
     54 No newline at end of file 
  • wp-admin/js/nav-menu.js

     
    5353                        this.initAccessibility(); 
    5454 
    5555                        this.initToggles(); 
    56  
    57                         // Open first accordion option 
    58                         this.initAccordion(); 
    5956                }, 
    6057 
    6158                jQueryExtensions : function() { 
     
    267264                        }); 
    268265                }, 
    269266 
    270                 initAccordion : function() { 
    271                         var accordionOptions = $( '.accordion-container li.accordion-section' ); 
    272                         accordionOptions.removeClass('open'); 
    273                         accordionOptions.filter(':visible').first().addClass( 'open' ); 
    274                 }, 
    275  
    276267                countMenuItems : function( depth ) { 
    277268                        return $( '.menu-item-depth-' + depth ).length; 
    278269                }, 
     
    544535                        api.menuList.hideAdvancedMenuItemFields(); 
    545536 
    546537                        $('.hide-postbox-tog').click(function () { 
    547                                 api.initAccordion(); 
    548  
    549538                                var hidden = $( '.accordion-container li.accordion-section' ).filter(':hidden').map(function() { return this.id; }).get().join(','); 
    550539                                $.post(ajaxurl, { 
    551540                                        action: 'closed-postboxes', 
  • wp-admin/css/wp-admin.css

     
    74907490        margin: 0; 
    74917491} 
    74927492 
    7493 .accordion-container .accordion-section:first-child { 
     7493#nav-menu-meta .accordion-container .top { 
     7494        border-top: 1px solid #dfdfdf; 
     7495} 
     7496 
     7497#nav-menu-meta .accordion-container .accordion-section:first-child, 
     7498#nav-menu-meta .accordion-container .accordion-section:first-child h3, 
     7499#nav-menu-meta .accordion-container .top, 
     7500#nav-menu-meta .accordion-container .top h3 { 
    74947501        -webkit-border-top-right-radius: 3px; 
    74957502        -webkit-border-top-left-radius: 3px; 
    74967503        border-top-right-radius: 3px; 
    74977504        border-top-left-radius: 3px; 
    74987505} 
    74997506 
    7500 .accordion-container .accordion-section:last-child { 
     7507#nav-menu-meta .accordion-container .accordion-section:last-child, 
     7508#nav-menu-meta .accordion-container .accordion-section:last-child .accordion-section-content, 
     7509#nav-menu-meta .accordion-container .accordion-section:not(.open):last-child h3, 
     7510#nav-menu-meta .accordion-container .bottom { 
    75017511        -webkit-border-bottom-right-radius: 3px; 
    75027512        -webkit-border-bottom-left-radius: 3px; 
    75037513        border-bottom-right-radius: 3px; 
  • wp-admin/nav-menus.php

     
    2323        wp_die( __( 'Cheatin’ uh?' ) ); 
    2424 
    2525wp_enqueue_script( 'nav-menu' ); 
    26 wp_enqueue_script( 'accordion' ); 
    2726 
    2827if ( wp_is_mobile() ) 
    2928        wp_enqueue_script( 'jquery-touch-punch' ); 
  • wp-admin/includes/template.php

     
    985985function do_accordion_sections( $screen, $context, $object ) { 
    986986        global $wp_meta_boxes; 
    987987 
     988        wp_enqueue_script( 'accordion' ); 
     989 
    988990        if ( empty( $screen ) ) 
    989991                $screen = get_current_screen(); 
    990992        elseif ( is_string( $screen ) )