From 5399c5f576fd86e023429c4dcf2ac4be3783742b Mon Sep 17 00:00:00 2001 From: Ryan Boren Date: Thu, 13 Oct 2005 18:17:05 +0000 Subject: [PATCH] Category insert cleanup from donncha. fixes #1750 git-svn-id: https://develop.svn.wordpress.org/trunk@2946 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-admin/admin-db.php | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/wp-admin/admin-db.php b/wp-admin/admin-db.php index 487b88256a..2cd93a7e1f 100644 --- a/wp-admin/admin-db.php +++ b/wp-admin/admin-db.php @@ -88,20 +88,17 @@ function wp_insert_category($catarr) { $cat_ID = (int) $cat_ID; // Are we updating or creating? - if (!empty ($cat_ID)) { + if (!empty ($cat_ID)) $update = true; - } else { + else $update = false; - $id_result = $wpdb->get_row("SHOW TABLE STATUS LIKE '$wpdb->categories'"); - $cat_ID = $id_result->Auto_increment; - } $cat_name = wp_specialchars($cat_name); if (empty ($category_nicename)) - $category_nicename = sanitize_title($cat_name, $cat_ID); + $category_nicename = sanitize_title($cat_name); else - $category_nicename = sanitize_title($category_nicename, $cat_ID); + $category_nicename = sanitize_title($category_nicename); if (empty ($category_description)) $category_description = ''; @@ -109,18 +106,25 @@ function wp_insert_category($catarr) { if (empty ($category_parent)) $category_parent = 0; - if (!$update) + if (!$update) { $query = "INSERT INTO $wpdb->categories (cat_ID, cat_name, category_nicename, category_description, category_parent) VALUES ('0', '$cat_name', '$category_nicename', '$category_description', '$cat')"; - else + $cat_ID = $wpdb->insert_id; + } else { $query = "UPDATE $wpdb->categories SET cat_name = '$cat_name', category_nicename = '$category_nicename', category_description = '$category_description', category_parent = '$category_parent' WHERE cat_ID = '$cat_ID'"; - + } + + if ( $category_nicename == '' ) { + $category_nicename = sanitize_title($cat_name, $cat_ID ); + $wpdb->query( "UPDATE $wpdb->categories SET category_nicename = '$category_nicename' WHERE cat_ID = '$cat_ID'" ); + } + $result = $wpdb->query($query); if ($update) { do_action('edit_category', $cat_ID); } else { - do_action('create_category', $rval); - do_action('add_category', $rval); + do_action('create_category', $cat_ID); + do_action('add_category', $cat_ID); } return $cat_ID;