Changeset 7438
- Timestamp:
- 03/21/2008 03:31:12 AM (17 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/edit-form-advanced.php
r7409 r7438 2 2 $action = isset($action)? $action : ''; 3 3 if ( isset($_GET['message']) ) 4 $_GET['message'] = (int) $_GET['message'];5 $messages[1] = __('Post updated');6 $messages[2] = __('Custom field updated ');4 $_GET['message'] = absint( $_GET['message'] ); 5 $messages[1] = sprintf( __( 'Post updated. Continue editing below or <a href="%s">go back</a>.' ), attribute_escape( stripslashes( $_GET['_wp_original_http_referer'] ) ) ); 6 $messages[2] = __('Custom field updated.'); 7 7 $messages[3] = __('Custom field deleted.'); 8 8 ?> 9 9 <?php if (isset($_GET['message'])) : ?> 10 <div id="message" class="updated fade"><p><?php echo wp_specialchars($messages[$_GET['message']]); ?></p></div>10 <div id="message" class="updated fade"><p><?php echo $messages[$_GET['message']]; ?></p></div> 11 11 <?php endif; ?> 12 12 … … 60 60 if ( !empty($_REQUEST['popupurl']) ) 61 61 echo clean_url(stripslashes($_REQUEST['popupurl'])); 62 else if ( url_to_postid(wp_get_referer()) == $post_ID )62 else if ( url_to_postid(wp_get_referer()) == $post_ID && strpos( wp_get_referer(), '/wp-admin/' ) === false ) 63 63 echo 'redo'; 64 64 else 65 65 echo clean_url(stripslashes(wp_get_referer())); 66 66 ?>" /> 67 <?php wp_original_referer_field(true, 'previous'); ?> 67 68 68 69 <?php echo $form_extra ?> -
trunk/wp-admin/edit-page-form.php
r7350 r7438 1 1 <?php 2 if ( isset($_GET['message']) ) 3 $_GET['message'] = absint( $_GET['message'] ); 4 $messages[1] = sprintf( __( 'Page updated. Continue editing below or <a href="%s">go back</a>.' ), attribute_escape( stripslashes( $_GET['_wp_original_http_referer'] ) ) ); 5 ?> 6 <?php if (isset($_GET['message'])) : ?> 7 <div id="message" class="updated fade"><p><?php echo $messages[$_GET['message']]; ?></p></div> 8 <?php endif; 2 9 3 10 if (!isset($post_ID) || 0 == $post_ID) { … … 39 46 <input type="hidden" id="original_post_status" name="original_post_status" value="<?php echo $post->post_status ?>" /> 40 47 <input name="referredby" type="hidden" id="referredby" value="<?php 41 if ( url_to_postid(wp_get_referer()) == $post_ID )48 if ( url_to_postid(wp_get_referer()) == $post_ID && strpos( wp_get_referer(), '/wp-admin/' ) === false ) 42 49 echo 'redo'; 43 50 else 44 51 echo clean_url(stripslashes(wp_get_referer())); 45 52 ?>" /> 53 <?php wp_original_referer_field(true, 'previous'); ?> 46 54 47 55 <div id="poststuff"> -
trunk/wp-admin/page.php
r7426 r7438 124 124 125 125 if ( isset($_POST['save']) && ( empty($referredby) || $referredby == $referer || 'redo' != $referredby ) ) { 126 $location = "page.php?action=edit&post=$page_ID"; 126 if ( $_POST['_wp_original_http_referer'] && strpos( $_POST['_wp_original_http_referer'], '/wp-admin/post.php') === false ) 127 $location = add_query_arg( '_wp_original_http_referer', urlencode( stripslashes( $_POST['_wp_original_http_referer'] ) ), "page.php?action=edit&post=$page_ID&message=1" ); 128 else 129 $location = "page.php?action=edit&post=$page_ID"; 127 130 } elseif ($_POST['addmeta']) { 128 131 $location = add_query_arg( 'message', 2, wp_get_referer() ); -
trunk/wp-admin/post.php
r7426 r7438 137 137 138 138 if ( isset($_POST['save']) && ( empty($referredby) || $referredby == $referer || 'redo' != $referredby ) ) { 139 $location = "post.php?action=edit&post=$post_ID"; 139 if ( $_POST['_wp_original_http_referer'] && strpos( $_POST['_wp_original_http_referer'], '/wp-admin/post.php') === false ) 140 $location = add_query_arg( '_wp_original_http_referer', urlencode( stripslashes( $_POST['_wp_original_http_referer'] ) ), "post.php?action=edit&post=$post_ID&message=1" ); 141 else 142 $location = "post.php?action=edit&post=$post_ID"; 140 143 } elseif (isset($_POST['addmeta']) && $_POST['addmeta']) { 141 144 $location = add_query_arg( 'message', 2, wp_get_referer() ); -
trunk/wp-includes/functions.php
r7406 r7438 982 982 983 983 if ( $referer ) 984 wp_referer_field( $echo );984 wp_referer_field( $echo, 'previous' ); 985 985 986 986 return $nonce_field; … … 988 988 989 989 990 function wp_referer_field( $echo = true 990 function wp_referer_field( $echo = true) { 991 991 $ref = attribute_escape( $_SERVER['REQUEST_URI'] ); 992 992 $referer_field = '<input type="hidden" name="_wp_http_referer" value="'. $ref . '" />'; 993 994 if ( wp_get_original_referer() ) {995 $original_ref = attribute_escape( stripslashes( wp_get_original_referer() ) );996 $referer_field .= "\n".'<input type="hidden" name="_wp_original_http_referer" value="'. $original_ref . '" />';997 }998 993 999 994 if ( $echo ) 1000 995 echo $referer_field; 1001 1002 996 return $referer_field; 1003 997 } 1004 998 1005 1006 function wp_original_referer_field( $echo = true ) { 1007 $orig_referer_field = '<input type="hidden" name="_wp_original_http_referer" value="' . attribute_escape( stripslashes( $_SERVER['REQUEST_URI'] ) ) . '" />'; 999 function wp_original_referer_field( $echo = true, $jump_back_to = 'current' ) { 1000 $jump_back_to = ( 'previous' == $jump_back_to ) ? wp_get_referer() : $_SERVER['REQUEST_URI']; 1001 $ref = ( wp_get_original_referer() ) ? wp_get_original_referer() : $jump_back_to; 1002 $orig_referer_field = '<input type="hidden" name="_wp_original_http_referer" value="' . attribute_escape( stripslashes( $ref ) ) . '" />'; 1008 1003 if ( $echo ) 1009 1004 echo $orig_referer_field; 1010 1011 1005 return $orig_referer_field; 1012 1006 } … … 1015 1009 function wp_get_referer() { 1016 1010 if ( ! empty( $_REQUEST['_wp_http_referer'] ) ) 1017 return$_REQUEST['_wp_http_referer'];1011 $ref = $_REQUEST['_wp_http_referer']; 1018 1012 else if ( ! empty( $_SERVER['HTTP_REFERER'] ) ) 1019 return $_SERVER['HTTP_REFERER']; 1013 $ref = $_SERVER['HTTP_REFERER']; 1014 1015 if ( $ref !== $_SERVER['REQUEST_URI'] ) 1016 return $ref; 1020 1017 return false; 1021 1018 }
Note: See TracChangeset
for help on using the changeset viewer.