diff --git a/wp-admin/includes/schema.php b/wp-admin/includes/schema.php
index f9fe0fcdba..381187c919 100644
--- a/wp-admin/includes/schema.php
+++ b/wp-admin/includes/schema.php
@@ -235,6 +235,10 @@ function populate_options() {
// 2.2
add_option('tag_base');
+ // 2.5
+ add_option('show_avatars', '1');
+ add_option('avatar_rating', 'G');
+
// 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');
foreach ($unusedoptions as $option) :
diff --git a/wp-admin/options-reading.php b/wp-admin/options-reading.php
index 624aed3778..6c7bb832ae 100644
--- a/wp-admin/options-reading.php
+++ b/wp-admin/options-reading.php
@@ -75,6 +75,41 @@ include('admin-header.php');
+
+
+
|
@@ -88,7 +123,7 @@ include('admin-header.php');
-
+
diff --git a/wp-includes/images/avatar/unknown-128.jpg b/wp-includes/images/avatar/unknown-128.jpg
new file mode 100644
index 0000000000..61917a7a6a
Binary files /dev/null and b/wp-includes/images/avatar/unknown-128.jpg differ
diff --git a/wp-includes/images/avatar/unknown-16.jpg b/wp-includes/images/avatar/unknown-16.jpg
new file mode 100644
index 0000000000..b83197df51
Binary files /dev/null and b/wp-includes/images/avatar/unknown-16.jpg differ
diff --git a/wp-includes/images/avatar/unknown-32.jpg b/wp-includes/images/avatar/unknown-32.jpg
new file mode 100644
index 0000000000..c6cebfd638
Binary files /dev/null and b/wp-includes/images/avatar/unknown-32.jpg differ
diff --git a/wp-includes/images/avatar/unknown-48.jpg b/wp-includes/images/avatar/unknown-48.jpg
new file mode 100644
index 0000000000..496b05dfba
Binary files /dev/null and b/wp-includes/images/avatar/unknown-48.jpg differ
diff --git a/wp-includes/images/avatar/unknown-96.jpg b/wp-includes/images/avatar/unknown-96.jpg
new file mode 100644
index 0000000000..39357cf399
Binary files /dev/null and b/wp-includes/images/avatar/unknown-96.jpg differ
diff --git a/wp-includes/pluggable.php b/wp-includes/pluggable.php
index 6c33824802..ce485f1734 100644
--- a/wp-includes/pluggable.php
+++ b/wp-includes/pluggable.php
@@ -1162,6 +1162,62 @@ function wp_set_password( $password, $user_id ) {
}
endif;
+if ( !function_exists( 'get_avatar' ) ) :
+/**
+ * get_avatar() - Get avatar for a user
+ *
+ * Retrieve the avatar for a user provided a user ID or email address
+ *
+ * @since 2.5
+ * @param int|string $id_or_email A user ID or email address
+ * @param int $size Size of the avatar image
+ * @param string $default URL to a default image to use if no avatar is available
+ * @return string tag for the user's avatar
+*/
+function get_avatar( $id_or_email, $size = '96', $default = '' ) {
+ if ( ! get_option('show_avatars') )
+ return false;
+
+ if ( is_numeric($id_or_email) ) {
+ $id = (int) $id_or_email;
+ $user = get_userdata($id);
+ if ( !$user)
+ $email = '';
+ else
+ $email = $user->user_email;
+ } else {
+ $email = $id_or_email;
+ }
+
+ $default_sizes = array(16, 32, 48, 96, 128);
+ if ( empty($default) ) {
+ if ( in_array($size, $default_sizes) )
+ $default = trailingslashit(get_bloginfo('wpurl')) . "wp-includes/images/avatar/unknown-$size.jpg";
+ else
+ $default = trailingslashit(get_bloginfo('wpurl')) . "wp-includes/images/avatar/unknown-96.jpg";
+ }
+
+ if ( !empty($email) ) {
+ $default = urlencode( $default );
+
+ $out = 'http://www.gravatar.com/avatar.php?gravatar_id=';
+ $out .= md5( $email );
+ $out .= "&size={$size}";
+ $out .= "&default={$default}";
+
+ $rating = get_option('avatar_rating');
+ if ( !empty( $rating ) )
+ $out .= "&rating={$rating}";
+
+ $avatar = "";
+ } else {
+ $avatar = "";
+ }
+
+ return apply_filters('get_avatar', $avatar, $id_or_email, $size, $default);
+}
+endif;
+
if ( !function_exists('wp_setcookie') ) :
/**
* wp_setcookie() - Sets a cookie for a user who just logged in
diff --git a/wp-includes/version.php b/wp-includes/version.php
index 06b27b69fd..ae40f61f0a 100644
--- a/wp-includes/version.php
+++ b/wp-includes/version.php
@@ -16,6 +16,6 @@ $wp_version = '2.4-bleeding';
*
* @global int $wp_db_version
*/
-$wp_db_version = 6736;
+$wp_db_version = 6748;
?>
\ No newline at end of file