Commit Graph

119 Commits

Author SHA1 Message Date
Ryan Boren f56d8278bb Remove return ref from all calls to get_post()
Return WP_Post from get_default_post_to_edit()
Replace all calls to get_page() with get_post()
see #21309


git-svn-id: http://core.svn.wordpress.org/trunk@21597 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-23 20:01:10 +00:00
Ryan Boren 489924938f Return post_parent, menu_order, guid, and post_mime_type from wp.getPost(). Props maxcutler. fixes #21308
git-svn-id: http://core.svn.wordpress.org/trunk@21526 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-15 16:06:05 +00:00
ryan d286875515 switch_to_blog() and restore_current_blog() housekeeping.
wp-includes/admin-bar.php:

* Replace get_admin_url() and get_home_url() with admin_url() and home_url() and place them inside a switch/restore. Likewise replace current_user_can_for_blog() with current_user_can(). This avoids doing multiple switch restores.

wp-includes/ms-blogs.php:

* Deprecate the $validate argument to switch_to_blog(). This avoids a not very necessary call to get_blog_details(), possibly saving a few queries.
* Use $_wp_switched and $_wp_switched_stack instead of $switched and $switched_stack to make it less likely these globals will be stomped.
* Use GLOBALS to access blog_id and other globals. I've preferred this style lately since it makes it obvious a global is being used and avoids global blog_id being stomped by a local variable.
* Lose some is_object() checks. wp_get_current_user() always returns an object, for example.
* Call the new WP_Roles::reinit() method.

wp-includes/class-wp-xmlrpc-server.php:

* Replace current_user_can_for_blog() with current_user_can() and move it inside the switch/restore pair. This eliminates a switch/restore.

wp-includes/capabilities.php:

* Use array_keys() instead of $role => $data since $data is unused. I *think* this is a bit faster.
* Introduce WP_Roles::reinit(). This reinitializes WP_Roles and is used after switch_to_blog() has already update the blog ID in the wpdb object. If a global roles array is being used instead of the db, reinit is skipped.
* current_user_can_for_blog() now does a switch/restore. It didn't before meaning it could be reinitializing the user with the wrong role information for the current blog.

wp-includes/ms-settings.php:

* Define $_wp_switched_stack and $_wp_switched. This way switch_to_blog() and restore_current_blog() can rely on it being set.

wp-settings.php:

* Instantiate the WP_Roles global. This was it is always defined during init. To remove the WP_Roles checks from WP_Role and WP_User this would probably have to move before plugins are loaded, which might not be a good thing.

wp-includes/functions.php:

* Update wp_upload_dir() to reference _wp_switched.



git-svn-id: http://core.svn.wordpress.org/trunk@21485 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-09 16:28:15 +00:00
ryan 5ca54e7d2f Deprecate get_blog_option(), add_blog_option(), update_blog_option(), and delete_blog_option().
Use the regular option functions wrapped in switch_to_blog() and restore_current_blog() instead.

Group multiple operations within a single switch where possible.

fixes #21432


git-svn-id: http://core.svn.wordpress.org/trunk@21414 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-03 17:51:42 +00:00
nacin 81c22c98f8 Don't use switch_to_blog() in wp.getUsersBlogs to improve performance and memory footprint. props mohanjith for initial patch. fixes #20665.
git-svn-id: http://core.svn.wordpress.org/trunk@21194 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-30 11:49:02 +00:00
nacin e0012c7e67 Initialize a variable. props maxcutler. fixes #21058.
git-svn-id: http://core.svn.wordpress.org/trunk@21158 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-28 19:04:42 +00:00
nacin 9b7e633336 Use set_post_format(), not wp_set_post_terms(), in XML-RPC mw_newPost and mw_editPost. props koke. see #20697.
git-svn-id: http://core.svn.wordpress.org/trunk@21145 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-26 21:07:12 +00:00
nacin 1270e4cef6 Check XML-RPC cap before running the query. props maxcutler. see #20991 for trunk.
git-svn-id: http://core.svn.wordpress.org/trunk@21137 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-26 19:04:10 +00:00
nacin 92efcbaf6d Combine 'Invalid term ID.' into the 'Invalid term ID' string. props pavelevap. fixes #20809.
git-svn-id: http://core.svn.wordpress.org/trunk@20996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-05 16:25:05 +00:00
ryan eaa419dba3 Consolodate some strings. Props pavelevap. fixes #20809
git-svn-id: http://core.svn.wordpress.org/trunk@20972 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-01 19:05:30 +00:00
ryan f35fdc678f Introduce _prepare_comment(). Avoid repeated auth attempts. Props maxcutler. fixes #20703
git-svn-id: http://core.svn.wordpress.org/trunk@20856 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-23 20:40:40 +00:00
ryan 4077461708 Fix post limiting in wp_getPosts(). Props djcp. fixes #20723
git-svn-id: http://core.svn.wordpress.org/trunk@20846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-22 22:25:17 +00:00
ryan 0983e9afcb Fix wp.getPages response when fetching pages the current user does not have caps for. Props maxcutler, redsweater. fixes #20629
git-svn-id: http://core.svn.wordpress.org/trunk@20807 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-16 18:06:34 +00:00
ryan 5729685cb7 Remove accidental bits in [20784]
git-svn-id: http://core.svn.wordpress.org/trunk@20785 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-14 17:01:35 +00:00
ryan 7c3c1267ec Call filters for default option values only as needed to reduce number of filter calls. Props Ott042. see #20448
git-svn-id: http://core.svn.wordpress.org/trunk@20784 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-14 17:00:13 +00:00
duck_ 2b6e2d287a Minor XML-RPC documentation improvements. See #20566.
Also make newly introduced _is_greater_than_one() private.


git-svn-id: http://core.svn.wordpress.org/trunk@20782 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-14 10:10:01 +00:00
ryan 34a92a5f0e Remove extra underscore from XML-RPC filter. props maxcutler. fixes #20549
git-svn-id: http://core.svn.wordpress.org/trunk@20775 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-11 21:04:47 +00:00
ryan 8c114f0c54 Pinking shears
git-svn-id: http://core.svn.wordpress.org/trunk@20715 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-03 16:41:59 +00:00
duck_ 281ad053fc Declare visibility of _prepare_post_type() as protected. See #20566.
git-svn-id: http://core.svn.wordpress.org/trunk@20714 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-03 15:59:50 +00:00
nacin 296a97f566 We indent with spaces, not tabs. props sivel. fixes #20394.
git-svn-id: http://core.svn.wordpress.org/trunk@20703 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-02 21:13:08 +00:00
nacin 778c887fef Have the $fields argument for XML-RPC's wp.getPostType, getPostTypes, wp.getTaxonomy and wp.getTaxonomies take the names of the post type or taxonomy object keys that will be returned.
* capabilities becomes cap
 * object_types becomes object_type

fixes #17626.



git-svn-id: http://core.svn.wordpress.org/trunk@20696 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-02 20:29:34 +00:00
nacin 9bb0b895da Kill all notices in XML-RPC found when running the test suite with WP_DEBUG. see [UT706], [UT707]. see #20566.
git-svn-id: http://core.svn.wordpress.org/trunk@20671 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-01 21:03:50 +00:00
nacin a6b1be42b4 Fix copy-paste issues in XML-RPC's _prepare_taxonomy(). see #20566.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20670 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-01 20:33:06 +00:00
nacin 6fff51eebe Use correct variables. props batmoo. fixes #20566.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20665 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-01 01:11:18 +00:00
nacin f8eeababd4 Use correct variables. props batmoo. fixes #20566.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20664 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-30 23:45:01 +00:00
nacin 57488f2a54 Add @param for the $fields parameter for XML-RPC's _prepare_taxonomy(). props SergeyBiryukov, fixes #20566.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20638 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-30 00:25:14 +00:00
nacin ede4e67046 Check for the existence of a post before calling current_user_can() with a meta cap on that object. fixes #20336.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20637 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-30 00:19:32 +00:00
nacin ae772d3850 Introduce minimum_args() method in XML-RPC and leverage it to return errors for insufficient arguments for methods that are new in 3.4.
props maxcutler,  markoheijnen.
fixes #20394.



git-svn-id: http://svn.automattic.com/wordpress/trunk@20636 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-28 21:25:25 +00:00
nacin 1627408d5a Use correct variable. Caught by unit tests. see #20566.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-28 21:22:07 +00:00
nacin f4fc857b9c Clean up the XML-RPC 3.4 methods with regards to consistency and future compatibility.
* Limit returned taxonomy and post type objects to a specific type-cast whitelist of fields.
 * Add $filter and $fields to wp.getTaxonomies to match the functionality of wp.getPostTypes.
 * Prevent the post type from being chnaged in _insert_post().
 * Don't check post_type_supports() in _insert_post().
 * Align handling of sticky posts with those of core.
 * Force tags and categories to go through terms and terms_names, rather than tags_input and post_category.
fixes #20566. props nacin, maxcutler.



git-svn-id: http://svn.automattic.com/wordpress/trunk@20632 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-28 18:48:10 +00:00
ryan d2fbbd1649 XML-RPC featured image and media preparation cleanup.
* Introduce _prepare_media_item().
* Use it to prepare post_thumbnail info in _prepare_post().
* Also use _prepare_media_item() in wp_getMediaLibrary() and wp_getMediaItem() so that all media is prepared consistently and uses the same filters.

Props maxcutler
Fixes #20409


git-svn-id: http://svn.automattic.com/wordpress/trunk@20608 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-26 20:56:52 +00:00
nacin e27fb96dee Remove duplicated do_action wp.getPosts call. props maxcutler.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20607 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-26 16:28:06 +00:00
nacin 1214aa9870 Remove extra underscore from four XML-RPC filters. props maxcutler. fixes #20549.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-25 22:28:43 +00:00
nacin 58050466eb Do not check for a meta value in XML-RPC set_custom_fields unless we know we are editing a key. Prevents a notice when a custom field is being deleted. props scott.gonzalez. fixes #20543.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20583 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-25 14:26:31 +00:00
ryan 04a9e7a552 Revert [20568] until a publish_post cap is introduced. see #20474
git-svn-id: http://svn.automattic.com/wordpress/trunk@20576 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-24 16:22:12 +00:00
ryan 0bffacac50 Check the publish_post cap when publishing an already existing post.
Props nprasath002
Fixes #20474


git-svn-id: http://svn.automattic.com/wordpress/trunk@20568 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-23 21:54:30 +00:00
ryan 9cbd3def67 Require the edit_posts capability for wp_getPostFormats.
Props maxcutler.
Fixes #20154


git-svn-id: http://svn.automattic.com/wordpress/trunk@20566 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-23 21:41:50 +00:00
nacin 9ef37a9427 Move from $taxonomy_name to $taxonomy in XML-RPC for consistency with the rest of the core APIs. props maxcutler, fixes #20397.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20469 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-15 16:47:31 +00:00
nacin 915477e841 Move from 'featured image' to 'post thumbnail' in the XML-RPC API. props maxcutler, fixes #20396.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20462 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-13 20:23:31 +00:00
nacin a312778602 Remove duplicated featured_image block. props koke.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20406 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-09 15:28:07 +00:00
duck_ e25e2fb081 Prevent notice "Undefined variable: struct" in mt_getRecentPostTitles when posts exist, but none of them are editable. Fixes #20393.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20403 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-08 09:40:04 +00:00
westi 65e8cf47ed XMLRPC: Make sure that we always return valid dates when no date is currently set - for example if the post is pending. Fixes #19733 props markoheijnen and koke.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20353 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-04 21:32:28 +00:00
westi 4b31ce3cd2 XMLRPC: Add a check in mw.newPost to stop the authorID being changed to an invalid value. Fixes #20356 props maxcutler.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20351 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-04 20:11:21 +00:00
westi 1e62ff3689 XMLRPC: In mw_newPost check to see if the post_status has been supplied before trying to use it to avoid undefined array access notices. Fixes #19774 props maxcutler.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20323 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-29 13:13:13 +00:00
westi fabdd204c0 XMLRPC: Fix bugs in mw_editPost hilighted by tests in [UT593]
* Feature image code did not actually set the feature image - See #18429
 * This api call could trash post data - Fixes #20321.


git-svn-id: http://svn.automattic.com/wordpress/trunk@20322 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-29 11:59:51 +00:00
westi 944af3e88b XMLRPC: Fix the featured image support in mw_newPost to use the correct variable names. See #18429 and [UT592].
git-svn-id: http://svn.automattic.com/wordpress/trunk@20321 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-29 11:06:17 +00:00
westi d744ca66f0 XMLRPC: Add the object ID to the return data of wp.uploadFile/metaWeblog.newMediaObject so that it can be used in other api calls e.g. setting featured image see #15098 props maxcutler
git-svn-id: http://svn.automattic.com/wordpress/trunk@20305 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-28 12:00:50 +00:00
westi 79ff94923e XMLRPC: Add new wp.getPostType and wp.getPostTypes apis. See #18436 props maxcutler, markoheijnen and nprasath002.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20271 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-23 17:53:14 +00:00
westi 4d68261f5e XMLRPC: Add support for Feature Images to the new wp.xxxPost apis. See #18429 props maxcutler and markoheijen.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20270 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-23 15:35:44 +00:00
ryan 7faddb72bc Consolidate some strings. Props ramiy. see #20216
git-svn-id: http://svn.automattic.com/wordpress/trunk@20215 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-19 19:04:49 +00:00