ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#629 closed defect (fixed)

同じメンバーにコミュニティ副管理者と管理者交代要請を何度も送ることができる

Reported by: ogawa Owned by: ogawa
Priority: minor Milestone: OpenPNE2.6.7
Component: user【ユーザー向け機能】 Version:
Keywords: OpenPNE2.8RC1 Cc:

Description

http://www.openpne.jp/ticket/529 より転記。

コミュニティ管理(c_edit_member)からコミュニティ参加者に副管理者要請もしくは管理者交代要請を送った後、コミュニティ管理画面からはリンクが消える仕様になっているが、要請メッセージの送信はダイレクトアクセスでどちらも可能であるため、何度も要請メッセージを送信できます。

Change History (20)

comment:1 Changed 13 years ago by ebihara

確認します。

comment:2 Changed 13 years ago by ebihara

確認できました。修正します

comment:3 Changed 13 years ago by ebihara

Owner: changed from takanashi to ebihara

comment:4 Changed 13 years ago by ebihara

確認してみたところ、

  • page_c_sub_admin_request
  • page_c_admin_request
  • do_c_sub_admin_request_insert_c_commu_sub_admin_confirm
  • do_c_admin_request_insert_c_commu_admin_confirm

いずれもアクセスできてしまいました。

これらすべてに対してのアクセスの際に、依頼メッセージ送信済かどうかをチェックして、送信済の場合はエラーメッセージ等を出す形で対処します。

comment:5 Changed 13 years ago by ogawa

携帯版も確認入れてください。

comment:6 Changed 13 years ago by ebihara

おっと、携帯版はうっかりしてました。

  • do_c_edit_member_insert_c_commu_admin_confirm
  • do_c_edit_member_insert_c_commu_sub_admin_confirm

それから携帯版については、page_c_edit_memberから送信済のユーザが選択できてしまいます。こちらも、送信済のユーザは選択できないように修正する必要がありそうですね。

とりあえずPC版のみ変更したリビジョンは以下です。

comment:7 Changed 13 years ago by ebihara

携帯版も修正しました。

comment:8 Changed 13 years ago by ogawa

携帯版の修正リビジョンは以下の間違いですね。

Smartyの代替条件演算子「le」は使わないでください。PHP標準の条件演算子「<=」の方が明らかに可読性が高いです。

comment:9 Changed 13 years ago by ebihara

修正リビジョンの訂正ありがとうございます。

「le」についてですが、PC版のテンプレート(c_edit_member.tpl)で使用していたのでそれに倣いました。たしかに可読性が高いのは「<=」ですので、携帯版、PC版の両方とも「<=」を使用する形で修正したいと思います。

comment:10 Changed 13 years ago by ebihara

ついでなので、全テンプレートの代替演算子を条件演算子に置換します。 http://sky.freespace.jp/smarty/SmartyManual_2-6-7J_html/language.function.if.html

条件代替(置換対象)
eq
=||ne, neq
>gt
<lt
>gte, ge
<lte, le
||not
%mod

comment:11 Changed 13 years ago by ebihara

以下のリビジョンで、webapp/ 以下のすべてのテンプレートについて、Smartyの代替演算子を条件演算子に置換しました。

comment:12 Changed 13 years ago by ogawa

Owner: changed from ebihara to ogawa
Status: newassigned

確認します。

comment:13 Changed 13 years ago by ogawa

多重送信の修正を取り込みました。

演算子統一の修正は2.8系のみ取り込みます。

comment:14 Changed 13 years ago by ogawa

Resolution: fixed
Status: assignedclosed

別チケットを作成し、このチケットはクローズします。

  • #664:Smartyの代替演算子を使用しないよう統一する

comment:15 Changed 13 years ago by motoi

以下の手順でやったところバグが確認できました。
何度も要請を送れるわけではありませんが、一度管理権を渡した後に副管理人に指名することが出来ました。

①「副管理人に指名」をクリックし、URLをコピー
②「管理権を渡す」をクリックし、送信ボタンを押す
③①でコピーしたURLを使ってダイレクトアクセスする

すると「副管理人に指名」ページに飛ぶことが出来、指名も出来ます。

comment:16 Changed 13 years ago by motoi

追記です。「副管理人に指名」ページへのダイレクトアクセスは、二度目からエラーになります。

comment:17 Changed 13 years ago by motoi

Resolution: fixed
Status: closedreopened

さらに追記です。
上記手順の逆も可能で、「副管理人に指名」をした後にその人に「管理権を渡す」ことが可能になっています。
よろしくお願いします。

comment:18 Changed 13 years ago by kiwa

携帯からも確認されました

  1. コミュニティメンバーの編集(c_edit_member)からユーザAに「管理者交代の要請」を送る
  2. ユーザAが承認する前に、コミュニティメンバーの編集に戻る
  3. 副管理者要請フォームに、ユーザAの名前が入っている
  4. 副管理者要請メッセージも送ることができる

comment:19 Changed 13 years ago by ogawa

Resolution: fixed
Status: reopenedclosed

修正完了しました。

comment:20 Changed 13 years ago by ogawa

Keywords: OpenPNE2.8RC1 added
Note: See TracTickets for help on using tickets.