wp/wp-admin/credits.php
changeset 7 cf61fcea0001
parent 5 5e2f62d02dcd
child 9 177826044cd9
--- a/wp/wp-admin/credits.php	Tue Jun 09 11:14:17 2015 +0000
+++ b/wp/wp-admin/credits.php	Mon Oct 14 17:39:30 2019 +0200
@@ -8,110 +8,55 @@
 
 /** WordPress Administration Bootstrap */
 require_once( dirname( __FILE__ ) . '/admin.php' );
+require_once( dirname( __FILE__ ) . '/includes/credits.php' );
 
 $title = __( 'Credits' );
 
-/**
- * Retrieve the contributor credits.
- *
- * @global string $wp_version The current WordPress version.
- *
- * @since 3.2.0
- *
- * @return array|bool A list of all of the contributors, or false on error.
-*/
-function wp_credits() {
-	global $wp_version;
-	$locale = get_locale();
-
-	$results = get_site_transient( 'wordpress_credits_' . $locale );
-
-	if ( ! is_array( $results )
-		|| false !== strpos( $wp_version, '-' )
-		|| ( isset( $results['data']['version'] ) && strpos( $wp_version, $results['data']['version'] ) !== 0 )
-	) {
-		$response = wp_remote_get( "http://api.wordpress.org/core/credits/1.1/?version=$wp_version&locale=$locale" );
-
-		if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) )
-			return false;
-
-		$results = json_decode( wp_remote_retrieve_body( $response ), true );
-
-		if ( ! is_array( $results ) )
-			return false;
-
-		set_site_transient( 'wordpress_credits_' . $locale, $results, DAY_IN_SECONDS );
-	}
-
-	return $results;
-}
-
-/**
- * Retrieve the link to a contributor's WordPress.org profile page.
- *
- * @access private
- * @since 3.2.0
- *
- * @param string &$display_name The contributor's display name, passed by reference.
- * @param string $username      The contributor's username.
- * @param string $profiles      URL to the contributor's WordPress.org profile page.
- * @return string A contributor's display name, hyperlinked to a WordPress.org profile page.
- */
-function _wp_credits_add_profile_link( &$display_name, $username, $profiles ) {
-	$display_name = '<a href="' . esc_url( sprintf( $profiles, $username ) ) . '">' . esc_html( $display_name ) . '</a>';
-}
-
-/**
- * Retrieve the link to an external library used in WordPress.
- *
- * @access private
- * @since 3.2.0
- *
- * @param string &$data External library data, passed by reference.
- * @return string Link to the external library.
- */
-function _wp_credits_build_object_link( &$data ) {
-	$data = '<a href="' . esc_url( $data[1] ) . '">' . $data[0] . '</a>';
-}
-
-list( $display_version ) = explode( '-', $wp_version );
+list( $display_version ) = explode( '-', get_bloginfo( 'version' ) );
 
 include( ABSPATH . 'wp-admin/admin-header.php' );
 ?>
-<div class="wrap about-wrap">
+<div class="wrap about-wrap full-width-layout">
 
 <h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
 
-<div class="about-text"><?php printf( __( 'Thank you for updating! WordPress %s helps you communicate and share, globally.' ), $display_version ); ?></div>
+<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s will smooth your design workflow and keep you safe from coding errors.' ), $display_version ); ?></p>
 
 <div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
 
-<h2 class="nav-tab-wrapper">
-	<a href="about.php" class="nav-tab">
-		<?php _e( 'What&#8217;s New' ); ?>
-	</a><a href="credits.php" class="nav-tab nav-tab-active">
-		<?php _e( 'Credits' ); ?>
-	</a><a href="freedoms.php" class="nav-tab">
-		<?php _e( 'Freedoms' ); ?>
-	</a>
+<h2 class="nav-tab-wrapper wp-clearfix">
+	<a href="about.php" class="nav-tab"><?php _e( 'What&#8217;s New' ); ?></a>
+	<a href="credits.php" class="nav-tab nav-tab-active"><?php _e( 'Credits' ); ?></a>
+	<a href="freedoms.php" class="nav-tab"><?php _e( 'Freedoms' ); ?></a>
+	<a href="freedoms.php?privacy-notice" class="nav-tab"><?php _e( 'Privacy' ); ?></a>
 </h2>
 
+<div class="about-wrap-content">
 <?php
 
 $credits = wp_credits();
 
 if ( ! $credits ) {
-	echo '<p class="about-description">' . sprintf( __( 'WordPress is created by a <a href="%1$s">worldwide team</a> of passionate individuals. <a href="%2$s">Get involved in WordPress</a>.' ),
+	echo '<p class="about-description">';
+	/* translators: 1: https://wordpress.org/about/, 2: https://make.wordpress.org/ */
+	printf( __( 'WordPress is created by a <a href="%1$s">worldwide team</a> of passionate individuals. <a href="%2$s">Get involved in WordPress</a>.' ),
 		'https://wordpress.org/about/',
-		/* translators: Url to the codex documentation on contributing to WordPress used on the credits page */
-		__( 'https://codex.wordpress.org/Contributing_to_WordPress' ) ) . '</p>';
+		__( 'https://make.wordpress.org/' )
+	);
+	echo '</p>';
+	echo '</div>';
+	echo '</div>';
 	include( ABSPATH . 'wp-admin/admin-footer.php' );
 	exit;
 }
 
 echo '<p class="about-description">' . __( 'WordPress is created by a worldwide team of passionate individuals.' ) . "</p>\n";
 
-$gravatar = is_ssl() ? 'https://secure.gravatar.com/avatar/' : 'http://0.gravatar.com/avatar/';
+echo '<p>' . sprintf(
+	/* translators: %s: https://make.wordpress.org/ */
+	__( 'Want to see your name in lights on this page? <a href="%s">Get involved in WordPress</a>.' ),
+	__( 'https://make.wordpress.org/' )
+) . '</p>';
 
 foreach ( $credits['groups'] as $group_slug => $group_data ) {
 	if ( $group_data['name'] ) {
@@ -124,7 +69,7 @@
 			$title = translate( $group_data['name'] );
 		}
 
-		echo '<h4 class="wp-people-group">' . $title . "</h4>\n";
+		echo '<h3 class="wp-people-group">' . esc_html( $title ) . "</h3>\n";
 	}
 
 	if ( ! empty( $group_data['shuffle'] ) )
@@ -144,11 +89,14 @@
 			$classes = 'wp-people-group ' . ( $compact ? 'compact' : '' );
 			echo '<ul class="' . $classes . '" id="wp-people-group-' . $group_slug . '">' . "\n";
 			foreach ( $group_data['data'] as $person_data ) {
-				echo '<li class="wp-person" id="wp-person-' . $person_data[2] . '">' . "\n\t";
-				echo '<a href="' . sprintf( $credits['data']['profiles'], $person_data[2] ) . '">';
-				$size = 'compact' == $group_data['type'] ? '30' : '60';
-				echo '<img src="' . $gravatar . $person_data[1] . '?s=' . $size . '" srcset="' . $gravatar . $person_data[1] . '?s=' . $size * 2 . ' 2x" class="gravatar" alt="' . esc_attr( $person_data[0] ) . '" /></a>' . "\n\t";
-				echo '<a class="web" href="' . sprintf( $credits['data']['profiles'], $person_data[2] ) . '">' . $person_data[0] . "</a>\n\t";
+				echo '<li class="wp-person" id="wp-person-' . esc_attr( $person_data[2] ) . '">' . "\n\t";
+				echo '<a href="' . esc_url( sprintf( $credits['data']['profiles'], $person_data[2] ) ) . '" class="web">';
+				$size = 'compact' == $group_data['type'] ? 30 : 60;
+				$data = get_avatar_data( $person_data[1] . '@md5.gravatar.com', array( 'size' => $size ) );
+				$size *= 2;
+				$data2x = get_avatar_data( $person_data[1] . '@md5.gravatar.com', array( 'size' => $size ) );
+				echo '<img src="' . esc_url( $data['url'] ) . '" srcset="' . esc_url( $data2x['url'] ) . ' 2x" class="gravatar" alt="" />' . "\n";
+				echo esc_html( $person_data[0] ) . "</a>\n\t";
 				if ( ! $compact )
 					echo '<span class="title">' . translate( $person_data[3] ) . "</span>\n";
 				echo "</li>\n";
@@ -159,10 +107,7 @@
 }
 
 ?>
-<p class="clear"><?php printf( __( 'Want to see your name in lights on this page? <a href="%s">Get involved in WordPress</a>.' ),
-	/* translators: URL to the Make WordPress 'Get Involved' landing page used on the credits page */
-	__( 'https://make.wordpress.org/' ) ); ?></p>
-
+</div>
 </div>
 <?php
 
@@ -172,21 +117,12 @@
 
 // These are strings returned by the API that we want to be translatable
 __( 'Project Leaders' );
-__( 'Extended Core Team' );
-__( 'Core Developers' );
-__( 'Recent Rockstars' );
 __( 'Core Contributors to WordPress %s' );
-__( 'Contributing Developers' );
+__( 'Noteworthy Contributors' );
 __( 'Cofounder, Project Lead' );
 __( 'Lead Developer' );
 __( 'Release Lead' );
-__( 'User Experience Lead' );
+__( 'Release Design Lead' );
+__( 'Release Deputy' );
 __( 'Core Developer' );
-__( 'Core Committer' );
-__( 'Guest Committer' );
-__( 'Developer' );
-__( 'Designer' );
-__( 'XML-RPC' );
-__( 'Internationalization' );
 __( 'External Libraries' );
-__( 'Icon Design' );