Bug(バグ) #2257
完了
モバイルでコミュニティの管理権を渡そうとしたときに「管理権を渡す」リンクが残ったまま
Yuya Watanabe さんが13年以上前に追加.
約7年前に更新.
説明
コミュニティの管理権をほかのメンバに渡す処理を行おうとした場合、メンバ管理画面においてPC版だとほかのメンバに申請を行ったあとだと「管理権交代依頼中」と表示されているが、モバイル版の場合「管理権を渡す」リンクが表示されたままとなっている。(添付画像参照)
このリンクをクリックするとエラーページが表示される。
ここはPC版と同様に「管理権交代依頼中」と表示させ、リンクを表示しないようにするべきだと思われる。
確認バージョン¶
OpenPNE3.6beta12, master
確認環境¶
Windows7 Firefox5 FiremobileSimlurator P903i
修正内容¶
管理者であり管理者交代依頼中であるときに「管理者交代依頼中」と表示されるような処理の状態だったものを、管理者ではなく管理者交代依頼中であるときに「管理者交代依頼中」と表示されるように修正。
ファイル
- ステータス を New(新規) から Accepted(着手) に変更
- 担当者 を Yuya Watanabe にセット
該当部分では、管理者でなければ「管理権を渡す」リンクを表示するようにする実装となっている。
admin_confirmはadminではないため最初の条件部分でtrueになってしまう。この部分を修正すればいいと思われる。
if (!$communityMember->hasPosition('admin'))
{
$operation[] = link_to(__("Take over this %community%'s administrator to this member"), 'community/changeAdminRequest?id='.$community->getId().'&member_id='.$member->getId());
}
elseif ($communityMember->hasPosition('admin_confirm'))
{
$operation[] = __("You are taking over this %community%'s administrator to this member now.");
}
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
- 対象バージョン を OpenPNE 3.7.0 にセット
- 3.6 で発生するか を Yes にセット
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
レビューしました。
この問題は #228 の 43ae2a74 での修正に誤りがあったために生じています(当該部分の元実装)。
なお、これは携帯版での問題ですが、 #228 時点でPC版は以下のようになっているようです(ここではインデントをつけています)。
- #228 時点の PC 版記述
<?php if (!$communityMember->hasPosition('admin')) : ?>
<?php if ($communityMember->hasPosition('admin_confirm')): ?>
<?php echo __("You are taking over this %community%'s administrator to this member now.") ?>
<?php else: ?>
<?php echo link_to(__("Take over this %community%'s administrator to this member"), 'community/changeAdminRequest?id='.$community->getId().'&member_id='.$member->getId()) ?>
<?php endif; ?>
<?php else: ?>
<?php endif; ?>
修正内容について¶
コミュニティメンバーに対して、
admin |
(何も表示しない) |
admin_confirm |
管理者交代依頼中 |
other |
管理権を渡す |
修正後は、上記の分岐を正しく表現できているので問題ないと判断します(分岐の書き方は #228 時点のPC版と同様になっています)。また、コーディング規約に反するような記述やミスも無いようなので問題ありません。
- ステータス を Pending Testing(テスト待ち) から Fixed(完了) に変更
- 進捗率 を 70 から 100 に変更
テスト完了致しました。
問題ありませんのでステータスを完了に致します。
他の形式にエクスポート: Atom
PDF