プロジェクト

全般

プロフィール

Bug(バグ) #2409

プロフィール確認画面に、遷移先が同画面のリンクがある

Kiwa Sakai12年以上前に追加. 約4年前に更新.

ステータス:
New(新規)
優先度:
Normal(通常)
担当者:
-
対象バージョン:
開始日:
2011-09-17
期日:
進捗率:

0%

3.6 で発生するか:
Yes (はい)
3.8 で発生するか:
Unknown (未調査)

説明

概要

プロフィール確認画面 ( /member/profile ) に表示されるプロフィール画像ガジェットに、「プロフィール確認」のリンクがあります。
このリンクの遷移先は同じ画面 ( /member/profile ) なので、表示しないほうがいいように感じます。

pc_frontend-member-profile.png 表示 (14.6 KB) Kiwa Sakai, 2011-09-17 18:32

履歴

#1 Kiwa Sakai12年以上前に更新

  • 説明 を更新 (diff)

#2 Yuya Watanabe12年以上前に更新

実装案を提示しておきます.

diff --git a/apps/pc_frontend/modules/default/templates/_memberImageBox.php b/apps/pc_frontend/modules/default/templates/_memberImageBox.php
index f6943a0..9eb2800 100644
--- a/apps/pc_frontend/modules/default/templates/_memberImageBox.php
+++ b/apps/pc_frontend/modules/default/templates/_memberImageBox.php
@@ -3,7 +3,10 @@ $moreInfo = array();
 if ($member->getId() === $id)
 {
   $moreInfo[] = link_to(__('Edit Photo'), '@member_config_image');
-  $moreInfo[] = link_to(__('Show Profile'), '@member_profile_mine');
+  if ('member' !== $sf_context->getModuleName() || 'profile' !== $sf_context->getActionName())
+  {
+    $moreInfo[] = link_to(__('Show Profile'), '@member_profile_mine');
+  }
 }
 elseif ($member->getImageFileName())
 {

#3 Minoru Takai12年以上前に更新

このチケットに対して言及しておきます。

プロフィール確認画面 ( /member/profile ) に表示されるプロフィール画像ガジェットに、「プロフィール確認」のリンクがあります。
このリンクの遷移先は同じ画面 ( /member/profile ) なので、表示しないほうがいいように感じます。

上記はチケット内容の引用ですが、「同一ページに対するリンクが表示されている」という点について、理由もなくこれが不適切であると判断するのは早計かと思います。「普通に考えたら同一ページに対するリンクがあるのは不自然だ」という意見を強く否定するわけではありませんが、そのようなページがあったとして、そのページでそのリンクが表示されている文脈(意図)を考えた上で対応(チケットの指摘に従うなら仕様の変更)をすべきです。

まず、このページは「(自身の)プロフィール確認ページ」であり、『他人がアクセスしてきた場合にどのように表示されるのか』を確認するためのページです。つまり、他人がアクセスした際の自身のプロフィールページ(あるいは自身が、他人のプロフィールページにアクセスした際のページ)と出力内容が同等になっているべきです。

上記のここまでの指摘は、次の主張を意味します。

  • (1) 他人がアクセスする自身のプロフィールページ(あるいは、自身がアクセスする他人のプロフィールページ)に、「プロフィール確認」のリンクが表示されるのであれば、(自身の)プロフィール確認ページにも(同一ページに対するリンクであるか否かに関わらず)「プロフィール確認」のリンクを表示すべきである。

しかしながら、他人がアクセスする自身のプロフィールページには「プロフィール確認」のリンクは表示されていません。つまり、ここでは (1) の主張は特に意味を持ちません。

このチケットで指摘された内容は、次に示す問題について行うべき対応と考えるべきかと思います。

現状では「他人がアクセスした際の自身のプロフィールページと出力内容が同等になっているべき」に反し、他人がアクセスした際には表示されない「写真を編集する」と「プロフィール確認」のリンクが表示されており、他人がアクセスした際には表示される「もっと写真を見る」のリンクが表示されていません。

つまり、現状の実装には次の問題があります。

  • (2) 「プロフィール確認画面」に、(他人がアクセスした際には表示されない)「写真を編集する」と「プロフィール確認」のリンクが表示されている。
  • (3) これは (2) に関連するが、「プロフィール確認画面」に、(他人がアクセスした際には表示される)「もっと写真を見る」のリンクが表示されていない。

ただし、ここで示した (2) と (3) の問題は、意図していない動作であるのか、既に検討した上での仕様であるのか判断できません。この問題が発覚した機会にこれを確認するということには意味があると思います。

まず、本チケットの報告の内容を何の理由もなしに「バグ」として扱うのは不適切だと考えます。次に、 (2), (3) の問題を扱うにしても、明らかなバグであると言えるのかについて疑義があります(とは言っても、チケットのトラッカーについては他に適切な値があるわけでもないので、トラッカーはバグとしておいてもよいと思います)。

対応(修正)を行う方は、このページではそもそも何が表示されているべきなのかを検討した上で、より本質的な対応を行うように心がけてください。また、困難でなければ検討した内容をチケット等の他人が参照できる場所に残してください(もちろんこれはこのチケットに限った話ではありません)。修正する必要が無いと判断してチケットをクローズする場合も、そう判断した経緯をできれば示しておいてください。

#4 Yuma Sakata12年以上前に更新

  • 3.6 で発生するかYes (はい) にセット
  • 3.4 で発生するかYes (はい) にセット

再現確認できました。

Environment (再現バージョン)

OpenPNE3.4.18
OpenPNE3.6.1

Way to repro (再現手順)

1. プロフィール確認ページ(/member/profile)にアクセスする
2. プロフィール画像ガジェットの「プロフィール確認」のリンク先を確認する
3. リンクの遷移先は同じページ(/member/profile)である

#5 kaoru n約4年前に更新

  • 対象バージョンOpenPNE 3.10.x にセット

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