7 * LICENSE: This source file is licensed under the terms of the GNU General Public License.
9 * @package Magic3 Framework
10 * @author 平田直毅(Naoki Hirata) <naoki@aplo.co.jp>
11 * @copyright Copyright 2006-2012 Magic3 Project.
12 * @license http://www.gnu.org/copyleft/gpl.html GPL License
13 * @version SVN: $Id: admin_default_contentBaseWidgetContainer.php 4970 2012-06-15 10:51:03Z fishbone $
14 * @link http://www.magic3.org
16 require_once($gEnvManager->getContainerPath() . '/baseAdminWidgetContainer.php');
17 require_once($gEnvManager->getWidgetContainerPath('default_content') . '/default_contentCommonDef.php');
18 require_once($gEnvManager->getWidgetDbPath('default_content') . '/default_contentDb.php');
20 class admin_default_contentBaseWidgetContainer extends BaseAdminWidgetContainer
22 protected static $_mainDb; // DB接続オブジェクト
23 protected static $_configArray; // 汎用コンテンツ定義値
25 const DEFAULT_TOP_PAGE = 'content'; // デフォルトのトップページ
26 const WIDGET_TITLE_NAME = 'デフォルトコンテンツ'; // ウィジェットタイトル名
28 const TASK_CONTENT = 'content'; // コンテンツ管理
29 const TASK_CONTENT_DETAIL = 'content_detail'; // コンテンツ管理詳細
30 const TASK_ADD_TO_MENU = 'add_to_menu'; // コンテンツへのリンクをメニューに追加
31 const TASK_OTHER = 'other'; // その他設定
32 const TASK_HISTORY = 'history'; // コンテンツ履歴
37 function __construct()
40 parent::__construct();
43 $this->setDefaultWidgetId(default_contentCommonDef::CONTENT_WIDGET_ID);
46 if (!isset(self::$_mainDb)) self::$_mainDb = new default_contentDb();
49 if (!isset(self::$_configArray)) self::$_configArray = default_contentCommonDef::loadConfig(self::$_mainDb);
54 * _setTemplate()で指定したテンプレートファイルにデータを埋め込む。
56 * @param RequestManager $request HTTPリクエスト処理クラス
57 * @param object $param 任意使用パラメータ。_setTemplate()と共有。
60 function _postAssign($request, &$param)
63 $openBy = $request->trimValueOf(M3_REQUEST_PARAM_OPEN_BY); // ウィンドウオープンタイプ
64 if (!empty($openBy)) $this->addOptionUrlParam(M3_REQUEST_PARAM_OPEN_BY, $openBy);
65 if ($openBy == 'simple' || $openBy == 'tabs') return; // シンプルウィンドウまたはタブ表示のときはメニューを表示しない
68 $task = $request->trimValueOf(M3_REQUEST_PARAM_OPERATION_TASK);
69 if (empty($task)) $task = self::DEFAULT_TOP_PAGE;
73 case self::TASK_CONTENT: // コンテンツ管理
74 case self::TASK_CONTENT_DETAIL: // コンテンツ管理(詳細)
75 $linkList = ' >> コンテンツ管理';// パンくずリスト
77 case self::TASK_OTHER: // その他設定
78 $linkList = ' >> 基本設定';// パンくずリスト
81 // ####### 上段メニューの作成 #######
82 $menuText = '<div id="configmenu-upper">' . M3_NL;
83 $menuText .= '<ul>' . M3_NL;
84 $baseUrl = $this->getAdminUrlWithOptionParam(true);// 画面定義ID付き
88 $link = $baseUrl . '&task=content';
89 if ($task == self::TASK_CONTENT ||
90 $task == self::TASK_CONTENT_DETAIL){
91 $current = 'id="current"';
93 $menuText .= '<li ' . $current . '><a href="'. $this->getUrl($link, true) .'"><span>コンテンツ管理</span></a></li>' . M3_NL;
97 $link = $baseUrl . '&task=other';
98 if ($task == self::TASK_OTHER){
99 $current = 'id="current"';
101 $menuText .= '<li ' . $current . '><a href="'. $this->getUrl($link, true) .'"><span>基本設定</span></a></li>' . M3_NL;
104 $menuText .= '</ul>' . M3_NL;
105 $menuText .= '</div>' . M3_NL;
108 $topName = self::WIDGET_TITLE_NAME . '(' . default_contentCommonDef::$_deviceTypeName . ')';
109 $linkList = '<div id="configmenu-top"><label>' . $topName . $linkList . '</div>';
110 $outputText .= '<table width="90%"><tr><td>' . $linkList . $menuText . '</td></tr></table>' . M3_NL;
111 $this->tmpl->addVar("_widget", "menu_items", $outputText);