source: branches/version-2_11-dev/data/class/pages/admin/system/LC_Page_Admin_System_System.php @ 20827

Revision 20827, 3.8 KB checked in by Seasoft, 13 years ago (diff)

#1250 (「システム設定 > システム情報」の概要の内容強化)

  • 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/*
3 * This file is part of EC-CUBE
4 *
5 * Copyright(c) 2000-2011 LOCKON CO.,LTD. All Rights Reserved.
6 *
7 * http://www.lockon.co.jp/
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * as published by the Free Software Foundation; either version 2
12 * of the License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22 */
23
24// {{{ requires
25require_once CLASS_EX_REALDIR . 'page_extends/admin/LC_Page_Admin_Ex.php';
26
27/**
28 * システム情報 のページクラス.
29 *
30 * @package Page
31 * @author LOCKON CO.,LTD.
32 * @version $Id$
33 */
34class LC_Page_Admin_System_System extends LC_Page_Admin_Ex {
35
36    // }}}
37    // {{{ functions
38
39    /**
40     * Page を初期化する.
41     *
42     * @return void
43     */
44    function init() {
45        parent::init();
46        $this->tpl_mainpage = 'system/system.tpl';
47        $this->tpl_subnavi  = 'system/subnavi.tpl';
48        $this->tpl_subno    = 'system';
49        $this->tpl_mainno   = 'system';
50        $this->tpl_subtitle = 'システム情報';
51    }
52
53    /**
54     * Page のプロセス.
55     *
56     * @return void
57     */
58    function process() {
59        $this->action();
60        $this->sendResponse();
61    }
62
63    /**
64     * Page のアクション.
65     *
66     * @return void
67     */
68    function action() {
69
70        $objFormParam = new SC_FormParam_Ex();
71
72        $this->initForm($objFormParam, $_GET);
73        switch($this->getMode()) {
74
75        // PHP INFOを表示
76        case 'info':
77            phpinfo();
78            exit;
79            break;
80
81        default:
82            break;
83        }
84
85        $this->arrSystemInfo = $this->getSystemInfo();
86    }
87
88    /**
89     * デストラクタ.
90     *
91     * @return void
92     */
93    function destroy() {
94        parent::destroy();
95    }
96
97    /**
98     * フォームパラメータ初期化.
99     *
100     * @param object $objFormParam
101     * @param array $arrParams $_GET値
102     * @return void
103     */
104    function initForm(&$objFormParam, &$arrParams) {
105        $objFormParam->addParam('mode', 'mode', INT_LEN, '', array('ALPHA_CHECK', 'MAX_LENGTH_CHECK'));
106        $objFormParam->setParam($arrParams);
107    }
108
109    /**
110     * システム情報を取得する.
111     *
112     * @return array システム情報
113     */
114    function getSystemInfo() {
115        $objDB = SC_DB_DBFactory_Ex::getInstance();
116
117        $arrSystemInfo = array(
118            array('title' => 'EC-CUBE',     'value' => ECCUBE_VERSION),
119            array('title' => 'サーバOS',    'value' => php_uname()),
120            array('title' => 'DBサーバ',    'value' => $objDB->sfGetDBVersion()),
121            array('title' => 'WEBサーバ',   'value' => $_SERVER['SERVER_SOFTWARE']),
122        );
123
124        $value = phpversion() . ' (' . implode(', ', get_loaded_extensions()) . ')';
125        $arrSystemInfo[] = array('title' => 'PHP', 'value' => $value);
126
127        if (extension_loaded('GD')) {
128            $arrValue = array();
129            foreach (gd_info() as $key => $val) {
130                $arrValue[] = "$key => $val";
131            }
132            $value = '有効 (' . implode(', ', $arrValue) . ')';
133        } else {
134            $value = '無効';
135        }
136        $arrSystemInfo[] = array('title' => 'GD', 'value' => $value);
137        $arrSystemInfo[] = array('title' => 'HTTPユーザーエージェント', 'value' => $_SERVER["HTTP_USER_AGENT"]);
138
139        return $arrSystemInfo;
140    }
141}
Note: See TracBrowser for help on using the repository browser.