[Pyukiwiki-cvs 0008110] CVS update: PyukiWiki-Devel/lib

Back to archive index

PyukiWiki CVS Commit pyuki****@lists*****
2012年 3月 13日 (火) 17:03:45 JST


Index: PyukiWiki-Devel/lib/ping.inc.pl
diff -u PyukiWiki-Devel/lib/ping.inc.pl:1.1 PyukiWiki-Devel/lib/ping.inc.pl:1.2
--- PyukiWiki-Devel/lib/ping.inc.pl:1.1	Tue Mar 13 01:27:53 2012
+++ PyukiWiki-Devel/lib/ping.inc.pl	Tue Mar 13 17:03:44 2012
@@ -1,6 +1,6 @@
 ######################################################################
 # ping.inc.pl - This is PyukiWiki, yet another Wiki clone.
-# $Id: ping.inc.pl,v 1.1 2012/03/12 16:27:53 papu Exp $
+# $Id: ping.inc.pl,v 1.2 2012/03/13 08:03:44 papu Exp $
 #
 # "PyukiWiki" version 0.2.0-p3-dev1 $$
 # Author: Nanami http://nanakochi.daiba.cx/
@@ -39,6 +39,8 @@
 EOM
 }
 
+#$ping::wait=1;
+
 $ping::wait=30*60
 	if(!defined($ping::wait));
 
@@ -87,7 +89,7 @@
 				->proxy($rpcurl)
 				->call(
 					'weblogUpdates.ping', $name, $url
-#					, $url, $rssurl
+					, $url, $rssurl
 				)
 				->result;
 		};
@@ -96,8 +98,8 @@
 		} else {
 			$result=$tmp->{message};
 		}
-#		$result=~s/<.*//g;
-#		$result=~s/\n.*//g;
+		$result=~s/<.*//g;
+		$result=~s/\n.*//g;
 		alarm 0;
 	};
 	alarm 0;
@@ -135,8 +137,8 @@
 			$val{mypage}=$page;
 			$val{wikititle}=$::wiki_title;
 			my $title=&replace($ping::titleformat,%val);
-	#			$val{TITLE}=&code_convert(\$title,'utf8',$::defaultcode);
-	$val{TITLE}=$title;
+			$val{TITLE}=&code_convert(\$title,'utf8',$::defaultcode);
+#			$val{TITLE}=$title;
 			$val{URL}=$::bxasehref;
 
 			my($stat,$result)=&send_ping_rpc($server, $val{TITLE}, $val{URL}, $val{RSSURI});
@@ -217,9 +219,11 @@
 
 Setting ping server list on $ping::serverlist
 
+If you need the URL of the RSS is, please include in the parameter or "__RSSURIENC__".
+
 =head1 OVERRIDE
 
-do_write_after
+do_write_after was overrided.
 
 =head1 SEE ALSO
 
Index: PyukiWiki-Devel/lib/ping.inc.pl.ja.pod
diff -u /dev/null PyukiWiki-Devel/lib/ping.inc.pl.ja.pod:1.1
--- /dev/null	Tue Mar 13 17:03:45 2012
+++ PyukiWiki-Devel/lib/ping.inc.pl.ja.pod	Tue Mar 13 17:03:45 2012
@@ -0,0 +1,71 @@
+#$Id: ping.inc.pl.ja.pod,v 1.1 2012/03/13 08:03:45 papu Exp $
+
+__END__
+=encoding euc-jp
+
+=head1 NAME
+
+ping.inc.pl - PyukiWiki プラグイン
+
+=head1 概要
+
+Weblog用のpingを送信する。
+
+=head1 説明
+
+指定したサーバーリストにWeblog用のpingを送信します。
+
+=head1 使用方法
+
+ping.inc.cgi にリネームして下さい。
+
+$ping::serverlist に pingサーバー一覧を1行ずつ記載します。
+
+RSSのURLが必要な場合は、パラメータ中に __RSSURIENC__ を含めて下さい。
+
+=head1 上書きする関数
+
+関数 do_write_after を上書きします。
+
+=head1 参考
+
+=over 4
+
+=item PyukiWiki/Plugin/ExPlugin/ping
+
+L<http://pyukiwiki.sfjp.jp/PyukiWiki/Plugin/ExPlugin/ping/>
+
+=item PyukiWiki CVSレボジトリ
+
+L<http://sfjp.jp/cvs/view/pyukiwiki/PyukiWiki-Devel/lib/ping.inc.pl?view=log>
+
+L<http://sfjp.jp/cvs/view/pyukiwiki/PyukiWiki-Devel-UTF8/lib/ping.inc.pl?view=log>
+
+=back
+
+=head1 著者
+
+=over 4
+
+=item ななみ
+
+L<http://nanakochi.daiba.cx/> etc...
+
+=item PyukiWiki Developers Team
+
+L<http://pyukiwiki.sfjp.jp/>
+
+=back
+
+=head1 ライセンス
+
+Copyright (C) 2005-2012 by ななみ.
+
+Copyright (C) 2005-2012 by PyukiWiki Developers Team
+
+License is GNU GENERAL PUBLIC LICENSE 3 and/or Artistic 1 or each later version.
+
+This program is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
Index: PyukiWiki-Devel/lib/trackback.inc.pl
diff -u /dev/null PyukiWiki-Devel/lib/trackback.inc.pl:1.1
--- /dev/null	Tue Mar 13 17:03:45 2012
+++ PyukiWiki-Devel/lib/trackback.inc.pl	Tue Mar 13 17:03:45 2012
@@ -0,0 +1,197 @@
+######################################################################
+# trackback.inc.pl - This is PyukiWiki, yet another Wiki clone.
+# $Id: trackback.inc.pl,v 1.1 2012/03/13 08:03:45 papu Exp $
+#
+# "PyukiWiki" version 0.2.0-p3-dev1 $$
+# Author: Nanami http://nanakochi.daiba.cx/
+# Copyright (C) 2004-2012 Nekyo
+# http://nekyo.qp.land.to/
+# Copyright (C) 2005-2012 PyukiWiki Developers Team
+# http://pyukiwiki.sfjp.jp/
+# Based on YukiWiki http://www.hyuki.com/yukiwiki/
+# Powerd by PukiWiki http://pukiwiki.sfjp.jp/
+# License: GPL3 and/or Artistic or each later version
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the same terms as Perl itself.
+# Return:LF Code=UTF-8 1TAB=4Spaces
+######################################################################
+# This is extented plugin.
+# To use this plugin, rename to 'trackback.inc.cgi'
+######################################################################
+
+# ディレクトリ
+$trackback::directory="$::data_home/trackback"
+	if(!defined($trackback::directory));
+
+use strict;
+use Nana::MD5 qw(md5_hex);
+
+ @ trackback::allowcmd=(
+	"read",
+	"edit",
+	"adminedit",
+	"diff",
+	"backup",
+	"setting",
+);
+%::trackbackbase;
+$trackback::md5pagename;
+
+sub plugin_trackback_init {
+	&exec_explugin_sub("lang");
+	&exec_explugin_sub("urlhack");
+
+	if($::_exec_plugined{lang} eq 2) {
+		if($::defaultlang ne $::lang) {
+			$trackback::directory.=".$::lang";
+		}
+	}
+	my $err;
+	my $err=&writechk($trackback::directory);
+	if($err ne '') {
+		&print_error($err);
+		exit;
+	}
+
+	my $flg=0;
+	foreach(@logs::allowcmd) {
+		$flg=1 if($_ eq $::form{cmd});
+	}
+	if($flg eq 1 && $::form{mypage} ne '') {
+		$trackback::md5pagename=&tb_get_id($::form{mypage});
+	} else {
+		$flg=0;
+	}
+	if($flg eq 1 && $::navi{"trackback_url"} eq '') {
+		&dbopen($trackback::directory,\%::trackbackbase);
+		# http://www.tohoho-web.com/lng/199912/99120066.htm # comment
+		# http://www.aleph.co.jp/~fujiwara/perl/lc.pl # comment
+		my $trackbackcount = ($::trackbackbase{$::form{mypage}} =~ tr/\n/\n/);
+		&dbclose(\%::trackbackbase);
+		push(@::addnavi,"trackback:help");
+		my $langflg=$::_exec_plugined{lang}+0 eq 2 ? "lang=$::lang&amp;" : "";
+		$::navi{"trackback_url"}="$::script?cmd=tb&amp;tb_id=$trackback::md5pagename&amp;@{[$langflg]}\__mode=view";
+		$::navi{"trackback_name"}=$::resource{"trackbackbutton"};
+		$::navi{"trackback_name"}=~s/\$COUNT/$trackbackcount/g;
+		$::navi{"trackback_type"}="plugin";
+	}
+	return ('init'=>1
+		, 'last_func'=>'&trackback_last;');
+}
+
+sub trackback_last {
+}
+
+# pukiwiki compatible function
+
+sub tb_get_id {
+	my($page)=@_;
+	return md5_hex($page);
+}
+
+%trackback::cache;
+
+sub tb_id2page {
+	my($tb_id)=@_;
+
+	return $trackback::cache{$tb_id}
+		if($trackback::cache{$tb_id} ne '');
+
+	foreach my $page (keys %::database) {
+		my $_tb_id=&tb_get_id($page);
+		$trackback::cache{$_tb_id}=$page;
+		return $trackback::cache{$tb_id}
+			if($tb_id eq $_tb_id);
+	}
+	$trackback::cache{$tb_id}="";
+	return "";
+}
+
+sub replace {
+	my ($str,%ref)=@_;
+	foreach my $key(keys %ref) {
+		$str=~s/\_\_$key\_\_/$ref{$key}/g;
+	}
+	return $str;
+}
+
+sub aaado_write_after {
+	my($page, $mode)=@_;
+	if($page ne '' && $mode ne "Delete") {
+		&send_trackback($page);
+	}
+}
+1;
+__DATA__
+sub plugin_trackback_setup {
+	return(
+	'en'=>'Send trackback.',
+	'jp'=>'trackbackを送信する,
+	'override'=>'do_write',
+	'url'=>'http://pyukiwiki.sfjp.jp/PyukiWiki/Plugin/ExPlugin/trackback/'
+	);
+__END__
+
+=head1 NAME
+
+trackback.inc.pl - PyukiWiki Plugin
+
+=head1 SYNOPSIS
+
+Sent weblog trackback.
+
+=head1 DESCRIPTION
+
+Sent weblog trackback.
+
+=head1 USAGE
+
+rename to trackback.inc.cgi
+
+Setting trackback server list on $trackback::serverlist
+
+=head1 OVERRIDE
+
+do_write_after
+
+=head1 SEE ALSO
+
+=over 4
+
+=item PyukiWiki/Plugin/ExPlugin/trackback
+
+L<http://pyukiwiki.sfjp.jp/PyukiWiki/Plugin/ExPlugin/trackback/>
+
+=item PyukiWiki CVS
+
+L<http://sfjp.jp/cvs/view/pyukiwiki/PyukiWiki-Devel/lib/trackback.inc.pl?view=log>
+
+L<http://sfjp.jp/cvs/view/pyukiwiki/PyukiWiki-Devel-UTF8/lib/trackback.inc.pl?view=log>
+
+=head1 AUTHOR
+
+=over 4
+
+=item Nanami
+
+L<http://nanakochi.daiba.cx/> etc...
+
+=item PyukiWiki Developers Team
+
+L<http://pyukiwiki.sfjp.jp/>
+
+=back
+
+=head1 LICENSE
+
+Copyright (C) 2005-2012 by Nanami.
+
+Copyright (C) 2005-2012 by PyukiWiki Developers Team
+
+License is GNU GENERAL PUBLIC LICENSE 3 and/or Artistic 1 or each later version.
+
+This program is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
Index: PyukiWiki-Devel/lib/urlhack.inc.pl
diff -u PyukiWiki-Devel/lib/urlhack.inc.pl:1.497 PyukiWiki-Devel/lib/urlhack.inc.pl:1.498
--- PyukiWiki-Devel/lib/urlhack.inc.pl:1.497	Tue Mar 13 01:27:53 2012
+++ PyukiWiki-Devel/lib/urlhack.inc.pl	Tue Mar 13 17:03:45 2012
@@ -1,6 +1,6 @@
 ######################################################################
 # urlhack.inc.pl - This is PyukiWiki, yet another Wiki clone.
-# $Id: urlhack.inc.pl,v 1.497 2012/03/12 16:27:53 papu Exp $
+# $Id: urlhack.inc.pl,v 1.498 2012/03/13 08:03:45 papu Exp $
 #
 # "PyukiWiki" version 0.2.0-p3-dev1 $$
 # Author: Nanami http://nanakochi.daiba.cx/
@@ -587,7 +587,6 @@
 
 make_cookedurl was overrided.
 
-
 =head1 SEE ALSO
 
 =over 4
Index: PyukiWiki-Devel/lib/wiki.cgi
diff -u PyukiWiki-Devel/lib/wiki.cgi:1.704 PyukiWiki-Devel/lib/wiki.cgi:1.705
--- PyukiWiki-Devel/lib/wiki.cgi:1.704	Tue Mar 13 01:27:53 2012
+++ PyukiWiki-Devel/lib/wiki.cgi	Tue Mar 13 17:03:45 2012
@@ -1,6 +1,6 @@
 ######################################################################
 # wiki.cgi - This is PyukiWiki, yet another Wiki clone.
-# $Id: wiki.cgi,v 1.704 2012/03/12 16:27:53 papu Exp $
+# $Id: wiki.cgi,v 1.705 2012/03/13 08:03:45 papu Exp $
 #
 # "PyukiWiki" version 0.2.0-p3-dev1 $$
 # Copyright (C) 2004-2012 Nekyo
@@ -1829,7 +1829,7 @@
 
 =item 入力値
 
-&spam_filter(なし 文字列指定, レベル, URIカウント, メールカウント);
+&spam_filter(なし 文字列指定, レベル, URIカウント, メールカウント, リターンフラグ);
 
 レベル
 
@@ -1856,12 +1856,12 @@
 =cut
 
 sub spam_filter {
-	my ($chk_str, $level, $uricount, $mailcount) = @_;
+	my ($chk_str, $level, $uricount, $mailcount, $retflg) = @_;
 	return if ($::filter_flg != 1);	# フィルターオフなら何もしない。 # comment
 	return if ($chk_str eq '');		# 文字列が無ければ何もしない。	 # comment
 	# v 0.2.0 fix													 # comment
 
-	my $chk_jp_regex=$::chk_jp_hiragana ? '[あ-んア-ン]' : '[\x8E\xA1-\xFE]';
+	my $chk_jp_regex=$::chk_jp_hiragana ? '[あ-んア-ン]' : '[\x80-\xFE]';
 
 	my $chk_jp_regex=$::chk_jp_hiragana ? '[あ-んア-ン]' : '[\x80-\xFE]';
 	if($uricount+0 eq 0 || $uricount+0 > $::chk_uri_count+0) {
@@ -1872,18 +1872,22 @@
 	# changed by nanami and v 0.2.0-p2 fix
 	if (($level ne  1) && ($uricount > 0) && (($chk_str =~ s/https?:\/\///g) >= $uricount)) {
 		&snapshot('Over http');
+		return "Over http" if($retflg+0 eq 1);
 	# Over Mailチェックを行う。
 	} elsif (($level ne  1) && ($mailcount+0 > 0) && (($chk_str =~ s/$::ismail//g) >= $uricount)) {
-		&snapshot('Over mail');
+		&snapshot('Over Mail', $retflg+0);
+		return "Over Mail" if($retflg+0 eq 1);
 	# レベルが 1 の時のみ 日本語チェックを行う。					# comment
 	# changed by nanami and v 0.2.0 fix
 	} elsif (($level >= 1) && ($::chk_jp_only == 1) && ($chk_str !~ /$chk_jp_regex/)) {
-		&snapshot('No Japanese');
+		&snapshot('No Japanese', $retflg+0);
+		return "No Japanese" if($retflg+0 eq 1);
 	} else {
 		return;
 	}
 	&skinex($::form{mypage}, &message($::resource{auth_writefobidden}), 0);
 	&close_db;
+	return "spam" if($retflg+0 eq 1);
 	exit;
 }
 



Pyukiwiki-cvs メーリングリストの案内
Back to archive index