OSDN Git Service

初回コミット(v2.6.17.1)
[magic3/magic3.git] / widgets / event_main / include / container / event_mainWidgetContainer.php
1 <?php
2 /**
3  * index.php用コンテナクラス
4  *
5  * PHP versions 5
6  *
7  * LICENSE: This source file is licensed under the terms of the GNU General Public License.
8  *
9  * @package    Magic3 Framework
10  * @author     平田直毅(Naoki Hirata) <naoki@aplo.co.jp>
11  * @copyright  Copyright 2006-2011 Magic3 Project.
12  * @license    http://www.gnu.org/copyleft/gpl.html  GPL License
13  * @version    SVN: $Id: event_mainWidgetContainer.php 3998 2011-02-15 01:31:09Z fishbone $
14  * @link       http://www.magic3.org
15  */
16 require_once($gEnvManager->getCurrentWidgetContainerPath() .    '/event_mainBaseWidgetContainer.php');
17
18 class event_mainWidgetContainer extends event_mainBaseWidgetContainer
19 {
20         /**
21          * コンストラクタ
22          */
23         function __construct()
24         {
25                 // 親クラスを呼び出す
26                 parent::__construct();
27                 
28                 // ウィジェットオブジェクト取得
29                 self::$_paramObj = $this->getWidgetParamObj();
30         }
31         /**
32          * ディスパッチ処理(メインコンテナのみ実行)
33          *
34      * HTTPリクエストの内容を見て処理をコンテナに振り分ける
35          *
36          * @param RequestManager $request               HTTPリクエスト処理クラス
37          * @param object         $param                 任意使用パラメータ。そのまま_assign()に渡る
38          * @return bool                                                 このクラスの_setTemplate(), _assign()へ処理を継続するかどうかを返す。
39          *                                      true=処理を継続、false=処理を終了
40          */
41         function _dispatch($request, &$param)
42         {
43                 // 実行処理を決定
44                 $task = $request->trimValueOf(M3_REQUEST_PARAM_OPERATION_TASK);
45                 if (empty($task)) $task = self::DEFAULT_TASK;
46
47                 // ##### アクセス制御 #####
48                 self::$_canEditEntry = false;           // 記事編集権限
49                 if ($this->gEnv->isSystemManageUser()){                 // システム運用可能ユーザのとき
50                         self::$_canEditEntry = true;            // 記事編集権限
51                 }
52                 
53                 // ##### コンテナを起動 #####
54                 $goWidget = false;              // サブウィジェットを実行するかどうか
55                 switch ($task){
56                         case self::TASK_TOP:                    // トップ画面
57                         case self::TASK_CALENDAR:               // カレンダー画面
58                                 $goWidget = true;               // サブウィジェットを実行するかどうか
59                                 break;
60                 }
61                 if ($goWidget){         // サブウィジェットを実行するかどうか
62                         $this->gLaunch->goSubWidget($task);             // 一般機能で呼び出し
63                         return false;
64                 } else {
65                         $this->SetMsg(self::MSG_APP_ERR, "画面が見つかりません");
66                         return true;
67                 }
68         }
69         /**
70          * テンプレートファイルを設定
71          *
72          * _assign()でデータを埋め込むテンプレートファイルのファイル名を返す。
73          * 読み込むディレクトリは、「自ウィジェットディレクトリ/include/template」に固定。
74          *
75          * @param RequestManager $request               HTTPリクエスト処理クラス
76          * @param object         $param                 任意使用パラメータ。そのまま_assign()に渡る
77          * @return string                                               テンプレートファイル名。テンプレートライブラリを使用しない場合は空文字列「''」を返す。
78          */
79         function _setTemplate($request, &$param)
80         {
81                 $task = $request->trimValueOf(M3_REQUEST_PARAM_OPERATION_TASK);
82                 return 'message.tmpl.html';
83         }
84         /**
85          * テンプレートにデータ埋め込む
86          *
87          * _setTemplate()で指定したテンプレートファイルにデータを埋め込む。
88          *
89          * @param RequestManager $request               HTTPリクエスト処理クラス
90          * @param object         $param                 任意使用パラメータ。_setTemplate()と共有。
91          * @return                                                              なし
92          */
93         function _assign($request, &$param)
94         {
95                 $task = $request->trimValueOf(M3_REQUEST_PARAM_OPERATION_TASK);
96
97                 // 要求画面によってテンプレートを変更
98                 switch ($task){
99                         case self::TASK_TOP:                    // トップ画面
100                         default:
101                                 break;
102                 }
103         }
104 }
105 ?>