web/wp-admin/link.php
changeset 136 bde1974c263b
child 194 32102edaa81b
equal deleted inserted replaced
135:53cff4b4a802 136:bde1974c263b
       
     1 <?php
       
     2 /**
       
     3  * Manage link administration actions.
       
     4  *
       
     5  * This page is accessed by the link management pages and handles the forms and
       
     6  * AJAX processes for link actions.
       
     7  *
       
     8  * @package WordPress
       
     9  * @subpackage Administration
       
    10  */
       
    11 
       
    12 /** Load WordPress Administration Bootstrap */
       
    13 require_once ('admin.php');
       
    14 
       
    15 wp_reset_vars(array('action', 'cat_id', 'linkurl', 'name', 'image', 'description', 'visible', 'target', 'category', 'link_id', 'submit', 'order_by', 'links_show_cat_id', 'rating', 'rel', 'notes', 'linkcheck[]'));
       
    16 
       
    17 if ( ! current_user_can('manage_links') )
       
    18 	wp_die( __('You do not have sufficient permissions to edit the links for this blog.') );
       
    19 
       
    20 if ( !empty($_POST['deletebookmarks']) )
       
    21 	$action = 'deletebookmarks';
       
    22 if ( !empty($_POST['move']) )
       
    23 	$action = 'move';
       
    24 if ( !empty($_POST['linkcheck']) )
       
    25 	$linkcheck = $_POST['linkcheck'];
       
    26 
       
    27 $this_file = 'link-manager.php';
       
    28 
       
    29 switch ($action) {
       
    30 	case 'deletebookmarks' :
       
    31 		check_admin_referer('bulk-bookmarks');
       
    32 
       
    33 		//for each link id (in $linkcheck[]) change category to selected value
       
    34 		if (count($linkcheck) == 0) {
       
    35 			wp_redirect($this_file);
       
    36 			exit;
       
    37 		}
       
    38 
       
    39 		$deleted = 0;
       
    40 		foreach ($linkcheck as $link_id) {
       
    41 			$link_id = (int) $link_id;
       
    42 
       
    43 			if ( wp_delete_link($link_id) )
       
    44 				$deleted++;
       
    45 		}
       
    46 
       
    47 		wp_redirect("$this_file?deleted=$deleted");
       
    48 		exit;
       
    49 		break;
       
    50 
       
    51 	case 'move' :
       
    52 		check_admin_referer('bulk-bookmarks');
       
    53 
       
    54 		//for each link id (in $linkcheck[]) change category to selected value
       
    55 		if (count($linkcheck) == 0) {
       
    56 			wp_redirect($this_file);
       
    57 			exit;
       
    58 		}
       
    59 		$all_links = join(',', $linkcheck);
       
    60 		// should now have an array of links we can change
       
    61 		//$q = $wpdb->query("update $wpdb->links SET link_category='$category' WHERE link_id IN ($all_links)");
       
    62 
       
    63 		wp_redirect($this_file);
       
    64 		exit;
       
    65 		break;
       
    66 
       
    67 	case 'add' :
       
    68 		check_admin_referer('add-bookmark');
       
    69 
       
    70 		add_link();
       
    71 
       
    72 		wp_redirect( wp_get_referer() . '?added=true' );
       
    73 		exit;
       
    74 		break;
       
    75 
       
    76 	case 'save' :
       
    77 		$link_id = (int) $_POST['link_id'];
       
    78 		check_admin_referer('update-bookmark_' . $link_id);
       
    79 
       
    80 		edit_link($link_id);
       
    81 
       
    82 		wp_redirect($this_file);
       
    83 		exit;
       
    84 		break;
       
    85 
       
    86 	case 'delete' :
       
    87 		$link_id = (int) $_GET['link_id'];
       
    88 		check_admin_referer('delete-bookmark_' . $link_id);
       
    89 
       
    90 		wp_delete_link($link_id);
       
    91 
       
    92 		wp_redirect($this_file);
       
    93 		exit;
       
    94 		break;
       
    95 
       
    96 	case 'edit' :
       
    97 		wp_enqueue_script('link');
       
    98 		wp_enqueue_script('xfn');
       
    99 
       
   100 		$parent_file = 'link-manager.php';
       
   101 		$submenu_file = 'link-manager.php';
       
   102 		$title = __('Edit Link');
       
   103 
       
   104 		$link_id = (int) $_GET['link_id'];
       
   105 
       
   106 		if (!$link = get_link_to_edit($link_id))
       
   107 			wp_die(__('Link not found.'));
       
   108 
       
   109 		include ('edit-link-form.php');
       
   110 		include ('admin-footer.php');
       
   111 		break;
       
   112 
       
   113 	default :
       
   114 		break;
       
   115 }
       
   116 ?>