|
1 <?php |
|
2 /** |
|
3 * Edit Comments Administration Panel. |
|
4 * |
|
5 * @package WordPress |
|
6 * @subpackage Administration |
|
7 */ |
|
8 |
|
9 /** WordPress Administration Bootstrap */ |
|
10 require_once('admin.php'); |
|
11 |
|
12 if ( !current_user_can('edit_posts') ) |
|
13 wp_die(__('Cheatin’ uh?')); |
|
14 |
|
15 wp_enqueue_script('admin-comments'); |
|
16 enqueue_comment_hotkeys_js(); |
|
17 |
|
18 $post_id = isset($_REQUEST['p']) ? (int) $_REQUEST['p'] : 0; |
|
19 |
|
20 if ( isset($_REQUEST['doaction']) || isset($_REQUEST['doaction2']) || isset($_REQUEST['delete_all']) || isset($_REQUEST['delete_all2']) ) { |
|
21 check_admin_referer('bulk-comments'); |
|
22 |
|
23 if ( (isset($_REQUEST['delete_all']) || isset($_REQUEST['delete_all2'])) && !empty($_REQUEST['pagegen_timestamp']) ) { |
|
24 $comment_status = $wpdb->escape($_REQUEST['comment_status']); |
|
25 $delete_time = $wpdb->escape($_REQUEST['pagegen_timestamp']); |
|
26 $comment_ids = $wpdb->get_col( "SELECT comment_ID FROM $wpdb->comments WHERE comment_approved = '$comment_status' AND '$delete_time' > comment_date_gmt" ); |
|
27 $doaction = 'delete'; |
|
28 } elseif ( ($_REQUEST['action'] != -1 || $_REQUEST['action2'] != -1) && isset($_REQUEST['delete_comments']) ) { |
|
29 $comment_ids = $_REQUEST['delete_comments']; |
|
30 $doaction = ($_REQUEST['action'] != -1) ? $_REQUEST['action'] : $_REQUEST['action2']; |
|
31 } elseif ( $_REQUEST['doaction'] == 'undo' && isset($_REQUEST['ids']) ) { |
|
32 $comment_ids = array_map( 'absint', explode(',', $_REQUEST['ids']) ); |
|
33 $doaction = $_REQUEST['action']; |
|
34 } else { |
|
35 wp_redirect($_SERVER['HTTP_REFERER']); |
|
36 } |
|
37 |
|
38 $approved = $unapproved = $spammed = $unspammed = $trashed = $untrashed = $deleted = 0; |
|
39 |
|
40 foreach ($comment_ids as $comment_id) { // Check the permissions on each |
|
41 $_post_id = (int) $wpdb->get_var( $wpdb->prepare( "SELECT comment_post_ID FROM $wpdb->comments WHERE comment_ID = %d", $comment_id) ); |
|
42 |
|
43 if ( !current_user_can('edit_post', $_post_id) ) |
|
44 continue; |
|
45 |
|
46 switch( $doaction ) { |
|
47 case 'approve' : |
|
48 wp_set_comment_status($comment_id, 'approve'); |
|
49 $approved++; |
|
50 break; |
|
51 case 'unapprove' : |
|
52 wp_set_comment_status($comment_id, 'hold'); |
|
53 $unapproved++; |
|
54 break; |
|
55 case 'spam' : |
|
56 wp_spam_comment($comment_id); |
|
57 $spammed++; |
|
58 break; |
|
59 case 'unspam' : |
|
60 wp_unspam_comment($comment_id); |
|
61 $unspammed++; |
|
62 break; |
|
63 case 'trash' : |
|
64 wp_trash_comment($comment_id); |
|
65 $trashed++; |
|
66 break; |
|
67 case 'untrash' : |
|
68 wp_untrash_comment($comment_id); |
|
69 $untrashed++; |
|
70 break; |
|
71 case 'delete' : |
|
72 wp_delete_comment($comment_id); |
|
73 $deleted++; |
|
74 break; |
|
75 } |
|
76 } |
|
77 |
|
78 $redirect_to = 'edit-comments.php'; |
|
79 |
|
80 if ( $approved ) |
|
81 $redirect_to = add_query_arg( 'approved', $approved, $redirect_to ); |
|
82 if ( $unapproved ) |
|
83 $redirect_to = add_query_arg( 'unapproved', $unapproved, $redirect_to ); |
|
84 if ( $spammed ) |
|
85 $redirect_to = add_query_arg( 'spammed', $spammed, $redirect_to ); |
|
86 if ( $unspammed ) |
|
87 $redirect_to = add_query_arg( 'unspammed', $unspammed, $redirect_to ); |
|
88 if ( $trashed ) |
|
89 $redirect_to = add_query_arg( 'trashed', $trashed, $redirect_to ); |
|
90 if ( $untrashed ) |
|
91 $redirect_to = add_query_arg( 'untrashed', $untrashed, $redirect_to ); |
|
92 if ( $deleted ) |
|
93 $redirect_to = add_query_arg( 'deleted', $deleted, $redirect_to ); |
|
94 if ( $trashed || $spammed ) |
|
95 $redirect_to = add_query_arg( 'ids', join(',', $comment_ids), $redirect_to ); |
|
96 |
|
97 if ( $post_id ) |
|
98 $redirect_to = add_query_arg( 'p', absint( $post_id ), $redirect_to ); |
|
99 if ( isset($_REQUEST['apage']) ) |
|
100 $redirect_to = add_query_arg( 'apage', absint($_REQUEST['apage']), $redirect_to ); |
|
101 if ( !empty($_REQUEST['mode']) ) |
|
102 $redirect_to = add_query_arg('mode', $_REQUEST['mode'], $redirect_to); |
|
103 if ( !empty($_REQUEST['comment_status']) ) |
|
104 $redirect_to = add_query_arg('comment_status', $_REQUEST['comment_status'], $redirect_to); |
|
105 if ( !empty($_REQUEST['s']) ) |
|
106 $redirect_to = add_query_arg('s', $_REQUEST['s'], $redirect_to); |
|
107 wp_redirect( $redirect_to ); |
|
108 } elseif ( isset($_GET['_wp_http_referer']) && ! empty($_GET['_wp_http_referer']) ) { |
|
109 wp_redirect( remove_query_arg( array('_wp_http_referer', '_wpnonce'), stripslashes($_SERVER['REQUEST_URI']) ) ); |
|
110 exit; |
|
111 } |
|
112 |
|
113 if ( $post_id ) |
|
114 $title = sprintf(__('Edit Comments on “%s”'), wp_html_excerpt(_draft_or_post_title($post_id), 50)); |
|
115 else |
|
116 $title = __('Edit Comments'); |
|
117 |
|
118 require_once('admin-header.php'); |
|
119 |
|
120 $mode = ( ! isset($_GET['mode']) || empty($_GET['mode']) ) ? 'detail' : esc_attr($_GET['mode']); |
|
121 |
|
122 $comment_status = isset($_REQUEST['comment_status']) ? $_REQUEST['comment_status'] : 'all'; |
|
123 if ( !in_array($comment_status, array('all', 'moderated', 'approved', 'spam', 'trash')) ) |
|
124 $comment_status = 'all'; |
|
125 |
|
126 $comment_type = !empty($_GET['comment_type']) ? esc_attr($_GET['comment_type']) : ''; |
|
127 |
|
128 $search_dirty = ( isset($_GET['s']) ) ? $_GET['s'] : ''; |
|
129 $search = esc_attr( $search_dirty ); ?> |
|
130 |
|
131 <div class="wrap"> |
|
132 <?php screen_icon(); ?> |
|
133 <h2><?php echo esc_html( $title ); |
|
134 if ( isset($_GET['s']) && $_GET['s'] ) |
|
135 printf( '<span class="subtitle">' . sprintf( __( 'Search results for “%s”' ), wp_html_excerpt( esc_html( stripslashes( $_GET['s'] ) ), 50 ) ) . '</span>' ); ?> |
|
136 </h2> |
|
137 |
|
138 <?php |
|
139 if ( isset($_GET['approved']) || isset($_GET['deleted']) || isset($_GET['trashed']) || isset($_GET['untrashed']) || isset($_GET['spammed']) || isset($_GET['unspammed']) ) { |
|
140 $approved = isset($_GET['approved']) ? (int) $_GET['approved'] : 0; |
|
141 $deleted = isset($_GET['deleted']) ? (int) $_GET['deleted'] : 0; |
|
142 $trashed = isset($_GET['trashed']) ? (int) $_GET['trashed'] : 0; |
|
143 $untrashed = isset($_GET['untrashed']) ? (int) $_GET['untrashed'] : 0; |
|
144 $spammed = isset($_GET['spammed']) ? (int) $_GET['spammed'] : 0; |
|
145 $unspammed = isset($_GET['unspammed']) ? (int) $_GET['unspammed'] : 0; |
|
146 |
|
147 if ( $approved > 0 || $deleted > 0 || $trashed > 0 || $untrashed > 0 || $spammed > 0 || $unspammed > 0 ) { |
|
148 echo '<div id="moderated" class="updated fade"><p>'; |
|
149 |
|
150 if ( $approved > 0 ) { |
|
151 printf( _n( '%s comment approved', '%s comments approved', $approved ), $approved ); |
|
152 echo '<br />'; |
|
153 } |
|
154 if ( $spammed > 0 ) { |
|
155 printf( _n( '%s comment marked as spam.', '%s comments marked as spam.', $spammed ), $spammed ); |
|
156 $ids = isset($_GET['ids']) ? $_GET['ids'] : 0; |
|
157 echo ' <a href="' . esc_url( wp_nonce_url( "edit-comments.php?doaction=undo&action=unspam&ids=$ids", "bulk-comments" ) ) . '">' . __('Undo') . '</a><br />'; |
|
158 } |
|
159 if ( $unspammed > 0 ) { |
|
160 printf( _n( '%s comment restored from the spam', '%s comments restored from the spam', $unspammed ), $unspammed ); |
|
161 echo '<br />'; |
|
162 } |
|
163 if ( $trashed > 0 ) { |
|
164 printf( _n( '%s comment moved to the trash.', '%s comments moved to the trash.', $trashed ), $trashed ); |
|
165 $ids = isset($_GET['ids']) ? $_GET['ids'] : 0; |
|
166 echo ' <a href="' . esc_url( wp_nonce_url( "edit-comments.php?doaction=undo&action=untrash&ids=$ids", "bulk-comments" ) ) . '">' . __('Undo') . '</a><br />'; |
|
167 } |
|
168 if ( $untrashed > 0 ) { |
|
169 printf( _n( '%s comment restored from the trash', '%s comments restored from the trash', $untrashed ), $untrashed ); |
|
170 echo '<br />'; |
|
171 } |
|
172 if ( $deleted > 0 ) { |
|
173 printf( _n( '%s comment permanently deleted', '%s comments permanently deleted', $deleted ), $deleted ); |
|
174 echo '<br />'; |
|
175 } |
|
176 |
|
177 echo '</p></div>'; |
|
178 } |
|
179 } |
|
180 ?> |
|
181 |
|
182 <form id="comments-form" action="" method="get"> |
|
183 <ul class="subsubsub"> |
|
184 <?php |
|
185 $status_links = array(); |
|
186 $num_comments = ( $post_id ) ? wp_count_comments( $post_id ) : wp_count_comments(); |
|
187 //, number_format_i18n($num_comments->moderated) ), "<span class='comment-count'>" . number_format_i18n($num_comments->moderated) . "</span>"), |
|
188 //, number_format_i18n($num_comments->spam) ), "<span class='spam-comment-count'>" . number_format_i18n($num_comments->spam) . "</span>") |
|
189 $stati = array( |
|
190 'all' => _n_noop('All', 'All'), // singular not used |
|
191 'moderated' => _n_noop('Pending <span class="count">(<span class="pending-count">%s</span>)</span>', 'Pending <span class="count">(<span class="pending-count">%s</span>)</span>'), |
|
192 'approved' => _n_noop('Approved', 'Approved'), // singular not used |
|
193 'spam' => _n_noop('Spam <span class="count">(<span class="spam-count">%s</span>)</span>', 'Spam <span class="count">(<span class="spam-count">%s</span>)</span>'), |
|
194 'trash' => _n_noop('Trash <span class="count">(<span class="trash-count">%s</span>)</span>', 'Trash <span class="count">(<span class="trash-count">%s</span>)</span>') |
|
195 ); |
|
196 |
|
197 if ( !EMPTY_TRASH_DAYS ) |
|
198 unset($stati['trash']); |
|
199 |
|
200 $link = 'edit-comments.php'; |
|
201 if ( !empty($comment_type) && 'all' != $comment_type ) |
|
202 $link = add_query_arg( 'comment_type', $comment_type, $link ); |
|
203 |
|
204 foreach ( $stati as $status => $label ) { |
|
205 $class = ''; |
|
206 |
|
207 if ( $status == $comment_status ) |
|
208 $class = ' class="current"'; |
|
209 if ( !isset( $num_comments->$status ) ) |
|
210 $num_comments->$status = 10; |
|
211 $link = add_query_arg( 'comment_status', $status, $link ); |
|
212 if ( $post_id ) |
|
213 $link = add_query_arg( 'p', absint( $post_id ), $link ); |
|
214 /* |
|
215 // I toyed with this, but decided against it. Leaving it in here in case anyone thinks it is a good idea. ~ Mark |
|
216 if ( !empty( $_GET['s'] ) ) |
|
217 $link = add_query_arg( 's', esc_attr( stripslashes( $_GET['s'] ) ), $link ); |
|
218 */ |
|
219 $status_links[] = "<li class='$status'><a href='$link'$class>" . sprintf( |
|
220 _n( $label[0], $label[1], $num_comments->$status ), |
|
221 number_format_i18n( $num_comments->$status ) |
|
222 ) . '</a>'; |
|
223 } |
|
224 |
|
225 $status_links = apply_filters( 'comment_status_links', $status_links ); |
|
226 |
|
227 echo implode( " |</li>\n", $status_links) . '</li>'; |
|
228 unset($status_links); |
|
229 ?> |
|
230 </ul> |
|
231 |
|
232 <p class="search-box"> |
|
233 <label class="screen-reader-text" for="comment-search-input"><?php _e( 'Search Comments' ); ?>:</label> |
|
234 <input type="text" id="comment-search-input" name="s" value="<?php _admin_search_query(); ?>" /> |
|
235 <input type="submit" value="<?php esc_attr_e( 'Search Comments' ); ?>" class="button" /> |
|
236 </p> |
|
237 |
|
238 <?php |
|
239 $comments_per_page = (int) get_user_option( 'edit_comments_per_page', 0, false ); |
|
240 if ( empty( $comments_per_page ) || $comments_per_page < 1 ) |
|
241 $comments_per_page = 20; |
|
242 $comments_per_page = apply_filters( 'comments_per_page', $comments_per_page, $comment_status ); |
|
243 |
|
244 if ( isset( $_GET['apage'] ) ) |
|
245 $page = abs( (int) $_GET['apage'] ); |
|
246 else |
|
247 $page = 1; |
|
248 |
|
249 $start = $offset = ( $page - 1 ) * $comments_per_page; |
|
250 |
|
251 list($_comments, $total) = _wp_get_comment_list( $comment_status, $search_dirty, $start, $comments_per_page + 8, $post_id, $comment_type ); // Grab a few extra |
|
252 |
|
253 $_comment_post_ids = array(); |
|
254 foreach ( $_comments as $_c ) { |
|
255 $_comment_post_ids[] = $_c->comment_post_ID; |
|
256 } |
|
257 $_comment_pending_count_temp = (array) get_pending_comments_num($_comment_post_ids); |
|
258 foreach ( (array) $_comment_post_ids as $_cpid ) |
|
259 $_comment_pending_count[$_cpid] = isset( $_comment_pending_count_temp[$_cpid] ) ? $_comment_pending_count_temp[$_cpid] : 0; |
|
260 if ( empty($_comment_pending_count) ) |
|
261 $_comment_pending_count = array(); |
|
262 |
|
263 $comments = array_slice($_comments, 0, $comments_per_page); |
|
264 $extra_comments = array_slice($_comments, $comments_per_page); |
|
265 |
|
266 $page_links = paginate_links( array( |
|
267 'base' => add_query_arg( 'apage', '%#%' ), |
|
268 'format' => '', |
|
269 'prev_text' => __('«'), |
|
270 'next_text' => __('»'), |
|
271 'total' => ceil($total / $comments_per_page), |
|
272 'current' => $page |
|
273 )); |
|
274 |
|
275 ?> |
|
276 |
|
277 <input type="hidden" name="mode" value="<?php echo esc_attr($mode); ?>" /> |
|
278 <?php if ( $post_id ) : ?> |
|
279 <input type="hidden" name="p" value="<?php echo esc_attr( intval( $post_id ) ); ?>" /> |
|
280 <?php endif; ?> |
|
281 <input type="hidden" name="comment_status" value="<?php echo esc_attr($comment_status); ?>" /> |
|
282 <input type="hidden" name="pagegen_timestamp" value="<?php echo esc_attr(current_time('mysql', 1)); ?>" /> |
|
283 |
|
284 <div class="tablenav"> |
|
285 |
|
286 <?php if ( $page_links ) : ?> |
|
287 <div class="tablenav-pages"><?php $page_links_text = sprintf( '<span class="displaying-num">' . __( 'Displaying %s–%s of %s' ) . '</span>%s', |
|
288 number_format_i18n( $start + 1 ), |
|
289 number_format_i18n( min( $page * $comments_per_page, $total ) ), |
|
290 '<span class="total-type-count">' . number_format_i18n( $total ) . '</span>', |
|
291 $page_links |
|
292 ); echo $page_links_text; ?></div> |
|
293 <input type="hidden" name="_total" value="<?php echo esc_attr($total); ?>" /> |
|
294 <input type="hidden" name="_per_page" value="<?php echo esc_attr($comments_per_page); ?>" /> |
|
295 <input type="hidden" name="_page" value="<?php echo esc_attr($page); ?>" /> |
|
296 <?php endif; ?> |
|
297 |
|
298 <div class="alignleft actions"> |
|
299 <select name="action"> |
|
300 <option value="-1" selected="selected"><?php _e('Bulk Actions') ?></option> |
|
301 <?php if ( 'all' == $comment_status || 'approved' == $comment_status ): ?> |
|
302 <option value="unapprove"><?php _e('Unapprove'); ?></option> |
|
303 <?php endif; ?> |
|
304 <?php if ( 'all' == $comment_status || 'moderated' == $comment_status || 'spam' == $comment_status ): ?> |
|
305 <option value="approve"><?php _e('Approve'); ?></option> |
|
306 <?php endif; ?> |
|
307 <?php if ( 'all' == $comment_status || 'approved' == $comment_status || 'moderated' == $comment_status ): ?> |
|
308 <option value="spam"><?php _e('Mark as Spam'); ?></option> |
|
309 <?php endif; ?> |
|
310 <?php if ( 'trash' == $comment_status ): ?> |
|
311 <option value="untrash"><?php _e('Restore'); ?></option> |
|
312 <?php elseif ( 'spam' == $comment_status ): ?> |
|
313 <option value="unspam"><?php _e('Not Spam'); ?></option> |
|
314 <?php endif; ?> |
|
315 <?php if ( 'trash' == $comment_status || 'spam' == $comment_status || !EMPTY_TRASH_DAYS ): ?> |
|
316 <option value="delete"><?php _e('Delete Permanently'); ?></option> |
|
317 <?php else: ?> |
|
318 <option value="trash"><?php _e('Move to Trash'); ?></option> |
|
319 <?php endif; ?> |
|
320 </select> |
|
321 <input type="submit" name="doaction" id="doaction" value="<?php esc_attr_e('Apply'); ?>" class="button-secondary apply" /> |
|
322 <?php wp_nonce_field('bulk-comments'); ?> |
|
323 |
|
324 <select name="comment_type"> |
|
325 <option value="all"><?php _e('Show all comment types'); ?></option> |
|
326 <?php |
|
327 $comment_types = apply_filters( 'admin_comment_types_dropdown', array( |
|
328 'comment' => __('Comments'), |
|
329 'pings' => __('Pings'), |
|
330 ) ); |
|
331 |
|
332 foreach ( $comment_types as $type => $label ) { |
|
333 echo " <option value='" . esc_attr($type) . "'"; |
|
334 selected( $comment_type, $type ); |
|
335 echo ">$label</option>\n"; |
|
336 } |
|
337 ?> |
|
338 </select> |
|
339 <input type="submit" id="post-query-submit" value="<?php esc_attr_e('Filter'); ?>" class="button-secondary" /> |
|
340 |
|
341 <?php if ( isset($_GET['apage']) ) { ?> |
|
342 <input type="hidden" name="apage" value="<?php echo esc_attr( absint( $_GET['apage'] ) ); ?>" /> |
|
343 <?php } |
|
344 |
|
345 if ( ( 'spam' == $comment_status || 'trash' == $comment_status) && current_user_can ('moderate_comments') ) { |
|
346 wp_nonce_field('bulk-destroy', '_destroy_nonce'); |
|
347 if ( 'spam' == $comment_status && current_user_can('moderate_comments') ) { ?> |
|
348 <input type="submit" name="delete_all" id="delete_all" value="<?php esc_attr_e('Empty Spam'); ?>" class="button-secondary apply" /> |
|
349 <?php } elseif ( 'trash' == $comment_status && current_user_can('moderate_comments') ) { ?> |
|
350 <input type="submit" name="delete_all" id="delete_all" value="<?php esc_attr_e('Empty Trash'); ?>" class="button-secondary apply" /> |
|
351 <?php } |
|
352 } ?> |
|
353 <?php do_action('manage_comments_nav', $comment_status); ?> |
|
354 </div> |
|
355 |
|
356 <br class="clear" /> |
|
357 |
|
358 </div> |
|
359 |
|
360 <div class="clear"></div> |
|
361 |
|
362 <?php if ( $comments ) { ?> |
|
363 <table class="widefat comments fixed" cellspacing="0"> |
|
364 <thead> |
|
365 <tr> |
|
366 <?php print_column_headers('edit-comments'); ?> |
|
367 </tr> |
|
368 </thead> |
|
369 |
|
370 <tfoot> |
|
371 <tr> |
|
372 <?php print_column_headers('edit-comments', false); ?> |
|
373 </tr> |
|
374 </tfoot> |
|
375 |
|
376 <tbody id="the-comment-list" class="list:comment"> |
|
377 <?php |
|
378 foreach ($comments as $comment) |
|
379 _wp_comment_row( $comment->comment_ID, $mode, $comment_status ); |
|
380 ?> |
|
381 </tbody> |
|
382 <tbody id="the-extra-comment-list" class="list:comment" style="display: none;"> |
|
383 <?php |
|
384 foreach ($extra_comments as $comment) |
|
385 _wp_comment_row( $comment->comment_ID, $mode, $comment_status ); |
|
386 ?> |
|
387 </tbody> |
|
388 </table> |
|
389 |
|
390 <div class="tablenav"> |
|
391 <?php |
|
392 if ( $page_links ) |
|
393 echo "<div class='tablenav-pages'>$page_links_text</div>"; |
|
394 ?> |
|
395 |
|
396 <div class="alignleft actions"> |
|
397 <select name="action2"> |
|
398 <option value="-1" selected="selected"><?php _e('Bulk Actions') ?></option> |
|
399 <?php if ( 'all' == $comment_status || 'approved' == $comment_status ): ?> |
|
400 <option value="unapprove"><?php _e('Unapprove'); ?></option> |
|
401 <?php endif; ?> |
|
402 <?php if ( 'all' == $comment_status || 'moderated' == $comment_status || 'spam' == $comment_status ): ?> |
|
403 <option value="approve"><?php _e('Approve'); ?></option> |
|
404 <?php endif; ?> |
|
405 <?php if ( 'all' == $comment_status || 'approved' == $comment_status || 'moderated' == $comment_status ): ?> |
|
406 <option value="spam"><?php _e('Mark as Spam'); ?></option> |
|
407 <?php endif; ?> |
|
408 <?php if ( 'trash' == $comment_status ): ?> |
|
409 <option value="untrash"><?php _e('Restore'); ?></option> |
|
410 <?php endif; ?> |
|
411 <?php if ( 'trash' == $comment_status || 'spam' == $comment_status || !EMPTY_TRASH_DAYS ): ?> |
|
412 <option value="delete"><?php _e('Delete Permanently'); ?></option> |
|
413 <?php elseif ( 'spam' == $comment_status ): ?> |
|
414 <option value="unspam"><?php _e('Not Spam'); ?></option> |
|
415 <?php else: ?> |
|
416 <option value="trash"><?php _e('Move to Trash'); ?></option> |
|
417 <?php endif; ?> |
|
418 </select> |
|
419 <input type="submit" name="doaction2" id="doaction2" value="<?php esc_attr_e('Apply'); ?>" class="button-secondary apply" /> |
|
420 |
|
421 <?php if ( 'spam' == $comment_status && current_user_can('moderate_comments') ) { ?> |
|
422 <input type="submit" name="delete_all2" id="delete_all2" value="<?php esc_attr_e('Empty Spam'); ?>" class="button-secondary apply" /> |
|
423 <?php } elseif ( 'trash' == $comment_status && current_user_can('moderate_comments') ) { ?> |
|
424 <input type="submit" name="delete_all2" id="delete_all2" value="<?php esc_attr_e('Empty Trash'); ?>" class="button-secondary apply" /> |
|
425 <?php } ?> |
|
426 <?php do_action('manage_comments_nav', $comment_status); ?> |
|
427 </div> |
|
428 |
|
429 <br class="clear" /> |
|
430 </div> |
|
431 |
|
432 </form> |
|
433 |
|
434 <form id="get-extra-comments" method="post" action="" class="add:the-extra-comment-list:" style="display: none;"> |
|
435 <input type="hidden" name="s" value="<?php echo esc_attr($search); ?>" /> |
|
436 <input type="hidden" name="mode" value="<?php echo esc_attr($mode); ?>" /> |
|
437 <input type="hidden" name="comment_status" value="<?php echo esc_attr($comment_status); ?>" /> |
|
438 <input type="hidden" name="page" value="<?php echo esc_attr($page); ?>" /> |
|
439 <input type="hidden" name="per_page" value="<?php echo esc_attr($comments_per_page); ?>" /> |
|
440 <input type="hidden" name="p" value="<?php echo esc_attr( $post_id ); ?>" /> |
|
441 <input type="hidden" name="comment_type" value="<?php echo esc_attr( $comment_type ); ?>" /> |
|
442 <?php wp_nonce_field( 'add-comment', '_ajax_nonce', false ); ?> |
|
443 </form> |
|
444 |
|
445 <div id="ajax-response"></div> |
|
446 |
|
447 <?php } elseif ( 'moderated' == $comment_status ) { ?> |
|
448 <p><?php _e('No comments awaiting moderation… yet.') ?></p> |
|
449 </form> |
|
450 |
|
451 <?php } else { ?> |
|
452 <p><?php _e('No results found.') ?></p> |
|
453 </form> |
|
454 |
|
455 <?php } ?> |
|
456 </div> |
|
457 |
|
458 <?php |
|
459 wp_comment_reply('-1', true, 'detail'); |
|
460 wp_comment_trashnotice(); |
|
461 include('admin-footer.php'); ?> |