プロジェクト

全般

プロフィール

Bug(バグ) #2257

モバイルでコミュニティの管理権を渡そうとしたときに「管理権を渡す」リンクが残ったまま

Yuya Watanabeほぼ13年前に追加. 6年以上前に更新.

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

100%

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

説明

概要

コミュニティの管理権をほかのメンバに渡す処理を行おうとした場合、メンバ管理画面においてPC版だとほかのメンバに申請を行ったあとだと「管理権交代依頼中」と表示されているが、モバイル版の場合「管理権を渡す」リンクが表示されたままとなっている。(添付画像参照)
このリンクをクリックするとエラーページが表示される。

ここはPC版と同様に「管理権交代依頼中」と表示させ、リンクを表示しないようにするべきだと思われる。

確認バージョン

OpenPNE3.6beta12, master

確認環境

Windows7 Firefox5 FiremobileSimlurator P903i

修正内容

管理者であり管理者交代依頼中であるときに「管理者交代依頼中」と表示されるような処理の状態だったものを、管理者ではなく管理者交代依頼中であるときに「管理者交代依頼中」と表示されるように修正。

キャプチャ.PNG 表示 (7.71 KB) Yuya Watanabe, 2011-07-04 18:49


子チケット

Backport(バックポート) #4237: モバイルでコミュニティの管理権を渡そうとしたときに「管理権を渡す」リンクが残ったままNew(新規)

関係しているリビジョン

リビジョン 30bc42ab (差分)
Yuya Watanabeほぼ13年前に追加

fixed to show admin confirm status (fixes #2257)

履歴

#1 Yuya Watanabeほぼ13年前に更新

  • ステータス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.");
     }

#2 wa taほぼ13年前に更新

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

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

#3 Minoru Takaiほぼ13年前に更新

  • 対象バージョンOpenPNE 3.7.0 にセット
  • 3.6 で発生するかYes にセット

#4 Minoru Takaiほぼ13年前に更新

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

レビューしました。

背景

この問題は #22843ae2a74 での修正に誤りがあったために生じています(当該部分の元実装)。

なお、これは携帯版での問題ですが、 #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: ?>
     &nbsp;
    <?php endif; ?>
    

修正内容について

コミュニティメンバーに対して、

admin (何も表示しない)
admin_confirm 管理者交代依頼中
other 管理権を渡す

修正後は、上記の分岐を正しく表現できているので問題ないと判断します(分岐の書き方は #228 時点のPC版と同様になっています)。また、コーディング規約に反するような記述やミスも無いようなので問題ありません。

#5 isao sano12年以上前に更新

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

テスト完了致しました。
問題ありませんのでステータスを完了に致します。

#6 Chiharu Nakajima6年以上前に更新

3.6未対応
3.8発生せず

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