[ Index ]

WordPress Source Cross Reference

title

Body

[close]

/wp-admin/ -> page.php (source)

   1  <?php
   2  require_once ('admin.php');
   3  
   4  $parent_file = 'edit.php';
   5  $submenu_file = 'edit-pages.php';
   6  
   7  wp_reset_vars(array('action'));
   8  
   9  if (isset($_POST['deletepost'])) {
  10  $action = "delete";
  11  }
  12  
  13  switch($action) {
  14  case 'post':
  15      check_admin_referer('add-page');
  16      $page_ID = write_post();
  17  
  18      // Redirect.
  19      if (!empty($_POST['mode'])) {
  20      switch($_POST['mode']) {
  21          case 'bookmarklet':
  22              $location = $_POST['referredby'];
  23              break;
  24          case 'sidebar':
  25              $location = 'sidebar.php?a=b';
  26              break;
  27          default:
  28              $location = 'page-new.php';
  29              break;
  30          }
  31      } else {
  32          $location = 'page-new.php?posted=true';
  33      }
  34  
  35      if ( isset($_POST['save']) )
  36          $location = "page.php?action=edit&post=$page_ID";
  37  
  38      wp_redirect($location);
  39      exit();
  40      break;
  41  
  42  case 'edit':
  43      $title = __('Edit');
  44      $editing = true;
  45      require_once ('admin-header.php');
  46  
  47      $page_ID = $post_ID = $p = (int) $_GET['post'];
  48  
  49      if ( !current_user_can('edit_page', $page_ID) )
  50          die ( __('You are not allowed to edit this page.') );
  51  
  52      $post = get_post_to_edit($page_ID);
  53  
  54      include ('edit-page-form.php');
  55      ?>
  56      <div id='preview' class='wrap'>
  57      <h2 id="preview-post"><?php _e('Page Preview (updated when page is saved)'); ?> <small class="quickjump"><a href="#write-post"><?php _e('edit &uarr;'); ?></a></small></h2>
  58          <iframe src="<?php echo add_query_arg('preview', 'true', get_permalink($post->ID)); ?>" width="100%" height="600" ></iframe>
  59      </div>
  60      <?php
  61      break;
  62  
  63  case 'editattachment':
  64      $page_id = $post_ID = (int) $_POST['post_ID'];
  65      check_admin_referer('update-attachment_' . $page_id);
  66  
  67      // Don't let these be changed
  68      unset($_POST['guid']);
  69      $_POST['post_type'] = 'attachment';
  70  
  71      // Update the thumbnail filename
  72      $oldmeta = $newmeta = get_post_meta($page_id, '_wp_attachment_metadata', true);
  73      $newmeta['thumb'] = $_POST['thumb'];
  74  
  75      if ( '' !== $oldmeta )
  76          update_post_meta($page_id, '_wp_attachment_metadata', $newmeta, $oldmeta);
  77      else
  78          add_post_meta($page_id, '_wp_attachment_metadata', $newmeta);
  79  
  80  case 'editpost':
  81      $page_ID = (int) $_POST['post_ID'];
  82      check_admin_referer('update-page_' . $page_ID);
  83  
  84      $page_ID = edit_post();
  85  
  86      if ($_POST['save']) {
  87          $location = wp_get_referer();
  88      } elseif ($_POST['updatemeta']) {
  89          $location = wp_get_referer() . '&message=2#postcustom';
  90      } elseif ($_POST['deletemeta']) {
  91          $location = wp_get_referer() . '&message=3#postcustom';
  92      } elseif (!empty($_POST['referredby']) && $_POST['referredby'] != wp_get_referer()) {
  93          $location = $_POST['referredby'];
  94          if ( $_POST['referredby'] == 'redo' )
  95              $location = get_permalink( $page_ID );
  96      } elseif ($action == 'editattachment') {
  97          $location = 'attachments.php';
  98      } else {
  99          $location = 'page-new.php';
 100      }
 101      wp_redirect($location); // Send user on their way while we keep working
 102  
 103      exit();
 104      break;
 105  
 106  case 'delete':
 107      $page_id = (isset($_GET['post']))  ? intval($_GET['post']) : intval($_POST['post_ID']);
 108      check_admin_referer('delete-page_' .  $page_id);
 109  
 110      $page = & get_post($page_id);
 111  
 112      if ( !current_user_can('delete_page', $page_id) )
 113          wp_die( __('You are not allowed to delete this page.') );
 114  
 115      if ( $page->post_type == 'attachment' ) {
 116          if ( ! wp_delete_attachment($page_id) )
 117              wp_die( __('Error in deleting...') );
 118      } else {
 119          if ( !wp_delete_post($page_id) ) 
 120              wp_die( __('Error in deleting...') );
 121      }
 122  
 123      $sendback = wp_get_referer();
 124      if (strstr($sendback, 'page.php')) $sendback = get_settings('siteurl') .'/wp-admin/page.php';
 125      elseif (strstr($sendback, 'attachments.php')) $sendback = get_settings('siteurl') .'/wp-admin/attachments.php';
 126      $sendback = preg_replace('|[^a-z0-9-~+_.?#=&;,/:]|i', '', $sendback);
 127      wp_redirect($sendback);
 128      exit();
 129      break;
 130  
 131  default:
 132      wp_redirect('edit-pages.php');
 133      exit();
 134      break;
 135  } // end switch
 136  include ('admin-footer.php');
 137  ?>

Your comment here...

Name: Location:
Comments:


List: Classes | Functions | Variables | Constants | Tables

Generated: Sat Jul 15 11:57:04 2006 Courtesy of Taragana