プロジェクト

全般

プロフィール

Backport(バックポート) #2829

小窓になりうるドメインを入力すると正しくないURLでリンクが生成される

Yuma Sakata約12年前に追加. 約12年前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2012-01-31
期日:
進捗率:

100%


説明

概要

www.google.co.jpwww.amazon.co.jp など,小窓となりうるリンクが存在する場合に http://www.www.google.co.jphttp://www.www.amazon.co.jp などといったようなリンクが生成される.

!https://redmine.openpne.jp/attachments/397/スクリーンショット.png!

参考: https://redmine.openpne.jp/issues/2323#note-3

確認環境

OpenPNE 3.7.0-dev
OpenPNE 3.6.1
OpenPNE 3.4.19


関連するチケット

関連している OpenPNE 3 - Bug(バグ) #2770: 小窓になりうるドメインを入力すると正しくないURLでリンクが生成される Fixed(完了) 2012-01-31

関係しているリビジョン

リビジョン ca61f40a (差分)
Yuya Watanabe約12年前に追加

(fixes #2829, BP from #2770) fixed to generate correct link having 'www.' cmd domain

BP from #2770
d83952de8411a15b5b7ae4b5313e751743a80492

履歴

#1 Yuya Watanabe約12年前に更新

  • ステータスNew(新規) から Accepted(着手) に変更
  • 担当者Yuya Watanabe にセット

#2 Yuya Watanabe約12年前に更新

原因

下記部分で $url にすでに www が付与されている状態であるにもかかわらず www が更に付与される状態となっている.

lib/helper/opUtilHelper.php 347行目

 334 function op_url_cmd($text)
 335 {
 336   return preg_replace_callback(SF_AUTO_LINK_RE, '_op_url_cmd', $text);
 337 }
 338 
 339 function _op_url_cmd($matches)
 340 {
 341   $url = $matches[2].$matches[3];
 342   $cmd = '';
 343 
 344   if ($matches[2] == 'www.')
 345   {
 346     $cmd .= 'www.';
 347     $url = 'http://www.'.$url;
 348   }

修正内容

347 行目で www が付与される意味はないはずなので,ここで www を付与しないように修正する.

diff --git a/lib/helper/opUtilHelper.php b/lib/helper/opUtilHelper.php
index d918493..5a17e99 100644
--- a/lib/helper/opUtilHelper.php
+++ b/lib/helper/opUtilHelper.php
@@ -344,7 +344,7 @@ function _op_url_cmd($matches)
   if ($matches[2] == 'www.')
   {
     $cmd .= 'www.';
-    $url = 'http://www.'.$url;
+    $url = 'http://'.$url;
   }

   if (preg_match('/([a-zA-Z0-9\-.]+)\/?(?:[a-zA-Z0-9_\-\/.,:;\~\?@&=+$%#!()])*/', $matches[3], $pmatch))

#3 Yuya Watanabe約12年前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

更新履歴 ca61f40a3bf858664d7739ac1ecb95f13900cf3b で適用されました。

#4 Kousuke Ebihara約12年前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

#5 Yuma Sakata約12年前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

テストOKです。

他の形式にエクスポート: Atom PDF