Update of /cvsroot/php-blog/serendipity
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30783
Modified Files:
serendipity_admin_category.inc.php
Log Message:
Don't rebuild the entire tree every time a new category is created.
Index: serendipity_admin_category.inc.php
===================================================================
RCS file: /cvsroot/php-blog/serendipity/serendipity_admin_category.inc.php,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- serendipity_admin_category.inc.php 8 Jun 2004 08:42:23 -0000 1.15
+++ serendipity_admin_category.inc.php 9 Jul 2004 22:51:57 -0000 1.16
@@ -17,7 +17,11 @@
$parentid = (isset($_POST['serendipity']['cat']['parent_cat']) && is_numeric($_POST['serendipity']['cat']['parent_cat'])) ? $_POST['serendipity']['cat']['parent_cat'] : 0;
if ($cat_to_edit == 0) {
- $query = "INSERT INTO {$serendipity['dbPrefix']}category (category_name, category_description, authorid, category_icon, parentid) values ('$name', '$desc', $authorid, '$icon', $parentid)";
+ if ( $parentid != 0 ) {
+ $res = serendipity_db_query("SELECT category_right FROM {$serendipity['dbPrefix']}category WHERE parentid={$parentid};");
+ serendipity_db_query("UPDATE {$serendipity['dbPrefix']}category SET category_left=category_left+2, category_right=category_right+2 WHERE category_right>{$res['right']};");
+ }
+ $query = "INSERT INTO {$serendipity['dbPrefix']}category (category_name, category_description, authorid, category_icon, parentid) values ('$name', '$desc', $authorid, '$icon', $parentid)";
} else {
/* Check to make sure parent is not a child of self */
$r = serendipity_db_query("SELECT categoryid FROM {$serendipity['dbPrefix']}category c WHERE c.categoryid={$parentid} AND c.category_left BETWEEN " . implode(' AND ', serendipity_fetchCategoryRange($cat_to_edit)));
@@ -31,7 +35,6 @@
}
$r = empty($msg) ? serendipity_db_query($query) : $msg;
- serendipity_rebuildCategoryTree();
if (is_string($r)) {
$msg = $r;
} else {
|