source: branches/feature-module-update/data/class/pages/error/LC_Page_Error.php @ 16425

Revision 16425, 6.0 KB checked in by nanasess, 15 years ago (diff)

リファクタリング

  • Property svn:keywords set to Id Revision Date
  • Property svn:mime-type set to text/x-httpd-php; charset=UTF-8
Line 
1<?php //-*- coding: utf-8 -*-
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7
8// {{{ requires
9require_once(CLASS_PATH . "pages/LC_Page.php");
10
11/**
12 * エラー表示のページクラス
13 *
14 * @package Page
15 * @author LOCKON CO.,LTD.
16 * @version $Id:LC_Page_Error.php 15532 2007-08-31 14:39:46Z nanasess $
17 */
18class LC_Page_Error extends LC_Page {
19
20    // {{{ properties
21
22    /** エラー種別 */
23    var $type;
24
25    /** SC_SiteSession インスタンス */
26    var $objSiteSess;
27
28    /** TOPへ戻るフラグ */
29    var $return_top = false;
30
31    /** エラーメッセージ */
32    var $err_msg = "";
33
34    /** モバイルサイトの場合 true */
35    var $is_mobile = false
36
37    // }}}
38    // {{{ functions
39
40    /**
41     * Page を初期化する.
42     *
43     * @return void
44     */
45    function init() {
46        parent::init();
47        $this->tpl_mainpage = 'error.tpl';
48        $this->tpl_column_num = 1;
49        $this->tpl_title = 'エラー';
50    }
51
52    /**
53     * Page のプロセス。
54     *
55     * @return void
56     */
57    function process() {
58        parent::process();
59
60        if ($this->objSiteSess != "") {
61            $this->objSiteSess->setNowPage('error');
62        }
63
64        if($this->is_mobile === true) {
65            $objView = new SC_MobileView();
66        } else {
67            $objView = new SC_SiteView();
68        }
69
70        switch ($this->type) {
71            case PRODUCT_NOT_FOUND:
72                $this->tpl_error="ご指定のページはございません。";
73                break;
74            case PAGE_ERROR:
75                $this->tpl_error="不正なページ移動です。";
76                break;
77            case CART_EMPTY:
78                $this->tpl_error="カートに商品ががありません。";
79                break;
80            case CART_ADD_ERROR:
81                $this->tpl_error="購入処理中は、カートに商品を追加することはできません。";
82                break;
83            case CANCEL_PURCHASE:
84                $this->tpl_error="この手続きは無効となりました。以下の要因が考えられます。<br />・セッション情報の有効期限が切れてる場合<br />・購入手続き中に新しい購入手続きを実行した場合<br />・すでに購入手続きを完了している場合";
85                break;
86            case CATEGORY_NOT_FOUND:
87                $this->tpl_error="ご指定のカテゴリは存在しません。";
88                break;
89            case SITE_LOGIN_ERROR:
90                $this->tpl_error="メールアドレスもしくはパスワードが正しくありません。";
91                break;
92            case TEMP_LOGIN_ERROR:
93                $this->tpl_error="メールアドレスもしくはパスワードが正しくありません。<br />本登録がお済みでない場合は、仮登録メールに記載されている<br />URLより本登録を行ってください。";
94                break;
95            case CUSTOMER_ERROR:
96                $this->tpl_error="不正なアクセスです。";
97                break;
98            case SOLD_OUT:
99                $this->tpl_error="申し訳ございませんが、ご購入の直前で売り切れた商品があります。この手続きは無効となりました。";
100                break;
101            case CART_NOT_FOUND:
102                $this->tpl_error="申し訳ございませんが、カート内の商品情報の取得に失敗しました。この手続きは無効となりました。";
103                break;
104            case LACK_POINT:
105                $this->tpl_error="申し訳ございませんが、ポイントが不足しております。この手続きは無効となりました。";
106                break;
107            case FAVORITE_ERROR:
108                $this->tpl_error="既にお気に入りに追加されている商品です。";
109                break;
110            case EXTRACT_ERROR:
111                $this->tpl_error="ファイルの解凍に失敗しました。\n指定のディレクトリに書き込み権限が与えられていない可能性があります。";
112                break;
113            case FTP_DOWNLOAD_ERROR:
114                $this->tpl_error="ファイルのFTPダウンロードに失敗しました。";
115                break;
116            case FTP_LOGIN_ERROR:
117                $this->tpl_error="FTPログインに失敗しました。";
118                break;
119            case FTP_CONNECT_ERROR:
120                $this->tpl_error="FTPログインに失敗しました。";
121                break;
122            case CREATE_DB_ERROR:
123                $this->tpl_error="DBの作成に失敗しました。\n指定のユーザーには、DB作成の権限が与えられていない可能性があります。";
124                break;
125            case DB_IMPORT_ERROR:
126                $this->tpl_error="データベース構造のインポートに失敗しました。\nsqlファイルが壊れている可能性があります。";
127                break;
128            case FILE_NOT_FOUND:
129                $this->tpl_error="指定のパスに、設定ファイルが存在しません。";
130                break;
131            case WRITE_FILE_ERROR:
132                $this->tpl_error="設定ファイルに書き込めません。\n設定ファイルに書き込み権限を与えてください。";
133                break;
134            case FREE_ERROR_MSG:
135                $this->tpl_error=$this->err_msg;
136                break;
137             default:
138                $this->tpl_error="エラーが発生しました。";
139                break;
140        }
141
142        $objView->assignobj($this);
143
144        // FIXME
145        global $objCampaignSess;
146
147        if(is_object($objCampaignSess)) {
148            // フレームを選択(キャンペーンページから遷移なら変更)
149            $objCampaignSess->pageView($objView);
150        } else {
151            $objView->display(SITE_FRAME);
152        }
153    }
154
155    /**
156     * デストラクタ.
157     *
158     * @return void
159     */
160    function destroy() {
161        parent::destroy();
162    }
163}
164?>
Note: See TracBrowser for help on using the repository browser.