Index: wp-admin/includes/plugin-install.php
===================================================================
--- wp-admin/includes/plugin-install.php	(revision 28757)
+++ wp-admin/includes/plugin-install.php	(working copy)
@@ -311,7 +311,7 @@
 function install_plugin_information() {
 	global $tab;
 
-	$api = plugins_api( 'plugin_information', array( 'slug' => wp_unslash( $_REQUEST['plugin'] ), 'is_ssl' => is_ssl() ) );
+	$api = plugins_api( 'plugin_information', array( 'slug' => wp_unslash( $_REQUEST['plugin'] ), 'is_ssl' => is_ssl(), 'fields' => array( 'banners' => true ) ) );
 
 	if ( is_wp_error( $api ) )
 		wp_die( $api );
@@ -354,7 +354,75 @@
 
 	iframe_header( __('Plugin Install') );
 
-	echo "<div id='{$_tab}-title'>{$api->name}</div>";
+	if ( !empty( $api->banners ) && ( !empty( $api->banners['low'] ) || !empty( $api->banners['high'] ) ) ) {
+		$low  = ( !empty( $api->banners['low'] ) ) ? $api->banners['low'] :  $api->banners['high'];
+		$high = ( !empty( $api->banners['high'] ) ) ? $api->banners['high'] :  $api->banners['low'];
+		?>
+		<style type="text/css">
+			#plugin-information-title {
+				height: 250px;
+				bottom: 250px;
+				background-image: url(<?php echo $low ?>);
+				background-size: 100% auto;
+			}
+			#plugin-information-tabs {
+				top:250px;
+			}
+			#plugin-information-content {
+				top:284px;
+			}
+			@media only screen and (-webkit-min-device-pixel-ratio: 1.5) {
+				#plugin-information-title {
+					background-image: url(<?php echo $high ?>});
+				}
+			}
+			#plugin-information-title h2 {
+				font-family: "Helvetica Neue", sans-serif;
+				font-size: 30px;
+				font-weight: bold;
+				max-width: 760px;
+				position: absolute;
+				left: 20px;
+				top: 175px;
+				padding: 0 15px;
+				margin: 0;
+				color: #fff;
+				background: rgba( 30, 30, 30, 0.9 );
+				text-shadow: 0 1px 3px rgba( 0, 0, 0, 0.4 );
+				-webkit-box-shadow: 0 0 30px rgba( 255, 255, 255, 0.1 );
+				-moz-box-shadow: 0 0 30px rgba( 255, 255, 255, 0.1 );
+				box-shadow: 0 0 30px rgba( 255, 255, 255, 0.1 );
+				-webkit-border-radius: 8px;
+				border-radius: 8px;
+			}
+			#plugin-information-title div.vignette {
+				top: 0;
+				height: 250px;
+				width: 830px;
+				margin: 0 -20px;
+				background: transparent;
+				-webkit-box-shadow: inset 0 0 50px 4px rgba( 0, 0, 0, 0.2 ), inset 0 -1px 0 rgba( 0, 0, 0, 0.1 );
+				-moz-box-shadow: inset 0 0 50px 4px rgba( 0, 0, 0, 0.2 ), inset 0 -1px 0 rgba( 0, 0, 0, 0.1 );
+				box-shadow: inset 0 0 50px 4px rgba( 0, 0, 0, 0.2 ), inset 0 -1px 0 rgba( 0, 0, 0, 0.1 );
+			}
+		</style>
+		<?php
+	} else {
+		?>
+		<style type="text/css">
+			#plugin-information-title h2 {
+				font-family: "Helvetica Neue", sans-serif;
+				font-size: 24px;
+				font-weight: bold;
+				padding:0;
+				margin: 0;
+				max-width: 760px;
+			}
+		</style>
+		<?php
+	}
+
+	echo "<div id='{$_tab}-title'><div class='vignette'></div><h2>{$api->name}</h2></div>";
 	echo "<div id='{$_tab}-tabs'>\n";
 
 	foreach ( (array)$api->sections as $section_name => $content ) {
@@ -394,6 +462,8 @@
 			<li><a target="_blank" href="https://wordpress.org/plugins/<?php echo $api->slug ?>/"><?php _e('WordPress.org Plugin Page &#187;') ?></a></li>
 <?php endif; if ( ! empty( $api->homepage ) ) : ?>
 			<li><a target="_blank" href="<?php echo $api->homepage ?>"><?php _e('Plugin Homepage &#187;') ?></a></li>
+<?php endif;if ( ! empty( $api->donate_link ) && empty( $api->contributors ) ) : ?>
+			<li><a target="_blank" href="<?php echo $api->donate_link ?>"><?php _e('Donate to this plugin &#187;') ?></a></li>
 <?php endif; ?>
 		</ul>
 		<?php if ( ! empty( $api->rating ) ) : ?>
@@ -401,6 +471,27 @@
 		<?php wp_star_rating( array( 'rating' => $api->rating, 'type' => 'percent', 'number' => $api->num_ratings ) ); ?>
 		<small><?php printf( _n('(based on %s rating)', '(based on %s ratings)', $api->num_ratings), number_format_i18n($api->num_ratings) ); ?></small>
 		<?php endif; ?>
+		<?php if ( ! empty( $api->contributors ) ) : ?>
+			<h3><?php _e('Contributors') ?></h3>
+			<ul class="contributors">
+				<?php
+				foreach ( (array) $api->contributors as $contrib_username => $contrib_profile ) {
+					if ( empty( $contrib_username ) && empty( $contrib_profile ) )
+						continue;
+					if ( empty( $contrib_username ) )
+						$contrib_username = preg_replace( '/^.+\/(.+)\/?$/', '\1', $contrib_profile );
+					$contrib_username = sanitize_user( $contrib_username );
+					if ( empty( $contrib_profile ) )
+						echo "<li><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' /> {$contrib_username}</li>";
+					else
+						echo "<li><a href='{$contrib_profile}' target='_blank'><img src='https://wordpress.org/grav-redirect.php?user={$contrib_username}&s=36' width='18' height='18' /> {$contrib_username}</a></li>";
+				}
+				?>
+			</ul>
+			<?php if ( ! empty( $api->donate_link ) ) : ?>
+				<a target="_blank" href="<?php echo $api->donate_link ?>"><?php _e('Donate to this plugin &#187;') ?></a>
+			<?php endif; ?>
+		<?php endif; ?>
 	</div>
 	<div id="section-holder" class="wrap">
 	<?php
