操作
Backport(バックポート) #2693
完了携帯版で副管理者がコミュニティを削除するボタンが表示されてしまっている
開始日:
2011-10-11
期日:
進捗率:
100%
予定工数:
説明
概要¶
携帯版で副管理者がコミュニティを削除するボタンが表示されている.
そのボタンを押すと「このページにはアクセスできません。」と表示されるため,実際には削除できない.
PC版では表示されないため,携帯版もPC版と同様に削除ボタンを表示しないようにする必要がある.
再現方法¶
前提:メンバAがコミュニティAの副管理者である
- コミュニティトップ画面(community/○○)のページにアクセスする
- 「コミュニティの編集」リンクをクリック
- コミュニティ編集画面(community/edit/○○)の表示に成功する
- ページ最下部あたりに「コミュニティを削除する」の項目が表示されている
NOTE: ○○はコミュニティID
原因¶
下記部分において削除可能かどうかの確認が行われていない.
/apps/mobile_frontend/modules/community/templates/editSuccess.php 24行目
22 )) ?> 23 24 <?php if (!$communityForm->isNew()): ?> 25 <?php 26 op_include_parts('buttonBox', 'deleteForm', array( 27 'title' => __('Delete this %community%'), 28 'body' => __('delete this %community%.if you delete this %community% please to report in advance for all this %community% members.'), 29 'button' => __('Delete'), 30 'method' => 'get', 31 'url' => url_for('@community_delete?id=' . $community->getId()), 32 )); 33 ?> 34 <hr color="<?php echo $op_color['core_color_11'] ?>"> 35 <?php echo link_to(__('Community Top'), '@community_home?id='.$community->getId()) ?> 36 <?php endif; ?>
修正方針¶
削除項目を表示する際に削除できるかどうかを確認する.
具体的には下記のPC版のようにすることがいいと考えられる.
apps/pc_frontend/modules/community/templates/editSuccess.php 19行目
18 19 if (!$communityForm->isNew() && $isDeleteCommunity) 20 { 21 op_include_parts('buttonBox', 'deleteForm', array( 22 'title' => __('Delete this %community%'), 23 'body' => __('delete this %community%.if you delete this %community% please to report in advance for all this %community% members.'), 24 'button' => __('Delete'), 25 'method' => 'get', 26 'url' => url_for('@community_delete?id=' . $community->getId()), 27 )); 28 } 29
実装案¶
diff --git a/apps/mobile_frontend/modules/community/templates/editSuccess.php b/apps/mobile_frontend/modules/community/templates/editSuccess.php index f568b4c..6859e9d 100644 --- a/apps/mobile_frontend/modules/community/templates/editSuccess.php +++ b/apps/mobile_frontend/modules/community/templates/editSuccess.php @@ -21,7 +21,7 @@ else 'align' => 'center', )) ?> -<?php if (!$communityForm->isNew()): ?> +<?php if (!$communityForm->isNew() && $isDeleteCommunity): ?> <?php op_include_parts('buttonBox', 'deleteForm', array( 'title' => __('Delete this %community%'),
操作