{{code Perl,8, 1 ############################################################################### # #

掲示版風の投稿フォームを出力します。1件の投稿が1ページとなり、ページ処理もサポートします。

}} {{code Perl,8, 35 ############################################################################### package plugin::bbs::BBS2; use strict; #============================================================================== # コンストラクタ #============================================================================== sub new { my $class = shift; my $self = {}; return bless $self,$class; } #============================================================================== # 掲示板入力フォーム #============================================================================== sub paragraph { my $self = shift; my $wiki = shift; my $name = shift; my $once = shift; my $option = shift; if($name eq ""){ return &Util::paragraph_error("掲示板の名前が指定されていません。"); } if($once eq "" || !&Util::check_numeric($once)){ $option = $once; $once = 10; } my $cgi = $wiki->get_CGI; my $page = $cgi->param("page"); # 入力フォーム my $tmpl = HTML::Template->new(filename=>$wiki->config('tmpl_dir')."/bbs.tmpl", die_on_bad_params=>0); # 名前を取得 my $postname = $cgi->cookie(-name=>'post_name'); if($postname eq ''){ my $login = $wiki->get_login_info(); if(defined($login)){ $postname = $login->{id}; } } $tmpl->param(NAME=>$postname); my $buf = "
config('script_name')."\">\n". $tmpl->output. "\n". "\n"; if($option eq "no_comment"){ $buf .="\n"; } elsif($option eq "reverse_comment"){ $buf .="\n"; } $buf .= "
"; # 記事の一覧を連結(no_listオプションがつけられた場合は表示しない) if($option ne "no_list"){ $buf .= $wiki->process_wiki("{{bbs2list $name,$once}}"); } return $buf; } 1; }}