summaryrefslogtreecommitdiff
path: root/includes/node.inc
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2001-03-31 11:00:04 +0000
committerDries Buytaert <dries@buytaert.net>2001-03-31 11:00:04 +0000
commit2ac7aa425ba6ddfa2e3d2dc228f9b61c0dcfd0b9 (patch)
tree6bab31e1f98fb984eb5c6bbc321c1ccb21fa9ad0 /includes/node.inc
parenta9bb68d98fb7eccd654a3f70bb21fd9ae82df0f2 (diff)
downloadbrdo-2ac7aa425ba6ddfa2e3d2dc228f9b61c0dcfd0b9.tar.gz
brdo-2ac7aa425ba6ddfa2e3d2dc228f9b61c0dcfd0b9.tar.bz2
- visual improvements to example.theme, simplified HMTL code (- 20
lines) - made node.inc more robust: it should roll-back when something goes fubar and it should work in subdirectories
Diffstat (limited to 'includes/node.inc')
-rw-r--r--includes/node.inc25
1 files changed, 17 insertions, 8 deletions
diff --git a/includes/node.inc b/includes/node.inc
index b58609d04..5cde16949 100644
--- a/includes/node.inc
+++ b/includes/node.inc
@@ -88,18 +88,27 @@ function node_save($node) {
$f2 = implode(", ", $f2);
$v2 = implode(", ", $v2);
- db_query("INSERT INTO node ($f1) VALUES ($v1)");
- if ($nid = db_insert_id()) {
- $lid = db_query("INSERT INTO $node[type] ($f2, nid) VALUES ($v2, $nid)");
- if ($lid = db_insert_id()) {
- db_query("UPDATE node SET lid = '$lid' WHERE nid = '$nid'");
+ // insert data, try to roll-back when something goes wrong:
+ $result = db_query("INSERT INTO node ($f1) VALUES ($v1)");
+ if ($result && $nid = db_insert_id()) {
+ $result = db_query("INSERT INTO $node[type] ($f2, nid) VALUES ($v2, $nid)");
+ if ($result && $lid = db_insert_id()) {
+ $result = db_query("UPDATE node SET lid = '$lid' WHERE nid = '$nid'");
+ if ($result) {
+ watchdog("message", "node: added '$node[title]'");
+ }
+ else {
+ watchdog("warning", "node: added '$node[title]' - failed");
+ }
}
else {
db_query("DELETE FROM node WHERE nid = '$nid'");
+ watchdog("warning", "node: added '$node[title]' - failed");
}
}
-
- watchdog("message", "node: added '$node[title]'");
+ else {
+ watchdog("warning", "node: added '$node[title]' - failed");
+ }
}
}
@@ -137,7 +146,7 @@ function node_info($node) {
</SCRIPT>
<?php
- $choices = array("/node.php?id=$node->nid" => t("view node"), "/submit.php?mod=$node->type&op=update&id=$node->nid" => t("suggest update"), "/node.php?op=history&id=$node->nid" => t("view history"));
+ $choices = array("node.php?id=$node->nid" => t("view node"), "/submit.php?mod=$node->type&op=update&id=$node->nid" => t("suggest update"), "node.php?op=history&id=$node->nid" => t("view history"));
$output .= "<FORM METHOD=\"get\" ACTION=\"\">\n";
foreach ($choices as $key => $value) $options .= "<OPTION VALUE=\"$key\"". ($key == $REQUEST_URI ? " SELECTED" : "") .">". check_select($value) ."</OPTION>\n";