1############################################################################### 2# 3# ��������ɽ������ץ饰���� 4# 5############################################################################### 6package plugin::core::Source; 7use strict; 8#============================================================================== 9# ���ȥ饯�� 10#============================================================================== 11sub new { 12 my $class = shift; 13 my $self = {}; 14 return bless $self,$class; 15} 16 17#============================================================================== 18# ���������μ¹� 19#============================================================================== 20sub do_action { 21 my $self = shift; 22 my $wiki = shift; 23 my $cgi = $wiki->get_CGI; 24 25 my $pagename = $cgi->param("page"); 26 if($pagename eq ""){ 27 $pagename = $wiki->config("frontpage"); 28 } 29 unless($wiki->can_show($pagename)){ 30 return $wiki->error("���ȸ��¤�����ޤ���"); 31 } 32 my $gen = $cgi->param("generation"); 33 my $source; 34 if($gen eq ''){ 35 $source = $wiki->get_page($pagename); 36 } else { 37 $source = $wiki->get_backup($pagename,$gen); 38 } 39 my $format = $wiki->get_edit_format(); 40 $source = $wiki->convert_from_fswiki($source,$format); 41 42 if(&Util::handyphone()){ 43 print "Content-Type: text/plain;charset=Shift_JIS\n\n"; 44 &Jcode::convert(\$source,"sjis"); 45 } else { 46 print "Content-Type: text/plain;charset=EUC-JP\n\n"; 47 } 48 print $source; 49 exit(); 50} 51 52#============================================================================== 53# �ڡ���ɽ�����Υեå���å� 54# �֥������ץ�˥塼��ͭ���ˤ��ޤ� 55#============================================================================== 56sub hook { 57 my $self = shift; 58 my $wiki = shift; 59 my $cgi = $wiki->get_CGI; 60 61 my $pagename = $cgi->param("page"); 62 if($pagename eq ""){ 63 $pagename = $wiki->config("frontpage"); 64 } 65 66 $wiki->add_menu("������",$wiki->config('script_name'). 67 "?action=SOURCE&page=".&Util::url_encode($pagename)); 68} 69 701; 71