Add option defaults. Add arg to get_user_option() to avoid querying options table if user option is missing. see #8229

git-svn-id: https://develop.svn.wordpress.org/trunk@9871 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Ryan Boren 2008-11-25 18:33:04 +00:00
parent 85128c9da6
commit c1543ec4e6
8 changed files with 25 additions and 15 deletions

View File

@ -35,8 +35,8 @@ $att_title = _draft_or_post_title();
<tr id='post-<?php echo $id; ?>' class='<?php echo trim( $alt . ' author-' . $post_owner . ' status-' . $post->post_status ); ?>' valign="top">
<?php
$posts_columns = wp_manage_media_columns();
$hidden = (array) get_user_option( 'manage-media-columns-hidden' );
$posts_columns = get_column_headers('media');
$hidden = get_hidden_columns('media');
foreach ($posts_columns as $column_name => $column_display_name ) {
$class = "class=\"$column_name column-$column_name\"";

View File

@ -435,7 +435,7 @@ wp_nonce_field( 'get-comments', 'add_comment_nonce', false );
</table>
<p class="hide-if-no-js"><a href="#commentstatusdiv" id="show-comments" onclick="commentsBox.get(<?php echo $total; ?>);return false;"><?php _e('Show comments'); ?></a> <img class="waiting" style="display:none;" src="images/loading.gif" alt="" /></p>
<?php
$hidden = (array) get_user_option( "meta-box-hidden_post" );
$hidden = (array) get_user_option( "meta-box-hidden_post", 0, false );
if ( ! in_array('commentstatusdiv', $hidden) ) { ?>
<script type="text/javascript">commentsBox.get(<?php echo $total; ?>, 10);</script>
<?php

View File

@ -869,7 +869,7 @@ function postbox_classes( $id, $page ) {
if ( isset( $_GET['edit'] ) && $_GET['edit'] == $id )
return '';
$current_user = wp_get_current_user();
if ( $closed = get_usermeta( $current_user->ID, 'closedpostboxes_'.$page ) ) {
if ( $closed = get_user_option('closedpostboxes_'.$page, 0, false ) ) {
if ( !is_array( $closed ) ) return '';
return in_array( $id, $closed )? 'if-js-closed' : '';
} else {

View File

@ -294,7 +294,14 @@ function populate_options() {
add_option('comments_per_page', 50);
add_option('default_comments_page', 'newest');
add_option('comment_order', 'asc');
add_option('use_ssl', 0);
add_option('sticky_posts', array());
add_option('widget_categories', array());
add_option('widget_text', array());
add_option('widget_rss', array());
add_option('update_core', array());
add_option('dismissed_update_core', array());
// Delete unused options
$unusedoptions = array ('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins');
foreach ($unusedoptions as $option) :

View File

@ -203,7 +203,7 @@ function inline_edit_term_row($type) {
$is_tag = $type == 'tag';
$columns = $is_tag ? get_column_headers('tag') : get_column_headers('category');
$hidden = array_intersect( array_keys( $columns ), array_filter( (array) get_user_option( "manage-$type-columns-hidden" ) ) );
$hidden = array_intersect( array_keys( $columns ), array_filter( get_hidden_columns($type) ) );
$col_count = count($columns) - count($hidden);
?>
@ -900,7 +900,7 @@ function register_column_headers($screen, $columns) {
*/
function get_hidden_columns($page) {
$page = str_replace('.php', '', $page);
return (array) get_user_option( 'manage-' . $page . '-columns-hidden' );
return (array) get_user_option( 'manage-' . $page . '-columns-hidden', 0, false );
}
/**
@ -922,7 +922,7 @@ function inline_edit_row( $type ) {
$post = get_default_post_to_edit();
$columns = $is_page ? wp_manage_pages_columns() : wp_manage_posts_columns();
$hidden = array_intersect( array_keys( $columns ), array_filter( (array) get_user_option( "manage-$type-columns-hidden" ) ) );
$hidden = array_intersect( array_keys( $columns ), array_filter( get_hidden_columns($type) ) );
$col_count = count($columns) - count($hidden);
$m = ( isset($mode) && 'excerpt' == $mode ) ? 'excerpt' : 'list';
$can_publish = current_user_can("publish_{$type}s");
@ -2697,14 +2697,14 @@ function do_meta_boxes($page, $context, $object) {
//do_action('do_meta_boxes', $page, $context, $object);
$hidden = (array) get_user_option( "meta-box-hidden_$page" );
$hidden = (array) get_user_option( "meta-box-hidden_$page", 0, false );
echo "<div id='$context-sortables' class='meta-box-sortables'>\n";
$i = 0;
do {
// Grab the ones the user has manually sorted. Pull them out of their previous context/priority and into the one the user chose
if ( !$already_sorted && $sorted = get_user_option( "meta-box-order_$page" ) ) {
if ( !$already_sorted && $sorted = get_user_option( "meta-box-order_$page", 0, false ) ) {
foreach ( $sorted as $box_context => $ids )
foreach ( explode(',', $ids) as $id )
if ( $id )
@ -2777,7 +2777,7 @@ function meta_box_prefs($page) {
if ( empty($wp_meta_boxes[$page]) )
return;
$hidden = (array) get_user_option( "meta-box-hidden_$page" );
$hidden = (array) get_user_option( "meta-box-hidden_$page", 0, false );
foreach ( array_keys($wp_meta_boxes[$page]) as $context ) {
foreach ( array_keys($wp_meta_boxes[$page][$context]) as $priority ) {

View File

@ -138,7 +138,7 @@ if ( !empty($_GET['s']) )
$links = get_bookmarks( $args );
if ( $links ) {
$link_columns = get_column_headers('link-manager');
$hidden = (array) get_user_option( 'manage-link-manager-columns-hidden' );
$hidden = get_hidden_columns('link-manager');
?>
<?php wp_nonce_field('bulk-bookmarks') ?>

View File

@ -168,9 +168,10 @@ function user_pass_ok($user_login, $user_pass) {
*
* @param string $option User option name.
* @param int $user Optional. User ID.
* @param bool $check_global Whether to check for a global option if a per-user option does not exist. Default is true.
* @return mixed
*/
function get_user_option( $option, $user = 0 ) {
function get_user_option( $option, $user = 0, $check_global = true ) {
global $wpdb;
$option = preg_replace('|[^a-z0-9_]|i', '', $option);
@ -183,8 +184,10 @@ function get_user_option( $option, $user = 0 ) {
$result = $user->{$wpdb->prefix . $option};
elseif ( isset( $user->{$option} ) ) // User specific and cross-blog
$result = $user->{$option};
else // Blog global
elseif ( $check_global ) // Blog global
$result = get_option( $option );
else
$result = false;
return apply_filters("get_user_option_{$option}", $result, $option, $user);
}

View File

@ -15,6 +15,6 @@ $wp_version = '2.7-beta3-9863';
*
* @global int $wp_db_version
*/
$wp_db_version = 9621;
$wp_db_version = 9872;
?>