summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2011-02-17 23:52:11 -0600
committerJesse Luehrs <doy@tozt.net>2011-02-17 23:52:11 -0600
commita577906470e74a1cbf100a4e5f81deec91e64da8 (patch)
treeaa6b2b9973130bc53076c2367736f5e19f65a9e6
parent2d2750b4c40f4ec2016b61ee244cb435b6e9a4e8 (diff)
downloadnarwhal-a577906470e74a1cbf100a4e5f81deec91e64da8.tar.gz
narwhal-a577906470e74a1cbf100a4e5f81deec91e64da8.zip
redirect to the edit page for nonexistent pages
-rw-r--r--lib/Narwhal/Component/Wiki.pm12
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/Narwhal/Component/Wiki.pm b/lib/Narwhal/Component/Wiki.pm
index e2a8ea7..1139301 100644
--- a/lib/Narwhal/Component/Wiki.pm
+++ b/lib/Narwhal/Component/Wiki.pm
@@ -8,8 +8,16 @@ sub page {
my ($req, $page_name) = @_;
my $page = $self->lookup("page:$page_name");
- return $req->new_response(404)
- unless $page;
+ if (!$page) {
+ my $res = $req->new_response(303);
+ $res->location(
+ $req->uri_for({
+ action => 'edit',
+ page_name => $page_name,
+ })
+ );
+ return $res;
+ }
$self->render(
$req,