Make WordPress Core

Ticket #5618: 5618b.diff

File 5618b.diff, 8.9 KB (added by mdawaffe, 17 years ago)
  • wp-includes/js/wp-lists.js

     
    267267                list = $(this);
    268268                e = $(e);
    269269
    270                 var old = false; var next = false;
     270                var old = false;
    271271                var _s = { pos: 0, id: 0, oldId: null };
    272272                if ( 'string' == typeof s ) { s = { what: s }; }
    273273                s = $.extend(_s, this.wpList.settings, s);
    274274
    275275                if ( !e.size() || !s.what ) { return false; }
    276                 if ( s.oldId ) {
    277                         old = $('#' + s.what + '-' + s.oldId);
    278                         next = old.next();
    279                         old.remove();
    280                 }
    281                 if ( s.id ) { $('#' + s.what + '-' + s.id).remove(); }
     276                if ( s.oldId ) { old = $('#' + s.what + '-' + s.oldId); }
     277                if ( s.id && ( s.id != s.oldId || !old || !old.size() ) ) { $('#' + s.what + '-' + s.id).remove(); }
    282278
    283279                if ( old && old.size() ) {
    284                         if ( next && next.size() ) {
    285                                 next.before(e);
    286                         } else {
    287                                 list.append(e);
    288                         }
     280                        old.replaceWith(e);
    289281                } else if ( isNaN(s.pos) ) {
    290282                        var ba = 'after';
    291283                        if ( '-' == s.pos.substr(0,1) ) {
     
    331323
    332324        process: function(el) {
    333325                var list = this;
    334                 var bl = function() { currentFormEl = false; };
    335                 var fo = function() { currentFormEl = this; };
    336326                var a = $("[@class^=add:" + list.id + ":]", el || null)
    337327                        .filter('form').submit( function() { return list.wpList.add(this); } ).end()
    338328                        .not('form').click( function() { return list.wpList.add(this); } ).each( function() {
     
    340330                                var c = wpList.parseClass(this,'add')[2] || addEl.id;
    341331                                if ( !c ) { return; }
    342332                                var forms = []; var ins = [];
    343                                 $('#' + c + ' :input').click( function() { $(this).unbind( 'blur', bl ).unbind( 'focus', fo ).blur( bl ).focus( fo ).focus(); } ).each( function() {
     333                                $('#' + c + ' :input').focus( function() { currentFormEl = this; } ).blur( function() { currentFormEl = false; } ).each( function() {
    344334                                        ins.push(this);
    345335                                        $.merge(forms,$(this).parents('form'));
    346336                                        forms = $.unique(forms);
    347337                                } );
    348338                                $(forms).submit( function() {
    349                                         var e = currentFormEl;
    350                                         if ( 0 <= $.inArray(e,ins) ) {
     339                                        if ( 0 <= $.inArray(currentFormEl,ins) ) {
    351340                                                $(addEl).trigger( 'click' );
    352                                                 $(e).focus();
     341                                                $(currentFormEl).focus();
    353342                                                return false;
    354343                                        }
    355344                                } );
  • wp-includes/script-loader.php

     
    6060                        'delText' => __('Are you sure you want to delete this %thing%?')
    6161                ) );
    6262
    63                 $this->add( 'wp-lists', '/wp-includes/js/wp-lists.js', array('jquery'), '20080109' );
     63                $this->add( 'wp-lists', '/wp-includes/js/wp-lists.js', array('jquery'), '20080110' );
    6464                $this->localize( 'wp-lists', 'wpListL10n', array(
    6565                        'url' => get_option( 'siteurl' ) . '/wp-admin/admin-ajax.php'
    6666                ) );
     
    108108                        $this->add( 'admin-forms', '/wp-admin/js/forms.js', array('wp-lists'), '20080108' );
    109109                        $this->add( 'xfn', '/wp-admin/js/xfn.js', false, '3517' );
    110110                        $this->add( 'upload', '/wp-admin/js/upload.js', array('jquery'), '20070518' );
    111                         $this->add( 'post', '/wp-admin/js/post.js', array('suggest', 'jquery-ui-tabs', 'wp-lists'), '20080109' );
     111                        $this->add( 'post', '/wp-admin/js/post.js', array('suggest', 'jquery-ui-tabs', 'wp-lists'), '20080110' );
    112112                        $this->localize( 'post', 'postL10n', array(
    113113                                'tagsUsed' =>  __('Tags used on this post:'),
    114114                                'add' => attribute_escape(__('Add')),
  • wp-admin/admin-ajax.php

     
    173173                if ( $parent ) // Do these all at once in a second
    174174                        continue;
    175175                $category = get_category( $cat_id );
    176                 $category->_is_checked = true;
     176                $checked_categories[] = $cat_id;
    177177                ob_start();
    178178                        dropdown_categories( 0, $category );
    179179                $data = ob_get_contents();
  • wp-admin/wp-admin.css

     
    10901090        background: url(images/xit.gif) no-repeat -10px 0;
    10911091}
    10921092
    1093 #newtag {
    1094         color: #999;
    1095 }
    1096 
    10971093.howto {
    10981094        font-style: italic;
    10991095        display: block;
     
    12841280/* Global classes */
    12851281.wp-hidden-children .wp-hidden-child { display: none; }
    12861282.ui-tabs-hide { display: none; }
     1283.form-input-tip { color: #999; }
  • wp-admin/includes/template.php

     
    144144                $root = array(
    145145                        'children' => get_nested_categories( $default, $parent->term_id ),
    146146                        'cat_ID' => $parent->term_id,
    147                         'checked' => isset($parent->_is_checked) && $parent->_is_checked,
     147                        'checked' => in_array( $parent->term_id, $checked_categories ),
    148148                        'cat_name' => get_the_category_by_ID( $parent->term_id )
    149149                );
    150150                $result = array( $parent->term_id => $root );
  • wp-admin/js/post.js

     
    6969        jQuery('#tags-input').hide();
    7070        tag_update_quickclicks();
    7171        // add the quickadd form
    72         jQuery('#jaxtag').prepend('<span id="ajaxtag"><input type="text" name="newtag" id="newtag" size="16" autocomplete="off" value="'+postL10n.addTag+'" /><input type="button" class="button" id="tagadd" value="' + postL10n.add + '"/><input type="hidden"/><input type="hidden"/><span class="howto">'+postL10n.separate+'</span></span>');
     72        jQuery('#jaxtag').prepend('<span id="ajaxtag"><input type="text" name="newtag" id="newtag" class="form-input-tip" size="16" autocomplete="off" value="'+postL10n.addTag+'" /><input type="button" class="button" id="tagadd" value="' + postL10n.add + '"/><input type="hidden"/><input type="hidden"/><span class="howto">'+postL10n.separate+'</span></span>');
    7373        jQuery('#tagadd').click( tag_flush_to_text );
    7474//      jQuery('#newtag').keydown( tag_press_key );
    7575        jQuery('#newtag').focus(function() {
    76                 if ( this.value == postL10n.addTag ) {
    77                         this.value = '';
    78                         this.style.color = '#333';
    79                 }
     76                if ( this.value == postL10n.addTag )
     77                        jQuery(this).val( '' ).removeClass( 'form-input-tip' );
    8078        });
    8179        jQuery('#newtag').blur(function() {
    82                 if ( this.value == '' ) {
    83                         this.value = postL10n.addTag;
    84                         this.style.color = '#999'
    85                 }
     80                if ( this.value == '' )
     81                        jQuery(this).val( postL10n.addTag ).addClass( 'form-input-tip' );
    8682        });
    8783
    8884        // auto-suggest stuff
     
    9591        var categoryTabs =jQuery('#category-tabs').tabs();
    9692
    9793        // Ajax Cat
    98         var newCat = jQuery('#newcat').one( 'focus', function() { jQuery(this).val( '' ) } );
     94        var newCat = jQuery('#newcat').one( 'focus', function() { jQuery(this).val( '' ).removeClass( 'form-input-tip' ) } );
    9995        jQuery('#category-add-sumbit').click( function() { newCat.focus(); } );
     96        var newCatParent = false;
     97        var newCatParentOption = false;
    10098        var catAddAfter = function( r, s ) {
     99                if ( !newCatParent ) newCatParent = jQuery('#newcat_parent');
     100                if ( !newCatParentOption ) newCatParentOption = newCatParent.find( 'option[value=-1]' );
    101101                jQuery(s.what + ' response_data', r).each( function() {
    102102                        var t = jQuery(jQuery(this).text());
    103                         var o = jQuery( '<option value="' +  parseInt( t.find(':input').val(), 10 ) + '"></option>' );
    104                         o.text( jQuery.trim( t.text() ) );
    105                         jQuery('#newcat_parent').prepend( o );
     103                        t.find( 'label' ).each( function() {
     104                                var th = jQuery(this);
     105                                var id = th.find('input').val();
     106                                if ( newCatParent.find( 'option[value=' + id + ']' ).size() )
     107                                        return;
     108                                var name = jQuery.trim( th.text() );
     109                                var o = jQuery( '<option value="' +  parseInt( id, 10 ) + '"></option>' ).text( name );
     110                                newCatParent.prepend( o );
     111                                newCatParentOption.attr( 'selected', true );
     112                        } );
    106113                } );
    107114        };
    108115        jQuery('#categorychecklist').wpList( {
  • wp-admin/edit-form-advanced.php

     
    125125<div id="category-adder" class="wp-hidden-children">
    126126        <h4><a id="category-add-toggle" href="#category-add"><?php _e( '+ Add New Category' ); ?></a></h4>
    127127        <p id="category-add" class="wp-hidden-child">
    128                 <input type="text" name="newcat" id="newcat" class="form-required" value="<?php _e( 'New category name' ); ?>" />
     128                <input type="text" name="newcat" id="newcat" class="form-required form-input-tip" value="<?php _e( 'New category name' ); ?>" />
    129129                <?php wp_dropdown_categories( array( 'hide_empty' => 0, 'name' => 'newcat_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => __('Parent category') ) ); ?>
    130130                <a id="category-add-sumbit" class="add:categorychecklist:categorydiv button" href="<?php echo wp_nonce_url( '', 'add-category' ); ?>"><?php _e( 'Add' ); ?></a>
    131131                <span id="category-ajax-response"></span>