Project

General

Profile

Actions

Bug(バグ) #4680

closed

プロフィールページに表示されるフレンドリストにおいて a タグのパラメータとして img タグが埋め込まれてしまう

Added by kaoru n 6 months ago. Updated 3 months ago.

Status:
Fixed(完了)
Priority:
Normal(通常)
Assignee:
Target version:
Start date:
2024-06-04
Due date:
% Done:

100%

Estimated time:
(Total: 0:00 h)
3.6 で発生するか:
Unknown (未調査)
3.8 で発生するか:
Yes (はい)

Description

Overview (現象)

フレンドリストに表示されるメンバーの出力内容が下記のようになってしまう。

<a private_text="<img alt="" src="/images/no_image.gif" height="76" width="76" />" href="/member/xxx"><img alt="" src="/images/no_image.gif" height="76" width="76" /></a>

Causes (原因)

https://github.com/openpne/OpenPNE3/blob/master/apps/pc_frontend/templates/_partsNineTable.php#L22

<?php echo op_link_to_member($options->list[$j], array('link_target'  => op_image_tag_sf_image($options->list[$j]->getImageFileName(), array('size' => '76x76')), 'private_text' => op_image_tag_sf_image(NULL, array('size' => '76x76'))), '@obj_member_profile', $options->use_op_link_to_member_private) ?>

において、'private_text' に img タグが埋め込まれているため。

Way to fix (修正内容)

https://github.com/openpne/OpenPNE3/blob/master/lib/helper/opUtilHelper.php#L1063

        return isset($options['private_text']) ? $options['private_text'] : __('Private<br />Member');

$options['private_text'] になにかしら設定されていれば、web 公開されたプロフィールページにおいて非公開メンバーとして表示されるため、img タグではなく「private_text」と埋め込むように修正する。


Subtasks 2 (0 open2 closed)

Backport(バックポート) #4681: プロフィールページに表示されるフレンドリストにおいて a タグのパラメータとして img タグが埋め込まれてしまうFixed(完了)kaoru n2024-06-04

Actions
Backport(バックポート) #4682: プロフィールページに表示されるフレンドリストにおいて a タグのパラメータとして img タグが埋め込まれてしまうFixed(完了)kaoru n2024-06-04

Actions
Actions #1

Updated by kaoru n 6 months ago

  • Status changed from New(新規) to Pending Review(レビュー待ち)
  • % Done changed from 0 to 50

https://github.com/openpne/OpenPNE3/pull/712
にてプルリクエストしました

Actions #2

Updated by Rimpei Ogawa 3 months ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)

private_text に img タグが含まれているのは問題なく、
「private_text」という値にしてしまうと、
web全体に公開のプロフィール画面を非ログイン状態でみた場合にプロフィール画像が表示される部分に「private_text」という文字列が出力されてしまいます。

問題なのは出力された a タグの属性に private_text が含まれてしまっていることで、
原因は op_link_to_member() 内で private_text オプションを link_to() に渡してしまっている部分です。

op_link_to_member() 内で link_to() を呼び出す
https://github.com/openpne/OpenPNE3/blob/master/lib/helper/opUtilHelper.php#L1079
より前に以下の処理を加える修正がよいと思います。

unset($options['private_text']);

Actions #3

Updated by kaoru n 3 months ago

  • Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)

https://github.com/openpne/OpenPNE3/pull/712
プルリクエスト修正しました

Actions #4

Updated by Rimpei Ogawa 3 months ago

  • Status changed from Pending Review(レビュー待ち) to Pending Testing(テスト待ち)
  • % Done changed from 50 to 70

レビューOKです。

Actions #5

Updated by isao sano 3 months ago

  • Status changed from Pending Testing(テスト待ち) to Pending Merge(マージ待ち)
  • % Done changed from 70 to 80

単体試験完了しました。問題ありません。

Actions #6

Updated by kaoru n 3 months ago

  • Status changed from Pending Merge(マージ待ち) to Fixed(完了)
  • % Done changed from 80 to 100

マージしました

Actions

Also available in: Atom PDF