New schmancy posting interface

git-svn-id: https://develop.svn.wordpress.org/trunk@2639 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Matt Mullenweg 2005-06-14 07:31:36 +00:00
parent cd3fcfab4c
commit afc06a6f56
10 changed files with 324 additions and 163 deletions

View File

@ -581,7 +581,6 @@ function the_quicktags () {
if ( !strstr($_SERVER['HTTP_USER_AGENT'], 'Safari') ) :
echo '
<div id="quicktags">
<a href="http://wordpress.org/docs/reference/post/#quicktags" title="' . __('Help with quicktags') . '">' . __('Quicktags') . '</a>:
<script src="quicktags.js" type="text/javascript"></script>
<script type="text/javascript">edToolbar();</script>
';

View File

@ -78,9 +78,15 @@ function blurry() {
window.onload = blurry;
<?php endif; ?>
//]]>
</script>
<?php if ( isset( $editing ) ) : ?>
<script type="text/javascript" src="dbx.js"></script>
<script type="text/javascript" src="dbx-key.js"></script>
<?php endif; ?>
<?php do_action('admin_head', ''); ?>
</head>
<body>

44
wp-admin/dbx-key.js Normal file
View File

@ -0,0 +1,44 @@
//initialisation function
window.onload = function()
{
//initialise the docking boxes manager
var manager = new dbxManager('postmeta'); //session ID [/-_a-zA-Z0-9/]
//create new docking boxes group
var meta = new dbxGroup(
'grabit', // container ID [/-_a-zA-Z0-9/]
'vertical', // orientation ['vertical'|'horizontal']
'7', // drag threshold ['n' pixels]
'no', // restrict drag movement to container axis ['yes'|'no']
'10', // animate re-ordering [frames per transition, or '0' for no effect]
'yes', // include open/close toggle buttons ['yes'|'no']
'closed', // default state ['open'|'closed']
'open', // word for "open", as in "open this box"
'close', // word for "close", as in "close this box"
'click-down and drag to move this box', // sentence for "move this box" by mouse
'click to %toggle% this box', // pattern-match sentence for "(open|close) this box" by mouse
'use the arrow keys to move this box', // sentence for "move this box" by keyboard
', or press the enter key to %toggle% it', // pattern-match sentence-fragment for "(open|close) this box" by keyboard
'%mytitle% [%dbxtitle%]' // pattern-match syntax for title-attribute conflicts
);
var advanced = new dbxGroup(
'advancedstuff', // container ID [/-_a-zA-Z0-9/]
'vertical', // orientation ['vertical'|'horizontal']
'7', // drag threshold ['n' pixels]
'yes', // restrict drag movement to container axis ['yes'|'no']
'10', // animate re-ordering [frames per transition, or '0' for no effect]
'yes', // include open/close toggle buttons ['yes'|'no']
'closed', // default state ['open'|'closed']
'open', // word for "open", as in "open this box"
'close', // word for "close", as in "close this box"
'click-down and drag to move this box', // sentence for "move this box" by mouse
'click to %toggle% this box', // pattern-match sentence for "(open|close) this box" by mouse
'use the arrow keys to move this box', // sentence for "move this box" by keyboard
', or press the enter key to %toggle% it', // pattern-match sentence-fragment for "(open|close) this box" by keyboard
'%mytitle% [%dbxtitle%]' // pattern-match syntax for title-attribute conflicts
);
};

6
wp-admin/dbx.js Normal file

File diff suppressed because one or more lines are too long

View File

@ -58,38 +58,80 @@ window.onload = focusit;
</script>
<?php endif; ?>
<div id="poststuff">
<fieldset id="titlediv">
<legend><a href="http://wordpress.org/docs/reference/post/#title" title="<?php _e('Help on titles') ?>"><?php _e('Title') ?></a></legend>
<div><input type="text" name="post_title" size="30" tabindex="1" value="<?php echo $edited_post_title; ?>" id="title" /></div>
</fieldset>
<fieldset id="categorydiv">
<legend><a href="http://wordpress.org/docs/reference/post/#category" title="<?php _e('Help on categories') ?>"><?php _e('Categories') ?></a></legend>
<div><?php dropdown_categories(get_settings('default_category')); ?></div>
</fieldset>
<div id="moremeta">
<div id="grabit" class="dbx-group">
<fieldset id="commentstatusdiv">
<legend><a href="http://wordpress.org/docs/reference/post/#comments" title="<?php _e('Help on comment status') ?>"><?php _e('Discussion') ?></a></legend>
<div>
<input name="advanced_view" type="hidden" value="1" />
<label for="comment_status" class="selectit">
<input name="comment_status" type="checkbox" id="comment_status" value="open" <?php checked($comment_status, 'open'); ?> />
<?php _e('Allow Comments') ?></label>
<label for="ping_status" class="selectit"><input name="ping_status" type="checkbox" id="ping_status" value="open" <?php checked($ping_status, 'open'); ?> /> <?php _e('Allow Pings') ?></label>
<fieldset id="commentstatusdiv" class="dbx-box">
<h3 class="dbx-handle"><?php _e('Discussion') ?></h3>
<div class="dbx-content">
<input name="advanced_view" type="hidden" value="1" />
<label for="comment_status" class="selectit">
<input name="comment_status" type="checkbox" id="comment_status" value="open" <?php checked($comment_status, 'open'); ?> />
<?php _e('Allow Comments') ?></label>
<label for="ping_status" class="selectit"><input name="ping_status" type="checkbox" id="ping_status" value="open" <?php checked($ping_status, 'open'); ?> /> <?php _e('Allow Pings') ?></label>
</div>
</fieldset>
<fieldset id="postpassworddiv">
<legend><a href="http://wordpress.org/docs/reference/post/#post_password" title="<?php _e('Help on post password') ?>"><?php _e('Post Password') ?></a></legend>
<div><input name="post_password" type="text" size="13" id="post_password" value="<?php echo $post_password ?>" /></div>
</fieldset>
<br />
<fieldset id="postexcerpt">
<legend><a href="http://wordpress.org/docs/reference/post/#excerpt" title="<?php _e('Help with excerpts') ?>"><?php _e('Excerpt') ?></a></legend>
<div><textarea rows="1" cols="40" name="excerpt" tabindex="4" id="excerpt"><?php echo $excerpt ?></textarea></div>
<fieldset id="passworddiv" class="dbx-box">
<h3 class="dbx-handle"><?php _e('Password-Protect Post') ?></h3>
<div class="dbx-content"><input name="post_password" type="text" size="13" id="post_password" value="<?php echo $post_password ?>" /></div>
</fieldset>
<fieldset id="slugdiv" class="dbx-box">
<h3 class="dbx-handle"><?php _e('Post slug') ?></h3>
<div class="dbx-content"><input name="post_name" type="text" size="13" id="post_name" value="<?php echo $post_name ?>" /></div>
</fieldset>
<fieldset id="categorydiv" class="dbx-box">
<h3 class="dbx-handle"><?php _e('Categories') ?></h3>
<div class="dbx-content"><?php dropdown_categories(get_settings('default_category')); ?></div>
</fieldset>
<fieldset class="dbx-box">
<h3 class="dbx-handle"><?php _e('Post Status') ?></h3>
<div class="dbx-content"><?php if ( user_can_create_post($user_ID) ) : ?>
<label for="post_status_publish" class="selectit"><input id="post_status_publish" name="post_status" type="radio" value="publish" <?php checked($post_status, 'publish'); ?> /> <?php _e('Published') ?></label>
<?php endif; ?>
<label for="post_status_draft" class="selectit"><input id="post_status_draft" name="post_status" type="radio" value="draft" <?php checked($post_status, 'draft'); ?> /> <?php _e('Draft') ?></label>
<label for="post_status_private" class="selectit"><input id="post_status_private" name="post_status" type="radio" value="private" <?php checked($post_status, 'private'); ?> /> <?php _e('Private') ?></label></div>
</fieldset>
<?php if ($user_level > 4) : ?>
<fieldset class="dbx-box">
<h3 class="dbx-handle"><?php _e('Post Timestamp'); ?>:</h3>
<div class="dbx-content"><?php touch_time(($action == 'edit')); ?></div>
</fieldset>
<?php endif; ?>
<?php if ($user_level > 7 && $users = $wpdb->get_results("SELECT ID, user_login FROM $wpdb->users WHERE user_level <= $user_level AND user_level > 0") ) : ?>
<fieldset id="authordiv" class="dbx-box">
<h3 class="dbx-handle"><?php _e('Post author'); ?>:</h3>
<div class="dbx-content">
<select name="post_author_override" id="post_author_override">
<?php
foreach ($users as $o) :
$o = get_userdata( $o->ID );
if ( $post_author == $o->ID || ( empty($post_ID) && $user_ID == $o->ID ) ) $selected = 'selected="selected"';
else $selected = '';
echo "<option value='$o->ID' $selected>$o->display_name</option>";
endforeach;
?>
</select>
</div>
</fieldset>
<?php endif; ?>
</div>
</div>
<fieldset id="titlediv">
<legend><?php _e('Title') ?></legend>
<div><input type="text" name="post_title" size="30" tabindex="1" value="<?php echo $edited_post_title; ?>" id="title" /></div>
</fieldset>
<fieldset id="postdiv">
<legend><a href="http://wordpress.org/docs/reference/post/#post" title="<?php _e('Help with post field') ?>"><?php _e('Post') ?></a></legend>
<legend><?php _e('Post') ?></legend>
<?php the_quicktags(); ?>
<?php
$rows = get_settings('default_post_edit_rows');
@ -99,8 +141,6 @@ window.onload = focusit;
?>
<div><textarea rows="<?php echo $rows; ?>" cols="40" name="content" tabindex="5" id="content"><?php echo $content ?></textarea></div>
</fieldset>
<?php
?>
<script type="text/javascript">
<!--
edCanvas = document.getElementById('content');
@ -125,67 +165,27 @@ if ('publish' != $post_status || 0 == $post_ID) {
</p>
<?php do_action('edit_form_advanced', ''); ?>
<div id="advancedstuff" class="dbx-group" >
<fieldset id="postexcerpt" class="dbx-box">
<h3 class="dbx-handle"><?php _e('Optional Excerpt') ?></h3>
<div class="dbx-content"><textarea rows="1" cols="40" name="excerpt" tabindex="4" id="excerpt"><?php echo $excerpt ?></textarea></div>
</fieldset>
<fieldset class="dbx-box">
<h3 class="dbx-handle"><?php _e('Trackbacks') ?></h3>
<div class="dbx-content"><?php _e('Send trackbacks to'); ?>: <?php echo $form_trackback; ?> (<?php _e('Separate multiple URIs with spaces'); ?>)
<?php
if ('' != $pinged)
echo $pings;
?>
</div>
</fieldset>
</div>
<div class="wrap">
<h2><?php _e('Advanced'); ?></h2>
<table width="100%" cellspacing="2" cellpadding="5" class="editform">
<tr>
<th scope="row" valign="top"><?php _e('Post Status') ?>:</th>
<td><?php if ( user_can_create_post($user_ID) ) : ?>
<label for="post_status_publish" class="selectit"><input id="post_status_publish" name="post_status" type="radio" value="publish" <?php checked($post_status, 'publish'); ?> /> <?php _e('Published') ?></label><br />
<?php endif; ?>
<label for="post_status_draft" class="selectit"><input id="post_status_draft" name="post_status" type="radio" value="draft" <?php checked($post_status, 'draft'); ?> /> <?php _e('Draft') ?></label><br />
<label for="post_status_private" class="selectit"><input id="post_status_private" name="post_status" type="radio" value="private" <?php checked($post_status, 'private'); ?> /> <?php _e('Private') ?></label></td>
</tr>
<tr>
<th scope="row" valign="top"><?php _e('Send trackbacks to'); ?>:</th>
<td><?php echo $form_trackback; ?> <br />
<?php _e('Separate multiple URIs with spaces'); ?></td>
</tr>
<tr valign="top">
<th scope="row" width="25%"><?php _e('Post slug') ?>:</th>
<td><input name="post_name" type="text" size="25" id="post_name" value="<?php echo $post_name ?>" /></td>
</tr>
<?php if ($user_level > 7 && $users = $wpdb->get_results("SELECT ID, user_login FROM $wpdb->users WHERE user_level <= $user_level AND user_level > 0") ) : ?>
<tr>
<th scope="row"><?php _e('Post author'); ?>:</th>
<td>
<select name="post_author_override" id="post_author_override">
<?php
foreach ($users as $o) :
$o = get_userdata( $o->ID );
if ( $post_author == $o->ID || ( empty($post_ID) && $user_ID == $o->ID ) ) $selected = 'selected="selected"';
else $selected = '';
echo "<option value='$o->ID' $selected>$o->user_login ($o->first_name $o->last_name)</option>";
endforeach;
?>
</select>
</td>
</tr>
<?php endif; ?>
<?php if ($user_level > 4) : ?>
<tr>
<th scope="row"><?php _e('Edit time'); ?>:</th>
<td><?php touch_time(($action == 'edit')); ?></td>
</tr>
<?php endif; ?>
<?php if ('edit' == $action) : ?>
<tr>
<th scope="row"><?php _e('Delete'); ?>:</th>
<td>
<input name="deletepost" class="button" type="submit" id="deletepost" tabindex="10" value="<?php _e('Delete this post') ?>" <?php echo "onclick=\"return confirm('" . sprintf(__("You are about to delete this post \'%s\'\\n \'Cancel\' to stop, \'OK\' to delete."), addslashes($edited_post_title) ) . "')\""; ?> />
</td>
<?php endif; ?>
</tr>
</table>
<fieldset id="postcustom">
<legend><?php _e('Custom Fields') ?></legend>
<div id="postcustomstuff">
<fieldset id="postcustom" class="dbx-box">
<h3 class="dbx-handle"><?php _e('Custom Fields') ?></h3>
<div id="postcustomstuff" class="dbx-content">
<?php
if($metadata = has_meta($post_ID)) {
?>
@ -198,10 +198,15 @@ if($metadata = has_meta($post_ID)) {
?>
</div>
</fieldset>
<?php
if ('' != $pinged)
echo $pings;
?>
</div>
<?php if ('edit' == $action) : ?>
<p><input name="deletepost" class="button" type="submit" id="deletepost" tabindex="10" value="<?php _e('Delete this post') ?>" <?php echo "onclick=\"return confirm('" . sprintf(__("You are about to delete this post \'%s\'\\n \'Cancel\' to stop, \'OK\' to delete."), addslashes($edited_post_title) ) . "')\""; ?> /></p>
<?php endif; ?>
</div>
</div>
</form>

View File

@ -11,21 +11,10 @@ include('admin-header.php');
<h2><?php _e('Writing Options') ?></h2>
<form name="form1" method="post" action="options.php">
<input type="hidden" name="action" value="update" />
<input type="hidden" name="page_options" value="'default_post_edit_rows','use_smilies','use_balanceTags','advanced_edit','ping_sites','mailserver_url', 'mailserver_port','mailserver_login','mailserver_pass','default_category','default_email_category','new_users_can_blog'" />
<input type="hidden" name="page_options" value="'default_post_edit_rows','use_smilies','use_balanceTags','ping_sites','mailserver_url', 'mailserver_port','mailserver_login','mailserver_pass','default_category','default_email_category','new_users_can_blog'" />
<table width="100%" cellspacing="2" cellpadding="5" class="editform">
<tr valign="top">
<th scope="row"> <?php _e('When starting a post, show:') ?> </th>
<td><?php get_settings('advanced_edit') ?><label>
<input name="advanced_edit" type="radio" value="0" <?php checked('0', get_settings('advanced_edit')); ?> />
<?php _e('Simple controls') ?></label>
<br />
<label for="advanced_edit">
<input name="advanced_edit" id="advanced_edit" type="radio" value="1" <?php checked('1', get_settings('advanced_edit')); ?> />
<?php _e('Advanced controls') ?></label>
</td>
</tr>
<tr valign="top">
<th width="33%" scope="row"> <?php _e('Size of the writing box:') ?></th>
<th width="33%" scope="row"> <?php _e('Size of the post box:') ?></th>
<td><input name="default_post_edit_rows" type="text" id="default_post_edit_rows" value="<?php form_option('default_post_edit_rows'); ?>" size="2" style="width: 1.5em; " />
<?php _e('lines') ?></td>
</tr>

View File

@ -731,11 +731,7 @@ default:
$edited_post_title = apply_filters('default_title', $edited_post_title);
$excerpt = apply_filters('default_excerpt', $excerpt);
if (get_settings('advanced_edit')) {
include('edit-form-advanced.php');
} else {
include('edit-form.php');
}
include('edit-form-advanced.php');
?>
<div class="wrap">
<?php _e('<h3>WordPress bookmarklet</h3>

View File

@ -116,7 +116,7 @@ new edButton('ed_li'
);
edButtons[edButtons.length] =
new edButton('ed_pre'
new edButton('ed_code'
,'code'
,'<code>'
,'</code>'

BIN
wp-admin/toggle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

View File

@ -55,19 +55,18 @@ a:hover {
}
body {
background: #f2f2f2;
background: #fff;
color: #000;
margin: 0;
padding: 0;
}
body, td {
font: 10pt Georgia, "Times New Roman", Times, serif;
font: 13px "Lucida Grande", "Lucida Sans Unicode", Tahoma, Verdana;
}
fieldset {
border: 1px solid #ddd;
-moz-border-radius: 5px;
border: none;
padding: 3px;
}
@ -136,7 +135,7 @@ textarea, input, select {
background: #f4f4f4;
border: 1px solid #b2b2b2;
color: #000;
font-family: Georgia, "Times New Roman", Times, serif;
font: 13px Verdana, Arial, Helvetica, sans-serif;
margin: 1px;
padding: 3px;
}
@ -220,7 +219,7 @@ textarea, input, select {
border-top-color: #999;
}
.submit, #quicktags, .editform th, #postcustomsubmit {
.submit, .editform th, #postcustomsubmit {
text-align: right;
}
@ -266,7 +265,7 @@ textarea, input, select {
padding: .2em;
}
#adminmenu .current, #adminmenu2 .current, #ed_strong {
#adminmenu .current, #adminmenu2 .current {
font-weight: bold;
}
@ -323,25 +322,13 @@ textarea, input, select {
line-height: 170%;
}
#categorydiv {
line-height: 130%;
margin-right: 15px;
position: absolute;
right: 5%;
width: 9em;
}
#categorydiv div {
height: 27em;
overflow: auto;
}
#categorydiv input, #poststatusdiv input, #commentstatusdiv input, #pingstatusdiv input {
border: none;
}
#content, #excerpt {
margin-left: 1%;
#content, #titlediv input, #quicktags {
margin-left: 2%;
width: 97%;
}
@ -350,14 +337,27 @@ textarea, input, select {
color: #fff;
}
#ed_del {
#quicktags #ed_strong {
font-weight: bold;
}
#quicktags #ed_link {
color: blue;
text-decoration: underline;
}
#quicktags #ed_del {
text-decoration: line-through;
}
#ed_em {
#quicktags #ed_em {
font-style: italic;
}
#quicktags #ed_code {
font-family: "Courier New", Courier, mono;
}
#excerpt {
height: 1.8em;
width: 98%;
@ -411,15 +411,6 @@ textarea, input, select {
text-align: center;
}
#metainfo, #postdiv, #postexcerpt {
clear: both;
}
#postcustom {
border: 1px solid #aaa;
padding: .5em;
width: 97%;
}
#postcustom .updatemeta, #postcustom .deletemeta {
margin: auto;
@ -437,7 +428,7 @@ textarea, input, select {
}
#poststuff {
margin-right: 11em;
margin-right: 16em;
}
#profile {
@ -462,16 +453,8 @@ textarea, input, select {
margin: 0 0 4px 0;
}
#quicktags {
margin-right: 1%;
}
#save {
width: 14em;
}
#simple #titlediv {
height: 4em;
width: 15em;
}
#template div {
@ -498,12 +481,6 @@ textarea, input, select {
padding: 0;
}
#titlediv, #commentstatusdiv, #postpassworddiv, #namediv, #uridiv, #emaildiv, #pageparent {
float: left;
height: 6em;
margin-right: 5px;
}
#wphead {
background: url(../wp-images/header-shadow.png) #f2f2f2 repeat-x bottom;
padding: 1px 5px 11px;
@ -514,6 +491,7 @@ textarea, input, select {
font-weight: normal;
letter-spacing: -.05em;
margin: 0;
font-family: Georgia, "Times New Roman", Times, serif
}
#wphead h1 span {
@ -557,10 +535,148 @@ textarea, input, select {
padding: 0 0 0 .6em;
}
.active td {
background: #BEB;
}
.active .name {
background: #9C9;
}
.alternate.active td {
background: #ADA;
}
.alternate.active .name {
background: #8B8;
}
/* emeyer additions */
/* Box stuff */
.dbx-clone {
position:absolute;
visibility:hidden;
}
.dbx-clone, .dbx-clone .dbx-handle-cursor {
cursor:move !important;
}
.dbx-dummy {
display:block;
width:0;
height:0;
overflow:hidden;
}
.dbx-group, .dbx-box, .dbx-handle {
position:relative;
display:block;
}
.active td {background: #BEB;}
.active .name {background: #9C9;}
.alternate.active td {background: #ADA;}
.alternate.active .name {background: #8B8;}
/****************************************************************
avoid padding, margins or borders on dbx-box,
to reduce visual discrepancies between it and the clone.
overall, dbx-box is best left as visually unstyled as possible
*****************************************************************/
.dbx-box {
margin:0;
padding:0;
border:none;
}
/* Can change this */
#moremeta fieldset, #advancedstuff fieldset {
margin-bottom: 1em;
}
#moremeta fieldset div {
margin-left: 5px;
}
#moremeta {
line-height: 130%;
margin-right: 15px;
position: absolute;
right: 5%;
width: 14.5em;
border-left: 1px solid #dfe8f1;
}
#slugdiv input, #passworddiv input, #authordiv select {
margin-top: .5em;
width: 95%;
}
#moremeta h3, #advancedstuff h3 {
padding: 3px;
font-weight: normal;
font-size: 13px;
}
#advancedstuff div {
margin-top: .5em;
margin-left: 2%;
}
/* default box styles */
.dbx-box {
}
/* box when toggle is open */
.dbx-box-open {
}
/* box when toggle is closed */
.dbx-box-closed {
}
/* toggle state of inner content area */
.dbx-box-open .dbx-content {
display:block;
}
.dbx-box-closed .dbx-content {
display:none;
}
/* handles */
.dbx-handle {
background-color: #dfe8f1;
margin: 0;
padding: 0;
}
/* handle cursors */
.dbx-handle-cursor {
cursor:move;
}
/* toggle images */
a.dbx-toggle, a.dbx-toggle:visited {
display:block;
width: 12px;
height: 12px;
overflow: hidden;
background-image: url( toggle.png );
position: absolute;
top: .3em;
right: .3em;
border-bottom: 0;
background-position: 0 0;
}
a.dbx-toggle-open, a.dbx-toggle-open:visited {
background-position: 0;
}
a.dbx-toggle-closed, a.dbx-toggle-closed:visited {
background-position: -12px 0;
}
a.dbx-toggle-hilite-open, a.dbx-toggle-hilite-open:visited {
background-position: 0;
}
a.dbx-toggle-hilite-closed, a.dbx-toggle-hilite-closed:visited {
background-position: -12px 0;
}
/* additional clone styles */
.dbx-clone {
opacity: 0.8;
-moz-opacity: 0.8;
-khtml-opacity: 0.8;
filter: alpha(opacity=80);
}