edittemplate: Look for template pages under templates/ like everything else (still...
authorJoey Hess <joey@kitenet.net>
Sun, 13 Jun 2010 02:43:34 +0000 (22:43 -0400)
committerJoey Hess <joey@kitenet.net>
Sun, 13 Jun 2010 02:43:34 +0000 (22:43 -0400)
IkiWiki/Plugin/edittemplate.pm
debian/changelog
doc/plugins/edittemplate.mdwn
doc/templates.mdwn

index 742413c94583a761ec6c180735444882ae343e41..226f83bb4bdfc6dfb11dd326fd6db9d02aae8eae 100644 (file)
@@ -56,10 +56,15 @@ sub preprocess (@) {
        }
 
        my $link=linkpage($params{template});
+       add_depends($params{page}, $link, deptype("presence"));
        my $bestlink=bestlink($params{page}, $link);
+       if (! length $bestlink) {
+               add_depends($params{page}, "templates/$link", deptype("presence"));
+               $link="/templates/".$link;
+               $bestlink=bestlink($params{page}, $link);
+       }
        $pagestate{$params{page}}{edittemplate}{$params{match}}=$bestlink;
 
-       add_depends($params{page}, $link, deptype("presence"));
        return "" if ($params{silent} && IkiWiki::yesno($params{silent})) &&
                length $bestlink;
        return sprintf(gettext("edittemplate %s registered for %s"),
index d607640c465e82d5645a8b5c41271c8c304c65c4..07b349c57d4a3d7a405741b7b1013978adbdd3a9 100644 (file)
@@ -8,6 +8,8 @@ ikiwiki (3.20100611) UNRELEASED; urgency=low
     comments div.
   * edittemplate: Make silent mode not disable display when the template
     page does not exist, so it can be easily created.
+  * edittemplate: Look for template pages under templates/ like everything
+    else (still looks in old location for backwards compatability).
 
  -- Joey Hess <joeyh@debian.org>  Fri, 11 Jun 2010 13:39:15 -0400
 
index 85dfdfc2d23aa5ecb6ea57014a57cdbca8e99d9a..c19ecd8586940da51ccf0d3433beebfa3392f9ec 100644 (file)
@@ -2,5 +2,5 @@
 [[!tag type/web]]
 
 This plugin provides the [[ikiwiki/directive/edittemplate]] [[ikiwiki/directive]].
-This directive allows registering template pages, that provide default
-content for new pages created using the web frontend.
+This directive allows registering [[template|templates]] pages, that
+provide default content for new pages created using the web frontend.
index 22b9345ef7faec93829dedd8725c437c964334f1..d7480ee8f6371f8863dbc000a1e84f84a4952a3a 100644 (file)
@@ -22,20 +22,22 @@ easy to learn. All you really need to know to modify templates is this:
 The template directive allows wiki pages to be used as templates,
 filled out and inserted into other pages in the wiki.
 """]]
-[[!if test="enabled(template) and enabled(inline)" then="""
-[[!inline pages="templates/* and !*.tmpl and !*/discussion"
-feeds=no archive=yes sort=title template=titlepage
-rootpage=templates postformtext="Add a new template named:"]]
-"""]]
 
 [[!if test="enabled(edittemplate)" then="""
-## edit templates
+## default content for new pages
 
 The edittemplate directive can be used to make new pages default to
-containing text from a template, which can be filled as out the page is
+containing text from a template page, which can be filled as out the page is
 edited.
 """]]
 
+[[!if test="(enabled(template) or enabled(edittemplate)
+and enabled(inline)" then="""
+[[!inline pages="templates/* and !*.tmpl and !templates/*/* and !*/discussion"
+feeds=no archive=yes sort=title template=titlepage
+rootpage=templates postformtext="Add a new template named:"]]
+"""]]
+
 ## wiki templates
 
 These templates are used to build the wiki. The aim is to keep almost all