source: branches/feature-module-update/data/class/pages/upgrade/LC_Page_Upgrade_Base.php @ 16852

Revision 16852, 2.7 KB checked in by adachi, 15 years ago (diff)

大文字小文字の修正

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