mirror of
https://github.com/WordPress/WordPress.git
synced 2024-09-29 07:37:44 +02:00
Reply to comments from admin, first run, see #7435
git-svn-id: http://svn.automattic.com/wordpress/trunk@8720 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
f2af4b9b6d
commit
95fa29a208
@ -422,6 +422,69 @@ case 'add-comment' :
|
|||||||
'data' => $comment_list_item
|
'data' => $comment_list_item
|
||||||
) );
|
) );
|
||||||
}
|
}
|
||||||
|
$x->send();
|
||||||
|
break;
|
||||||
|
case 'replyto-comment' :
|
||||||
|
check_ajax_referer( $action );
|
||||||
|
|
||||||
|
$comment_post_ID = (int) $_POST['comment_post_ID'];
|
||||||
|
if ( !current_user_can( 'edit_post', $comment_post_ID ) )
|
||||||
|
die('-1');
|
||||||
|
|
||||||
|
$status = $wpdb->get_var( $wpdb->prepare("SELECT post_status FROM $wpdb->posts WHERE ID = %d", $comment_post_ID) );
|
||||||
|
|
||||||
|
if ( empty($status) )
|
||||||
|
die('1');
|
||||||
|
elseif ( in_array($status->post_status, array('draft', 'pending') ) )
|
||||||
|
die( __('Error: you are replying to comment on a draft post.') );
|
||||||
|
|
||||||
|
$user = wp_get_current_user();
|
||||||
|
if ( $user->ID ) {
|
||||||
|
$comment_author = $wpdb->escape($user->display_name);
|
||||||
|
$comment_author_email = $wpdb->escape($user->user_email);
|
||||||
|
$comment_author_url = $wpdb->escape($user->user_url);
|
||||||
|
$comment_content = trim($_POST['comment']);
|
||||||
|
if ( current_user_can('unfiltered_html') ) {
|
||||||
|
if ( wp_create_nonce('unfiltered-html-comment_' . $comment_post_ID) != $_POST['_wp_unfiltered_html_comment'] ) {
|
||||||
|
kses_remove_filters(); // start with a clean slate
|
||||||
|
kses_init_filters(); // set up the filters
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
die( __('Sorry, you must be logged in to reply to a comment.') );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( '' == $comment_content )
|
||||||
|
die( __('Error: please type a comment.') );
|
||||||
|
|
||||||
|
$comment_parent = absint($_POST['comment_ID']);
|
||||||
|
$commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'comment_parent', 'user_ID');
|
||||||
|
|
||||||
|
$comment_id = wp_new_comment( $commentdata );
|
||||||
|
$comment = get_comment($comment_id);
|
||||||
|
if ( ! $comment ) die('1');
|
||||||
|
|
||||||
|
$mode = ( isset($_POST['mode']) && 'single' == $_POST['mode'] ) ? 'single' : 'detail';
|
||||||
|
$position = ( isset($_POST['position']) && (int) $_POST['position']) ? (int) $_POST['position'] : '-1';
|
||||||
|
$checkbox = ( isset($_POST['checkbox']) && true == $_POST['checkbox'] ) ? 1 : 0;
|
||||||
|
|
||||||
|
if ( get_option('show_avatars') && 'single' != $mode )
|
||||||
|
add_filter( 'comment_author', 'floated_admin_avatar' );
|
||||||
|
|
||||||
|
$x = new WP_Ajax_Response();
|
||||||
|
|
||||||
|
ob_start();
|
||||||
|
_wp_comment_row( $comment->comment_ID, $mode, false, $checkbox );
|
||||||
|
$comment_list_item = ob_get_contents();
|
||||||
|
ob_end_clean();
|
||||||
|
|
||||||
|
$x->add( array(
|
||||||
|
'what' => 'comment',
|
||||||
|
'id' => $comment->comment_ID,
|
||||||
|
'data' => $comment_list_item,
|
||||||
|
'position' => $position
|
||||||
|
));
|
||||||
|
|
||||||
$x->send();
|
$x->send();
|
||||||
break;
|
break;
|
||||||
case 'add-meta' :
|
case 'add-meta' :
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
<br class="clear" /></div><!-- wpbody-content -->
|
<br class="clear" /></div><!-- wpbody-content -->
|
||||||
</div><!-- wpbody -->
|
</div><!-- wpbody -->
|
||||||
</div><!-- wpcontent -->
|
</div><!-- wpcontent -->
|
||||||
</div><!-- wpwrap -->
|
<br class="clear" /></div><!-- wpwrap -->
|
||||||
<div id="footer">
|
<div id="footer">
|
||||||
<p><?php
|
<p><?php
|
||||||
do_action('in_admin_footer', '');
|
do_action('in_admin_footer', '');
|
||||||
|
@ -54,7 +54,7 @@ li.widget-list-control-item h4.widget-title a,
|
|||||||
}
|
}
|
||||||
|
|
||||||
li.widget-list-control-item, div.nav, .tablenav, #dashboard-widgets p.dashboard-widget-links,
|
li.widget-list-control-item, div.nav, .tablenav, #dashboard-widgets p.dashboard-widget-links,
|
||||||
ul.view-switch li.current, .form-table tr, #poststuff h3,
|
ul.view-switch li.current, .form-table tr, #poststuff h3, #replyhandle,
|
||||||
.login form, h3.info-box-title, #post-status-info {
|
.login form, h3.info-box-title, #post-status-info {
|
||||||
background-color: #cfebf7;
|
background-color: #cfebf7;
|
||||||
}
|
}
|
||||||
@ -70,7 +70,7 @@ strong .post-com-count span {
|
|||||||
|
|
||||||
#post-body ul#category-tabs li.ui-tabs-selected, .button-secondary,
|
#post-body ul#category-tabs li.ui-tabs-selected, .button-secondary,
|
||||||
#quicktags, #login form .submit input, #post-search .button,
|
#quicktags, #login form .submit input, #post-search .button,
|
||||||
#post-search-prep .button {
|
#post-search-prep .button, #ed_reply_toolbar {
|
||||||
background-color: #8ebddc !important;
|
background-color: #8ebddc !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -376,7 +376,7 @@ input.readonly {
|
|||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ed_toolbar input {
|
#ed_toolbar input, #ed_reply_toolbar input {
|
||||||
background: url( ../images/fade-butt.png ) #fff repeat-x 0 -2px;
|
background: url( ../images/fade-butt.png ) #fff repeat-x 0 -2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,7 +54,7 @@ li.widget-list-control-item h4.widget-title a,
|
|||||||
}
|
}
|
||||||
|
|
||||||
li.widget-list-control-item, div.nav, .tablenav, #dashboard-widgets p.dashboard-widget-links,
|
li.widget-list-control-item, div.nav, .tablenav, #dashboard-widgets p.dashboard-widget-links,
|
||||||
ul.view-switch li.current, .form-table tr, #poststuff h3,
|
ul.view-switch li.current, .form-table tr, #poststuff h3, #replyhandle,
|
||||||
.login form, h3.info-box-title, #post-status-info {
|
.login form, h3.info-box-title, #post-status-info {
|
||||||
background-color: #eaf3fa;
|
background-color: #eaf3fa;
|
||||||
}
|
}
|
||||||
@ -70,7 +70,7 @@ strong .post-com-count span {
|
|||||||
|
|
||||||
#post-body ul#category-tabs li.ui-tabs-selected, .button-secondary,
|
#post-body ul#category-tabs li.ui-tabs-selected, .button-secondary,
|
||||||
#quicktags, #login form .submit input, #post-search .button,
|
#quicktags, #login form .submit input, #post-search .button,
|
||||||
#post-search-prep .button {
|
#post-search-prep .button, #ed_reply_toolbar {
|
||||||
background-color: #cee1ef !important;
|
background-color: #cee1ef !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -365,7 +365,7 @@ input.readonly {
|
|||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ed_toolbar input {
|
#ed_toolbar input, #ed_reply_toolbar input {
|
||||||
background: url( ../images/fade-butt.png ) #fff repeat-x 0 -2px;
|
background: url( ../images/fade-butt.png ) #fff repeat-x 0 -2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,6 +12,7 @@ require_once('admin.php');
|
|||||||
$title = __('Edit Comments');
|
$title = __('Edit Comments');
|
||||||
wp_enqueue_script( 'admin-comments' );
|
wp_enqueue_script( 'admin-comments' );
|
||||||
wp_enqueue_script( 'admin-forms' );
|
wp_enqueue_script( 'admin-forms' );
|
||||||
|
wp_enqueue_script( 'quicktags' );
|
||||||
|
|
||||||
if ( !empty( $_REQUEST['delete_comments'] ) && isset($_REQUEST['action']) ) {
|
if ( !empty( $_REQUEST['delete_comments'] ) && isset($_REQUEST['action']) ) {
|
||||||
check_admin_referer('bulk-comments');
|
check_admin_referer('bulk-comments');
|
||||||
@ -53,20 +54,11 @@ if ( !empty( $_REQUEST['delete_comments'] ) && isset($_REQUEST['action']) ) {
|
|||||||
|
|
||||||
require_once('admin-header.php');
|
require_once('admin-header.php');
|
||||||
|
|
||||||
if ( empty($_GET['mode']) )
|
$mode = ( ! isset($_GET['mode']) || empty($_GET['mode']) ) ? 'detail' : attribute_escape($_GET['mode']);
|
||||||
$mode = 'detail';
|
|
||||||
else
|
|
||||||
$mode = attribute_escape($_GET['mode']);
|
|
||||||
|
|
||||||
if ( isset($_GET['comment_status']) )
|
$comment_status = isset($_GET['comment_status']) ? attribute_escape($_GET['comment_status']) : '';
|
||||||
$comment_status = attribute_escape($_GET['comment_status']);
|
|
||||||
else
|
|
||||||
$comment_status = '';
|
|
||||||
|
|
||||||
if ( isset($_GET['s']) )
|
$search_dirty = ( isset($_GET['s']) ) ? $_GET['s'] : '';
|
||||||
$search_dirty = $_GET['s'];
|
|
||||||
else
|
|
||||||
$search_dirty = '';
|
|
||||||
$search = attribute_escape( $search_dirty );
|
$search = attribute_escape( $search_dirty );
|
||||||
?>
|
?>
|
||||||
<?php
|
<?php
|
||||||
@ -215,7 +207,7 @@ if ($comments) {
|
|||||||
<th scope="col" class="check-column"><input type="checkbox" /></th>
|
<th scope="col" class="check-column"><input type="checkbox" /></th>
|
||||||
<th scope="col" class="comment-column"><?php _e('Comment') ?></th>
|
<th scope="col" class="comment-column"><?php _e('Comment') ?></th>
|
||||||
<th scope="col" class="author-column"><?php _e('Author') ?></th>
|
<th scope="col" class="author-column"><?php _e('Author') ?></th>
|
||||||
<th scope="col" class="date-column"><?php _e('Comment Submitted') ?></th>
|
<th scope="col" class="date-column"><?php _e('Submitted') ?></th>
|
||||||
<th scope="col" class="response-column"><?php _e('In Response To This Post') ?></th>
|
<th scope="col" class="response-column"><?php _e('In Response To This Post') ?></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
@ -269,4 +261,6 @@ if ( $page_links )
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php include('admin-footer.php'); ?>
|
<?php
|
||||||
|
wp_comment_reply('-1', true, 'detail');
|
||||||
|
include('admin-footer.php'); ?>
|
@ -325,11 +325,7 @@ function post_comment_status_meta_box($post) {
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
add_meta_box('commentstatusdiv', __('Comments on this Post'), 'post_comment_status_meta_box', 'post', 'normal', 'core');
|
add_meta_box('commentstatusdiv', __('Comments on this Post'), 'post_comment_status_meta_box', 'post', 'normal', 'core');
|
||||||
|
|
||||||
@ -541,6 +537,8 @@ do_action('dbx_post_sidebar');
|
|||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
<?php wp_comment_reply(); ?>
|
||||||
|
|
||||||
<?php if ((isset($post->post_title) && '' == $post->post_title) || (isset($_GET['message']) && 2 > $_GET['message'])) : ?>
|
<?php if ((isset($post->post_title) && '' == $post->post_title) || (isset($_GET['message']) && 2 > $_GET['message'])) : ?>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
try{document.post.title.focus();}catch(e){}
|
try{document.post.title.focus();}catch(e){}
|
||||||
|
@ -68,6 +68,7 @@ wp($query_str);
|
|||||||
|
|
||||||
if ( is_singular() )
|
if ( is_singular() )
|
||||||
wp_enqueue_script( 'admin-comments' );
|
wp_enqueue_script( 'admin-comments' );
|
||||||
|
|
||||||
require_once('admin-header.php');
|
require_once('admin-header.php');
|
||||||
|
|
||||||
?>
|
?>
|
||||||
@ -240,7 +241,7 @@ if ( 1 == count($posts) && is_singular() ) :
|
|||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
wp_comment_reply();
|
||||||
endif; // comments
|
endif; // comments
|
||||||
endif; // posts;
|
endif; // posts;
|
||||||
|
|
||||||
|
@ -53,8 +53,11 @@ wp_enqueue_script('admin-forms');
|
|||||||
|
|
||||||
list($post_stati, $avail_post_stati) = wp_edit_posts_query();
|
list($post_stati, $avail_post_stati) = wp_edit_posts_query();
|
||||||
|
|
||||||
if ( 1 == count($posts) && is_singular() )
|
if ( 1 == count($posts) && is_singular() ) {
|
||||||
wp_enqueue_script( 'admin-comments' );
|
wp_enqueue_script( 'admin-comments' );
|
||||||
|
wp_enqueue_script( 'quicktags' );
|
||||||
|
}
|
||||||
|
|
||||||
require_once('admin-header.php');
|
require_once('admin-header.php');
|
||||||
|
|
||||||
if ( !isset( $_GET['paged'] ) )
|
if ( !isset( $_GET['paged'] ) )
|
||||||
@ -267,7 +270,7 @@ if ( 1 == count($posts) && is_singular() ) :
|
|||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
wp_comment_reply();
|
||||||
endif; // comments
|
endif; // comments
|
||||||
endif; // posts;
|
endif; // posts;
|
||||||
|
|
||||||
|
@ -135,7 +135,7 @@ header( 'Content-Type: application/x-javascript; charset=UTF-8' );
|
|||||||
?>
|
?>
|
||||||
{
|
{
|
||||||
"betaManifestVersion" : 1,
|
"betaManifestVersion" : 1,
|
||||||
"version" : "<?php echo $man_version; ?>_20080731",
|
"version" : "<?php echo $man_version; ?>_20080823",
|
||||||
"entries" : [
|
"entries" : [
|
||||||
<?php echo $defaults; ?>
|
<?php echo $defaults; ?>
|
||||||
|
|
||||||
@ -173,6 +173,7 @@ header( 'Content-Type: application/x-javascript; charset=UTF-8' );
|
|||||||
{ "url" : "images/required.gif" },
|
{ "url" : "images/required.gif" },
|
||||||
{ "url" : "images/no.png" },
|
{ "url" : "images/no.png" },
|
||||||
{ "url" : "images/yes.png" },
|
{ "url" : "images/yes.png" },
|
||||||
|
{ "url" : "images/se.png" },
|
||||||
|
|
||||||
<?php if ( is_file('../wp-includes/js/tinymce/tiny_mce.js') ) { ?>
|
<?php if ( is_file('../wp-includes/js/tinymce/tiny_mce.js') ) { ?>
|
||||||
{ "url" : "../wp-includes/js/tinymce/tiny_mce_popup.js?ver=311b" },
|
{ "url" : "../wp-includes/js/tinymce/tiny_mce_popup.js?ver=311b" },
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.3 KiB |
BIN
wp-admin/images/se.png
Normal file
BIN
wp-admin/images/se.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 127 B |
@ -799,10 +799,10 @@ function _wp_comment_row( $comment_id, $mode, $comment_status, $checkbox = true
|
|||||||
$actions = array();
|
$actions = array();
|
||||||
|
|
||||||
if ( current_user_can('edit_post', $comment->comment_post_ID) ) {
|
if ( current_user_can('edit_post', $comment->comment_post_ID) ) {
|
||||||
$actions['approve'] = "<a href='$approve_url' class='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=approved' title='" . __( 'Approve this comment' ) . "'>" . __( 'Approve' ) . '</a> | ';
|
$actions['approve'] = "<a href='$approve_url' class='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=approved' title='" . __( 'Approve this comment' ) . "'>" . __( 'Approve' ) . "</a> | ";
|
||||||
$actions['unapprove'] = "<a href='$unapprove_url' class='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=unapproved' title='" . __( 'Unapprove this comment' ) . "'>" . __( 'Unapprove' ) . '</a> | ';
|
$actions['unapprove'] = "<a href='$unapprove_url' class='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=unapproved' title='" . __( 'Unapprove this comment' ) . "'>" . __( 'Unapprove' ) . "</a> | ";
|
||||||
$actions['edit'] = "<a href='comment.php?action=editcomment&c={$comment->comment_ID}' title='" . __('Edit comment') . "'>". __('Edit') . '</a> | ';
|
$actions['edit'] = "<a href='comment.php?action=editcomment&c={$comment->comment_ID}' title='" . __('Edit comment') . "'>". __('Edit') . '</a> | ';
|
||||||
$actions['flag'] = "<a href='#' class='no-crazy'>Flag for Follow-up</a> | ";
|
if ( 'spam' != $the_comment_status )
|
||||||
$actions['spam'] = "<a href='$spam_url' class='delete:the-comment-list:comment-$comment->comment_ID::spam=1' title='" . __( 'Mark this comment as spam' ) . "'>" . __( 'Spam' ) . '</a> | ';
|
$actions['spam'] = "<a href='$spam_url' class='delete:the-comment-list:comment-$comment->comment_ID::spam=1' title='" . __( 'Mark this comment as spam' ) . "'>" . __( 'Spam' ) . '</a> | ';
|
||||||
$actions['delete'] = "<a href='$delete_url' class='delete:the-comment-list:comment-$comment->comment_ID delete'>" . __('Delete') . '</a>';
|
$actions['delete'] = "<a href='$delete_url' class='delete:the-comment-list:comment-$comment->comment_ID delete'>" . __('Delete') . '</a>';
|
||||||
|
|
||||||
@ -816,13 +816,13 @@ function _wp_comment_row( $comment_id, $mode, $comment_status, $checkbox = true
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( 'spam' == $the_comment_status )
|
if ( 'spam' != $the_comment_status )
|
||||||
unset($actions['spam']);
|
$actions['reply'] = ' | <a onclick="commentReply.open(\''.$comment->comment_ID.'\',\''.$post->ID.'\',this);return false;" title="'.__('Reply to this comment').'" href="#">' . __('Reply') . '</a>';
|
||||||
|
|
||||||
$actions = apply_filters( 'comment_row_actions', $actions, $comment );
|
$actions = apply_filters( 'comment_row_actions', $actions, $comment );
|
||||||
|
|
||||||
foreach ( $actions as $action => $link )
|
foreach ( $actions as $action => $link )
|
||||||
echo "<span class='$action'>$link</span>";
|
echo "<span class='$action'>$link</span>\n";
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</td>
|
</td>
|
||||||
@ -849,6 +849,46 @@ function _wp_comment_row( $comment_id, $mode, $comment_status, $checkbox = true
|
|||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function wp_comment_reply($position = '1', $checkbox = false, $mode = 'single') {
|
||||||
|
global $current_user;
|
||||||
|
|
||||||
|
// allow plugin to replace the popup content
|
||||||
|
$content = apply_filters( 'wp_comment_reply', '' );
|
||||||
|
|
||||||
|
if ( ! empty($content) ) {
|
||||||
|
echo $content;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<div id="replyerror" style="display:none;">
|
||||||
|
<img src="images/logo.gif" />
|
||||||
|
<h3 class="info-box-title"><?php _e('Comment Reply Error'); ?></h3>
|
||||||
|
<p id="replyerrtext"></p>
|
||||||
|
<p class="submit"><button id="close-button" onclick="commentReply.close();" class="button"><?php _e('Close'); ?></button></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="replydiv" style="display:none;">
|
||||||
|
<p id="replyhandle"><?php _e('Reply'); ?></p>
|
||||||
|
<form action="" method="post" id="replyform">
|
||||||
|
<input type="hidden" name="user_ID" id="user_ID" value="<?php echo $current_user->ID; ?>" />
|
||||||
|
<input type="hidden" name="action" value="replyto-comment" />
|
||||||
|
<input type="hidden" name="comment_ID" id="comment_ID" value="" />
|
||||||
|
<input type="hidden" name="comment_post_ID" id="comment_post_ID" value="" />
|
||||||
|
<input type="hidden" name="position" id="position" value="<?php echo $position; ?>" />
|
||||||
|
<input type="hidden" name="checkbox" id="checkbox" value="<?php echo $checkbox ? 1 : 0; ?>" />
|
||||||
|
<input type="hidden" name="mode" id="mode" value="<?php echo $mode; ?>" />
|
||||||
|
<?php wp_nonce_field( 'replyto-comment', '_ajax_nonce', false ); ?>
|
||||||
|
<?php wp_comment_form_unfiltered_html_nonce(); ?>
|
||||||
|
|
||||||
|
<div id="replycontainer"><textarea rows="5" cols="50" name="replycontent" tabindex="10" id="replycontent"></textarea></div>
|
||||||
|
|
||||||
|
<p id="replysubmit"><input type="button" onclick="commentReply.close();" class="button" value="<?php _e('Cancel'); ?>" />
|
||||||
|
<input type="button" onclick="commentReply.send();" class="button" value="<?php _e('Submit Reply'); ?>" /></p>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
|
||||||
function wp_dropdown_cats( $currentcat = 0, $currentparent = 0, $parent = 0, $level = 0, $categories = 0 ) {
|
function wp_dropdown_cats( $currentcat = 0, $currentparent = 0, $parent = 0, $level = 0, $categories = 0 ) {
|
||||||
if (!$categories )
|
if (!$categories )
|
||||||
$categories = get_categories( array('hide_empty' => 0) );
|
$categories = get_categories( array('hide_empty' => 0) );
|
||||||
|
@ -79,3 +79,150 @@ theExtraList = $('#the-extra-comment-list').wpList( { alt: '', delColor: 'none',
|
|||||||
theList = $('#the-comment-list').wpList( { alt: '', dimAfter: dimAfter, delAfter: delAfter, addColor: 'none' } );
|
theList = $('#the-comment-list').wpList( { alt: '', dimAfter: dimAfter, delAfter: delAfter, addColor: 'none' } );
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
(function($){
|
||||||
|
|
||||||
|
commentReply = {
|
||||||
|
|
||||||
|
open : function(c, p) {
|
||||||
|
var d = $('#comment-'+c).offset(), H = $('#replydiv').height(), top = 200, left = 100, h = 120;
|
||||||
|
|
||||||
|
if ( d && H ) {
|
||||||
|
top = (d.top - H) < 10 ? 10 : d.top - H - 5;
|
||||||
|
left = d.left;
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#replydiv').show();
|
||||||
|
$('#replydiv #comment_post_ID').val(p);
|
||||||
|
$('#replydiv #comment_ID').val(c);
|
||||||
|
|
||||||
|
$('#replydiv').draggable({
|
||||||
|
handle : '#replyhandle',
|
||||||
|
containment : '#wpwrap'
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#replydiv').resizable({
|
||||||
|
handles : 'se',
|
||||||
|
minHeight : 200,
|
||||||
|
minWidth : 400,
|
||||||
|
containment : '#wpwrap',
|
||||||
|
resize : function(e,o) {
|
||||||
|
h = o.size.height - 80 - $('#ed_reply_qtags').height();
|
||||||
|
$('#replycontainer').height(h);
|
||||||
|
},
|
||||||
|
stop : function(e,o) {
|
||||||
|
if ( $.browser.msie )
|
||||||
|
$('#replycontent').height(h);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('.ui-resizable-se').css({
|
||||||
|
border: '0 none',
|
||||||
|
width: '11px',
|
||||||
|
height: '12px',
|
||||||
|
background: 'transparent url(images/se.png) no-repeat scroll 0 0'
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#replydiv').css({
|
||||||
|
'position' : 'absolute',
|
||||||
|
'top' : top,
|
||||||
|
'left' : left
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#replycontent').focus().keyup(function(e){
|
||||||
|
if (e.which == 27) commentReply.close(); // close on Escape
|
||||||
|
});
|
||||||
|
|
||||||
|
// emulate the Safari/Opera scrollIntoView
|
||||||
|
var to = $('#replydiv').offset();
|
||||||
|
var scr = document.documentElement.scrollTop ? document.documentElement.scrollTop : 0;
|
||||||
|
|
||||||
|
if ( scr - 20 > to.top )
|
||||||
|
window.scroll(0, to.top - 100);
|
||||||
|
},
|
||||||
|
|
||||||
|
close : function() {
|
||||||
|
$('#replycontent').val('');
|
||||||
|
$('#replyerror').hide();
|
||||||
|
|
||||||
|
$('#replydiv').draggable('destroy').resizable('destroy').css('position','relative');
|
||||||
|
$('#replydiv').hide();
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
|
||||||
|
send : function() {
|
||||||
|
var post = {};
|
||||||
|
|
||||||
|
$('#replyform input').each(function() {
|
||||||
|
post[ $(this).attr('name') ] = $(this).val();
|
||||||
|
});
|
||||||
|
|
||||||
|
post.comment = $('#replycontent').val();
|
||||||
|
post.id = post.comment_post_ID;
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type : 'POST',
|
||||||
|
url : wpListL10n.url,
|
||||||
|
data : post,
|
||||||
|
success : function(x) { commentReply.show(x); },
|
||||||
|
error : function(r) { commentReply.error(r); }
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
show : function(xml) {
|
||||||
|
|
||||||
|
if ( typeof(xml) == 'string' ) {
|
||||||
|
this.error({'responseText': xml});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var r = wpAjax.parseAjaxResponse(xml);
|
||||||
|
if ( r.errors )
|
||||||
|
this.error({'responseText': wpAjax.broken});
|
||||||
|
|
||||||
|
r = r.responses[0];
|
||||||
|
this.close();
|
||||||
|
// var scr1 = $('#the-comment-list').offset(), scr2 = $('#the-comment-list').height();
|
||||||
|
|
||||||
|
if ( r.position == -1 ) {
|
||||||
|
// window.scroll(0, scr1.top - 100); // Scroll to the new comment? Seems annoing..
|
||||||
|
$('#the-comment-list').prepend(r.data);
|
||||||
|
} else {
|
||||||
|
// window.scroll(0, scr1.top + scr2 + 200);
|
||||||
|
$('#the-comment-list').append(r.data);
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#comment-'+r.id)
|
||||||
|
.animate( { backgroundColor:"#CFEBF7" }, 600 )
|
||||||
|
.animate( { backgroundColor:"transparent" }, 600 );
|
||||||
|
},
|
||||||
|
|
||||||
|
error : function(r) {
|
||||||
|
var er = r.statusText;
|
||||||
|
|
||||||
|
if ( r.responseText )
|
||||||
|
er = r.responseText.replace( /<.[^<>]*?>/g, '' );
|
||||||
|
|
||||||
|
if ( er ) {
|
||||||
|
var o = $('#replydiv').offset();
|
||||||
|
$('#replydiv').hide();
|
||||||
|
|
||||||
|
$('#replyerror').css({
|
||||||
|
'top' : o.top + 60 + 'px',
|
||||||
|
'left' : o.left + 'px'
|
||||||
|
}).show().draggable();
|
||||||
|
|
||||||
|
$('#replyerrtext').html(er)
|
||||||
|
$('#close-button').css('outline','none').focus().keyup(function(e) {
|
||||||
|
if (e.which == 27) commentReply.close(); // close on Escape
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
if ( typeof QTags != 'undefined' )
|
||||||
|
ed_reply = new QTags('ed_reply', 'replycontent', 'replycontainer', 'more');
|
||||||
|
});
|
||||||
|
|
||||||
|
})(jQuery);
|
||||||
|
@ -1,12 +1,14 @@
|
|||||||
wpEditorInit = function() {
|
wpEditorInit = function() {
|
||||||
|
var H;
|
||||||
|
|
||||||
// Activate tinyMCE if it's the user's default editor
|
// Activate tinyMCE if it's the user's default editor
|
||||||
if ( ( 'undefined' == typeof wpTinyMCEConfig ) || 'tinymce' == wpTinyMCEConfig.defaultEditor ) {
|
if ( ( 'undefined' == typeof wpTinyMCEConfig ) || 'tinymce' == wpTinyMCEConfig.defaultEditor ) {
|
||||||
document.getElementById('editorcontainer').style.padding = '0px';
|
try { document.getElementById('editorcontainer').style.padding = '0px'; } catch(e){};
|
||||||
|
try { document.getElementById("quicktags").style.display = "none"; } catch(e){};
|
||||||
tinyMCE.execCommand("mceAddControl", false, "content");
|
tinyMCE.execCommand("mceAddControl", false, "content");
|
||||||
} else {
|
} else {
|
||||||
var H;
|
|
||||||
if ( H = tinymce.util.Cookie.getHash("TinyMCE_content_size") )
|
if ( H = tinymce.util.Cookie.getHash("TinyMCE_content_size") )
|
||||||
document.getElementById('content').style.height = H.ch - 30 + 'px';
|
try { document.getElementById('content').style.height = H.ch - 30 + 'px'; } catch(e){};
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -130,6 +130,7 @@ case 'edit':
|
|||||||
add_thickbox();
|
add_thickbox();
|
||||||
wp_enqueue_script('media-upload');
|
wp_enqueue_script('media-upload');
|
||||||
wp_enqueue_script('word-count');
|
wp_enqueue_script('word-count');
|
||||||
|
wp_enqueue_script( 'admin-comments' );
|
||||||
|
|
||||||
if ( current_user_can('edit_post', $post_ID) ) {
|
if ( current_user_can('edit_post', $post_ID) ) {
|
||||||
if ( $last = wp_check_post_lock( $post->ID ) ) {
|
if ( $last = wp_check_post_lock( $post->ID ) ) {
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
require_once('admin.php');
|
require_once('admin.php');
|
||||||
add_thickbox();
|
add_thickbox();
|
||||||
wp_enqueue_script( 'media-upload' );
|
wp_enqueue_script( 'media-upload' );
|
||||||
|
wp_enqueue_script( 'quicktags' );
|
||||||
|
|
||||||
if (!current_user_can('upload_files'))
|
if (!current_user_can('upload_files'))
|
||||||
wp_die(__('You do not have permission to upload files.'));
|
wp_die(__('You do not have permission to upload files.'));
|
||||||
@ -263,4 +264,7 @@ endif; // posts;
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php include('admin-footer.php'); ?>
|
<?php
|
||||||
|
wp_comment_reply();
|
||||||
|
include('admin-footer.php');
|
||||||
|
?>
|
@ -320,30 +320,36 @@ textarea.all-options, input.all-options {
|
|||||||
padding: 2px 4px;
|
padding: 2px 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ed_toolbar input {
|
#ed_toolbar input,
|
||||||
|
#ed_reply_toolbar input {
|
||||||
margin: 3px 2px 2px;
|
margin: 3px 2px 2px;
|
||||||
padding: 2px 4px;
|
padding: 2px 4px;
|
||||||
line-height: 18px;
|
line-height: 18px;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
#quicktags #ed_strong {
|
#quicktags #ed_strong,
|
||||||
|
#ed_reply_toolbar #ed_reply_strong {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
#quicktags #ed_link {
|
#quicktags #ed_link,
|
||||||
|
#ed_reply_toolbar #ed_reply_link {
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
#quicktags #ed_del {
|
#quicktags #ed_del,
|
||||||
|
#ed_reply_toolbar #ed_reply_del {
|
||||||
text-decoration: line-through;
|
text-decoration: line-through;
|
||||||
}
|
}
|
||||||
|
|
||||||
#quicktags #ed_em {
|
#quicktags #ed_em,
|
||||||
|
#ed_reply_toolbar #ed_reply_em {
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
|
|
||||||
#quicktags #ed_code {
|
#quicktags #ed_code,
|
||||||
|
#ed_reply_toolbar #ed_reply_code {
|
||||||
font-family: "Courier New", Courier, mono;
|
font-family: "Courier New", Courier, mono;
|
||||||
font-size: 1.1em;
|
font-size: 1.1em;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
@ -502,14 +508,14 @@ p.pagenav {
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
.comment-column {
|
|
||||||
width: 50%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.comment-column p {
|
.comment-column p {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.comment-column {
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
.author-column {
|
.author-column {
|
||||||
width: 20%;
|
width: 20%;
|
||||||
}
|
}
|
||||||
@ -1760,7 +1766,8 @@ fieldset {
|
|||||||
.info-box-title {
|
.info-box-title {
|
||||||
line-height: 2;
|
line-height: 2;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0 7px;
|
padding: 4px 8px;
|
||||||
|
font: 18px Georgia, "Times New Roman", Times, serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
#wp_editbtns {
|
#wp_editbtns {
|
||||||
@ -1809,87 +1816,8 @@ a.togbox {
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* fixed bottom bar */
|
|
||||||
.postarea h3 label {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#footer {
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar {
|
|
||||||
bottom:0pt;
|
|
||||||
height:80px;
|
|
||||||
position:fixed;
|
|
||||||
width:100%;
|
|
||||||
z-index: 100;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar #submitpost {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar .submit {
|
|
||||||
padding-top: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar .button {
|
|
||||||
border: none;
|
|
||||||
-moz-border-radius: 6px;
|
|
||||||
-khtml-border-radius: 6px;
|
|
||||||
-webkit-border-radius: 6px;
|
|
||||||
border-radius: 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar .button:hover {
|
|
||||||
background: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar #publish {
|
|
||||||
font-weight:bold;
|
|
||||||
width:160px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar #save-post {
|
|
||||||
width:80px;
|
|
||||||
font-weight:normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar .submitbox {
|
|
||||||
padding: 14px 18px;
|
|
||||||
border-left: 1px solid #aaa;
|
|
||||||
width: 690px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar #post-time-info,
|
|
||||||
#fixedbar #comment-time-info {
|
|
||||||
margin-top: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar #timestampdiv input,
|
|
||||||
#fixedbar #timestampdiv select {
|
|
||||||
background-color:#464646;
|
|
||||||
border:1px solid #777777;
|
|
||||||
color:#CCCCCC;
|
|
||||||
padding:2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#fixedbar-wrap {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
#preview-link {
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
#preview-link a {
|
|
||||||
padding-right:10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
p#post-search-prep {
|
p#post-search-prep {
|
||||||
margin:0pt;
|
margin: 0;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 20px;
|
right: 20px;
|
||||||
top: 50px;
|
top: 50px;
|
||||||
@ -1915,7 +1843,6 @@ p#post-search-prep {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* media popup 0819 */
|
/* media popup 0819 */
|
||||||
|
|
||||||
#sidemenu {
|
#sidemenu {
|
||||||
margin: -30px 15px 0 315px;
|
margin: -30px 15px 0 315px;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
@ -2000,3 +1927,84 @@ p#post-search-prep {
|
|||||||
text-decoration:none;
|
text-decoration:none;
|
||||||
width:200px;
|
width:200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* reply to comments */
|
||||||
|
#replydiv {
|
||||||
|
width: 700px;
|
||||||
|
border-color: #EBEBEB #CCCCCC #CCCCCC #EBEBEB;
|
||||||
|
border-width: 1px;
|
||||||
|
border-style: solid;
|
||||||
|
padding: 2px;
|
||||||
|
background-color: #fff;
|
||||||
|
left: 20px;
|
||||||
|
top: 300px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replydiv #editorcontainer {
|
||||||
|
border: 0 none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replysubmit {
|
||||||
|
margin: 0;
|
||||||
|
padding: 3px 5px;
|
||||||
|
background-color: #EAF3FA;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replydiv #editor-toolbar {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replydiv #replyhandle {
|
||||||
|
cursor: move;
|
||||||
|
margin: 0;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replycontainer {
|
||||||
|
padding: 6px;
|
||||||
|
border: 0 none;
|
||||||
|
height: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replycontent {
|
||||||
|
resize: none;
|
||||||
|
margin: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
padding: 0;
|
||||||
|
line-height: 150%;
|
||||||
|
border: 0 none;
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#ed_reply_toolbar {
|
||||||
|
margin: 0;
|
||||||
|
padding: 2px 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replyerror {
|
||||||
|
border: 5px solid #ddd;
|
||||||
|
background-color: #f8f8f8;
|
||||||
|
position: absolute;
|
||||||
|
padding: 15px 15px 10px;
|
||||||
|
width: 500px;
|
||||||
|
z-index: 1000;
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replyerror img {
|
||||||
|
float: right;
|
||||||
|
margin: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replyerror p.submit {
|
||||||
|
padding: 10px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#replyerror .error {
|
||||||
|
margin: 15px 0 0;
|
||||||
|
}
|
||||||
|
@ -66,7 +66,9 @@ if ( get_option('require_name_email') && !$user->ID ) {
|
|||||||
if ( '' == $comment_content )
|
if ( '' == $comment_content )
|
||||||
wp_die( __('Error: please type a comment.') );
|
wp_die( __('Error: please type a comment.') );
|
||||||
|
|
||||||
$commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'user_ID');
|
$comment_parent = isset($_POST['comment_parent']) ? absint($_POST['comment_parent']) : 0;
|
||||||
|
|
||||||
|
$commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'comment_parent', 'user_ID');
|
||||||
|
|
||||||
$comment_id = wp_new_comment( $commentdata );
|
$comment_id = wp_new_comment( $commentdata );
|
||||||
|
|
||||||
|
@ -391,8 +391,12 @@ function wp_allow_comment($commentdata) {
|
|||||||
if ( $comment_author_email )
|
if ( $comment_author_email )
|
||||||
$dupe .= "OR comment_author_email = '$comment_author_email' ";
|
$dupe .= "OR comment_author_email = '$comment_author_email' ";
|
||||||
$dupe .= ") AND comment_content = '$comment_content' LIMIT 1";
|
$dupe .= ") AND comment_content = '$comment_content' LIMIT 1";
|
||||||
if ( $wpdb->get_var($dupe) )
|
if ( $wpdb->get_var($dupe) ) {
|
||||||
|
if ( defined('DOING_AJAX') )
|
||||||
|
die( __('Duplicate comment detected; it looks as though you\'ve already said that!') );
|
||||||
|
|
||||||
wp_die( __('Duplicate comment detected; it looks as though you\'ve already said that!') );
|
wp_die( __('Duplicate comment detected; it looks as though you\'ve already said that!') );
|
||||||
|
}
|
||||||
|
|
||||||
do_action( 'check_comment_flood', $comment_author_IP, $comment_author_email, $comment_date_gmt );
|
do_action( 'check_comment_flood', $comment_author_IP, $comment_author_email, $comment_date_gmt );
|
||||||
|
|
||||||
@ -443,6 +447,10 @@ function check_comment_flood_db( $ip, $email, $date ) {
|
|||||||
$flood_die = apply_filters('comment_flood_filter', false, $time_lastcomment, $time_newcomment);
|
$flood_die = apply_filters('comment_flood_filter', false, $time_lastcomment, $time_newcomment);
|
||||||
if ( $flood_die ) {
|
if ( $flood_die ) {
|
||||||
do_action('comment_flood_trigger', $time_lastcomment, $time_newcomment);
|
do_action('comment_flood_trigger', $time_lastcomment, $time_newcomment);
|
||||||
|
|
||||||
|
if ( defined('DOING_AJAX') )
|
||||||
|
die( __('You are posting comments too quickly. Slow down.') );
|
||||||
|
|
||||||
wp_die( __('You are posting comments too quickly. Slow down.') );
|
wp_die( __('You are posting comments too quickly. Slow down.') );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -753,6 +761,10 @@ function wp_new_comment( $commentdata ) {
|
|||||||
$commentdata['comment_post_ID'] = (int) $commentdata['comment_post_ID'];
|
$commentdata['comment_post_ID'] = (int) $commentdata['comment_post_ID'];
|
||||||
$commentdata['user_ID'] = (int) $commentdata['user_ID'];
|
$commentdata['user_ID'] = (int) $commentdata['user_ID'];
|
||||||
|
|
||||||
|
$commentdata['comment_parent'] = absint($commentdata['comment_parent']);
|
||||||
|
$parent_status = ( 0 < $commentdata['comment_parent'] ) ? wp_get_comment_status($commentdata['comment_parent']) : '';
|
||||||
|
$commentdata['comment_parent'] = ( 'approved' == $parent_status || 'unapproved' == $parent_status ) ? $commentdata['comment_parent'] : 0;
|
||||||
|
|
||||||
$commentdata['comment_author_IP'] = preg_replace( '/[^0-9a-fA-F:., ]/', '',$_SERVER['REMOTE_ADDR'] );
|
$commentdata['comment_author_IP'] = preg_replace( '/[^0-9a-fA-F:., ]/', '',$_SERVER['REMOTE_ADDR'] );
|
||||||
$commentdata['comment_agent'] = $_SERVER['HTTP_USER_AGENT'];
|
$commentdata['comment_agent'] = $_SERVER['HTTP_USER_AGENT'];
|
||||||
|
|
||||||
|
@ -955,7 +955,7 @@ function the_editor($content, $id = 'content', $prev_id = 'title', $media_button
|
|||||||
|
|
||||||
$rows = "rows='$rows'"; ?>
|
$rows = "rows='$rows'"; ?>
|
||||||
<div id="editor-toolbar">
|
<div id="editor-toolbar">
|
||||||
<?php if ( user_can_richedit() ) {
|
<?php if ( user_can_richedit() && $media_buttons ) {
|
||||||
$wp_default_editor = wp_default_editor(); ?>
|
$wp_default_editor = wp_default_editor(); ?>
|
||||||
<div class="zerosize"><input accesskey="e" type="button" onclick="switchEditors.go('<?php echo $id; ?>')" /></div>
|
<div class="zerosize"><input accesskey="e" type="button" onclick="switchEditors.go('<?php echo $id; ?>')" /></div>
|
||||||
<?php if ( 'tinymce' == $wp_default_editor ) {
|
<?php if ( 'tinymce' == $wp_default_editor ) {
|
||||||
@ -967,7 +967,8 @@ function the_editor($content, $id = 'content', $prev_id = 'title', $media_button
|
|||||||
<a id="edButtonHTML" class="active"><?php _e('HTML'); ?></a>
|
<a id="edButtonHTML" class="active"><?php _e('HTML'); ?></a>
|
||||||
<a id="edButtonPreview" onclick="switchEditors.go('<?php echo $id; ?>');"><?php _e('Visual'); ?></a>
|
<a id="edButtonPreview" onclick="switchEditors.go('<?php echo $id; ?>');"><?php _e('Visual'); ?></a>
|
||||||
<?php }
|
<?php }
|
||||||
}
|
} else
|
||||||
|
add_filter('the_editor_content', 'wp_htmledit_pre');
|
||||||
|
|
||||||
/* if ( $media_buttons ) { ?>
|
/* if ( $media_buttons ) { ?>
|
||||||
<div id="media-buttons" class="hide-if-no-js">
|
<div id="media-buttons" class="hide-if-no-js">
|
||||||
@ -981,16 +982,7 @@ function the_editor($content, $id = 'content', $prev_id = 'title', $media_button
|
|||||||
<script type="text/javascript">edToolbar()</script>
|
<script type="text/javascript">edToolbar()</script>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php if ( 'html' != $wp_default_editor ) : ?>
|
<?php $the_editor = apply_filters('the_editor', "<div id='editorcontainer'><textarea $rows cols='40' name='$id' tabindex='$tab_index' id='$id'>%s</textarea></div>\n");
|
||||||
<script type="text/javascript">
|
|
||||||
// <![CDATA[
|
|
||||||
if ( typeof tinyMCE != "undefined" )
|
|
||||||
document.getElementById("quicktags").style.display="none";
|
|
||||||
// ]]>
|
|
||||||
</script>
|
|
||||||
<?php endif; // 'html' != $wp_default_editor
|
|
||||||
|
|
||||||
$the_editor = apply_filters('the_editor', "<div id='editorcontainer'><textarea class='' $rows cols='40' name='$id' tabindex='$tab_index' id='$id'>%s</textarea></div>\n");
|
|
||||||
$the_editor_content = apply_filters('the_editor_content', $content);
|
$the_editor_content = apply_filters('the_editor_content', $content);
|
||||||
|
|
||||||
printf($the_editor, $the_editor_content);
|
printf($the_editor, $the_editor_content);
|
||||||
@ -999,7 +991,7 @@ function the_editor($content, $id = 'content', $prev_id = 'title', $media_button
|
|||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
// <![CDATA[
|
// <![CDATA[
|
||||||
edCanvas = document.getElementById('<?php echo $id; ?>');
|
edCanvas = document.getElementById('<?php echo $id; ?>');
|
||||||
<?php if ( $prev_id && user_can_richedit() ) : ?>
|
<?php if ( user_can_richedit() && $prev_id ) { ?>
|
||||||
// If tinyMCE is defined.
|
// If tinyMCE is defined.
|
||||||
if ( typeof tinyMCE != 'undefined' ) {
|
if ( typeof tinyMCE != 'undefined' ) {
|
||||||
// This code is meant to allow tabbing from Title to Post (TinyMCE).
|
// This code is meant to allow tabbing from Title to Post (TinyMCE).
|
||||||
@ -1017,7 +1009,7 @@ function the_editor($content, $id = 'content', $prev_id = 'title', $media_button
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
<?php endif; ?>
|
<?php } ?>
|
||||||
// ]]>
|
// ]]>
|
||||||
</script>
|
</script>
|
||||||
<?php
|
<?php
|
||||||
|
1
wp-includes/js/jquery/ui.dialog.js
Normal file
1
wp-includes/js/jquery/ui.dialog.js
Normal file
File diff suppressed because one or more lines are too long
1
wp-includes/js/jquery/ui.draggable.js
Normal file
1
wp-includes/js/jquery/ui.draggable.js
Normal file
File diff suppressed because one or more lines are too long
1
wp-includes/js/jquery/ui.resizable.js
Normal file
1
wp-includes/js/jquery/ui.resizable.js
Normal file
File diff suppressed because one or more lines are too long
@ -387,3 +387,194 @@ function edInsertImage(myField) {
|
|||||||
edInsertContent(myField, myValue);
|
edInsertContent(myField, myValue);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Allow multiple instances.
|
||||||
|
// Name = unique value, id = textarea id, container = container div.
|
||||||
|
// Can disable some buttons by passing comma delimited string as 4th param.
|
||||||
|
var QTags = function(name, id, container, disabled) {
|
||||||
|
var t = this;
|
||||||
|
|
||||||
|
t.Buttons = [];
|
||||||
|
t.Links = [];
|
||||||
|
t.OpenTags = [];
|
||||||
|
t.Canvas = document.getElementById(id);
|
||||||
|
|
||||||
|
disabled = ( typeof disabled != 'undefined' ) ? ','+disabled+',' : '';
|
||||||
|
|
||||||
|
t.edShowButton = function(button, i) {
|
||||||
|
if ( disabled && (disabled.indexOf(','+button.display+',') != -1) )
|
||||||
|
return '';
|
||||||
|
else if ( button.id == name+'_img' )
|
||||||
|
return '<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="edInsertImage('+name+'.Canvas);" value="' + button.display + '" />';
|
||||||
|
else if (button.id == name+'_link')
|
||||||
|
return '<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="'+name+'.edInsertLink('+i+');" value="'+button.display+'" />';
|
||||||
|
else
|
||||||
|
return '<input type="button" id="' + button.id + '" accesskey="'+button.access+'" class="ed_button" onclick="'+name+'.edInsertTag('+i+');" value="'+button.display+'" />';
|
||||||
|
};
|
||||||
|
|
||||||
|
t.edAddTag = function(button) {
|
||||||
|
if ( t.Buttons[button].tagEnd != '' ) {
|
||||||
|
t.OpenTags[t.OpenTags.length] = button;
|
||||||
|
document.getElementById(t.Buttons[button].id).value = '/' + document.getElementById(t.Buttons[button].id).value;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
t.edRemoveTag = function(button) {
|
||||||
|
for ( var i = 0; i < t.OpenTags.length; i++ ) {
|
||||||
|
if ( t.OpenTags[i] == button ) {
|
||||||
|
t.OpenTags.splice(i, 1);
|
||||||
|
document.getElementById(t.Buttons[button].id).value = document.getElementById(t.Buttons[button].id).value.replace('/', '');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
t.edCheckOpenTags = function(button) {
|
||||||
|
var tag = 0;
|
||||||
|
for ( var i = 0; i < t.OpenTags.length; i++ ) {
|
||||||
|
if ( t.OpenTags[i] == button )
|
||||||
|
tag++;
|
||||||
|
}
|
||||||
|
if ( tag > 0 ) return true; // tag found
|
||||||
|
else return false; // tag not found
|
||||||
|
};
|
||||||
|
|
||||||
|
this.edCloseAllTags = function() {
|
||||||
|
var count = t.OpenTags.length;
|
||||||
|
for ( var o = 0; o < count; o++ )
|
||||||
|
t.edInsertTag(t.OpenTags[t.OpenTags.length - 1]);
|
||||||
|
};
|
||||||
|
|
||||||
|
this.edQuickLink = function(i, thisSelect) {
|
||||||
|
if ( i > -1 ) {
|
||||||
|
var newWin = '';
|
||||||
|
if ( Links[i].newWin == 1 ) {
|
||||||
|
newWin = ' target="_blank"';
|
||||||
|
}
|
||||||
|
var tempStr = '<a href="' + Links[i].URL + '"' + newWin + '>'
|
||||||
|
+ Links[i].display
|
||||||
|
+ '</a>';
|
||||||
|
thisSelect.selectedIndex = 0;
|
||||||
|
edInsertContent(t.Canvas, tempStr);
|
||||||
|
} else {
|
||||||
|
thisSelect.selectedIndex = 0;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// insertion code
|
||||||
|
t.edInsertTag = function(i) {
|
||||||
|
//IE support
|
||||||
|
if ( document.selection ) {
|
||||||
|
t.Canvas.focus();
|
||||||
|
sel = document.selection.createRange();
|
||||||
|
if ( sel.text.length > 0 ) {
|
||||||
|
sel.text = t.Buttons[i].tagStart + sel.text + t.Buttons[i].tagEnd;
|
||||||
|
} else {
|
||||||
|
if ( ! t.edCheckOpenTags(i) || t.Buttons[i].tagEnd == '' ) {
|
||||||
|
sel.text = t.Buttons[i].tagStart;
|
||||||
|
t.edAddTag(i);
|
||||||
|
} else {
|
||||||
|
sel.text = t.Buttons[i].tagEnd;
|
||||||
|
t.edRemoveTag(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
t.Canvas.focus();
|
||||||
|
} else if ( t.Canvas.selectionStart || t.Canvas.selectionStart == '0' ) { //MOZILLA/NETSCAPE support
|
||||||
|
var startPos = t.Canvas.selectionStart;
|
||||||
|
var endPos = t.Canvas.selectionEnd;
|
||||||
|
var cursorPos = endPos;
|
||||||
|
var scrollTop = t.Canvas.scrollTop;
|
||||||
|
|
||||||
|
if ( startPos != endPos ) {
|
||||||
|
t.Canvas.value = t.Canvas.value.substring(0, startPos)
|
||||||
|
+ t.Buttons[i].tagStart
|
||||||
|
+ t.Canvas.value.substring(startPos, endPos)
|
||||||
|
+ t.Buttons[i].tagEnd
|
||||||
|
+ t.Canvas.value.substring(endPos, t.Canvas.value.length);
|
||||||
|
cursorPos += t.Buttons[i].tagStart.length + t.Buttons[i].tagEnd.length;
|
||||||
|
} else {
|
||||||
|
if ( !t.edCheckOpenTags(i) || t.Buttons[i].tagEnd == '' ) {
|
||||||
|
t.Canvas.value = t.Canvas.value.substring(0, startPos)
|
||||||
|
+ t.Buttons[i].tagStart
|
||||||
|
+ t.Canvas.value.substring(endPos, t.Canvas.value.length);
|
||||||
|
t.edAddTag(i);
|
||||||
|
cursorPos = startPos + t.Buttons[i].tagStart.length;
|
||||||
|
} else {
|
||||||
|
t.Canvas.value = t.Canvas.value.substring(0, startPos)
|
||||||
|
+ t.Buttons[i].tagEnd
|
||||||
|
+ t.Canvas.value.substring(endPos, t.Canvas.value.length);
|
||||||
|
t.edRemoveTag(i);
|
||||||
|
cursorPos = startPos + t.Buttons[i].tagEnd.length;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
t.Canvas.focus();
|
||||||
|
t.Canvas.selectionStart = cursorPos;
|
||||||
|
t.Canvas.selectionEnd = cursorPos;
|
||||||
|
t.Canvas.scrollTop = scrollTop;
|
||||||
|
} else {
|
||||||
|
if ( ! t.edCheckOpenTags(i) || t.Buttons[i].tagEnd == '' ) {
|
||||||
|
t.Canvas.value += Buttons[i].tagStart;
|
||||||
|
t.edAddTag(i);
|
||||||
|
} else {
|
||||||
|
t.Canvas.value += Buttons[i].tagEnd;
|
||||||
|
t.edRemoveTag(i);
|
||||||
|
}
|
||||||
|
t.Canvas.focus();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
this.edInsertLink = function(i, defaultValue) {
|
||||||
|
if ( ! defaultValue )
|
||||||
|
defaultValue = 'http://';
|
||||||
|
|
||||||
|
if ( ! t.edCheckOpenTags(i) ) {
|
||||||
|
var URL = prompt(quicktagsL10n.enterURL, defaultValue);
|
||||||
|
if ( URL ) {
|
||||||
|
t.Buttons[i].tagStart = '<a href="' + URL + '">';
|
||||||
|
t.edInsertTag(i);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
t.edInsertTag(i);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
this.edInsertImage = function() {
|
||||||
|
var myValue = prompt(quicktagsL10n.enterImageURL, 'http://');
|
||||||
|
if ( myValue ) {
|
||||||
|
myValue = '<img src="'
|
||||||
|
+ myValue
|
||||||
|
+ '" alt="' + prompt(quicktagsL10n.enterImageDescription, '')
|
||||||
|
+ '" />';
|
||||||
|
edInsertContent(t.Canvas, myValue);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_strong','b','<strong>','</strong>','b');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_em','i','<em>','</em>','i');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_link','link','','</a>','a'); // special case
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_block','b-quote','\n\n<blockquote>','</blockquote>\n\n','q');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_del','del','<del datetime="' + datetime + '">','</del>','d');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_ins','ins','<ins datetime="' + datetime + '">','</ins>','s');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_img','img','','','m',-1); // special case
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_ul','ul','<ul>\n','</ul>\n\n','u');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_ol','ol','<ol>\n','</ol>\n\n','o');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_li','li','\t<li>','</li>\n','l');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_code','code','<code>','</code>','c');
|
||||||
|
t.Buttons[t.Buttons.length] = new edButton(name+'_more','more','<!--more-->','','t',-1);
|
||||||
|
// t.Buttons[t.Buttons.length] = new edButton(name+'_next','page','<!--nextpage-->','','p',-1);
|
||||||
|
|
||||||
|
var tb = document.createElement('div');
|
||||||
|
tb.id = name+'_qtags';
|
||||||
|
|
||||||
|
var html = '<div id="'+name+'_toolbar">';
|
||||||
|
for (var i = 0; i < t.Buttons.length; i++)
|
||||||
|
html += t.edShowButton(t.Buttons[i], i);
|
||||||
|
|
||||||
|
html += '<input type="button" id="'+name+'_ed_spell" class="ed_button" onclick="edSpell('+name+'.Canvas);" title="' + quicktagsL10n.dictionaryLookup + '" value="' + quicktagsL10n.lookup + '" />';
|
||||||
|
html += '<input type="button" id="'+name+'_ed_close" class="ed_button" onclick="'+name+'.edCloseAllTags();" title="' + quicktagsL10n.closeAllOpenTags + '" value="' + quicktagsL10n.closeTags + '" /></div>';
|
||||||
|
|
||||||
|
tb.innerHTML = html;
|
||||||
|
var cont = document.getElementById(container);
|
||||||
|
cont.parentNode.insertBefore(tb, cont);
|
||||||
|
|
||||||
|
};
|
||||||
|
@ -15,7 +15,7 @@ function wp_default_scripts( &$scripts ) {
|
|||||||
$scripts->add( 'common', '/wp-admin/js/common.js', array('jquery'), '20080318' );
|
$scripts->add( 'common', '/wp-admin/js/common.js', array('jquery'), '20080318' );
|
||||||
$scripts->add( 'sack', '/wp-includes/js/tw-sack.js', false, '1.6.1' );
|
$scripts->add( 'sack', '/wp-includes/js/tw-sack.js', false, '1.6.1' );
|
||||||
|
|
||||||
$scripts->add( 'quicktags', '/wp-includes/js/quicktags.js', false, '3958' );
|
$scripts->add( 'quicktags', '/wp-includes/js/quicktags.js', false, '20080823' );
|
||||||
$scripts->localize( 'quicktags', 'quicktagsL10n', array(
|
$scripts->localize( 'quicktags', 'quicktagsL10n', array(
|
||||||
'quickLinks' => __('(Quick Links)'),
|
'quickLinks' => __('(Quick Links)'),
|
||||||
'wordLookup' => __('Enter a word to look up:'),
|
'wordLookup' => __('Enter a word to look up:'),
|
||||||
@ -34,7 +34,7 @@ function wp_default_scripts( &$scripts ) {
|
|||||||
$visual_editor = apply_filters('visual_editor', array('tiny_mce'));
|
$visual_editor = apply_filters('visual_editor', array('tiny_mce'));
|
||||||
$scripts->add( 'editor', false, $visual_editor, '20080321' );
|
$scripts->add( 'editor', false, $visual_editor, '20080321' );
|
||||||
|
|
||||||
$scripts->add( 'editor_functions', '/wp-admin/js/editor.js', false, '20080710' );
|
$scripts->add( 'editor_functions', '/wp-admin/js/editor.js', false, '20080823' );
|
||||||
|
|
||||||
// Modify this version when tinyMCE plugins are changed.
|
// Modify this version when tinyMCE plugins are changed.
|
||||||
$mce_version = apply_filters('tiny_mce_version', '20080730');
|
$mce_version = apply_filters('tiny_mce_version', '20080730');
|
||||||
@ -103,6 +103,9 @@ function wp_default_scripts( &$scripts ) {
|
|||||||
$scripts->add( 'jquery-ui-core', '/wp-includes/js/jquery/ui.core.js', array('jquery'), '1.5.2' );
|
$scripts->add( 'jquery-ui-core', '/wp-includes/js/jquery/ui.core.js', array('jquery'), '1.5.2' );
|
||||||
$scripts->add( 'jquery-ui-tabs', '/wp-includes/js/jquery/ui.tabs.js', array('jquery-ui-core'), '1.5.2' );
|
$scripts->add( 'jquery-ui-tabs', '/wp-includes/js/jquery/ui.tabs.js', array('jquery-ui-core'), '1.5.2' );
|
||||||
$scripts->add( 'jquery-ui-sortable', '/wp-includes/js/jquery/ui.sortable.js', array('jquery-ui-core'), '1.5.2' );
|
$scripts->add( 'jquery-ui-sortable', '/wp-includes/js/jquery/ui.sortable.js', array('jquery-ui-core'), '1.5.2' );
|
||||||
|
$scripts->add( 'jquery-ui-draggable', '/wp-includes/js/jquery/ui.draggable.js', array('jquery-ui-core'), '1.5.2' );
|
||||||
|
$scripts->add( 'jquery-ui-resizable', '/wp-includes/js/jquery/ui.resizable.js', array('jquery-ui-core'), '1.5.2' );
|
||||||
|
$scripts->add( 'jquery-ui-dialog', '/wp-includes/js/jquery/ui.dialog.js', array('jquery-ui-resizable', 'jquery-ui-draggable'), '1.5.2' );
|
||||||
|
|
||||||
if ( is_admin() ) {
|
if ( is_admin() ) {
|
||||||
$scripts->add( 'ajaxcat', '/wp-admin/js/cat.js', array( 'wp-lists' ), '20071101' );
|
$scripts->add( 'ajaxcat', '/wp-admin/js/cat.js', array( 'wp-lists' ), '20071101' );
|
||||||
@ -120,7 +123,7 @@ function wp_default_scripts( &$scripts ) {
|
|||||||
'good' => __('Good'),
|
'good' => __('Good'),
|
||||||
'strong' => __('Strong')
|
'strong' => __('Strong')
|
||||||
) );
|
) );
|
||||||
$scripts->add( 'admin-comments', '/wp-admin/js/edit-comments.js', array('wp-lists'), '20080311' );
|
$scripts->add( 'admin-comments', '/wp-admin/js/edit-comments.js', array('wp-lists', 'jquery-ui-draggable', 'jquery-ui-resizable'), '20080821' );
|
||||||
$scripts->localize( 'admin-comments', 'adminCommentsL10n', array(
|
$scripts->localize( 'admin-comments', 'adminCommentsL10n', array(
|
||||||
'pending' => __('%i% pending') // must look like: "# blah blah"
|
'pending' => __('%i% pending') // must look like: "# blah blah"
|
||||||
) );
|
) );
|
||||||
|
@ -1089,6 +1089,8 @@ class wp_xmlrpc_server extends IXR_Server {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$comment['comment_parent'] = isset($content_struct['comment_parent']) ? absint($content_struct['comment_parent']) : 0;
|
||||||
|
|
||||||
$comment['comment_content'] = $content_struct['content'];
|
$comment['comment_content'] = $content_struct['content'];
|
||||||
|
|
||||||
do_action('xmlrpc_call', 'wp.newComment');
|
do_action('xmlrpc_call', 'wp.newComment');
|
||||||
|
Loading…
Reference in New Issue
Block a user