Index: wp-includes/default-filters.php
===================================================================
--- wp-includes/default-filters.php	(revision 22380)
+++ wp-includes/default-filters.php	(working copy)
@@ -258,6 +258,7 @@
 add_action( 'importer_scheduled_cleanup', 'wp_delete_attachment'                           );
 add_action( 'upgrader_scheduled_cleanup', 'wp_delete_attachment'                           );
 add_action( 'welcome_panel',              'wp_welcome_panel'                               );
+add_action( 'page_for_posts_message',     'display_page_for_posts_message'                 );
 
 // Navigation menu actions
 add_action( 'delete_post',                '_wp_delete_post_menu_item'         );
Index: wp-admin/includes/post.php
===================================================================
--- wp-admin/includes/post.php	(revision 22380)
+++ wp-admin/includes/post.php	(working copy)
@@ -1330,6 +1330,27 @@
 }
 
 /**
+ * Checks if page on front is set, else shows latests posts
+ *
+ * @since 3.5.0
+ * @access private
+ */
+
+function _show_on_front_cant_create_pages () {
+	
+	// If an existing page is set, keep things as is, rather than reverting to showing posts.
+	if ( get_option( 'page_on_front' ) ) {
+		$show_on_front_value = 'page';
+	} else {
+		$show_on_front_value = 'posts';
+		update_option( 'page_on_front', 0 );
+		update_option( 'page_for_posts', 0 );
+	}
+	add_settings_error( 'page_on_front', 'create_pages', __( 'You are not allowed to create pages on this site.' ) );
+	return $show_on_front_value;
+}
+
+/**
  * Creates new pages to be set as a front page or a page for posts in Reading Settings.
  *
  * @todo Make sure we are doing adequate sanitization on success, and cleanup/reset on failure.
@@ -1338,108 +1359,99 @@
  * @access private
  */
 function _show_on_front_reading_settings( $show_on_front_value ) {
+	
 	// If we're not saving the Reading Settings screen, don't intercept.
 	if ( ! $_POST || ! strpos( wp_get_referer(), 'options-reading.php' ) )
 		return $show_on_front_value;
-
+		
+	// If 'latest posts' is set, stop here
 	if ( 'posts' == $show_on_front_value ) {
 		update_option( 'page_on_front', 0 );
 		update_option( 'page_for_posts', 0 );
+
 		return $show_on_front_value;
 	}
+	
+	// They didn't select a page at all. Sad face.
+	if ( ! $_POST['page_on_front_title'] ) {
+		$show_on_front_value = 'posts';
+		update_option( 'page_on_front', 0 );
+		update_option( 'page_for_posts', 0 );
+		add_settings_error( 'page_on_front', 'no_page_selected', __( 'You must select a page to set a static front page.' ) );
+		return $show_on_front_value;
+	}
+	
+	// PAGE_ON_FRONT
+	$existing_page_on_front = get_page_by_title( stripslashes( $_POST['page_on_front_title'] ) );
 
-	// If a new front page was meant to be created, go forth and create it.
-	if ( 'new' == $_POST['page_on_front'] ) {
-
+	if ( $existing_page_on_front && $existing_page_on_front->ID && 'publish' == $existing_page_on_front->post_status && 'page' == $existing_page_on_front->post_type ) {
+		
+		// If a page exists with this same title, use it
+		update_option( 'page_on_front', (int) $existing_page_on_front->ID );
+	} else {
+		
 		// If the user can't create pages, revert.
 		if ( ! current_user_can( 'create_posts', 'page' ) ) {
-			// If an existing page is set, keep things as is, rather than reverting to showing posts.
-			if ( get_option( 'page_on_front' ) ) {
-				$show_on_front_value = 'page';
-			} else {
-				$show_on_front_value = 'posts';
-				update_option( 'page_on_front', 0 );
-				update_option( 'page_for_posts', 0 );
-			}
-			add_settings_error( 'page_on_front', 'create_pages', __( 'You are not allowed to create pages on this site.' ) );
-			return $show_on_front_value;
+			return _show_on_front_cant_create_pages();
 		}
-
-		$existing_page = get_page_by_title( stripslashes( $_POST['page_on_front_title'] ) );
-
-		// If page already exists and it's public, there's no need to create a new page.
-		if ( $existing_page && 'publish' == $existing_page->post_status ) {
-			$page_id = $existing_page->ID;
-		} else {
-			$page_id = wp_insert_post( array(
-				'post_title' => $_POST['page_on_front_title'],
-				'post_type' => 'page',
-				'post_status' => 'publish',
-				'comment_status' => 'closed',
-				'ping_status' => 'closed',
-				// @todo Create some sort of a 'context' in postmeta so we know we created a page through these means.
-				//       Consider then showing that context in the list table as a good-first-step.
-			) );
-		}
-
+		
+		// Create new page
+		$page_id = wp_insert_post( array(
+			'post_title' => wp_strip_all_tags( $_POST['page_on_front_title'] ),
+			'post_type' => 'page',
+			'post_status' => 'publish',
+			'comment_status' => 'closed',
+			'ping_status' => 'closed'
+			// @todo Create some sort of a 'context' in postmeta so we know we created a page through these means.
+			//       Consider then showing that context in the list table as a good-first-step.
+		) );
+		
 		if ( $page_id ) {
 			update_option( 'page_on_front', $page_id );
-		// If we can't save it, revert.
-		} elseif ( get_option( 'page_on_front' ) ) {
-			// If an existing page is set, keep things as is, rather than reverting to showing posts.
-			$show_on_front_value = 'page';
 		} else {
-			$show_on_front_value = 'posts';
-			update_option( 'page_on_front', 0 );
-			update_option( 'page_for_posts', 0 );
-			return $show_on_front_value;
+		
+			// If we can't save it, revert.
+			return _show_on_front_cant_create_pages();
 		}
-	} elseif ( $_POST['page_on_front'] ) {
-		update_option( 'page_on_front', $_POST['page_on_front'] );
-	} else {
-		// They didn't select a page at all. Sad face.
-		$show_on_front_value = 'posts';
-		update_option( 'page_on_front', 0 );
-		update_option( 'page_for_posts', 0 );
-		add_settings_error( 'page_on_front', 'no_page_selected', __( 'You must select a page to set a static front page.' ) );
-		return $show_on_front_value;
 	}
-
-	// If a page for posts was meant to be specified, update/create it.
-	if ( ! isset( $_POST['page_for_posts'] ) ) {
-		update_option( 'page_for_posts', 0 );
+	
+	// PAGE_FOR_POSTS
+	if ( ! isset( $_POST['page_for_posts_name'] ) ) {
 		return $show_on_front_value;
 	}
-
-	$page_for_posts = (int) $_POST['page_for_posts'];
-
-	if ( ! $page_for_posts || ! $page = get_post( $page_for_posts, ARRAY_A ) ) {
-		update_option( 'page_for_posts', 0 );
-		return $show_on_front_value;
+	
+	$existing_page_for_posts = get_page_by_path( stripslashes( $_POST['page_for_posts_name'] ) );
+	
+	if ( $existing_page_for_posts && $existing_page_for_posts->ID && 'publish' == $existing_page_for_posts->post_status && 'page' == $existing_page_for_posts->post_type ) {
+		
+		// If a page exists with this same name, use it
+		update_option( 'page_for_posts', (int) $existing_page_for_posts->ID );
+	} else {
+		
+		// If the user can't create pages, revert.
+		if ( ! current_user_can( 'create_posts', 'page' ) ) {
+			return _show_on_front_cant_create_pages();
+		}
+		
+		// Create new page
+		$page_id = wp_insert_post( array(
+			'post_title' => 'Latest posts',
+			'post_name' => wp_strip_all_tags( $_POST['page_for_posts_name'] ),
+			'post_type' => 'page',
+			'post_status' => 'publish',
+			'comment_status' => 'closed',
+			'ping_status' => 'closed'
+		) );
+		
+		if ( $page_id ) {
+			update_option( 'page_for_posts', $page_id );
+		} else {
+		
+			// If we can't save it, revert.
+			return _show_on_front_cant_create_pages();
+		}
 	}
 
-	if ( 'page' != $page['post_type'] || ! current_user_can( 'edit_post', $page_for_posts ) ) {
-		update_option( 'page_for_posts', 0 );
-		return $show_on_front_value;
-	}
-
-	if ( 'publish' != $page['post_status'] && ! current_user_can( 'publish_post', $page_for_posts ) ) {
-		update_option( 'page_for_posts', 0 );
-		return $show_on_front_value;
-	}
-
-	$args = add_magic_quotes( $page );
-	$args['post_title']  = $_POST['page_for_posts_title'];
-	$args['post_name']   = $_POST['post_name'];
-	$args['post_status'] = 'publish';
-	if ( 'auto-draft' == $page['post_status'] ) {
-		$args['comment_status'] = 'closed';
-		$args['ping_status'] = 'closed';
-	}
-
-	$page_id = wp_insert_post( $args );
-	update_option( 'page_for_posts', $page_id );
-
 	return $show_on_front_value;
 }
-add_filter( 'sanitize_option_show_on_front', '_show_on_front_reading_settings' );
+add_filter( 'sanitize_option_show_on_front', '_show_on_front_reading_settings' );
\ No newline at end of file
Index: wp-admin/edit-form-advanced.php
===================================================================
--- wp-admin/edit-form-advanced.php	(revision 22380)
+++ wp-admin/edit-form-advanced.php	(working copy)
@@ -306,8 +306,20 @@
 wp_nonce_field( 'autosave', 'autosavenonce', false );
 wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false );
 wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
-?>
 
+do_action( 'page_for_posts_message' );
+
+function display_page_for_posts_message () { 
+	global $post;
+	
+	if ( $post->ID == get_option( 'page_for_posts' ) ) { ?>
+		<div class="updated message"> 
+			<p><?php echo sprintf( __( 'This page is set to display your <a href="%s">latest posts</a>. As a result, the main content for this page (as seen in the editor below) will not be displayed. Visit your <a href="%s">reading settings</a> to change the \'front page displays\' option.' ), 'options-reading.php', 'options-reading.php' ); ?></p>
+		</div>
+<?php 
+	}
+} ?>
+
 <div id="poststuff">
 
 <div id="post-body" class="metabox-holder columns-<?php echo 1 == get_current_screen()->get_columns() ? '1' : '2'; ?>">
Index: wp-admin/css/ie.css
===================================================================
--- wp-admin/css/ie.css	(revision 22380)
+++ wp-admin/css/ie.css	(working copy)
@@ -601,4 +601,4 @@
 
 * html #adminmenu div.wp-menu-image {
 	height: 29px;
-}
+}
\ No newline at end of file
Index: wp-admin/css/wp-admin.css
===================================================================
--- wp-admin/css/wp-admin.css	(revision 22380)
+++ wp-admin/css/wp-admin.css	(working copy)
@@ -4431,12 +4431,6 @@
 	margin-top: 12px;
 }
 
-.form-table input.tog {
-	margin-top: 2px;
-	margin-right: 2px;
-	float: left;
-}
-
 .form-table td p {
 	margin-top: 4px;
 }
@@ -5134,18 +5128,45 @@
 	margin: -3px 3px;
 }
 
-.js.options-reading-php .if-page-on-front,
-.js.options-reading-php .if-page-for-posts,
-.options-reading-php .if-new-front-page {
+#front-static-pages .pfp-wrapper {
+	display: inline-block;
+	position: relative;
+}
+
+#front-static-pages .pfp-wrapper .description {
+	white-space: nowrap;
+}
+
+#front-static-pages .pfp-slash {
+	left: 6px;
+	position: absolute;
+	top: 1px;
+}
+
+#page_for_posts_name {
+	margin: 0;
+	padding-left: 8px;
+	width: 170px;
+}
+
+#page_on_front_title {
+	margin: 0;
+	width: 170px;
+}
+
+#front-static-pages .page-options {
 	display: none;
+	margin-top: 8px;
 }
-.options-reading-php .page-on-front .if-page-on-front,
-.options-reading-php .page-for-posts .if-page-for-posts {
+
+.page-options .sample-url {
+	color: #888;
+	font-size: 11px;
+}
+
+.static-front-page #front-static-pages .page-options {
 	display: block;
 }
-.options-reading-php .new-front-page .if-new-front-page {
-	display: inline;
-}
 
 /*------------------------------------------------------------------------------
   21.0 - Admin Footer
Index: wp-admin/options-reading.php
===================================================================
--- wp-admin/options-reading.php	(revision 22380)
+++ wp-admin/options-reading.php	(working copy)
@@ -16,6 +16,8 @@
 $parent_file = 'options-general.php';
 
 wp_enqueue_script( 'sample-permalink' );
+wp_enqueue_script( 'jquery-ui-core' );
+wp_enqueue_script( 'jquery-ui-autocomplete' );
 
 /**
  * Display JavaScript on the page.
@@ -23,25 +25,107 @@
  * @since 3.5.0
  */
 function options_reading_add_js() {
+
+$all_pages = get_pages();
+
+// Populate autocomplete options
+$page_titles_json = $page_names_json = array();
+
+foreach ( $all_pages as $page ) {
+	array_push( $page_titles_json, array( 
+		'id' => $page->ID,
+		'label' => $page->post_title,
+		'post_name' => $page->post_name
+	) );
+	
+	array_push( $page_names_json, array( 
+		'id' => $page->ID,
+		'label' => $page->post_name,
+		'post_title' => $page->post_title
+	) );
+}
 ?>
 <script>
-jQuery(document).ready( function($) {
-	var section = $('#front-static-pages');
-	$('#show_on_front').change( function() {
-		var checked = $(this).prop('checked');
-		section.toggleClass('page-on-front', checked);
-		if ( checked )
-			$('#page_for_posts').prop('checked', true).change();
-		else
-			section.removeClass('page-for-posts');
-	});
-	$('#page_for_posts').change( function() {
-		section.toggleClass('page-for-posts', $(this).prop('checked'));
-	});
-	$('#page_on_front').change( function() {
-		section.toggleClass('new-front-page', 'new' === $(this).val());
-	});
-});
+    jQuery( function( $ ) {
+		var pageTitles = <?php echo json_encode( $page_titles_json ); ?>,
+			pageNames = <?php echo json_encode( $page_names_json ); ?>;
+			
+		$( document ).ready( function () {
+			$( '.tog' ).change( function () {
+				if ( 'page' === $( this ).val() ) {
+					$( '.form-table' ).addClass( 'static-front-page' );
+				} else {
+					$( '.form-table' ).removeClass( 'static-front-page' );
+				}
+			});
+			$( '#page_on_front_title' ).keyup( function () {
+				
+				// Hide edit link
+				$( this ).parent().find( '.description' ).hide();
+			});
+			$( '#page_for_posts_name' ).keyup( function () {
+				thisVal = $( this ).val();
+				
+				// Update example URL
+				$( '.page_for_posts_url' ).html( thisVal );
+				
+				// Hide edit link
+				$( this ).parent().find( '.description' ).hide();
+			});
+		});
+			
+		addAutocomplete( 'page_on_front_title', pageTitles, 'page_on_front' );
+		addAutocomplete( 'page_for_posts_name', pageNames, 'page_for_posts' );
+		
+		function addAutocomplete ( textbox, source, hidden ) {
+	    	$( '#' + textbox ).autocomplete( {
+				source: source,
+				minLength: 1,
+				delay: 0,
+				autoFocus: true,
+				response: function( event, ui ) {
+					
+					// If this value doesn't exist in dropdown, show 'add new page' option at top
+					if ( ! isNewPage( source, $( this ).val() ) ) {
+						ui.content.unshift( {
+							'id': 0,
+							'label': '-- Add new page --',
+							'post_name': null
+						} );
+					}
+				},
+				select: function( event, ui ) {
+					var thisVal = $( this ).val();
+					
+					// Update example URL on click
+					if ( 'page_for_posts_name' === textbox )
+						$( '.page_for_posts_url' ).html( ui.item.label );
+					
+					if ( 0 === ui.item.id ){
+						setTimeout( function () {
+							$( '#' + textbox ).val( thisVal ).focus();
+						}, 30);
+					}
+					
+					if ( ui.item.id ) {
+						var thisId = ui.item.id;
+					} else {
+						var thisId = 'new';
+					}
+					$( '#' + hidden ).val( thisId );
+				}
+			} );
+	    }
+	    function isNewPage ( source, label ) {
+
+			for ( i=0; i<source.length; i++ ) {
+				if ( label === source[i].label )
+					return true;
+			}
+
+			return false;
+		}
+    } );
 </script>
 <?php
 }
@@ -90,99 +174,97 @@
 <?php
 settings_fields( 'reading' );
 wp_nonce_field( 'samplepermalink', 'samplepermalinknonce', false );
-?>
-<table class="form-table">
-<?php
-if ( ! in_array( get_option( 'blog_charset' ), array( 'utf8', 'utf-8', 'UTF8', 'UTF-8' ) ) )
-	add_settings_field( 'blog_charset', __( 'Encoding for pages and feeds' ), 'options_reading_blog_charset', 'reading', 'default', array( 'label_for' => 'blog_charset' ) );
 
 $classes = '';
 if ( 'page' == get_option( 'show_on_front' ) ) {
-	if ( ! get_pages() || ! get_option( 'page_on_front' ) && ! get_option( 'page_for_posts' ) ) {
+	$classes = 'static-front-page';
+	/*if ( ! get_pages() || ! get_option( 'page_on_front' ) && ! get_option( 'page_for_posts' ) ) {
 		update_option( 'show_on_front', 'posts' );
 	} else {
-		$classes = 'page-on-front';
-		if ( get_option( 'page_for_posts' ) )
-			$classes .= ' page-for-posts';
-	}
+		$classes = 'static-front-page';
+	}*/
 }
+?>
+<table class="form-table <?php echo $classes; ?>">
+<?php
+if ( ! in_array( get_option( 'blog_charset' ), array( 'utf8', 'utf-8', 'UTF8', 'UTF-8' ) ) )
+	add_settings_field( 'blog_charset', __( 'Encoding for pages and feeds' ), 'options_reading_blog_charset', 'reading', 'default', array( 'label_for' => 'blog_charset' ) );
 
-$all_pages = get_pages();
-$new_front_page_only = ! get_option( 'page_on_front' ) && ( ! $all_pages || ( 1 == count( $all_pages ) && __( 'sample-page' ) == $all_pages[0]->post_name ) );
+$page_on_front = get_post( get_option( 'page_on_front' ) );
+$page_for_posts = get_post( get_option( 'page_for_posts' ) );
 
-if ( current_user_can( 'create_posts', 'page' ) && ! ( get_option( 'page_for_posts' ) && $page_for_posts = get_post( get_option( 'page_for_posts' ) ) ) ) {
-	$title = _x( 'Blog', 'default page for posts title' );
-	// @todo What if the found page is post_type = attachment or post_status != publish?
-	//       We could go ahead and create a new one, but we would not be able to take over
-	//       the slug from another page. (We could for an attachment.)
-	//       We must also check that the user can edit this page and publish a page.
-	//       Otherwise, we must assume they cannot create pages (throughout), and thus
-	//       should fall back to the dropdown.
-	$page_for_posts = get_page_by_path( sanitize_title( $title ) );
-	if ( ! $page_for_posts || $page_for_posts->ID == get_option( 'page_on_front' ) ) {
-		$page_for_posts = get_default_post_to_edit( 'page', true );
-		$page_for_posts->post_title = $title;
-		$page_for_posts->post_name = sanitize_title( $title );
-	}
+// Setup empty vars
+$page_on_front_helper_text = $page_for_posts_helper_text = '';
+
+if ( ! isset( $page_on_front ) ) {
+	// Default for page_on_front
+	$page_on_front->post_title = 'Home';
+} else {
+	// Show link to edit page if it exists
+	$page_on_front_helper_text = sprintf( __( '<span class="description"> (<a href="%s">Edit</a>)</span>' ), 'post.php?post=' . $page_on_front->ID . '&action=edit' );
 }
 
-if ( ! $new_front_page_only || current_user_can( 'create_posts', 'page' ) ) : ?>
-<tr valign="top">
-<th scope="row"><?php _e( 'Enable a static front page' ); ?></th>
-<td id="front-static-pages" class="<?php echo $classes; ?>">
-	<fieldset><legend class="screen-reader-text"><span><?php _e( 'Enable a static front page' ); ?></span></legend>
-	<p><label for="show_on_front">
-		<input id="show_on_front" name="show_on_front" type="checkbox" value="page" <?php checked( 'page', get_option( 'show_on_front' ) ); ?> />
-		<?php printf( __( 'Show a <a href="%s">page</a> instead of your latest posts' ), 'edit.php?post_type=page' ); ?>
-	</label></p>
-	<p class="if-page-on-front sub-option">
-	<?php if ( $new_front_page_only ) : // If no pages, or only sample page, only allow a new page to be added ?>
-		<label for="page_on_front_title"><?php _e( 'Add new page titled:' ); ?>
-	<?php else : ?>
-		<label for="page_on_front">
-			<select name="page_on_front" id="page_on_front">
-				<option value="0"><?php _e( '&mdash; Select &mdash;' ); ?></option>
-				<?php if ( current_user_can( 'create_posts', 'page' ) ) : ?>
-				<option value="new" id="new-page"><?php _e( '&mdash; Add new page &mdash;' ); ?></option>
-				<?php endif; ?>
-				<?php echo walk_page_dropdown_tree( $all_pages, 0, array( 'selected' => get_option( 'page_on_front' ) ) ); ?>
-			</select>
-		</label>
-		<?php if ( current_user_can( 'create_posts', 'page' ) ) : ?>
-		<label for="page_on_front_title" class="if-new-front-page"><?php _e( 'titled:' ); ?>
-		<?php endif; ?>
-	<?php endif; ?>
-	<?php if ( current_user_can( 'create_posts', 'page' ) ) : ?>
-			<input name="page_on_front_title" type="text" id="page_on_front_title" value="<?php echo esc_attr_x( 'Home', 'default page on front title' ); ?>" />
-		</label>
-	<?php endif; ?>
-	</p>
-	<p class="if-page-on-front"><label for="page_for_posts">
-		<input id="page_for_posts" name="page_for_posts" type="checkbox" value="<?php echo $page_for_posts->ID; ?>" <?php checked( (bool) get_option( 'page_for_posts' ) ); ?> />
-		<?php _e( 'Show latest posts on a separate page' ); ?>
-	</label></p>
-	<?php if ( current_user_can( 'create_posts', 'page' ) ) : ?>
-	<p class="if-page-for-posts sub-option"><label for="page_for_posts_title"><?php _e( 'Page title:' ); ?>
-		<input name="page_for_posts_title" type="text" id="page_for_posts_title" value="<?php echo esc_attr( htmlspecialchars( $page_for_posts->post_title ) ); ?>" />
-	</label></p>
-	<p class="if-page-for-posts sub-option" id="edit-slug-box">
-		<?php echo get_sample_permalink_html( $page_for_posts->ID, $page_for_posts->post_title, $page_for_posts->post_name ); ?>
-	</p>
-	<input name="post_name" type="hidden" id="post_name" value="<?php echo esc_attr( apply_filters( 'editable_slug', $page_for_posts->post_name ) ); ?>" />
-	<?php if ( 'page' == get_option( 'show_on_front' ) && get_option( 'page_for_posts' ) == get_option( 'page_on_front' ) ) : ?>
-	<div class="error inline"><p><strong><?php _e( 'ERROR:' ); ?></strong> <?php _e( 'These pages should not be the same!' ); ?></p></div>
-	<?php endif; ?>
-	</fieldset>
-	<?php else : // cannot create pages, so fall back to a selector of existing pages ?>
-	<p class="if-page-for-posts sub-option"><label for="page_for_posts">
-		<?php wp_dropdown_pages( array(
-			'name' => 'page_for_posts', 'show_option_none' => __( '&mdash; Select &mdash;' ),
-			'option_none_value' => '0', 'selected' => get_option( 'page_for_posts' )
-		) ); ?>
-	<?php endif; // create pages ?>
-</td>
+if ( ! isset( $page_for_posts ) ) {
+	// Default for page_for_posts
+	$page_for_posts->post_name = 'blog';
+} else {
+	// Show link to edit page if it exists
+	$page_for_posts_helper_text = sprintf( __( '<span class="description"> (<a href="%s">Edit</a>)</span>' ), 'post.php?post=' . $page_for_posts->ID . '&action=edit' );
+}
+?>
+
+<tr>
+	<th scope="row"><?php _e( 'Front page displays' ); ?></th>
+	<td id="front-static-pages" class="<?php echo $classes; ?>">
+		<fieldset>
+			<legend class="screen-reader-text">
+				<span><?php _e( 'Front page displays' ); ?></span>
+			</legend>
+			<label> 
+				<input name="show_on_front" type="radio" value="posts" class="tog" <?php checked( 'posts', get_option( 'show_on_front' ) ); ?> /> 
+				<span class="radio-label"><?php _e( 'Your latest posts' ); ?></span>
+			</label>
+			<br />
+			<label> 
+				<input name="show_on_front" type="radio" value="page" class="tog" <?php checked( 'page', get_option( 'show_on_front' ) ); ?> /> 
+				<span class="radio-label"><?php _e( 'A static page' ); ?></span>
+			</label>
+			<div class="page-options">
+				<label> 
+					<?php _e( 'Enter a title for your static front page.' ); ?><br />
+					<?php if ( current_user_can( 'create_posts', 'page' ) ) : ?>
+					<input name="page_on_front_title" type="text" id="page_on_front_title" value="<?php echo esc_attr_x( $page_on_front->post_title, 'default page on front title' ); ?>" />
+					<?php echo $page_on_front_helper_text; ?>
+					<?php else : // cannot create pages, so fall back to a selector of existing pages ?>
+					<?php wp_dropdown_pages( array(
+						'name' => 'page_on_front', 'show_option_none' => __( '&mdash; Select &mdash;' ),
+						'option_none_value' => '0', 'selected' => get_option( 'page_on_front' )
+					) ); ?>
+					<?php endif; // cannot create pages ?>
+				</label>
+			</div>
+			<div class="page-options">
+				<label> 
+					<?php _e( 'Choose a URL for your latests posts.' ); ?><br />
+					<div class="pfp-wrapper">
+						<?php if ( current_user_can( 'create_posts', 'page' ) ) : ?>
+						<div class="pfp-slash">/</div>
+						<input name="page_for_posts_name" type="text" id="page_for_posts_name" value="<?php echo esc_attr_x( $page_for_posts->post_name, 'default page for posts name' ); ?>" />
+						<?php echo $page_for_posts_helper_text; ?>
+						<br />
+						<span class="sample-url"><?php echo get_site_url(); ?>/<strong class="page_for_posts_url"><?php echo $page_for_posts->post_name; ?></strong></span>
+						<?php else : // cannot create pages, so fall back to a selector of existing pages ?>
+						<?php wp_dropdown_pages( array(
+							'name' => 'page_for_posts', 'show_option_none' => __( '&mdash; Select &mdash;' ),
+							'option_none_value' => '0', 'selected' => get_option( 'page_for_posts' )
+						) ); ?>
+						<?php endif; // cannot create pages ?>
+					</div>
+				</label>
+			</div>
+		</fieldset>
+	</td>
 </tr>
-<?php endif; // if no pages to choose from and can't create pages ?>
 
 <tr valign="top">
 <th scope="row"><label for="posts_per_page"><?php _e( 'Blog pages show at most' ); ?></label></th>
