検索結果表示プラグインのソース
use strict; package searchresult; sub plugin_block { my ($escaped_argument, $context) = @_; my $result = ""; my $counter = 0; my $RChanges = "RecentChanges"; $result .= qq(<div class="SearchResult">\n); foreach my $page (sort keys %{$context->{database}}) { next if $page =~ /^$RChanges$/ or $page =~ /^$context->{form}->{mypage}$/; if ($context->{database}{$page} =~ /\Q$escaped_argument\E/ or $page =~ /\Q$escaped_argument\E/) { if ($counter == 0) { $result .= qq(<ul class="SearchResult">\n); } $result .= qq(<li><a href="$context->{url_cgi}?@{[&main::encode($page)]}">@{[&main::escape($page)]}</a>@{[&main::escape(&main::get_subjectline($page))]}</li>\n); $counter++; } } if ($counter == 0) { $result .= qq(<p>Not found.</p>\n); } else { $result .= qq(</ul>\n); } $result .= qq(</div>\n); return $result; } sub plugin_usage { return { name => 'searchresult', version => '1.0', author => 'ABYSS <abwiki@mac.com>', syntax => '#searchresult(word)', description => 'Show search result.', example => '#searchresult(word)', }; } 1;