WordPress.org

Make WordPress Core

Ticket #10059: #10059.diff

File #10059.diff, 1.5 KB (added by arena, 5 years ago)
  • wp-admin/admin-ajax.php

     
    362362        if ( !current_user_can( 'manage_categories' ) ) 
    363363                die('-1'); 
    364364        $names = explode(',', $_POST['newcat']); 
    365         if ( 0 > $parent = (int) $_POST['newcat_parent'] ) 
    366                 $parent = 0; 
    367         $post_category = isset($_POST['post_category'])? (array) $_POST['post_category'] : array(); 
    368         $checked_categories = array_map( 'absint', (array) $post_category ); 
    369         $popular_ids = isset( $_POST['popular_ids'] ) ? 
    370                         array_map( 'absint', explode( ',', $_POST['popular_ids'] ) ) : 
    371                         false; 
     365        $parent = (int) $_POST['newcat_parent']; 
     366        if ($parent < 0) $parent = 0; 
    372367 
     368        $checked_categories = isset($_POST['post_category'])? (array) $_POST['post_category'] : array(); 
     369        $popular_ids = isset( $_POST['popular_ids'] ) ? explode( ',', $_POST['popular_ids'] ) : false; 
     370 
    373371        $x = new WP_Ajax_Response(); 
    374372        foreach ( $names as $cat_name ) { 
    375373                $cat_name = trim($cat_name); 
     
    393391                ) ); 
    394392        } 
    395393        if ( $parent ) { // Foncy - replace the parent and all its children 
    396                 $parent = get_category( $parent ); 
    397394                ob_start(); 
    398                         dropdown_categories( 0, $parent ); 
     395                        wp_category_checklist( 0, $parent, $checked_categories, $popular_ids ); 
    399396                $data = ob_get_contents(); 
    400397                ob_end_clean(); 
    401398                $x->add( array( 
    402399                        'what' => 'category', 
    403                         'id' => $parent->term_id, 
    404                         'old_id' => $parent->term_id, 
     400                        'id' => $parent, 
     401                        'old_id' => $parent, 
    405402                        'data' => $data, 
    406403                        'position' => -1 
    407404                ) );