Ignore:
Timestamp:
2007/11/28 22:53:02 (15 years ago)
Author:
adachi
Message:

認証処理修正

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update/data/class/pages/upgrade/LC_Page_Upgrade_ProductsList.php

    r16620 r16839  
    2323 
    2424// {{{ requires 
    25 require_once CLASS_PATH . 'pages/LC_Page.php'; 
    26 require_once 'utils/LC_Utils_Upgrade.php'; 
    27 require_once 'utils/LC_Utils_Upgrade_Log.php'; 
     25require_once 'LC_Page_Upgrade_Base.php'; 
    2826 
    2927/** 
     
    3432 * @version $Id$ 
    3533 */ 
    36 class LC_Page_Upgrade_ProductsList extends LC_Page { 
     34class LC_Page_Upgrade_ProductsList extends LC_Page_Upgrade_Base { 
    3735 
    3836    // }}} 
     
    4543     */ 
    4644    function init() { 
    47         $this->objJson = new Services_Json(); 
    48         $this->objLog  = new LC_Utils_Upgrade_Log('Products List'); 
     45        parent::init(); 
    4946    } 
    5047 
     
    5451     * @return void 
    5552     */ 
    56     function process() { 
    57         $this->objLog->start(); 
     53    function process($mode) { 
     54        $objLog  = new LC_Upgrade_Helper_Log; 
     55        $objJson = new LC_Upgrade_Helper_Json; 
     56 
     57        $objLog->start($mode); 
    5858 
    5959        // 管理画面ログインチェック 
    60         $this->objLog->log('* admin auth start'); 
    61         if (LC_Utils_Upgrade::isLoggedInAdminPage() !== true) { 
    62             $arrErr = array( 
    63                 'status'  => OWNERSSTORE_STATUS_ERROR, 
    64                 'errcode' => OWNERSSTORE_ERR_PL_ADMIN_AUTH, 
    65                 'body' => LC_Utils_Upgrade::getErrMessage(OWNERSSTORE_ERR_PL_ADMIN_AUTH) 
    66             ); 
    67             echo $this->objJson->encode($arrErr); 
    68             $this->objLog->errLog($arrErr['errcode']); 
    69             exit; 
     60        $objLog->log('* admin auth start'); 
     61        if ($this->isLoggedInAdminPage() !== true) { 
     62            $objJson->setError(OSTORE_E_C_ADMIN_AUTH); 
     63            $objJson->display(); 
     64            $objLog->error(OSTORE_E_C_ADMIN_AUTH); 
     65            return; 
     66        } 
     67 
     68        // 認証キーの取得 
     69        $public_key = $this->getPublicKey(); 
     70        $sha1_key = $this->createSeed(); 
     71 
     72        $objLog->log('* public key check start'); 
     73        if (empty($public_key)) { 
     74            $objJson->setError(OSTORE_E_C_NO_KEY); 
     75            $objJson->display(); 
     76            $objLog->error(OSTORE_E_C_NO_KEY); 
     77            return; 
    7078        } 
    7179 
    7280        // リクエストを開始 
    73         $this->objLog->log('* http request start'); 
    74         $objReq = LC_Utils_Upgrade::request('products_list'); 
     81        $objLog->log('* http request start'); 
     82        $arrPostData = array( 
     83            'eccube_url' => SITE_URL, 
     84            'public_key' => sha1($public_key . $sha1_key), 
     85            'sha1_key'   => $sha1_key 
     86        ); 
     87        $objReq = $this->request('products_list', $arrPostData); 
    7588 
    7689        // リクエストチェック 
    77         $this->objLog->log('* http request check start'); 
     90        $objLog->log('* http request check start'); 
    7891        if (PEAR::isError($objReq)) { 
    79             $arrErr = array( 
    80                 'status'  => OWNERSSTORE_STATUS_ERROR, 
    81                 'errcode' => OWNERSSTORE_ERR_PL_HTTP_REQ, 
    82                 'body' => LC_Utils_Upgrade::getErrMessage(OWNERSSTORE_ERR_PL_HTTP_REQ) 
    83             ); 
    84             echo $this->objJson->encode($arrErr); 
    85             $this->objLog->errLog($arrErr['errcode'], $objReq); 
    86             exit; 
     92            $objJson->setError(OSTORE_E_C_HTTP_REQ); 
     93            $objJson->display(); 
     94            $objLogerr(OSTORE_E_C_HTTP_REQ, $objReq); 
     95            return; 
    8796        } 
    8897 
    8998        // レスポンスチェック 
    90         $this->objLog->log('* http response check start'); 
     99        $objLog->log('* http response check start'); 
    91100        if ($objReq->getResponseCode() !== 200) { 
    92             $arrErr = array( 
    93                 'status'  => OWNERSSTORE_STATUS_ERROR, 
    94                 'errcode' => OWNERSSTORE_ERR_PL_HTTP_RESP_CODE, 
    95                 'body' => LC_Utils_Upgrade::getErrMessage(OWNERSSTORE_ERR_PL_HTTP_RESP_CODE) 
    96             ); 
    97             echo $this->objJson->encode($arrErr); 
    98             $this->objLog->errLog($arrErr['errcode'], $objReq); 
    99             exit; 
     101            $objJson->setError(OSTORE_E_C_HTTP_RESP); 
     102            $objJson->display(); 
     103            $objLog->error(OSTORE_E_C_HTTP_RESP, $objReq); 
     104            return; 
    100105        } 
    101106 
    102107        $body = $objReq->getResponseBody(); 
    103         $objRet = $this->objJson->decode($body); 
     108        $objRet = $objJson->decode($body); 
    104109 
    105110        // JSONデータのチェック 
    106         $this->objLog->log('* json deta check start'); 
     111        $objLog->log('* json deta check start'); 
    107112        if (empty($objRet)) { 
    108             $arrErr = array( 
    109                 'status'  => OWNERSSTORE_STATUS_ERROR, 
    110                 'errcode' => OWNERSSTORE_ERR_PL_INVALID_JSON_DATA, 
    111                 'body' => LC_Utils_Upgrade::getErrMessage(OWNERSSTORE_ERR_PL_INVALID_JSON_DATA) 
    112             ); 
    113             echo $this->objJson->encode($arrErr); 
    114             $this->objLog->errLog($arrErr['errcode'], $body); 
    115             exit; 
     113            $objJson->setError(OSTORE_E_C_FAILED_JSON_PARSE); 
     114            $objJson->display(); 
     115            $objLog->error(OSTORE_E_C_FAILED_JSON_PARSE, $objReq); 
     116            return; 
    116117        } 
    117118 
    118119        // ステータスチェック 
    119         $this->objLog->log('* json status check start'); 
    120         if ($objRet->status === OWNERSSTORE_STATUS_SUCCESS) { 
    121             $this->objLog->log('* get products list ok'); 
     120        $objLog->log('* json status check start'); 
     121        if ($objRet->status === OSTORE_STATUS_SUCCESS) { 
     122            $objLog->log('* get products list ok'); 
     123 
     124            $arrProducts = array(); 
     125 
     126            foreach ($objRet->data as $product) { 
     127                $arrProducts[] = get_object_vars($product); 
     128            } 
     129            $objView = new SC_AdminView(); 
     130            $objView->assign('arrProducts', $arrProducts); 
     131            //print_r($arrProducts); 
     132            $html = $objView->fetch('ownersstore/products_list.tpl'); 
     133 
     134            $objJson->setSuccess(array(), $html); 
     135            $objJson->display(); 
     136            $objLog->end(); 
     137            return; 
     138        } else { 
     139            // 配信サーバ側でエラーを補足 
    122140            echo $body; 
    123             exit; 
    124         } else { 
    125             echo $body; 
    126             $this->objLog->errLog($objRet->errcode, $objReq); 
    127             exit; 
     141            $objLog->error($objRet->errcode, $objReq); 
     142            return; 
    128143        } 
    129144    } 
     
    135150     */ 
    136151    function destroy() { 
    137         $this->objLog->end(); 
     152        parent::destroy(); 
    138153    } 
    139154} 
Note: See TracChangeset for help on using the changeset viewer.