プロジェクト

全般

プロフィール

Bug(バグ) #3006

Shouta Kashiwagi さんが12年以上前に更新


 h3. 概要 

 スマートフォンAPI(JSON API)を使用する際に必要となる apiKey がログイン前の状態でも表示されてしまっていて(表示されているのはapiKeyというプロパティ名だけであって実体は表示されていない), 
 かつOpenPNE3をデフォルトでインストール時に apiKeyが表示されないという問題がある. 

 h3. Causes (原因) 

 @apps/pc_frontend_templates/_layout.phpp@ の11行目にて,以下のような判定が行われている為,ログイン前でもapiKey表示され,OpenPNEインストール時はapiKeyが表示されなくなってしまっている. 
 <pre> 
 <?php if (Doctrine::getTable('SnsConfig')->get('enable_jsonapi')): ?> 
 </pre> 

 h3. Way to fix (修正内容) 

 ログイン後に表示させ,かつOpenPNEインストール時はデフォルトでapiKeyを出力させるには以下のような修正が適切であると考える. 

 <pre> 
 diff --git a/apps/pc_frontend/templates/_layout.php b/apps/pc_frontend/templates/_layout.php 
 index e9dc908..951a918 100644 
 --- a/apps/pc_frontend/templates/_layout.php 
 +++ b/apps/pc_frontend/templates/_layout.php 
 @@ -8,7 +8,7 @@ 
  <?php if (Doctrine::getTable('SnsConfig')->get('customizing_css')): ?> 
  <link rel="stylesheet" type="text/css" href="<?php echo url_for('@customizing_css') ?>" /> 
  <?php endif; ?> 
 -<?php if (Doctrine::getTable('SnsConfig')->get('enable_jsonapi')): ?> 
 +<?php if (opConfig::get('enable_jsonapi') && opToolkit::isSecurePage()): ?> 
  <?php 
  use_helper('Javascript'); 
 </pre>

戻る