############################################################################### #

CardNaviプラグイン:前後のページへのアンカーを表示します。

# #
# {{cardnavi [cardlistプラグイン記載のページ名]}}
# 
############################################################################### package plugin::cardform::CardNavi; use strict; use vars qw(@ISA); @ISA = qw(plugin::cardform::CardFuncBase); use plugin::cardform::CardFuncBase; #============================================================================== # パラグラフメソッド #============================================================================== sub paragraph { my $self = shift; my $wiki = shift; my $parent = shift; if($parent ne ""){ $parent = "[[^|".$parent."]] "; } my $cgi = $wiki->get_CGI; my $pagename = $cgi->param("page"); my $base = $pagename; $base =~ s/\/[0-9]+$//; my $num = $pagename; $num =~ s/^.*\/([0-9]+$)/\1/; my @list = $self->get_number_list($wiki,$base); my $i = 0; for(;$i<$#list;$i++){ if($num == $list[$i]){ last; } } my $nextpage = $self->num2page($base,$list[$i+1]); my $beforepage = ""; if($i > 0) { $beforepage = $self->num2page($base,$list[$i-1]); } my $nextlink = ""; if($wiki->page_exists($nextpage) && $wiki->can_show($nextpage)) { $nextlink = "[[次のページ ->|".$nextpage."]]"; } my $beforelink = ""; if($wiki->page_exists($beforepage) && $wiki->can_show($beforepage)) { $beforelink = "[[<- 前のページ|".$beforepage."]] "; } return $beforelink.$parent.$nextlink; } 1;