Index: wp-includes/post.php
===================================================================
--- wp-includes/post.php	(revision 13695)
+++ wp-includes/post.php	(working copy)
@@ -25,7 +25,7 @@
 										'hierarchical' => false,
 										'rewrite' => false,
 										'query_var' => false,
-										'supports' => array('post-thumbnails', 'excerpts', 'trackbacks', 'custom-fields', 'comments', 'revisions')
+										'supports' => array('title', 'editor', 'post-thumbnails', 'excerpts', 'trackbacks', 'custom-fields', 'comments', 'revisions')
 									) );
 
 	register_post_type( 'page', array(	'label' => __('Pages'),
@@ -38,7 +38,7 @@
 										'hierarchical' => true,
 										'rewrite' => false,
 										'query_var' => false,
-										'supports' => array('post-thumbnails', 'page-attributes', 'custom-fields', 'comments', 'revisions')
+										'supports' => array('title', 'editor', 'post-thumbnails', 'page-attributes', 'custom-fields', 'comments', 'revisions')
 									) );
 
 	register_post_type( 'attachment', array('label' => __('Media'),
Index: wp-admin/includes/post.php
===================================================================
--- wp-admin/includes/post.php	(revision 13695)
+++ wp-admin/includes/post.php	(working copy)
@@ -482,9 +482,10 @@
 function wp_write_post() {
 	global $user_ID;
 
-	if ( isset( $_POST['post_type'] ) && 'page' == $_POST['post_type'] ) {
-		if ( !current_user_can( 'edit_pages' ) )
-			return new WP_Error( 'edit_pages', __( 'You are not allowed to create pages on this blog.' ) );
+	if ( isset( $_POST['post_type'] ) ) {
+		$post_type_obj = get_post_type_object($_POST['post_type']);
+		if ( !current_user_can($post_type_obj->edit_type_cap) )
+			return new WP_Error( $post_type_obj->edit_type_cap, sprintf(__( 'You are not allowed to create %s on this blog.'), $post_type_obj->label) );
 	} else {
 		if ( !current_user_can( 'edit_posts' ) )
 			return new WP_Error( 'edit_posts', __( 'You are not allowed to create posts or drafts on this blog.' ) );
Index: wp-admin/edit-form-advanced.php
===================================================================
--- wp-admin/edit-form-advanced.php	(revision 13695)
+++ wp-admin/edit-form-advanced.php	(working copy)
@@ -184,6 +184,7 @@
 
 <div id="post-body">
 <div id="post-body-content">
+<?php if ( post_type_supports($post_type, 'title') ) { ?>
 <div id="titlediv">
 <div id="titlewrap">
 	<label class="screen-reader-text" for="title"><?php _e('Title') ?></label>
@@ -198,16 +199,19 @@
 
 if ( !( 'pending' == $post->post_status && !current_user_can( $post_type_object->publish_cap ) ) ) { ?>
 	<div id="edit-slug-box">
-<?php
-	if ( ! empty($post->ID) && ! empty($sample_permalink_html) && 'auto-draft' != $post->post_status ) :
-		echo $sample_permalink_html;
-endif; ?>
+	<?php
+		if ( ! empty($post->ID) && ! empty($sample_permalink_html) && 'auto-draft' != $post->post_status )
+			echo $sample_permalink_html;
+	?>
 	</div>
 <?php
-} ?>
+}
+?>
 </div>
 </div>
+<?php } ?>
 
+<?php if ( post_type_supports($post_type, 'editor') ) { ?>
 <div id="<?php echo user_can_richedit() ? 'postdivrich' : 'postdiv'; ?>" class="postarea">
 
 <?php the_editor($post->post_content); ?>
@@ -239,6 +243,7 @@
 </div>
 
 <?php
+}
 
 do_meta_boxes($post_type, 'normal', $post);
 
