diff options
author | Dries Buytaert <dries@buytaert.net> | 2003-10-17 16:00:44 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2003-10-17 16:00:44 +0000 |
commit | 3c3c556c55555f431e388600f36cfa54959fc254 (patch) | |
tree | e3705888ea85bda78e17eac9447befe936acebb1 | |
parent | 880842885bd3e970bb752248ba72fb7b9957bc77 (diff) | |
download | brdo-3c3c556c55555f431e388600f36cfa54959fc254.tar.gz brdo-3c3c556c55555f431e388600f36cfa54959fc254.tar.bz2 |
- Bugfix: pass the node by reference in path_nodeapi so that $node->path is set
for the node. Fixes bug #3680. Patch by Matt.
- Bugfix: when creating a new node, don't try to insert a path if it wasn't set
in the node form. This destroys any paths which the user may have created
ahead of time for that node. Patch by Matt.
-rw-r--r-- | modules/path.module | 10 | ||||
-rw-r--r-- | modules/path/path.module | 10 |
2 files changed, 18 insertions, 2 deletions
diff --git a/modules/path.module b/modules/path.module index 98ac778b8..0211ad910 100644 --- a/modules/path.module +++ b/modules/path.module @@ -137,7 +137,7 @@ function path_link($type, $node = NULL) { } } -function path_nodeapi($node, $op, $arg) { +function path_nodeapi(&$node, $op, $arg) { if (user_access("create url aliases") || user_access("administer url aliases")) { switch ($op) { @@ -165,6 +165,14 @@ function path_nodeapi($node, $op, $arg) { return form_textfield(t("Path alias"), "path", $node->path, 60, 250, t("Optionally specify an alternative URL by which this node can be accessed. For example, type 'about' when writing an about page. Use a relative path and don't add a trailing slash or the URL alias won't work.") . theme_error($arg["path"])); case "insert": + /* + ** Don't try to insert if path is NULL. We may have already set + ** the alias ahead of time. + */ + if ($node->path) { + path_set_alias("node/view/$node->nid", $node->path); + } + break; case "update": path_set_alias("node/view/$node->nid", $node->path); break; diff --git a/modules/path/path.module b/modules/path/path.module index 98ac778b8..0211ad910 100644 --- a/modules/path/path.module +++ b/modules/path/path.module @@ -137,7 +137,7 @@ function path_link($type, $node = NULL) { } } -function path_nodeapi($node, $op, $arg) { +function path_nodeapi(&$node, $op, $arg) { if (user_access("create url aliases") || user_access("administer url aliases")) { switch ($op) { @@ -165,6 +165,14 @@ function path_nodeapi($node, $op, $arg) { return form_textfield(t("Path alias"), "path", $node->path, 60, 250, t("Optionally specify an alternative URL by which this node can be accessed. For example, type 'about' when writing an about page. Use a relative path and don't add a trailing slash or the URL alias won't work.") . theme_error($arg["path"])); case "insert": + /* + ** Don't try to insert if path is NULL. We may have already set + ** the alias ahead of time. + */ + if ($node->path) { + path_set_alias("node/view/$node->nid", $node->path); + } + break; case "update": path_set_alias("node/view/$node->nid", $node->path); break; |