BugTrack/107
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*yetlistが、BracketNameをWikiNameとして表示してしまう [#k...
-ページ: BugTrack
-投稿者: [[ぱんだ]]
-優先順位: 普通
-状態: 完了
-カテゴリー: プラグインバグ
-投稿日: 2002-07-25 (木) 12:45:00
-バージョン:
**メッセージ [#kf8131bf]
ブラケットの中身がWikiNameとして通用してしまうときに、ブ...
***例 [#yd29f212]
-http://pukiwiki.sourceforge.jp/?plugin=yetlistで、[[BugT...
[[FrontPage]],[[BugTrack]]
が
FrontPage,BugTrack
として表示されています。
***原因 [#b0df437e]
-なぜかstrip_bracketしたページを後からBracketでwrapしなお...
***修正案 [#w9602cfb]
-ついでに、未作成ページが複数ページから参照されているとき...
-さらに、BracketNameの変換部にバグ発見。
[[ほげ>[[BugTrack/107]]]]
のような場合におかしくなるのを修理しました。(57~58行目)
-diffが必要以上に大きくなることを避けるために、一部インデ...
--- yetlist.inc.php Thu Jul 25 13:35:34 2002
+++ yetlist.new.php Thu Jul 25 14:32:38 2002
@@ -45,14 +45,18 @@
)/ex","check_link('$1','$name')",$line);
}
- foreach($_gwbn as $tmp)
+ foreach($_gwbn as $wbn => $refs_arr)
{
- $wbn = $tmp["name"];
- $name = $tmp["refer"];
-
+
+ foreach (array_unique($refs_arr) as $name)
+ {
+
if(preg_match("/^[^>]+>([^\]]+)/",$wbn,$match))
{
$wbn = $match[1];
+ //閉じブラケットの補充。/^\[\[/でも必要十分だが念の...
+ if(preg_match("/^\[\[[^\]]+$/",$wbn))
+ $wbn = "$wbn]]";
if(!preg_match("/($WikiName)|($BracketName)/",$wbn))
$wbn = "[[$wbn]]";
}
@@ -91,21 +95,21 @@
if(!is_page($wbn))
{
- $lists[strip_bracket($wbn)] = strip_bracket($wbn);
- $refer[strip_bracket($wbn)][$name] = $name;
+ $refer[$wbn][] = $name;
+ }
+
+ $wbn = $keep; //ひー ^^;)
}
}
- ksort($lists);
- foreach($lists as $wbn)
+ ksort($refer);
+ foreach($refer as $wbn => $refs_arr)
{
- $url = $wbn;
- if(!preg_match("/($WikiName)|($BracketName)/",$url))
- $url = "[[$url]]";
- $url = rawurlencode($url);
+ $url = rawurlencode($wbn);
+ $name = strip_bracket($wbn);
$link_ref = "";
- foreach($refer[$wbn] as $refs)
+ foreach(array_unique($refs_arr) as $refs)
{
$ref = strip_bracket($refs);
$refurl = rawurlencode($refs);
@@ -114,7 +118,7 @@
}
$link_ref = trim($link_ref);
- $ret["body"] .= "<li><a href=\"$script?cmd=edit&p...
+ $ret["body"] .= "<li><a href=\"$script?cmd=edit&p...
}
@@ -155,8 +159,7 @@
}
else if(preg_match("/^($BracketName)|($WikiName)$/",$n...
{
- $_gwbn[$name]["name"] = $name;
- $_gwbn[$name]["refer"] = $refer;
+ $_gwbn[$name][] = $refer;
return;
}
else
----
-PukiWikiと[[PukiWiki]]が区別されると...
-このパッチ適用してテストしている時に気がつきました。Brac...
-こんな感じでしょうか :) 外からくる$nameを展開せず、$name...
--- yetlist.inc.php Thu Jul 25 13:35:34 2002
+++ yetlist.new.php Thu Jul 25 14:32:38 2002
@@ -45,1 +45,1 @@
- )/ex","check_link('$1','$name')",$line);
+ )/ex","check_link('$1',\$name)",$line);
-$1も\$1にしたほうがいいかな? -- [[ゆう]] SIZE(10){2002-...
-$1の中身はpreg_replaceが適切にエスケープしてくれてるはず...
-了解です。あとついでにglobal変数をなくすように修正します...
-修正完了しました。[[cvs:plugin/yetlist.inc.php]] -- [[ゆ...
-WikiNameとBracketNameの仕様は変更できないでしょうか? 同...
--たとえば、WikiNameとして通用するBracketNameをWikiNameと...
--そうですね。ソース見てみますが大変そうでし・・・。Wiki...
-- [[PukiWiki/1.4/NoBracketName]] -- &new{2009-08-25 (火...
//#comment
終了行:
*yetlistが、BracketNameをWikiNameとして表示してしまう [#k...
-ページ: BugTrack
-投稿者: [[ぱんだ]]
-優先順位: 普通
-状態: 完了
-カテゴリー: プラグインバグ
-投稿日: 2002-07-25 (木) 12:45:00
-バージョン:
**メッセージ [#kf8131bf]
ブラケットの中身がWikiNameとして通用してしまうときに、ブ...
***例 [#yd29f212]
-http://pukiwiki.sourceforge.jp/?plugin=yetlistで、[[BugT...
[[FrontPage]],[[BugTrack]]
が
FrontPage,BugTrack
として表示されています。
***原因 [#b0df437e]
-なぜかstrip_bracketしたページを後からBracketでwrapしなお...
***修正案 [#w9602cfb]
-ついでに、未作成ページが複数ページから参照されているとき...
-さらに、BracketNameの変換部にバグ発見。
[[ほげ>[[BugTrack/107]]]]
のような場合におかしくなるのを修理しました。(57~58行目)
-diffが必要以上に大きくなることを避けるために、一部インデ...
--- yetlist.inc.php Thu Jul 25 13:35:34 2002
+++ yetlist.new.php Thu Jul 25 14:32:38 2002
@@ -45,14 +45,18 @@
)/ex","check_link('$1','$name')",$line);
}
- foreach($_gwbn as $tmp)
+ foreach($_gwbn as $wbn => $refs_arr)
{
- $wbn = $tmp["name"];
- $name = $tmp["refer"];
-
+
+ foreach (array_unique($refs_arr) as $name)
+ {
+
if(preg_match("/^[^>]+>([^\]]+)/",$wbn,$match))
{
$wbn = $match[1];
+ //閉じブラケットの補充。/^\[\[/でも必要十分だが念の...
+ if(preg_match("/^\[\[[^\]]+$/",$wbn))
+ $wbn = "$wbn]]";
if(!preg_match("/($WikiName)|($BracketName)/",$wbn))
$wbn = "[[$wbn]]";
}
@@ -91,21 +95,21 @@
if(!is_page($wbn))
{
- $lists[strip_bracket($wbn)] = strip_bracket($wbn);
- $refer[strip_bracket($wbn)][$name] = $name;
+ $refer[$wbn][] = $name;
+ }
+
+ $wbn = $keep; //ひー ^^;)
}
}
- ksort($lists);
- foreach($lists as $wbn)
+ ksort($refer);
+ foreach($refer as $wbn => $refs_arr)
{
- $url = $wbn;
- if(!preg_match("/($WikiName)|($BracketName)/",$url))
- $url = "[[$url]]";
- $url = rawurlencode($url);
+ $url = rawurlencode($wbn);
+ $name = strip_bracket($wbn);
$link_ref = "";
- foreach($refer[$wbn] as $refs)
+ foreach(array_unique($refs_arr) as $refs)
{
$ref = strip_bracket($refs);
$refurl = rawurlencode($refs);
@@ -114,7 +118,7 @@
}
$link_ref = trim($link_ref);
- $ret["body"] .= "<li><a href=\"$script?cmd=edit&p...
+ $ret["body"] .= "<li><a href=\"$script?cmd=edit&p...
}
@@ -155,8 +159,7 @@
}
else if(preg_match("/^($BracketName)|($WikiName)$/",$n...
{
- $_gwbn[$name]["name"] = $name;
- $_gwbn[$name]["refer"] = $refer;
+ $_gwbn[$name][] = $refer;
return;
}
else
----
-PukiWikiと[[PukiWiki]]が区別されると...
-このパッチ適用してテストしている時に気がつきました。Brac...
-こんな感じでしょうか :) 外からくる$nameを展開せず、$name...
--- yetlist.inc.php Thu Jul 25 13:35:34 2002
+++ yetlist.new.php Thu Jul 25 14:32:38 2002
@@ -45,1 +45,1 @@
- )/ex","check_link('$1','$name')",$line);
+ )/ex","check_link('$1',\$name)",$line);
-$1も\$1にしたほうがいいかな? -- [[ゆう]] SIZE(10){2002-...
-$1の中身はpreg_replaceが適切にエスケープしてくれてるはず...
-了解です。あとついでにglobal変数をなくすように修正します...
-修正完了しました。[[cvs:plugin/yetlist.inc.php]] -- [[ゆ...
-WikiNameとBracketNameの仕様は変更できないでしょうか? 同...
--たとえば、WikiNameとして通用するBracketNameをWikiNameと...
--そうですね。ソース見てみますが大変そうでし・・・。Wiki...
-- [[PukiWiki/1.4/NoBracketName]] -- &new{2009-08-25 (火...
//#comment
ページ名: