Index: /Users/aaron/Sites/trunk/wp-admin/admin-functions.php
===================================================================
--- /Users/aaron/Sites/trunk/wp-admin/admin-functions.php	(revision 5184)
+++ /Users/aaron/Sites/trunk/wp-admin/admin-functions.php	(working copy)
@@ -619,9 +619,7 @@
 
 	if ( !empty( $link_id ) ) {
 		$_POST['link_id'] = $link_id;
-		return wp_update_link( $_POST);
-	} else {
-		return wp_insert_link( $_POST);
+	return wp_insert_link( $_POST);
 	}
 }
 
Index: /Users/aaron/Sites/trunk/wp-admin/link-manager.php
===================================================================
--- /Users/aaron/Sites/trunk/wp-admin/link-manager.php	(revision 5184)
+++ /Users/aaron/Sites/trunk/wp-admin/link-manager.php	(working copy)
@@ -195,11 +195,47 @@
 
 <div id="ajax-response"></div>
 
-<p class="submit"><input type="submit" class="button" name="deletebookmarks" id="deletebookmarks" value="<?php _e('Delete Checked Links') ?> &raquo;" onclick="return confirm('<?php echo js_escape(__("You are about to delete these links permanently.\n'Cancel' to stop, 'OK' to delete.")); ?>')" /></p>
+<h3><?php _e('Update Selected'); ?></h3>
+	<ul style="list-style:none;">
+		<li><input type="radio" name="rbulkeditblogroll" id="dbookmarks" value="deletebookmarks" onclick="change_submit_button();" /> <label for="dbookmarks"><?php _e('Delete checked Bookmarks.'); ?></label></li>
+		<li>
+			<input type="radio" name="rbulkeditblogroll" id="ebookmarks" value="editbookmarks" onclick="change_submit_button();" checked="checked" /> <label for="ebookmarks"><?php _e('Set the new category for checked Blogroll items:'); ?></label>
+			
+			<select name="bookmarks_newcat" onfocus="getElementById('ebookmarks').checked = 'true';getElementById('submiteditbookmarks').value = 'Update Checked Links';">
+			<?php
+			$linkcats = get_categories("hide_empty=0");
+			foreach($linkcats as $bulklinkcat)
+				echo'<option value="' . $bulklinkcat->cat_ID . '">' . $bulklinkcat->cat_name .'</option>';
+			?>
+			</select>
+			<script type="text/javascript" charset="utf-8">
+			function change_submit_button ()
+			{
+				if( document.getElementById('ebookmarks').checked == true)
+				{
+					document.getElementById('submiteditbookmarks').value = 'Update Checked Links';
+				}
+				else
+				{
+					document.getElementById('submiteditbookmarks').value = 'Delete Checked Links';
+					document.getElementById('submiteditbookmarks').onclick = confirmDeleteLinks;
+				}
+			}
+
+			function confirmDeleteLinks()
+			{
+				return confirm("You are about to delete these links permanently.\n'Cancel' to stop, 'OK' to delete.");
+			}
+		</script>
+		</li>
+	</ul>
+	<p class="submit" style="width: 420px">
+		<?php echo $referer; ?>
+		<input type="submit" name="submiteditbookmarks" id="submiteditbookmarks" value="<?php _e('Update Checked Links'); ?>" />
+	</p>
+<p class="submit">
 </form>
 
 <?php } ?>
-
 </div>
-
 <?php include('admin-footer.php'); ?>
Index: /Users/aaron/Sites/trunk/wp-admin/link.php
===================================================================
--- /Users/aaron/Sites/trunk/wp-admin/link.php	(revision 5184)
+++ /Users/aaron/Sites/trunk/wp-admin/link.php	(working copy)
@@ -3,12 +3,12 @@
 
 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[]'));
 
-if ('' != $_POST['deletebookmarks'])
+if ('Delete Checked Links' == $_POST['submiteditbookmarks'])
 	$action = 'deletebookmarks';
-if ('' != $_POST['move'])
+if ('Update Checked Links' == $_POST['submiteditbookmarks'])
 	$action = 'move';
 if ('' != $_POST['linkcheck'])
-	$linkcheck = $_POST[linkcheck];
+	$linkcheck = $_POST['linkcheck'];
 
 $this_file = 'link-manager.php';
 
@@ -50,10 +50,19 @@
 			wp_redirect($this_file);
 			exit;
 		}
-		$all_links = join(',', $linkcheck);
-		// should now have an array of links we can change
-		//$q = $wpdb->query("update $wpdb->links SET link_category='$category' WHERE link_id IN ($all_links)");
-
+		//$link_count = count($linkcheck);
+		foreach($linkcheck as $link_id)
+		{
+			$link = get_link_to_edit( $link_id );
+			
+			$newlink['link_id'] = $link_id;
+			$newlink['link_url'] = clean_url($link->link_url);
+			$newlink['link_name'] = wp_specialchars( $link->link_name );
+			$newlink['link_image'] = wp_specialchars( $link->link_image );
+			$newlink['link_rss'] = clean_url($link->link_rss);
+			$newlink['link_category'] = array($_POST['bookmarks_newcat']);
+			wp_insert_link($newlink);
+		}
 		wp_redirect($this_file);
 		exit;
 		break;
