#author("2017-10-27T07:19:04+09:00","","")
#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, $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

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.042 sec.

SourceForge