2003-10-26 21:34:24 +01:00
< ? php
/* <Edit> */
2004-04-20 06:15:18 +02:00
require_once ( '../wp-includes/wp-l10n.php' );
2003-10-26 21:34:24 +01:00
function add_magic_quotes ( $array ) {
foreach ( $array as $k => $v ) {
if ( is_array ( $v )) {
$array [ $k ] = add_magic_quotes ( $v );
} else {
$array [ $k ] = addslashes ( $v );
}
}
return $array ;
}
if ( ! get_magic_quotes_gpc ()) {
2004-04-21 00:56:47 +02:00
$_GET = add_magic_quotes ( $_GET );
$_POST = add_magic_quotes ( $_POST );
$_COOKIE = add_magic_quotes ( $_COOKIE );
2003-10-26 21:34:24 +01:00
}
2004-01-29 07:49:19 +01:00
$wpvarstoreset = array ( 'action' , 'safe_mode' , 'withcomments' , 'posts' , 'poststart' , 'postend' , 'content' , 'edited_post_title' , 'comment_error' , 'profile' , 'trackback_url' , 'excerpt' , 'showcomments' , 'commentstart' , 'commentend' , 'commentorder' );
2003-12-18 10:36:13 +01:00
for ( $i = 0 ; $i < count ( $wpvarstoreset ); $i += 1 ) {
$wpvar = $wpvarstoreset [ $i ];
if ( ! isset ( $$wpvar )) {
2004-04-21 00:56:47 +02:00
if ( empty ( $_POST [ " $wpvar " ])) {
if ( empty ( $_GET [ " $wpvar " ])) {
2003-12-18 10:36:13 +01:00
$$wpvar = '' ;
2003-10-26 21:34:24 +01:00
} else {
2004-04-21 00:56:47 +02:00
$$wpvar = $_GET [ " $wpvar " ];
2003-10-26 21:34:24 +01:00
}
} else {
2004-04-21 00:56:47 +02:00
$$wpvar = $_POST [ " $wpvar " ];
2003-10-26 21:34:24 +01:00
}
}
}
switch ( $action ) {
2004-03-23 19:02:05 +01:00
case 'deletemeta' :
$standalone = 1 ;
require_once ( './admin-header.php' );
$post_ID = intval ( $_GET [ 'post' ]);
$location = " post.php?action=edit&post= $post_ID " ;
del_meta ( $_GET [ 'meta_id' ]);
header ( " Location: $location " );
break ;
2003-10-26 21:34:24 +01:00
case 'post' :
$standalone = 1 ;
2003-12-11 01:22:36 +01:00
require_once ( 'admin-header.php' );
2003-10-26 21:34:24 +01:00
2004-04-21 00:56:47 +02:00
$post_pingback = intval ( $_POST [ 'post_pingback' ]);
$content = balanceTags ( $_POST [ 'content' ]);
2003-10-26 21:34:24 +01:00
$content = format_to_post ( $content );
2004-04-21 00:56:47 +02:00
$excerpt = balanceTags ( $_POST [ 'excerpt' ]);
2003-10-26 21:34:24 +01:00
$excerpt = format_to_post ( $excerpt );
2004-04-21 00:56:47 +02:00
$post_title = addslashes ( $_POST [ 'post_title' ]);
$post_categories = $_POST [ 'post_category' ];
2003-10-26 21:34:24 +01:00
if ( get_settings ( 'use_geo_positions' )) {
2004-04-21 00:56:47 +02:00
$latstr = $_POST [ 'post_latf' ];
$lonstr = $_POST [ 'post_lonf' ];
2003-10-26 21:34:24 +01:00
if (( strlen ( $latstr ) > 2 ) && ( strlen ( $lonstr ) > 2 ) ) {
2004-04-21 00:56:47 +02:00
$post_latf = floatval ( $_POST [ 'post_latf' ]);
$post_lonf = floatval ( $_POST [ 'post_lonf' ]);
2003-10-26 21:34:24 +01:00
}
}
2004-04-21 00:56:47 +02:00
$post_status = $_POST [ 'post_status' ];
2003-12-31 23:21:50 +01:00
if ( empty ( $post_status )) $post_status = get_settings ( 'default_post_status' );
2004-04-21 00:56:47 +02:00
$comment_status = $_POST [ 'comment_status' ];
2003-12-31 23:21:50 +01:00
if ( empty ( $comment_status )) $comment_status = get_settings ( 'default_comment_status' );
2004-04-21 00:56:47 +02:00
$ping_status = $_POST [ 'ping_status' ];
2003-12-31 23:21:50 +01:00
if ( empty ( $ping_status )) $ping_status = get_settings ( 'default_ping_status' );
2004-04-21 00:56:47 +02:00
$post_password = addslashes ( stripslashes ( $_POST [ 'post_password' ]));
2003-10-26 21:34:24 +01:00
$post_name = sanitize_title ( $post_title );
2004-04-21 00:56:47 +02:00
$trackback = $_POST [ 'trackback_url' ];
2003-12-22 03:46:40 +01:00
// Format trackbacks
$trackback = preg_replace ( '|\s+|' , '\n' , $trackback );
2003-10-26 21:34:24 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-10-26 21:34:24 +01:00
2004-04-21 00:56:47 +02:00
if (( $user_level > 4 ) && ( ! empty ( $_POST [ 'edit_date' ]))) {
$aa = $_POST [ 'aa' ];
$mm = $_POST [ 'mm' ];
$jj = $_POST [ 'jj' ];
$hh = $_POST [ 'hh' ];
$mn = $_POST [ 'mn' ];
$ss = $_POST [ 'ss' ];
2003-10-26 21:34:24 +01:00
$jj = ( $jj > 31 ) ? 31 : $jj ;
$hh = ( $hh > 23 ) ? $hh - 24 : $hh ;
$mn = ( $mn > 59 ) ? $mn - 60 : $mn ;
$ss = ( $ss > 59 ) ? $ss - 60 : $ss ;
2004-03-25 02:43:47 +01:00
$now = date ( " $aa - $mm - $jj $hh : $mn : $ss " );
$now_gmt = get_gmt_from_date ( " $aa - $mm - $jj $hh : $mn : $ss " );
2003-10-26 21:34:24 +01:00
} else {
2004-03-25 02:43:47 +01:00
$now = current_time ( 'mysql' );
$now_gmt = current_time ( 'mysql' , 1 );
2003-10-26 21:34:24 +01:00
}
2003-12-28 12:44:05 +01:00
2004-04-21 00:56:47 +02:00
if ( ! empty ( $_POST [ 'mode' ])) {
switch ( $_POST [ 'mode' ]) {
2003-12-28 12:44:05 +01:00
case 'bookmarklet' :
$location = 'bookmarklet.php?a=b' ;
break ;
case 'sidebar' :
$location = 'sidebar.php?a=b' ;
break ;
default :
$location = 'post.php' ;
break ;
}
} else {
$location = 'post.php' ;
}
// What to do based on which button they pressed
2004-04-21 00:56:47 +02:00
if ( '' != $_POST [ 'saveasdraft' ]) $post_status = 'draft' ;
if ( '' != $_POST [ 'saveasprivate' ]) $post_status = 'private' ;
if ( '' != $_POST [ 'publish' ]) $post_status = 'publish' ;
if ( '' != $_POST [ 'advanced' ]) $post_status = 'draft' ;
2003-12-28 12:44:05 +01:00
2003-10-26 21:34:24 +01:00
if (( get_settings ( 'use_geo_positions' )) && ( strlen ( $latstr ) > 2 ) && ( strlen ( $lonstr ) > 2 ) ) {
$postquery = " INSERT INTO $tableposts
2004-03-30 03:12:51 +02:00
( ID , post_author , post_date , post_date_gmt , post_content , post_title , post_lat , post_lon , post_excerpt , post_status , comment_status , ping_status , post_password , post_name , to_ping , post_modified , post_modified_gmt )
2003-10-26 21:34:24 +01:00
VALUES
2004-03-30 03:12:51 +02:00
( '0' , '$user_ID' , '$now' , '$now_gmt' , '$content' , '$post_title' , $post_latf , $post_lonf , '$excerpt' , '$post_status' , '$comment_status' , '$ping_status' , '$post_password' , '$post_name' , '$trackback' , '$now' , '$now_gmt' )
2003-10-26 21:34:24 +01:00
" ;
} else {
$postquery = " INSERT INTO $tableposts
2004-03-30 03:12:51 +02:00
( ID , post_author , post_date , post_date_gmt , post_content , post_title , post_excerpt , post_status , comment_status , ping_status , post_password , post_name , to_ping , post_modified , post_modified_gmt )
2003-10-26 21:34:24 +01:00
VALUES
2004-03-30 03:12:51 +02:00
( '0' , '$user_ID' , '$now' , '$now_gmt' , '$content' , '$post_title' , '$excerpt' , '$post_status' , '$comment_status' , '$ping_status' , '$post_password' , '$post_name' , '$trackback' , '$now' , '$now_gmt' )
2003-10-26 21:34:24 +01:00
" ;
}
$postquery =
$result = $wpdb -> query ( $postquery );
$post_ID = $wpdb -> get_var ( " SELECT ID FROM $tableposts ORDER BY ID DESC LIMIT 1 " );
2004-04-21 00:56:47 +02:00
if ( '' != $_POST [ 'advanced' ])
2003-12-28 12:44:05 +01:00
$location = " post.php?action=edit&post= $post_ID " ;
2003-12-05 10:41:27 +01:00
// Insert categories
2003-12-07 10:26:05 +01:00
// Check to make sure there is a category, if not just set it to some default
2004-01-03 01:37:24 +01:00
if ( ! $post_categories ) $post_categories [] = 1 ;
2003-12-05 10:41:27 +01:00
foreach ( $post_categories as $post_category ) {
// Double check it's not there already
$exists = $wpdb -> get_row ( " SELECT * FROM $tablepost2cat WHERE post_id = $post_ID AND category_id = $post_category " );
if ( ! $exists && $result ) {
$wpdb -> query ( "
INSERT INTO $tablepost2cat
( post_id , category_id )
VALUES
( $post_ID , $post_category )
" );
}
}
2004-03-23 19:02:05 +01:00
add_meta ( $post_ID );
2003-12-05 10:41:27 +01:00
2003-10-26 21:34:24 +01:00
if ( isset ( $sleep_after_edit ) && $sleep_after_edit > 0 ) {
sleep ( $sleep_after_edit );
}
2003-12-22 03:46:40 +01:00
header ( " Location: $location " );
2003-12-07 10:26:05 +01:00
2003-10-26 21:34:24 +01:00
if ( $post_status == 'publish' ) {
if (( get_settings ( 'use_geo_positions' )) && ( $post_latf != null ) && ( $post_lonf != null )) {
pingGeoUrl ( $post_ID );
}
if ( $post_pingback ) {
pingback ( $content , $post_ID );
}
2004-01-06 11:33:07 +01:00
2004-03-21 08:36:07 +01:00
do_action ( 'publish_post' , $post_ID );
2003-10-26 21:34:24 +01:00
2003-12-22 03:46:40 +01:00
// Time for trackbacks
$to_ping = $wpdb -> get_var ( " SELECT to_ping FROM $tableposts WHERE ID = $post_ID " );
$pinged = $wpdb -> get_var ( " SELECT pinged FROM $tableposts WHERE ID = $post_ID " );
$pinged = explode ( " \n " , $pinged );
if ( '' != $to_ping ) {
2003-10-26 21:34:24 +01:00
if ( strlen ( $excerpt ) > 0 ) {
$the_excerpt = ( strlen ( strip_tags ( $excerpt )) > 255 ) ? substr ( strip_tags ( $excerpt ), 0 , 252 ) . '...' : strip_tags ( $excerpt ) ;
} else {
$the_excerpt = ( strlen ( strip_tags ( $content )) > 255 ) ? substr ( strip_tags ( $content ), 0 , 252 ) . '...' : strip_tags ( $content );
}
2003-12-22 03:46:40 +01:00
$excerpt = stripslashes ( $the_excerpt );
$to_pings = explode ( " \n " , $to_ping );
foreach ( $to_pings as $tb_ping ) {
$tb_ping = trim ( $tb_ping );
if ( ! in_array ( $tb_ping , $pinged )) {
trackback ( $tb_ping , stripslashes ( $post_title ), $excerpt , $post_ID );
}
}
}
2003-10-26 21:34:24 +01:00
} // end if publish
exit ();
break ;
case 'edit' :
2004-04-20 06:15:18 +02:00
$title = __ ( 'Edit' );
2003-10-26 21:34:24 +01:00
$standalone = 0 ;
2003-12-11 01:22:36 +01:00
require_once ( 'admin-header.php' );
2003-10-26 21:34:24 +01:00
2004-04-21 00:56:47 +02:00
$post = $_GET [ 'post' ];
2003-10-26 21:34:24 +01:00
if ( $user_level > 0 ) {
$postdata = get_postdata ( $post );
$authordata = get_userdata ( $postdata [ 'Author_ID' ]);
if ( $user_level < $authordata -> user_level )
die ( 'You don’t have the right to edit <strong>' . $authordata [ 1 ] . '</strong>’s posts.' );
$content = $postdata [ 'Content' ];
$content = format_to_edit ( $content );
$edited_lat = $postdata [ " Lat " ];
$edited_lon = $postdata [ " Lon " ];
$excerpt = $postdata [ 'Excerpt' ];
$excerpt = format_to_edit ( $excerpt );
$edited_post_title = format_to_edit ( $postdata [ 'Title' ]);
$post_status = $postdata [ 'post_status' ];
$comment_status = $postdata [ 'comment_status' ];
$ping_status = $postdata [ 'ping_status' ];
$post_password = $postdata [ 'post_password' ];
2003-12-22 03:46:40 +01:00
$to_ping = $postdata [ 'to_ping' ];
$pinged = $postdata [ 'pinged' ];
2004-02-13 12:21:30 +01:00
$post_name = $postdata [ 'post_name' ];
2003-10-26 21:34:24 +01:00
2003-12-28 12:44:05 +01:00
include ( 'edit-form-advanced.php' );
2004-02-09 13:33:13 +01:00
$p = $_GET [ 'post' ];
include ( ABSPATH . 'wp-blog-header.php' );
start_wp ();
?>
< div id = 'preview' class = 'wrap' >
2004-04-20 06:15:18 +02:00
< h2 >< ? php _e ( 'Post Preview (updated when post is saved)' ); ?> </h2>
2004-04-21 06:12:55 +02:00
< h3 class = " storytitle " id = " post-<?php the_ID(); ?> " >< a href = " <?php the_permalink() ?> " rel = " bookmark " title = " <?php printf(__( " Permanent Link : % s " ), the_title()); ?> " >< ? php the_title (); ?> </a></h3>
2004-04-20 06:15:18 +02:00
< div class = " meta " >< ? php printf ( __ ( " Filed under: %s " ), the_category ()); ?> — <?php the_author() ?> @ <?php the_time() ?> <?php edit_post_link(); ?></div>
2004-02-09 13:33:13 +01:00
< div class = " storycontent " >
< ? php the_content (); ?>
</ div >
</ div >
< ? php
2003-10-26 21:34:24 +01:00
} else {
?>
2004-04-20 06:15:18 +02:00
< p >< ? php printf ( __ ( ' Since you & #8217;re a newcomer, you’ll have to wait for an admin to raise your level to 1, in order to be authorized to post.<br />
You can also < a href = " mailto:%s?subject=Promotion? " > e - mail the admin </ a > to ask for a promotion .< br />
When you & #8217;re promoted, just reload this page and you’ll be able to blog. :)'), get_settings('admin_email')); ?>
2003-10-26 21:34:24 +01:00
</ p >
< ? php
}
break ;
case 'editpost' :
$standalone = 1 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-10-26 21:34:24 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-10-26 21:34:24 +01:00
if ( ! isset ( $blog_ID )) {
$blog_ID = 1 ;
}
2004-04-21 00:56:47 +02:00
$post_ID = $_POST [ 'post_ID' ];
$post_categories = $_POST [ 'post_category' ];
2004-01-07 02:38:43 +01:00
if ( ! $post_categories ) $post_categories [] = 1 ;
2004-04-21 00:56:47 +02:00
$post_autobr = intval ( $_POST [ 'post_autobr' ]);
$content = balanceTags ( $_POST [ 'content' ]);
2003-10-26 21:34:24 +01:00
$content = format_to_post ( $content );
2004-04-21 00:56:47 +02:00
$excerpt = balanceTags ( $_POST [ 'excerpt' ]);
2003-10-26 21:34:24 +01:00
$excerpt = format_to_post ( $excerpt );
2004-04-21 00:56:47 +02:00
$post_title = addslashes ( $_POST [ 'post_title' ]);
2003-10-26 21:34:24 +01:00
if ( get_settings ( 'use_geo_positions' )) {
2004-04-21 00:56:47 +02:00
$latf = floatval ( $_POST [ " post_latf " ]);
$lonf = floatval ( $_POST [ " post_lonf " ]);
2003-10-26 21:34:24 +01:00
$latlonaddition = " " ;
if ( ( $latf != null ) && ( $latf <= 90 ) && ( $latf >= - 90 ) && ( $lonf != null ) && ( $lonf <= 360 ) && ( $lonf >= - 360 ) ) {
pingGeoUrl ( $post_ID );
$latlonaddition = " post_lat= " . $latf . " , post_lon = " . $lonf . " , " ;
} else {
$latlonaddition = " post_lat=null, post_lon=null, " ;
}
}
2004-04-21 00:56:47 +02:00
$prev_status = $_POST [ 'prev_status' ];
$post_status = $_POST [ 'post_status' ];
$comment_status = $_POST [ 'comment_status' ];
2004-04-04 17:36:20 +02:00
if ( empty ( $comment_status )) $comment_status = get_settings ( 'default_comment_status' );
2004-04-21 00:56:47 +02:00
$ping_status = $_POST [ 'ping_status' ];
2004-04-04 03:44:34 +02:00
if ( empty ( $ping_status )) $ping_status = get_settings ( 'default_ping_status' );
2004-04-21 00:56:47 +02:00
$post_password = addslashes ( $_POST [ 'post_password' ]);
2004-02-13 12:21:30 +01:00
$post_name = sanitize_title ( $_POST [ 'post_name' ]);
if ( empty ( $post_name )) $post_name = sanitize_title ( $post_title );
2004-04-21 00:56:47 +02:00
$trackback = $_POST [ 'trackback_url' ];
2003-12-22 03:46:40 +01:00
// Format trackbacks
$trackback = preg_replace ( '|\s+|' , '\n' , $trackback );
2003-12-28 12:44:05 +01:00
2004-04-21 00:56:47 +02:00
if ( '' != $_POST [ 'publish' ]) $post_status = 'publish' ;
if (( $user_level > 4 ) && ( ! empty ( $_POST [ 'edit_date' ]))) {
$aa = $_POST [ 'aa' ];
$mm = $_POST [ 'mm' ];
$jj = $_POST [ 'jj' ];
$hh = $_POST [ 'hh' ];
$mn = $_POST [ 'mn' ];
$ss = $_POST [ 'ss' ];
2003-10-26 21:34:24 +01:00
$jj = ( $jj > 31 ) ? 31 : $jj ;
$hh = ( $hh > 23 ) ? $hh - 24 : $hh ;
$mn = ( $mn > 59 ) ? $mn - 60 : $mn ;
$ss = ( $ss > 59 ) ? $ss - 60 : $ss ;
2004-03-25 02:43:47 +01:00
$datemodif = " , post_date = ' $aa - $mm - $jj $hh : $mn : $ss ' " ;
$datemodif_gmt = " , post_date = ' " . get_gmt_from_date ( " $aa - $mm - $jj $hh : $mn : $ss " ) . " ' " ;
2003-10-26 21:34:24 +01:00
} else {
$datemodif = '' ;
2004-03-25 02:43:47 +01:00
$datemodif_gmt = '' ;
2003-10-26 21:34:24 +01:00
}
2004-02-23 04:42:40 +01:00
2004-03-25 02:43:47 +01:00
$now = current_time ( 'mysql' );
$now_gmt = current_time ( 'mysql' , 1 );
2003-10-26 21:34:24 +01:00
$result = $wpdb -> query ( "
UPDATE $tableposts SET
post_content = '$content' ,
post_excerpt = '$excerpt' ,
2003-12-05 10:41:27 +01:00
post_title = '$post_title' "
. $datemodif . " , "
. $latlonaddition . "
2003-10-26 21:34:24 +01:00
post_status = '$post_status' ,
comment_status = '$comment_status' ,
ping_status = '$ping_status' ,
post_password = '$post_password' ,
2003-12-22 03:46:40 +01:00
post_name = '$post_name' ,
2004-02-12 09:34:31 +01:00
to_ping = '$trackback' ,
2004-03-25 04:56:13 +01:00
post_modified = '$now' ,
2004-03-25 02:43:47 +01:00
post_modified_gmt = '$now_gmt'
2003-10-26 21:34:24 +01:00
WHERE ID = $post_ID " );
2003-12-05 10:41:27 +01:00
// Now it's category time!
// First the old categories
$old_categories = $wpdb -> get_col ( " SELECT category_id FROM $tablepost2cat WHERE post_id = $post_ID " );
// Delete any?
foreach ( $old_categories as $old_cat ) {
if ( ! in_array ( $old_cat , $post_categories )) // If a category was there before but isn't now
$wpdb -> query ( " DELETE FROM $tablepost2cat WHERE category_id = $old_cat AND post_id = $post_ID LIMIT 1 " );
}
// Add any?
foreach ( $post_categories as $new_cat ) {
if ( ! in_array ( $new_cat , $old_categories ))
$wpdb -> query ( " INSERT INTO $tablepost2cat (post_id, category_id) VALUES ( $post_ID , $new_cat ) " );
}
2003-10-26 21:34:24 +01:00
if ( isset ( $sleep_after_edit ) && $sleep_after_edit > 0 ) {
sleep ( $sleep_after_edit );
}
// are we going from draft/private to published?
if ((( $prev_status == 'draft' ) || ( $prev_status == 'private' )) && ( $post_status == 'publish' )) {
2003-12-22 03:46:40 +01:00
} // end if moving from draft/private to published
if ( $post_status == 'publish' ) {
2004-03-25 21:18:20 +01:00
do_action ( 'publish_post' , $post_ID );
2003-12-22 03:46:40 +01:00
// Trackback time.
$to_ping = trim ( $wpdb -> get_var ( " SELECT to_ping FROM $tableposts WHERE ID = $post_ID " ));
$pinged = trim ( $wpdb -> get_var ( " SELECT pinged FROM $tableposts WHERE ID = $post_ID " ));
$pinged = explode ( " \n " , $pinged );
if ( '' != $to_ping ) {
if ( strlen ( $excerpt ) > 0 ) {
$the_excerpt = ( strlen ( strip_tags ( $excerpt )) > 255 ) ? substr ( strip_tags ( $excerpt ), 0 , 252 ) . '...' : strip_tags ( $excerpt ) ;
} else {
$the_excerpt = ( strlen ( strip_tags ( $content )) > 255 ) ? substr ( strip_tags ( $content ), 0 , 252 ) . '...' : strip_tags ( $content );
}
$excerpt = stripslashes ( $the_excerpt );
$to_pings = explode ( " \n " , $to_ping );
foreach ( $to_pings as $tb_ping ) {
$tb_ping = trim ( $tb_ping );
if ( ! in_array ( $tb_ping , $pinged )) {
trackback ( $tb_ping , stripslashes ( $post_title ), $excerpt , $post_ID );
}
}
}
2003-10-26 21:34:24 +01:00
} // end if publish
2004-03-23 19:02:05 +01:00
add_meta ( $post_ID );
2004-04-21 00:56:47 +02:00
if ( $_POST [ 'save' ]) {
$location = $_SERVER [ 'HTTP_REFERER' ];
2003-12-22 06:04:18 +01:00
} else {
$location = 'post.php' ;
}
header ( 'Location: ' . $location );
2004-03-25 21:18:20 +01:00
do_action ( 'edit_post' , $post_ID );
2003-10-26 21:34:24 +01:00
break ;
case 'delete' :
$standalone = 1 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-10-26 21:34:24 +01:00
if ( $user_level == 0 )
die ( 'Cheatin’ uh?' );
2004-04-21 00:56:47 +02:00
$post_id = intval ( $_GET [ 'post' ]);
2004-04-20 06:15:18 +02:00
$postdata = get_postdata ( $post_id ) or die ( sprintf ( __ ( 'Oops, no post with this ID. <a href="%s">Go back</a>!' ), 'post.php' ));
2003-10-26 21:34:24 +01:00
$authordata = get_userdata ( $postdata [ 'Author_ID' ]);
if ( $user_level < $authordata -> user_level )
2004-04-20 06:15:18 +02:00
die ( sprintf ( __ ( 'You don’t have the right to delete <strong>%s</strong>’s posts.' ), $authordata [ 1 ]));
2003-10-26 21:34:24 +01:00
// send geoURL ping to "erase" from their DB
2003-12-05 10:41:27 +01:00
$query = " SELECT post_lat from $tableposts WHERE ID= $post_id " ;
2003-10-26 21:34:24 +01:00
$rows = $wpdb -> query ( $query );
$myrow = $rows [ 0 ];
$latf = $myrow -> post_lat ;
if ( $latf != null ) {
pingGeoUrl ( $post );
}
2003-12-05 10:41:27 +01:00
$result = $wpdb -> query ( " DELETE FROM $tableposts WHERE ID= $post_id " );
2003-10-26 21:34:24 +01:00
if ( ! $result )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Error in deleting...' ));
2003-10-26 21:34:24 +01:00
2003-12-05 10:41:27 +01:00
$result = $wpdb -> query ( " DELETE FROM $tablecomments WHERE comment_post_ID= $post_id " );
$categories = $wpdb -> query ( " DELETE FROM $tablepost2cat WHERE post_id = $post_id " );
2003-10-26 21:34:24 +01:00
if ( isset ( $sleep_after_edit ) && $sleep_after_edit > 0 ) {
sleep ( $sleep_after_edit );
}
2004-04-21 00:56:47 +02:00
$sendback = $_SERVER [ 'HTTP_REFERER' ];
2004-02-26 17:15:48 +01:00
if ( strstr ( $sendback , 'post.php' )) $sendback = get_settings ( 'siteurl' ) . '/wp-admin/post.php' ;
2003-11-30 23:13:53 +01:00
header ( 'Location: ' . $sendback );
2004-03-25 21:18:20 +01:00
do_action ( 'delete_post' , $post_ID );
2003-10-26 21:34:24 +01:00
break ;
case 'editcomment' :
2004-04-20 06:15:18 +02:00
$title = __ ( 'Edit Comment' );
2003-10-26 21:34:24 +01:00
$standalone = 0 ;
2004-02-13 16:36:28 +01:00
$parent_file = 'edit.php' ;
2003-12-11 01:22:36 +01:00
require_once ( 'admin-header.php' );
2003-10-26 21:34:24 +01:00
get_currentuserinfo ();
if ( $user_level == 0 ) {
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-10-26 21:34:24 +01:00
}
2004-04-21 00:56:47 +02:00
$comment = $_GET [ 'comment' ];
2004-04-20 06:15:18 +02:00
$commentdata = get_commentdata ( $comment , 1 , true ) or die ( sprintf ( __ ( 'Oops, no comment with this ID. <a href="%s">Go back</a>!' ), 'javascript:history.go(-1)' ));
2003-10-26 21:34:24 +01:00
$content = $commentdata [ 'comment_content' ];
$content = format_to_edit ( $content );
2003-12-28 12:44:05 +01:00
include ( 'edit-form-comment.php' );
2003-10-26 21:34:24 +01:00
break ;
2003-11-12 16:22:47 +01:00
case 'confirmdeletecomment' :
$standalone = 0 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-11-12 16:22:47 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-11-12 16:22:47 +01:00
2004-04-21 00:56:47 +02:00
$comment = $_GET [ 'comment' ];
$p = $_GET [ 'p' ];
2004-04-20 06:15:18 +02:00
$commentdata = get_commentdata ( $comment , 1 , true ) or die ( sprintf ( __ ( 'Oops, no comment with this ID. <a href="%s">Go back</a>!' ), 'edit.php' ));
2003-11-12 16:22:47 +01:00
echo " <div class= \" wrap \" > \n " ;
2004-04-20 06:15:18 +02:00
echo " <p><?php __('<strong>Caution:</strong> You are about to delete the following comment:'); ?></p> \n " ;
2003-11-12 16:22:47 +01:00
echo " <table border= \" 0 \" > \n " ;
2004-04-20 06:15:18 +02:00
echo " <tr><td> " . __ ( 'Author:' ) . " </td><td> " . $commentdata [ " comment_author " ] . " </td></tr> \n " ;
echo " <tr><td> " . __ ( 'E-Mail:' ) . " </td><td> " . $commentdata [ " comment_author_email " ] . " </td></tr> \n " ;
echo " <tr><td> " . __ ( 'URL:' ) . " </td><td> " . $commentdata [ " comment_author_url " ] . " </td></tr> \n " ;
echo " <tr><td> " . __ ( 'Comment:' ) . " </td><td> " . stripslashes ( $commentdata [ " comment_content " ]) . " </td></tr> \n " ;
2003-11-12 16:22:47 +01:00
echo " </table> \n " ;
2004-04-20 06:15:18 +02:00
echo " <p> " . __ ( 'Are you sure you want to do that?' ) . " </p> \n " ;
2003-11-12 16:22:47 +01:00
2004-02-26 17:15:48 +01:00
echo " <form action=' " . get_settings ( 'siteurl' ) . " /wp-admin/post.php' method='get'> \n " ;
2003-11-12 16:22:47 +01:00
echo " <input type= \" hidden \" name= \" action \" value= \" deletecomment \" /> \n " ;
echo " <input type= \" hidden \" name= \" p \" value= \" $p\ " /> \n " ;
echo " <input type= \" hidden \" name= \" comment \" value= \" $comment\ " /> \n " ;
echo " <input type= \" hidden \" name= \" noredir \" value= \" 1 \" /> \n " ;
2004-04-20 06:15:18 +02:00
echo " <input type= \" submit \" value= \" " . __ ( 'Yes' ) . " \" /> " ;
2003-11-12 16:22:47 +01:00
echo " " ;
2004-04-20 06:15:18 +02:00
echo " <input type= \" button \" value= \" " . __ ( 'No' ) . " \" onClick= \" self.location=' " . get_settings ( 'siteurl' ) . " /wp-admin/edit.php?p= $p &c=1#comments'; \" /> \n " ;
2003-11-12 16:22:47 +01:00
echo " </form> \n " ;
echo " </div> \n " ;
break ;
2003-11-06 01:34:41 +01:00
2003-11-12 16:22:47 +01:00
case 'deletecomment' :
2003-10-26 21:34:24 +01:00
2003-11-12 16:22:47 +01:00
$standalone = 1 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-11-12 16:22:47 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-11-12 16:22:47 +01:00
2004-04-21 00:56:47 +02:00
$comment = $_GET [ 'comment' ];
$p = $_GET [ 'p' ];
if ( isset ( $_GET [ 'noredir' ])) {
2003-11-12 16:22:47 +01:00
$noredir = true ;
} else {
$noredir = false ;
}
2004-04-20 06:15:18 +02:00
$postdata = get_postdata ( $p ) or die ( sprintf ( __ ( 'Oops, no post with this ID. <a href="%s">Go back</a>!' ), 'edit.php' ));
$commentdata = get_commentdata ( $comment , 1 , true ) or die ( sprintf ( __ ( 'Oops, no comment with this ID. <a href="%s">Go back</a>!' ), 'post.php' ));
2003-11-12 16:22:47 +01:00
$authordata = get_userdata ( $postdata [ 'Author_ID' ]);
if ( $user_level < $authordata -> user_level )
2004-04-24 02:16:27 +02:00
die ( sprintf ( __ ( 'You don’t have the right to delete <strong>%1$s</strong>’s post comments. <a href="%2$s">Go back</a>!' ), $authordata -> user_nickname , 'post.php' ));
2003-11-12 16:22:47 +01:00
wp_set_comment_status ( $comment , " delete " );
2004-03-25 21:28:09 +01:00
do_action ( 'delete_comment' , $comment );
2003-11-12 16:22:47 +01:00
2004-04-21 00:56:47 +02:00
if (( $_SERVER [ 'HTTP_REFERER' ] != " " ) && ( false == $noredir )) {
header ( 'Location: ' . $_SERVER [ 'HTTP_REFERER' ]);
2003-11-12 16:22:47 +01:00
} else {
2004-02-26 17:15:48 +01:00
header ( 'Location: ' . get_settings ( 'siteurl' ) . '/wp-admin/edit.php?p=' . $p . '&c=1#comments' );
2003-11-12 16:22:47 +01:00
}
break ;
case 'unapprovecomment' :
$standalone = 1 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-11-12 16:22:47 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-11-12 16:22:47 +01:00
2004-04-21 00:56:47 +02:00
$comment = $_GET [ 'comment' ];
$p = $_GET [ 'p' ];
if ( isset ( $_GET [ 'noredir' ])) {
2003-11-12 16:22:47 +01:00
$noredir = true ;
} else {
$noredir = false ;
}
2004-04-20 06:15:18 +02:00
$commentdata = get_commentdata ( $comment ) or die ( sprintf ( __ ( 'Oops, no comment with this ID. <a href="%s">Go back</a>!' ), 'edit.php' ));
2003-11-12 16:22:47 +01:00
wp_set_comment_status ( $comment , " hold " );
2004-04-21 00:56:47 +02:00
if (( $_SERVER [ 'HTTP_REFERER' ] != " " ) && ( false == $noredir )) {
header ( 'Location: ' . $_SERVER [ 'HTTP_REFERER' ]);
2003-11-12 16:22:47 +01:00
} else {
2004-02-26 17:15:48 +01:00
header ( 'Location: ' . get_settings ( 'siteurl' ) . '/wp-admin/edit.php?p=' . $p . '&c=1#comments' );
2003-11-12 16:22:47 +01:00
}
break ;
case 'mailapprovecomment' :
$standalone = 0 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-11-12 16:22:47 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-11-12 16:22:47 +01:00
2004-04-21 00:56:47 +02:00
$comment = $_GET [ 'comment' ];
$p = $_GET [ 'p' ];
2004-04-20 06:15:18 +02:00
$commentdata = get_commentdata ( $comment , 1 , true ) or die ( sprintf ( __ ( 'Oops, no comment with this ID. <a href="%s">Go back</a>!' ), 'edit.php' ));
2003-11-12 16:22:47 +01:00
wp_set_comment_status ( $comment , " approve " );
if ( get_settings ( " comments_notify " ) == true ) {
wp_notify_postauthor ( $comment );
}
echo " <div class= \" wrap \" > \n " ;
2004-04-20 06:15:18 +02:00
echo " <p> " . __ ( 'Comment has been approved.' ) . " </p> \n " ;
2003-11-12 16:22:47 +01:00
2004-02-26 17:15:48 +01:00
echo " <form action= \" " . get_settings ( 'siteurl' ) . " /wp-admin/edit.php?p= $p &c=1#comments \" method= \" get \" > \n " ;
2003-11-12 16:22:47 +01:00
echo " <input type= \" hidden \" name= \" p \" value= \" $p\ " /> \n " ;
echo " <input type= \" hidden \" name= \" c \" value= \" 1 \" /> \n " ;
2004-04-20 06:15:18 +02:00
echo " <input type= \" submit \" value= \" " . __ ( 'Ok' ) . " \" /> " ;
2003-11-12 16:22:47 +01:00
echo " </form> \n " ;
echo " </div> \n " ;
break ;
case 'approvecomment' :
$standalone = 1 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-11-12 16:22:47 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-11-12 16:22:47 +01:00
2004-04-21 00:56:47 +02:00
$comment = $_GET [ 'comment' ];
$p = $_GET [ 'p' ];
if ( isset ( $_GET [ 'noredir' ])) {
2003-11-12 16:22:47 +01:00
$noredir = true ;
} else {
$noredir = false ;
}
2004-04-20 06:15:18 +02:00
$commentdata = get_commentdata ( $comment ) or die ( sprintf ( __ ( 'Oops, no comment with this ID. <a href="%s">Go back</a>!' ), 'edit.php' ));
2003-11-12 16:22:47 +01:00
wp_set_comment_status ( $comment , " approve " );
if ( get_settings ( " comments_notify " ) == true ) {
wp_notify_postauthor ( $comment );
}
2004-04-21 00:56:47 +02:00
if (( $_SERVER [ 'HTTP_REFERER' ] != " " ) && ( false == $noredir )) {
header ( 'Location: ' . $_SERVER [ 'HTTP_REFERER' ]);
2003-11-12 16:22:47 +01:00
} else {
2004-02-26 17:15:48 +01:00
header ( 'Location: ' . get_settings ( 'siteurl' ) . '/wp-admin/edit.php?p=' . $p . '&c=1#comments' );
2003-11-12 16:22:47 +01:00
}
break ;
2003-10-26 21:34:24 +01:00
case 'editedcomment' :
$standalone = 1 ;
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-10-26 21:34:24 +01:00
if ( $user_level == 0 )
2004-04-20 06:15:18 +02:00
die ( __ ( 'Cheatin’ uh?' ));
2003-10-26 21:34:24 +01:00
2004-04-21 00:56:47 +02:00
$comment_ID = $_POST [ 'comment_ID' ];
$comment_post_ID = $_POST [ 'comment_post_ID' ];
$newcomment_author = $_POST [ 'newcomment_author' ];
$newcomment_author_email = $_POST [ 'newcomment_author_email' ];
$newcomment_author_url = $_POST [ 'newcomment_author_url' ];
2003-10-26 21:34:24 +01:00
$newcomment_author = addslashes ( $newcomment_author );
$newcomment_author_email = addslashes ( $newcomment_author_email );
$newcomment_author_url = addslashes ( $newcomment_author_url );
2004-04-21 00:56:47 +02:00
if (( $user_level > 4 ) && ( ! empty ( $_POST [ 'edit_date' ]))) {
$aa = $_POST [ 'aa' ];
$mm = $_POST [ 'mm' ];
$jj = $_POST [ 'jj' ];
$hh = $_POST [ 'hh' ];
$mn = $_POST [ 'mn' ];
$ss = $_POST [ 'ss' ];
2003-10-26 21:34:24 +01:00
$jj = ( $jj > 31 ) ? 31 : $jj ;
$hh = ( $hh > 23 ) ? $hh - 24 : $hh ;
$mn = ( $mn > 59 ) ? $mn - 60 : $mn ;
$ss = ( $ss > 59 ) ? $ss - 60 : $ss ;
2003-10-30 02:54:05 +01:00
$datemodif = " , comment_date = ' $aa - $mm - $jj $hh : $mn : $ss ' " ;
2003-10-26 21:34:24 +01:00
} else {
$datemodif = '' ;
}
$content = balanceTags ( $content );
$content = format_to_post ( $content );
$result = $wpdb -> query ( "
UPDATE $tablecomments SET
comment_content = '$content' ,
comment_author = '$newcomment_author' ,
comment_author_email = '$newcomment_author_email' ,
comment_author_url = '$newcomment_author_url' " . $datemodif . "
WHERE comment_ID = $comment_ID "
);
2003-10-30 02:54:05 +01:00
2004-04-21 00:56:47 +02:00
$referredby = $_POST [ 'referredby' ];
2003-10-26 21:34:24 +01:00
if ( ! empty ( $referredby )) header ( 'Location: ' . $referredby );
else header ( " Location: edit.php?p= $comment_post_ID &c=1#comments " );
2004-03-25 21:28:09 +01:00
do_action ( 'edit_comment' , $comment_ID );
2003-10-26 21:34:24 +01:00
break ;
default :
$standalone = 0 ;
2004-04-20 06:15:18 +02:00
$title = __ ( 'Create New Post' );
2003-12-11 01:22:36 +01:00
require_once ( './admin-header.php' );
2003-10-26 21:34:24 +01:00
if ( $user_level > 0 ) {
2004-01-29 07:49:19 +01:00
if (( ! $withcomments ) && ( ! $single )) {
2003-10-26 21:34:24 +01:00
$action = 'post' ;
get_currentuserinfo ();
$drafts = $wpdb -> get_results ( " SELECT ID, post_title FROM $tableposts WHERE post_status = 'draft' AND post_author = $user_ID " );
if ( $drafts ) {
?>
< div class = " wrap " >
2004-04-20 06:15:18 +02:00
< p >< strong >< ? php _e ( 'Your Drafts:' ) ?> </strong>
2003-10-26 21:34:24 +01:00
< ? php
$i = 0 ;
foreach ( $drafts as $draft ) {
2003-10-30 02:54:05 +01:00
if ( 0 != $i )
echo ', ' ;
$draft -> post_title = stripslashes ( $draft -> post_title );
if ( $draft -> post_title == '' )
2004-04-20 06:15:18 +02:00
$draft -> post_title = sprintf ( __ ( 'Post # %s' ), $draft -> ID );
echo " <a href='post.php?action=edit&post= $draft->ID ' title=' " . __ ( 'Edit this draft' ) . " '> $draft->post_title </a> " ;
2003-10-26 21:34:24 +01:00
++ $i ;
}
?> .</p>
</ div >
< ? php
}
//set defaults
$post_status = get_settings ( 'default_post_status' );
$comment_status = get_settings ( 'default_comment_status' );
$ping_status = get_settings ( 'default_ping_status' );
$post_pingback = get_settings ( 'default_pingback_flag' );
$default_post_cat = get_settings ( 'default_post_category' );
2004-02-27 06:48:00 +01:00
if ( get_settings ( 'advanced_edit' )) {
include ( 'edit-form-advanced.php' );
} else {
include ( 'edit-form.php' );
}
2003-10-26 21:34:24 +01:00
}
2003-12-18 18:10:20 +01:00
?>
< div class = " wrap " >
2004-04-20 06:15:18 +02:00
< ? php _e ( ' < h3 > WordPress bookmarklet </ h3 >
< p > You can drag the following link to your links bar or add it to your bookmarks and when you " Press it " it will open up a popup window with information and a link to the site you & #8217re currently browsing so you can make a quick post about it. Try it out:</p>') ?>
2003-12-18 18:10:20 +01:00
< p >
2004-01-03 01:13:11 +01:00
< ? php
2004-03-01 07:13:32 +01:00
$bookmarklet_height = ( get_settings ( 'use_trackback' )) ? 460 : 420 ;
2004-01-03 01:13:11 +01:00
2003-12-18 18:10:20 +01:00
if ( $is_NS4 || $is_gecko ) {
?>
2004-04-20 06:15:18 +02:00
< a href = " javascript:if(navigator.userAgent.indexOf('Safari') >= 0) { Q=getSelection();}else { Q=document.selection?document.selection.createRange().text:document.getSelection();}void(window.open('<?php echo get_settings('siteurl') ?>/wp-admin/bookmarklet.php?text='+escape(Q)+'&popupurl='+escape(location.href)+'&popuptitle='+escape(document.title),'<?php _e('WordPress bookmarklet') ?>','scrollbars=yes,width=600,height=460,left=100,top=150,status=yes')); " >< ? php printf ( __ ( 'Press It - %s' ), get_settings ( 'blogname' )); ?> </a>
2003-12-18 18:10:20 +01:00
< ? php
} else if ( $is_winIE ) {
?>
2004-04-20 06:15:18 +02:00
< a href = " javascript:Q='';if(top.frames.length==0)Q=document.selection.createRange().text;void(btw=window.open('<?php echo get_settings('siteurl') ?>/wp-admin/bookmarklet.php?text='+escape(Q)+'<?php echo $bookmarklet_tbpb ?>&popupurl='+escape(location.href)+'&popuptitle='+escape(document.title),'bookmarklet','scrollbars=yes,width=600,height=<?php echo $bookmarklet_height ?>,left=100,top=150,status=yes'));btw.focus(); " >< ? php printf ( __ ( 'Press it - %s' ), get_settings ( 'blogname' )); ?> </a>
2003-12-18 18:10:20 +01:00
< script type = " text/javascript " language = " JavaScript " >
<!--
function oneclickbookmarklet ( blah ) {
window . open ( " profile.php?action=IErightclick " , " oneclickbookmarklet " , " width=500, height=450, location=0, menubar=0, resizable=0, scrollbars=1, status=1, titlebar=0, toolbar=0, screenX=120, left=120, screenY=120, top=120 " );
}
// -->
</ script >
< br />
< br />
One - click bookmarklet :< br />
< a href = " javascript:oneclickbookmarklet(0); " > click here </ a >
< ? php
} else if ( $is_opera ) {
?>
2004-04-20 06:15:18 +02:00
< a href = " javascript:void(window.open('<?php echo get_settings('siteurl'); ?>/wp-admin/bookmarklet.php?popupurl='+escape(location.href)+'&popuptitle='+escape(document.title)+'<?php echo $bookmarklet_tbpb ?>','bookmarklet','scrollbars=yes,width=600,height=<?php echo $bookmarklet_height ?>,left=100,top=150,status=yes')); " >< ? php printf ( __ ( 'Press it - %s' ), get_settings ( 'blogname' )); ?> </a>
2003-12-18 18:10:20 +01:00
< ? php
} else if ( $is_macIE ) {
?>
2004-04-20 06:15:18 +02:00
< a href = " javascript:Q='';if(top.frames.length==0);void(btw=window.open('<?php echo get_settings('siteurl'); ?>/wp-admin/bookmarklet.php?text='+escape(document.getSelection())+'&popupurl='+escape(location.href)+'&popuptitle='+escape(document.title)+'<?php echo $bookmarklet_tbpb ?>','bookmarklet','scrollbars=yes,width=600,height=<?php echo $bookmarklet_height ?>,left=100,top=150,status=yes'));btw.focus(); " >< ? php prtinf ( __ ( 'Press it - %s' ), get_settings ( 'blogname' )); ?> </a>
2003-12-18 18:10:20 +01:00
< ? php
}
?>
</ p >
</ div >
< ? php
2003-10-26 21:34:24 +01:00
} else {
?>
< div class = " wrap " >
2004-04-20 06:15:18 +02:00
< ? php printf ( __ ( ' < p > Since you & #8217;re a newcomer, you’ll have to wait for an admin to raise your level to 1, in order to be authorized to post blog items.<br />
You can also < a href = " mailto:%s?subject=Blog posting permission " > e - mail the admin </ a > to ask for a promotion .< br />
When you & #8217;re promoted, just reload this page and you’ll be able to blog. :)</p>'), get_settings('admin_email')); ?>
2003-10-26 21:34:24 +01:00
</ div >
< ? php
}
2003-10-30 02:54:05 +01:00
2003-10-26 21:34:24 +01:00
break ;
} // end switch
/* </Edit> */
2003-12-11 01:22:36 +01:00
include ( 'admin-footer.php' );
2003-11-12 16:22:47 +01:00
?>