fix wrong tag page
[ikiwiki/events.git] / events.pm
index e892d10..2820c60 100644 (file)
--- a/events.pm
+++ b/events.pm
@@ -202,7 +202,9 @@ sub event_of_page ($%) {
                 (keys %{$IkiWiki::typedlinks{$event}{tag}}));
        @tags
         = map {
-               my $tag = $_;
+               my $tag_best = bestlink($params{page}, $_);
+               $tag_best = (length $tag_best > 0 ? $tag_best : bestlink($event, $_));
+               my $tag = (length $tag_best > 0 ? $tag_best : $_);
                my $title
                 = exists $pagestate{$tag}{meta}{title}
                 ? $pagestate{$tag}{meta}{title}
@@ -211,7 +213,7 @@ sub event_of_page ($%) {
                 = htmllink
                 ( $params{page}
                 , $params{destpage}
-                , '/'.$tag
+                , $tag
                 , linktext => $title
                 , noimageinline => 1
                 , title => $title );
@@ -288,7 +290,7 @@ sub event_html ($$%) {
                         , $date->year()
                         );
                        add_depends($params{page}, $year_page, deptype("presence"));
-                       if ($pagesources{$year_page}) {
+                       if (exists $pagesources{$year_page}) {
                                $year_html
                                 = htmllink
                                 ( $params{page}
@@ -307,7 +309,7 @@ sub event_html ($$%) {
                         , $date->month()
                         );
                        add_depends($params{page}, $month_page, deptype("presence"));
-                       if ($pagesources{$month_page}) {
+                       if (exists $pagesources{$month_page}) {
                                $month_html
                                 = htmllink
                                 ( $params{page}
@@ -327,7 +329,7 @@ sub event_html ($$%) {
                         , $date->day()
                         );
                        add_depends($params{page}, $day_page, deptype("presence"));
-                       if ($pagesources{$day_page}) {
+                       if (exists $pagesources{$day_page}) {
                                $day_html
                                 = htmllink
                                 ( $params{page}