- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2017-10-27T07:19:36+09:00","","")
* 編集時に整形ルールを表示していると、その部分で相対リンクや凍結の判定などをミスしている [#eff6e61b]
- ページ: [[BugTrack2]]
- ページ: [[BugTrack]]
- 投稿者: 名無しさん
- 優先順位: 普通
- 状態: 提案
- 状態: 完了
- カテゴリー: 本体バグ
- 投稿日: 2007-11-14 (水) 00:16:33
- バージョン:
- バージョン: 1.4.7
- リリース予定バージョン: 1.5.2
** メッセージ [#y14f388f]
編集中に「テキスト整形のルールを表示する」を選んだ時はcatrule() を呼び出していますが、&br;$vars['page'] を修正していないので、今編集しているページ名を相対リンクや凍結判定の基準にしてしまっています。
なので、見出し横のアンカー表示のリンク先が編集中のページ名になっていたり、整形ルールのページを凍結していても'#nofollow: Page not freezed' と表示されてしまいます。
include プラグインを参考に、include プラグインがなくても動く修正を考えてみました。
[[cvs:lib/func.php]] (1.93)
function catrule()
{
global $rule_page;
- global $rule_page;
+ global $rule_page, $get, $post, $vars;
if (! is_page($rule_page)) {
return '<p>Sorry, page \'' . htmlspecialchars($rule_page) .
'\' unavailable.</p>';
} else {
- return convert_html(get_source($rule_page));
+ $root = isset($vars['page']) ? $vars['page'] : '';
+ $get['page'] = $post['page'] = $vars['page'] = $rule_page;
+ $text = convert_html(get_source($rule_page));
+ $get['page'] = $post['page'] = $vars['page'] = $root;
+ return $text;
}
}
--------
- [[BugTrack/2266]] の対応で編集中の「テキスト整形のルールを表示する」では別ページを表示するようになりました。完了とします -- [[umorigu]] &new{2017-10-27 (金) 07:19:04};
#comment