プロジェクト

全般

プロフィール

Backport(バックポート) #2693

Yuya Watanabe さんがほぼ13年前に更新

h3. 概要 

 携帯版で副管理者がコミュニティを削除するボタンが表示されている. 
 そのボタンを押すと「このページにはアクセスできません。」と表示されるため,実際には削除できない. 
 PC版では表示されないため,携帯版もPC版と同様に削除ボタンを表示しないようにする必要がある. 

 h3. 再現方法 

 前提:メンバAがコミュニティAの副管理者である 

 # コミュニティトップ画面(community/○○)のページにアクセスする 
 # 「コミュニティの編集」リンクをクリック 
 # コミュニティ編集画面(community/edit/○○)の表示に成功する 
 ** ページ最下部あたりに「コミュニティを削除する」の項目が表示されている 

 NOTE: ○○はコミュニティID 

 h3. 原因 原因(3.7.0のもの) 

 下記部分において削除可能かどうかの確認が行われていない. 

 /apps/mobile_frontend/modules/community/templates/editSuccess.php 24行目 
 <pre> 
  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; ?> 
 </pre> 

 h3. 修正方針 修正方針(3.7.0のもの) 

 削除項目を表示する際に削除できるかどうかを確認する. 
 具体的には下記のPC版のようにすることがいいと考えられる. 

 apps/pc_frontend/modules/community/templates/editSuccess.php 19行目 
 <pre> 
  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  
 </pre> 

 h3. 実装案 実装案(3.7.0のもの) 

 <pre> 
 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%'), 
 </pre>

戻る