Commit Graph

304 Commits

Author SHA1 Message Date
Ryan Boren
a6c8efadb9 Change all core API to expect unslashed rather than slashed arguments.
The exceptions to this are update_post_meta() and add_post_meta() which are often used by plugins in POST handlers and will continue accepting slashed data for now.

Introduce wp_upate_post_meta() and wp_add_post_meta() as unslashed alternatives to update_post_meta() and add_post_meta(). These functions could become methods in WP_Post so don't use them too heavily yet.

Remove all escape() calls from wp_xmlrpc_server. Now that core expects unslashed data this is no longer needed.

Remove addslashes(), addslashes_gpc(), add_magic_quotes() calls on data being prepared for handoff to core functions that until now expected slashed data. Adding slashes in no longer necessary.

Introduce wp_unslash() and use to it remove slashes from GPCS data before using it in core API. Almost every instance of stripslashes() in core should now be wp_unslash(). In the future (a release or three) when GPCS is no longer slashed, wp_unslash() will stop stripping slashes and simply return what is passed. At this point wp_unslash() calls can be removed from core.

Introduce wp_slash() for slashing GPCS data. This will also turn into a noop once GPCS is no longer slashed. wp_slash() should almost never be used. It is mainly of use in unit tests.

Plugins should use wp_unslash() on data being passed to core API.

Plugins should no longer slash data being passed to core. So when you get_post() and then wp_insert_post() the post data from get_post() no longer needs addslashes(). Most plugins were not bothering with this. They will magically start doing the right thing. Unfortunately, those few souls who did it properly will now have to avoid calling addslashes() for 3.6 and newer.

Use wp_kses_post() and wp_kses_data(), which expect unslashed data, instead of wp_filter_post_kses() and wp_filter_kses(), which expect slashed data. Filters are no longer passed slashed data.

Remove many no longer necessary calls to $wpdb->escape() and esc_sql().

In wp_get_referer() and wp_get_original_referer(), return unslashed data.

Remove old stripslashes() calls from WP_Widget::update() handlers. These haven't been necessary since WP_Widget.

Switch several queries over to prepare().

Expect something to break.

Props alexkingorg
see #21767


git-svn-id: https://develop.svn.wordpress.org/trunk@23416 602fd350-edb4-49c9-b593-d223f7449a82
2013-02-14 22:51:06 +00:00
Peter Westwood
d927271553 Tighten our braces. Fixes #23118 props evansolomon.
git-svn-id: https://develop.svn.wordpress.org/trunk@23265 602fd350-edb4-49c9-b593-d223f7449a82
2013-01-04 10:13:51 +00:00
Andrew Nacin
6c54baea98 Translate the 'First Steps with WordPress' Codex link. props SergeyBiryukov, fixes #22767.
git-svn-id: https://develop.svn.wordpress.org/trunk@23082 602fd350-edb4-49c9-b593-d223f7449a82
2012-12-05 22:51:24 +00:00
Ryan Boren
71d333f660 In the QuickPress media modal, use the new post id when a post is published.
Props nacin, koopersmith
fixes #22673


git-svn-id: https://develop.svn.wordpress.org/trunk@22994 602fd350-edb4-49c9-b593-d223f7449a82
2012-12-03 07:17:10 +00:00
Ryan Boren
efe3a45b76 Namespace the dashboard widget nonce to avoid collisions with plugins.
git-svn-id: https://develop.svn.wordpress.org/trunk@22964 602fd350-edb4-49c9-b593-d223f7449a82
2012-12-02 00:12:43 +00:00
Ryan Boren
c53137f535 Scope button classes so they can be used on the frontend without interfering with theme styles.
Props helenyhou, koopersmith
fixes #22644


git-svn-id: https://develop.svn.wordpress.org/trunk@22948 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-30 13:40:59 +00:00
Andrew Nacin
f3da142f01 Nonces for dashboard controls.
git-svn-id: https://develop.svn.wordpress.org/trunk@22930 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-30 00:01:02 +00:00
Ryan Boren
8a75568cd4 Gettext markup for a welcome screen string. Props SergeyBiryukov, xibe. fixes #22546
git-svn-id: https://develop.svn.wordpress.org/trunk@22831 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-23 16:42:31 +00:00
Andrew Ozz
abae868449 Welcome screen: clean up the css, improve the html, add RTL styles, props helenyhou TobiasBg ocean90, fixes #21368, see #22453
git-svn-id: https://develop.svn.wordpress.org/trunk@22638 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-17 21:51:39 +00:00
Peter Westwood
2a8c640a1f Multisite: When displaying the upload quota and space used in the dashboard widget format them nicely.
git-svn-id: https://develop.svn.wordpress.org/trunk@22498 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-09 10:47:43 +00:00
Andrew Ozz
330c10d1a9 Kill use of colons in class names, props SergeyBiryukov, fixes #21152
git-svn-id: https://develop.svn.wordpress.org/trunk@22396 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-06 01:01:52 +00:00
Ryan Boren
6fd9916a18 Welcome screen refresh. Now with icons. Props lessbloat, empireoflight. fixes #21368
git-svn-id: https://develop.svn.wordpress.org/trunk@22379 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-05 21:12:46 +00:00
Andrew Nacin
4d7b989116 Split by [\r\n\t ] rather than \s to avoid UTF-8 issues. props SergeyBiryukov. fixes #21625.
git-svn-id: https://develop.svn.wordpress.org/trunk@22306 602fd350-edb4-49c9-b593-d223f7449a82
2012-10-25 21:09:42 +00:00
Ryan Boren
194e2775b8 Don't create {$blog_id}_user-settings, {$blog_id}_user-settings-time, and {$blog_id}_dashboard_quick_press_last_post_id user options when a super admin visits a site they aren't a member of. Instead, rely solely on the wp-settings cookie.
fixes #22178


git-svn-id: https://develop.svn.wordpress.org/trunk@22256 602fd350-edb4-49c9-b593-d223f7449a82
2012-10-17 18:58:09 +00:00
Andrew Ozz
2f8193421c Tab indexes: when tabbing out of the editors make sure the next focused element is the expected/default action, fix focusing the next field when picking a date for future post, props lessbloat, fixes #21340
git-svn-id: https://develop.svn.wordpress.org/trunk@22250 602fd350-edb4-49c9-b593-d223f7449a82
2012-10-16 21:38:35 +00:00
Andrew Nacin
76750e3883 Align QuickPress fields. props lessbloat. fixes #21754.
git-svn-id: https://develop.svn.wordpress.org/trunk@22146 602fd350-edb4-49c9-b593-d223f7449a82
2012-10-09 19:07:09 +00:00
Andrew Nacin
6467281a2b Provide no-customize fallback to the welcome screen. Use the customize overlay rather than a page reload. see #21368.
git-svn-id: https://develop.svn.wordpress.org/trunk@22089 602fd350-edb4-49c9-b593-d223f7449a82
2012-10-01 14:58:05 +00:00
Andrew Nacin
e82d5080b8 New HiDPI spinner. Uses clean <span class="spinner"></span> markup.
Be on the lookout for weirdness.
props lessbloat. see #21456.



git-svn-id: https://develop.svn.wordpress.org/trunk@22019 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-26 19:57:44 +00:00
Andrew Nacin
119bd9f50a New design and content for the welcome panel. First pass.
props lessbloat, helenyhou, georgestephanis, sabreuse, ryelle.
see #21368.



git-svn-id: https://develop.svn.wordpress.org/trunk@22018 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-26 19:44:43 +00:00
Andrew Nacin
774a12be83 Introduce constants to allow for easier expression of time periods in seconds. Adds MINUTE_IN_SECONDS, HOUR_IN_SECONDS, DAY_IN_SECONDS, WEEK_IN_SECONDS, YEAR_IN_SECONDS. props nbachiyski, SergeyBiryukov. fixes #20987.
git-svn-id: https://develop.svn.wordpress.org/trunk@21996 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-25 05:26:19 +00:00
Andrew Nacin
1c58ef9f33 Updates and fixes to the new button styles. By default, buttons are now the same size as they were in 3.4. Then there is a smaller button (designed for minor elements) and a larger button (designed for things like Publish and Save Changes). Better focus styles. props lessbloat. see #21598.
git-svn-id: https://develop.svn.wordpress.org/trunk@21944 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-21 19:34:23 +00:00
Andrew Nacin
0ed8541439 Replace QuickPress labels with gray prompt texts. Stylish, but also done for localization purposes (string lengths). props ocean90. fixes #21754.
git-svn-id: https://develop.svn.wordpress.org/trunk@21894 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-18 18:45:44 +00:00
Andrew Nacin
f62839c45b Fold Privacy Settings into Reading Settings, moving blog_public (search engine/robots) to options-reading and removing options-privacy.
When blog_public only has two values (as judged by whether the blog_privacy_selector action is used), convert from radio buttons to a checkbox, and rename from 'Site Visibility' to a more specific 'Search Engine Visibility'.

The text and implementation may change a bit. see #16416.



git-svn-id: https://develop.svn.wordpress.org/trunk@21838 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-13 17:28:57 +00:00
Daryl Koopersmith
7d6e53317c New button styles.
Using the new buttons:

* Button classes are now stackable.
* All buttons should use a base class of "button".
* Buttons default to the gray style (formerly "button-secondary"). Buttons can add a style by adding additional classes. To make a primary button, add the "button-primary" class.
* Buttons can be rendered in various sizes. In addition to the default size, you can add "button-large", "button-small", or "button-tiny".

For backwards compatibility reasons, "button-primary" and "button-secondary" both work as standalone classes.

get_submit_button() has been adjusted to handle shorthand button classes (i.e. button classes can be passed without the "button-" prefix).

props lessbloat, helenyhou, trepmal, nacin. see #21598.



git-svn-id: https://develop.svn.wordpress.org/trunk@21789 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-08 04:58:34 +00:00
Peter Westwood
61abf077d0 Multisite: Rework the upload space usage tracking code so as to be fully pluggable.
* Moves some admin only functions into wp-admin/includes/ms.php from wp-includes/ms-functions.php
 * Reworked the variable naming to be more in line with the Coding Standards
 * Introduced a new get_space_used() function instead of calculating it in multiple places.

Fixes #21181 props dllh and jkudish for inital work on this.


git-svn-id: https://develop.svn.wordpress.org/trunk@21387 602fd350-edb4-49c9-b593-d223f7449a82
2012-08-01 13:52:06 +00:00
Ryan Boren
d2774833b2 Introduce get_edit_user_link(). Props scribu, georgestephanis, johnbillion. fixes #14787 see #20307
git-svn-id: https://develop.svn.wordpress.org/trunk@21364 602fd350-edb4-49c9-b593-d223f7449a82
2012-07-30 18:30:03 +00:00
Andrew Ozz
6e6b727315 Remove nearly all tabindex attributes from the admin, leaving them only where absolutely necessary (for now that's only the toolbar).
Add tabindex="-1" for the menu images links to avoid double tab stops there when the menu is expanded.

Fix/add auto-focus on the first input fields on the Add/Edit Post, all taxonomy, all edit taxonomy, Log In and Edit Comment screens.

See #21340.

git-svn-id: https://develop.svn.wordpress.org/trunk@21311 602fd350-edb4-49c9-b593-d223f7449a82
2012-07-24 00:15:15 +00:00
Andrew Nacin
6cc01f0113 Fix the 'Display item date' configuration option for the Incoming Links dashboard widget. props Latz, SergeyBiryukov, fixes #20644.
git-svn-id: https://develop.svn.wordpress.org/trunk@21249 602fd350-edb4-49c9-b593-d223f7449a82
2012-07-09 19:16:53 +00:00
Andrew Nacin
27ba62eb39 WP.org no longer returns this old structure. The title of the item is the plugin name in full. fixes #21012.
git-svn-id: https://develop.svn.wordpress.org/trunk@21160 602fd350-edb4-49c9-b593-d223f7449a82
2012-06-28 19:34:25 +00:00
Andrew Nacin
245b0655d2 Remove user/site suggestions (autocompletion) from search inputs, as the UX isn't proper.
* Removes all instances of site-search, so away it goes. Sidesteps a number of bugs with site-search.
 * Renames user-search to user-suggest, which means it better describes the current behavior (autocompletion) while allowing for future behavior (instant search).
 * Ties user suggestions to a single .wp-suggest-user class.

with help from markjaquith, helenyhou, wonderboymusic. 
fixes #20835.



git-svn-id: https://develop.svn.wordpress.org/trunk@21003 602fd350-edb4-49c9-b593-d223f7449a82
2012-06-05 18:51:33 +00:00
Ryan Boren
3c9d5d3893 Site/user autocomplete fixes.
* Lengthen the inputs in the Right Now network dashboard widget
* Border around the whole autocomplete widget/list
* Handle long strings
* Remove some CSS color cruft from the main stylesheet and de-dupe the JS closures for open/close callbacks.

Props helenyhou
fixes #20584


git-svn-id: https://develop.svn.wordpress.org/trunk@20984 602fd350-edb4-49c9-b593-d223f7449a82
2012-06-04 14:50:50 +00:00
Andrew Nacin
b8caf0e864 Revert [20776], and instead pass the current locale to browsehappy.com.
git-svn-id: https://develop.svn.wordpress.org/trunk@20781 602fd350-edb4-49c9-b593-d223f7449a82
2012-05-13 22:44:01 +00:00
Andrew Nacin
212552cb9e Translate the 'http://browsehappy.com/' URL. See http://wp.me/p10SQN-r8.
git-svn-id: https://develop.svn.wordpress.org/trunk@20776 602fd350-edb4-49c9-b593-d223f7449a82
2012-05-11 21:29:01 +00:00
Andrew Nacin
07fce717e7 Use maybe_serialize() where appropriate. fixes #19617.
git-svn-id: https://develop.svn.wordpress.org/trunk@20612 602fd350-edb4-49c9-b593-d223f7449a82
2012-04-27 15:57:51 +00:00
Andrew Nacin
4fa4a3339e Make the Recent Comments dashboard widget more performant on sites with large amounts of comments, in particular with a heavy spam ratio.
Simplifies the query by avoiding a join, and leverages the API now rather than a direct query.

fixes #14222.



git-svn-id: https://develop.svn.wordpress.org/trunk@20609 602fd350-edb4-49c9-b593-d223f7449a82
2012-04-26 21:09:51 +00:00
Ryan Boren
d04dbfb0e5 Clean out layout columns API in WP_Screen.
* Move layout column setup into render_screen_meta() so that the number of columns is available earlier.
* Store the user provisioned number of columns in an instance var.
* Access the var with get_columns()
* Move all templates away from the screen_layout_columns global to the get_columns() method.
* Deprecate the global
* Remove the no longer needed check for 'auto' in the user option.
* Cast the user option to an int.

Props griffinjt
fixes #20506


git-svn-id: https://develop.svn.wordpress.org/trunk@20579 602fd350-edb4-49c9-b593-d223f7449a82
2012-04-24 20:46:04 +00:00
Andrew Nacin
a6b212b230 Use home_url() instead of get_bloginfo('url'). props Mamaduka, fixes #20371.
git-svn-id: https://develop.svn.wordpress.org/trunk@20439 602fd350-edb4-49c9-b593-d223f7449a82
2012-04-11 20:22:48 +00:00
Andrew Nacin
48c5af2ac0 Clean up cap checks for autocompletes for sites and users in a network. see #19810.
git-svn-id: https://develop.svn.wordpress.org/trunk@20332 602fd350-edb4-49c9-b593-d223f7449a82
2012-03-30 21:04:48 +00:00
Mark Jaquith
461e24643c Autocomplete site names in Network Admin. More user completion areas. props Japh, DrewAPicture. see #19810.
git-svn-id: https://develop.svn.wordpress.org/trunk@20279 602fd350-edb4-49c9-b593-d223f7449a82
2012-03-24 04:54:58 +00:00
Andrew Ozz
74cfcd36e3 Responsive columns on the dashboard and write screens, first run, see #20015
git-svn-id: https://develop.svn.wordpress.org/trunk@20272 602fd350-edb4-49c9-b593-d223f7449a82
2012-03-23 21:41:00 +00:00
Andrew Ozz
fcbd8f7f57 Set proper HTML5 input types in the admin, props georgestephanis, fixes #17863
git-svn-id: https://develop.svn.wordpress.org/trunk@20168 602fd350-edb4-49c9-b593-d223f7449a82
2012-03-10 01:23:48 +00:00
Andrew Nacin
9cc63bb04f Use proper object. see #20103.
git-svn-id: https://develop.svn.wordpress.org/trunk@20038 602fd350-edb4-49c9-b593-d223f7449a82
2012-02-29 18:11:49 +00:00
Andrew Nacin
53a209a4ee Introduce WP_Theme, wp_get_themes(), and wp_get_theme() to replace get_themes(), get_theme(), get_theme_data(), current_theme_info(), and others.
* Getters and Helpers: Introduces a series of methods to allow for easy generation of headers for display, and other theme metadata, including page templates.
 * Screenshots: Handles support for multiple screenshots. (see # Additional screenshots must be PNG and start with screenshot-2.png, and be sequential to be counted. see #19816.
 * Error Handling: Broken themes have a WP_Error object attached to them.
 * Caching: Introduces a wp_cache_themes_persistently filter (also in [20020]) to enable persistent caching of all filesystem and sanitization operations normally handled by WP_Theme (and formerly get_file_data() and get_themes()). Themes are cached individually and across five different cache keys for different data pieces.
 * Compatibility: A WP_Theme object is backwards compatible with a theme's array formerly returned by get_themes() and get_theme(), and an stdClass object formerly returned by current_theme_info().
 * i18n/L10n: Theme headers are now localizable with proper Text Domain and Domain Path headers, like plugins. (Language packs may remove the requirement for headers.) For page templates, see #6007 (not fixed yet, but will be easy now). For headers, fixes #15858.
 * PHP and CSS files: New methods that fetch a list of theme files (for the theme editor) only on demand, rather than only loading them into memory. fixes #11214.

Functions deprecated:
 * get_themes(), get_allowed_themes() and get_broken_themes() -- use wp_get_themes()
 * get_theme() and current_theme_info() -- use wp_get_theme()
 * get_site_allowed_themes() -- use WP_Theme::get_allowed_on_network()
 * wpmu_get_blog_allowedthemes() -- use WP_theme::get_allowed_on_site()

see also [20016], [20018], [20019], [20020], [20021], [20022], [20025], [20026], [20027]. also fixes #19244.

see #20103.



git-svn-id: https://develop.svn.wordpress.org/trunk@20029 602fd350-edb4-49c9-b593-d223f7449a82
2012-02-28 21:24:44 +00:00
Ryan Boren
2b186b0c45 Lose EOF ?>. Clean up EOF newlines. fixes #12307
git-svn-id: https://develop.svn.wordpress.org/trunk@19712 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-08 17:01:11 +00:00
Ryan Boren
5e76729992 One newline is enough.
git-svn-id: https://develop.svn.wordpress.org/trunk@19684 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-05 20:10:39 +00:00
Ryan Boren
f1ec82c3a7 Update some @since. Props dgwyer. fixes #19638
git-svn-id: https://develop.svn.wordpress.org/trunk@19673 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-04 19:03:33 +00:00
Andrew Nacin
64a967b0f0 Fix widget count on dashboard to account for orphaned widgets. see #19553 for trunk.
git-svn-id: https://develop.svn.wordpress.org/trunk@19653 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-03 17:53:31 +00:00
Ryan Boren
c29f1b7fee Remove Recently Updated from dash Plugins widget. see #19573
git-svn-id: https://develop.svn.wordpress.org/trunk@19630 602fd350-edb4-49c9-b593-d223f7449a82
2011-12-23 00:26:58 +00:00
Ryan Boren
aea340f3d8 About face. Revert [19628]. Gonna improve Plugins widget instead of tossing it. see #19573
git-svn-id: https://develop.svn.wordpress.org/trunk@19629 602fd350-edb4-49c9-b593-d223f7449a82
2011-12-23 00:25:09 +00:00
Ryan Boren
c736bcfacb Remove Plugins dashboard widget. fixes #19573
git-svn-id: https://develop.svn.wordpress.org/trunk@19628 602fd350-edb4-49c9-b593-d223f7449a82
2011-12-22 21:57:21 +00:00