source: branches/version-2_12-dev/data/class/pages/upgrade/LC_Page_Upgrade_Base.php @ 21750

Revision 21750, 3.2 KB checked in by shutta, 12 years ago (diff)

#1579 SC_Query::getSingletonInstance()への置き換え

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/x-httpd-php; charset=UTF-8
Line 
1<?php
2// {{{ requires
3require_once CLASS_EX_REALDIR . 'page_extends/LC_Page_Ex.php';
4require_once CLASS_REALDIR . 'pages/upgrade/helper/LC_Upgrade_Helper_Log.php';
5require_once CLASS_REALDIR . 'pages/upgrade/helper/LC_Upgrade_Helper_Json.php';
6
7/**
8 * オーナーズストアページクラスの基底クラス.
9 *
10 * @package Page
11 * @author LOCKON CO.,LTD.
12 * @version $Id$
13 */
14class LC_Page_Upgrade_Base extends LC_Page_Ex {
15    function isValidIP() {
16        $objLog  = new LC_Upgrade_Helper_Log;
17        $masterData = new SC_DB_MasterData();
18        $arrOstoreIPs = $masterData->getMasterData('mtb_ownersstore_ips');
19
20        if (isset($_SERVER['REMOTE_ADDR'])
21            && in_array($_SERVER['REMOTE_ADDR'], $arrOstoreIPs))
22        {
23            $objLog->log('* ip ok ' . $_SERVER['REMOTE_ADDR']);
24            return true;
25        }
26        $objLog->log('* refused ip ' . $_SERVER['REMOTE_ADDR']);
27        return false;
28    }
29
30    /**
31     * 自動アップデートが有効かどうかを判定する.
32     *
33     * @param integer $product_id
34     * @return boolean
35     */
36    function autoUpdateEnable($product_id) {
37        $where = 'module_id = ?';
38        $objQuery =& SC_Query_Ex::getSingletonInstance();
39        $arrRet = $objQuery->select('auto_update_flg', 'dtb_module', $where, array($product_id));
40
41        if (isset($arrRet[0]['auto_update_flg'])
42        && $arrRet[0]['auto_update_flg'] === '1') {
43
44            return true;
45        }
46
47        return false;
48    }
49
50    /**
51     * 配信サーバーへリクエストを送信する.
52     *
53     * @param string $mode
54     * @param array $arrParams 追加パラメーター.連想配列で渡す.
55     * @return string|object レスポンスボディ|エラー時にはPEAR::Errorオブジェクトを返す.
56     */
57    function request($mode, $arrParams = array(), $arrCookies = array()) {
58        $objReq = new HTTP_Request();
59        $objReq->setUrl(OSTORE_URL . 'upgrade/index.php');
60        $objReq->setMethod('POST');
61        $objReq->addPostData('mode', $mode);
62        foreach ($arrParams as $key => $val) {
63            $objReq->addPostData($key, $val);
64        }
65
66        foreach ($arrCookies as $cookie) {
67            $objReq->addCookie($cookie['name'], $cookie['value']);
68        }
69
70        $e = $objReq->sendRequest();
71        if (PEAR::isError($e)) {
72            return $e;
73        } else {
74            return $objReq;
75        }
76    }
77
78    function isLoggedInAdminPage() {
79        $objSess = new SC_Session_Ex();
80
81        if ($objSess->isSuccess() === SUCCESS) {
82            return true;
83        }
84        return false;
85    }
86
87    /**
88     * 予測されにくいランダム値を生成する.
89     *
90     * @return string
91     */
92    function createSeed() {
93        return sha1(uniqid(rand(), true) . time());
94    }
95
96    function getPublicKey() {
97        $objQuery =& SC_Query_Ex::getSingletonInstance();
98        $arrRet = $objQuery->select('*', 'dtb_ownersstore_settings');
99        return isset($arrRet[0]['public_key'])
100            ? $arrRet[0]['public_key']
101            : null;
102    }
103
104    /**
105     * オーナーズストアからの POST のため, トークンチェックしない.
106     */
107    function doValidToken() {
108        // nothing.
109    }
110}
Note: See TracBrowser for help on using the repository browser.