WordPress.org

Make WordPress Core

Ticket #11150: wp.editCategory.diff

File wp.editCategory.diff, 2.3 KB (added by nprasath002, 7 years ago)

Editing categories

  • (a) Base vs. (b) Locally

    # This patch file was generated by NetBeans IDE
    # It uses platform neutral UTF-8 encoding and \n newlines.
    a b  
    4646                        'wp.getCategories'              => 'this:mw_getCategories',             // Alias
    4747                        'wp.getTags'                    => 'this:wp_getTags',
    4848                        'wp.newCategory'                => 'this:wp_newCategory',
     49                        'wp.editCategory'               => 'this:wp_editCategory',
    4950                        'wp.deleteCategory'             => 'this:wp_deleteCategory',
    5051                        'wp.suggestCategories'  => 'this:wp_suggestCategories',
    5152                        'wp.uploadFile'                 => 'this:mw_newMediaObject',    // Alias
     
    892893        }
    893894
    894895        /**
     896         * Edit a category.
     897         *
     898         * @since 3.2.0
     899         *
     900         * @param array $args Method parameters.
     901         * @return bool True on success.
     902         */
     903        function wp_editCategory($args) {
     904                $this->escape($args);
     905
     906                $blog_id                        = (int) $args[0];
     907                $username                       = $args[1];
     908                $password                       = $args[2];
     909                $cat_ID                         = $args[3];
     910                $category_struct                = $args[4];
     911
     912                if ( !$user = $this->login($username, $password) )
     913                        return $this->error;
     914
     915                // Make sure the user is allowed to edit a category.
     916                if ( !current_user_can("manage_categories") )
     917                        return(new IXR_Error(401, __("Sorry, you do not have the right to edit a category.")));
     918
     919                do_action('xmlrpc_call', 'wp.editCategory');
     920
     921
     922                if ( isset($category_struct["name"]) )
     923                        $cat_name = $category_struct["name"];
     924
     925                if ( isset($category_struct["description"]) )
     926                        $category_description = $category_struct["description"];
     927
     928                if ( isset($content_struct["parent_id"]) )
     929                        $category_parent = $content_struct["parent_id"];
     930
     931                if ( isset($content_struct["slug"]) )
     932                        $category_nicename = $content_struct["slug"];           
     933
     934                // We've got all the data
     935                $category = compact('cat_ID', 'cat_name', 'category_description', 'category_parent', 'category_nicename');
     936
     937                $result = wp_update_category($category);
     938
     939                return $result;
     940
     941                if ( is_wp_error( $result ) )
     942                        return new IXR_Error(500, $result->get_error_message());
     943
     944                if ( !$result )
     945                        return new IXR_Error(500, __('Sorry, the category could not be edited. Something wrong happened.'));
     946
     947                return true;
     948        }
     949
     950        /**
     951 No newline at end of file
    895952         * Remove category.
    896953         *
    897954         * @since 2.5.0