]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/commitdiff
edittemplate patch from Willu
authorJoey Hess <joey@kodama.kitenet.net>
Sat, 20 Sep 2008 20:19:09 +0000 (16:19 -0400)
committerJoey Hess <joey@kodama.kitenet.net>
Sat, 20 Sep 2008 20:19:09 +0000 (16:19 -0400)
* edittemplate: Default new page file type to the same type as the template.
  (willu)
* edittemplate: Add "silent" parameter. (Willu)
* edittemplate: Link to template, to allow creating it. (Willu)

IkiWiki/Plugin/edittemplate.pm
debian/changelog
doc/todo/Allow_edittemplate_to_set_file_type.mdwn

index 98308de135ba42c6efc5d574b261d51cc5f18e29..c381940e5edd4056b5622c0daeb10cab1d6423a8 100644 (file)
@@ -56,8 +56,14 @@ sub preprocess (@) { #{{{
 
        $pagestate{$params{page}}{edittemplate}{$params{match}}=$params{template};
 
-       return sprintf(gettext("edittemplate %s registered for %s"),
-               $params{template}, $params{match});
+       return "" if ($params{silent} && IkiWiki::yesno($params{silent}));
+
+       my $link=IkiWiki::linkpage($params{template});
+       add_depends($params{page}, $link);
+       my $linkHTML = htmllink($params{page}, $params{destpage}, $link);
+
+       return sprintf(gettext("edittemplate: %s registered for %s"),
+               $linkHTML, $params{match});
 } # }}}
 
 sub formbuilder (@) { #{{{
@@ -89,6 +95,9 @@ sub formbuilder (@) { #{{{
                                        if (pagespec_match($p, $pagespec, location => $registering_page)) {
                                                $form->field(name => "editcontent",
                                                         value => filltemplate($pagestate{$registering_page}{edittemplate}{$pagespec}, $page));
+                                               $form->field(name => "type",
+                                                        value => pagetype($pagesources{$pagestate{$registering_page}{edittemplate}{$pagespec}}))
+                                                               if $pagesources{$pagestate{$registering_page}{edittemplate}{$pagespec}};
                                                return;
                                        }
                                }
index a44b890581351381988a3e4dd9c68939d854349f..6019e396026a9d23fe8c1c8b3ec73354e36b436a 100644 (file)
@@ -10,6 +10,10 @@ ikiwiki (2.65) UNRELEASED; urgency=low
   * Fix reversion in use of ikiwiki -verbose -setup with a setup file that
     enables syslog. Setup output is once again output to stdout in this
     case.
+  * edittemplate: Default new page file type to the same type as the template.
+    (willu)
+  * edittemplate: Add "silent" parameter. (Willu)
+  * edittemplate: Link to template, to allow creating it. (Willu)
 
  -- Joey Hess <joeyh@debian.org>  Wed, 17 Sep 2008 14:26:56 -0400
 
index 9981c530baa3a158a0afcbd0c4dfdc4467715537..54fff6a194d71b9aba1c0434686fd4a538995af4 100644 (file)
@@ -38,3 +38,6 @@ Below is a [[patch]] to [[plugins/edittemplate]] that does a few things:
                                                return;
                                        }
                                }
+
+
+[[done]]