]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki.pm
call delete hook even if only internal pages are deleted
[ikiwiki.git] / IkiWiki.pm
index 72f416489c1d267df30d5929fd0679f9598c8693..11cfcdfd2d9ef31112f431963d52e8c31efe0f01 100644 (file)
@@ -1401,10 +1401,6 @@ sub filter ($$$) {
        return $content;
 }
 
-sub indexlink () {
-       return "<a href=\"$config{url}\">$config{wikiname}</a>";
-}
-
 sub check_canedit ($$$;$) {
        my $page=shift;
        my $q=shift;
@@ -1751,16 +1747,13 @@ sub misctemplate ($$;@) {
        });
 
        $template->param(
+               dynamic => 1,
+               have_actions => 0, # force off
                title => $title,
                wikiname => $config{wikiname},
                content => $content,
                baseurl => baseurl(),
                html5 => $config{html5},
-               have_actions => 0, # force off
-               parentlinks => [{  # override
-                       url => $config{url},
-                       page => $config{wikiname},
-               }],
                @_,
        );
 
@@ -2336,11 +2329,7 @@ sub match_glob ($$;@) {
 
        my $regexp=IkiWiki::glob2re($glob);
        if ($page=~/^$regexp$/i) {
-               if ($params{onlypage} &&
-                   ! defined IkiWiki::pagetype($IkiWiki::pagesources{$page})) {
-                       return IkiWiki::FailReason->new("$page is not a page");
-               }
-               elsif (! IkiWiki::isinternal($page) || $params{internal}) {
+               if (! IkiWiki::isinternal($page) || $params{internal}) {
                        return IkiWiki::SuccessReason->new("$glob matches $page");
                }
                else {
@@ -2353,11 +2342,18 @@ sub match_glob ($$;@) {
 }
 
 sub match_internal ($$;@) {
-       return match_glob($_[0], $_[1], @_, internal => 1)
+       return match_glob(shift, shift, @_, internal => 1)
 }
 
 sub match_page ($$;@) {
-       return match_glob($_[0], $_[1], @_, onlypage => 1)
+       my $page=shift;
+       my $match=match_glob($page, shift, @_);
+       if ($match && ! defined IkiWiki::pagetype($IkiWiki::pagesources{$page})) {
+               return IkiWiki::FailReason->new("$page is not a page");
+       }
+       else {
+               return $match;
+       }
 }
 
 sub match_link ($$;@) {