DELETE FROM _widgets WHERE wd_id = 'default_menu';\r
INSERT INTO _widgets\r
(wd_id, wd_name, wd_type, wd_type_option, wd_category_id, wd_template_type, wd_version, wd_required_version, wd_author, wd_copyright, wd_license, wd_official_level, wd_description, wd_add_script_lib, wd_add_script_lib_a, wd_has_admin, wd_use_instance_def, wd_initialized, wd_cache_type, wd_view_control_type, wd_release_dt, wd_install_dt, wd_create_dt) VALUES\r
-('default_menu', 'デフォルトメニュー', 'menu', 'nav', 'menu', 'bootstrap', '3.1.0', '2.8.15', 'Naoki Hirata', 'Magic3.org', 'GPL', 10, '複数のメニューが作成できる多階層のメニューです。「user3」ポジションに配置するとナビゲーションメニューが表示できます。', '', 'jquery-ui.tabs', true, true, true, 2, 1, '2014-05-04', now(), now());\r
+('default_menu', 'デフォルトメニュー', 'menu', 'nav', 'menu', 'bootstrap', '3.1.1', '2.8.15', 'Naoki Hirata', 'Magic3.org', 'GPL', 10, '複数のメニューが作成できる多階層のメニューです。「user3」ポジションに配置するとナビゲーションメニューが表示できます。', '', 'jquery-ui.tabs', true, true, true, 2, 1, '2014-05-11', now(), now());\r
DELETE FROM _widgets WHERE wd_id = 'accordion_menu';\r
INSERT INTO _widgets\r
(wd_id, wd_name, wd_type, wd_category_id, wd_version, wd_author, wd_copyright, wd_license, wd_official_level, wd_description, wd_add_script_lib, wd_add_script_lib_a, wd_has_admin, wd_use_instance_def, wd_initialized, wd_cache_type, wd_view_control_type, wd_release_dt, wd_install_dt, wd_create_dt) VALUES\r
class default_menuWidgetContainer extends BaseWidgetContainer
{
private $db; // DB接続オブジェクト
+ private $targetObj; // 設定オブジェクト
private $langId; // 現在の言語
private $paramObj; // 定義取得用
private $cssFilePath = array(); // CSSファイル
// DBオブジェクト作成
$this->db = new default_menuDb();
+
+ // 定義ID取得
+ $configId = $this->gEnv->getCurrentWidgetConfigId();
+ if (empty($configId)) $configId = self::DEFAULT_CONFIG_ID;
+
+ // パラメータオブジェクトを取得
+ $this->targetObj = $this->getWidgetParamObjByConfigId($configId);
}
/**
* テンプレートファイルを設定
$this->renderType = 'JOOMLA_NEW'; // 描画出力タイプ
$this->templateType = $this->gEnv->getCurrentTemplateType();
$isNav = $this->isNavigationMenuStyle(); // ナビゲーションメニュータイプかどうか
+ $useVerticalMenu = 0;// 縦型メニューデザインを使用するかどうか
+ if (!empty($this->targetObj) && !empty($this->targetObj->useVerticalMenu)) $useVerticalMenu = 1;
+ // 描画タイプを決める
switch ($this->templateType){
case 0:
$this->renderType = 'JOOMLA_OLD';
break;
case 10:
- if ($isNav) $this->renderType = 'BOOTSTRAP';
+ if ($isNav){
+ $this->renderType = 'BOOTSTRAP_NAV'; // Boostrapナビゲーションメニュー
+ } else {
+ if ($useVerticalMenu){ // 縦型メニューの場合
+ $this->renderType = 'BOOTSTRAP';
+ } else {
+ $this->renderType = 'JOOMLA_NEW'; // 描画出力タイプ
+ }
+ }
break;
default:
$this->renderType = 'JOOMLA_NEW'; // 描画出力タイプ
case 'JOOMLA_OLD':
$templateFile = 'index_old.tmpl.html';
break;
- case 'BOOTSTRAP':
+ case 'BOOTSTRAP_NAV': // Bootstrapナビゲーションメニュー
$this->cssFilePath[] = $this->getUrl($this->gEnv->getCurrentWidgetCssUrl() . self::DEFAULT_BOOTSTRAP_CSS_FILE); // CSSファイル
+ $templateFile = 'index_bootstrap_nav.tmpl.html';
+ break;
+ case 'BOOTSTRAP': // Bootstrapメニュー
$templateFile = 'index_bootstrap.tmpl.html';
- break;
+ break;
}
return $templateFile;
}
$this->langId = $this->gEnv->getCurrentLanguage();
$this->currentUserLogined = $this->gEnv->isCurrentUserLogined(); // 現在のユーザはログイン中かどうか
- // 定義ID取得
- $configId = $this->gEnv->getCurrentWidgetConfigId();
- if (empty($configId)) $configId = self::DEFAULT_CONFIG_ID;
-
- // パラメータオブジェクトを取得
- $targetObj = $this->getWidgetParamObjByConfigId($configId);
+// // 定義ID取得
+// $configId = $this->gEnv->getCurrentWidgetConfigId();
+// if (empty($configId)) $configId = self::DEFAULT_CONFIG_ID;
+//
+// // パラメータオブジェクトを取得
+// $targetObj = $this->getWidgetParamObjByConfigId($configId);
+ $targetObj = $this->targetObj;
if (empty($targetObj)){ // 定義データが取得できないとき
// 出力抑止
$this->cancelParse();
$this->gEnv->setJoomlaMenuData($this->menuData);
// Bootstrap用のデータを埋め込む
- if ($this->renderType == 'BOOTSTRAP'){
+ if ($this->renderType == 'BOOTSTRAP_NAV'){
$this->tmpl->addVar("_widget", "site_url", $this->convertUrlToHtmlEntity($this->gEnv->getRootUrl() . '/'));
$this->tmpl->addVar("_widget", "sitename", $this->convertToDispString($this->gEnv->getSiteName()));
array_unshift($classArray, 'parent');
// ##### タグ作成 #####
- if ($this->renderType == 'BOOTSTRAP'){// Bootstrapタイプのとき
+ if ($this->renderType == 'BOOTSTRAP_NAV'){// Bootstrapナビゲーションメニューのとき
//$classArray[] = 'dropdown';
$dropDownCaret = '';
if ($level == 0){
$this->menuTree[] = $menuItem;
// ##### タグ作成 #####
- if ($this->renderType == 'BOOTSTRAP'){// Bootstrapタイプのとき
+ if ($this->renderType == 'BOOTSTRAP_NAV' || $this->renderType == 'BOOTSTRAP'){// Bootstrapメニューのとき
$treeHtml .= '<li class="divider"></li>' . M3_NL;
} else {
$treeHtml .= '<li><span class="separator">' . $title . '</span></li>' . M3_NL;
<td class="table-headside"><span {_HELP_MENU_DESIGN}>デザイン</span></td>\r
<td colspan="3">\r
<div class="checkbox"><label><input type="checkbox" id="is_hier" name="is_hier" {IS_HIER} {IS_HIER_DISABLED} />階層化あり</label></div>\r
- <fieldset>\r
- <legend>Artisteer型テンプレート用</legend>\r
<div class="checkbox"><label><input type="checkbox" name="item_vertical_menu" {VERTICAL_MENU} />縦型メニュー</label></div>\r
- </fieldset>\r
<fieldset>\r
<legend>Bootstrap型テンプレート用</legend>\r
<div class="checkbox"><label><input type="checkbox" name="item_show_sitename" {SHOW_SITENAME_CHECKED} />サイト名を常に表示</label></div>\r
* @link http://www.magic3.org
*/
<patTemplate:tmpl name="_widget">
-<nav class="navbar navbar-default navbar-fixed-top{NAVBAR_OPTION_CLASS}" role="navigation">
- <div class="navbar-header">
- <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#default_menu-navbar-collapse">
- <span class="sr-only">Toggle navigation</span>
- <span class="icon-bar"></span>
- <span class="icon-bar"></span>
- <span class="icon-bar"></span>
- </button>
- <a class="navbar-brand{SITENAME_OPTION_CLASS}" href="{SITE_URL}">{SITENAME}</a>
- </div>
- <div class="collapse navbar-collapse" id="default_menu-navbar-collapse">
- <ul class="nav navbar-nav">{MENU_HTML}</ul>
-<patTemplate:tmpl name="show_search" visibility="hidden">
- <div class="nav navbar-nav navbar-right col-sm-4">
- <form class="navbar-form" role="search">
- <div class="input-group">
- <input type="hidden" name="task" value="search">
- <input type="hidden" name="option" value="com_search">
- <input type="text" class="form-control" placeholder="キーワード検索" name="searchword">
- <div class="input-group-btn">
- <button class="btn btn-default" type="submit"><i class="glyphicon glyphicon-search"></i></button>
- </div>
- </div>
- </form>
- </div>
-</patTemplate:tmpl>
- </div>
-</nav>
+<ul class="nav nav-pills nav-stacked">{MENU_HTML}</ul>
</patTemplate:tmpl>
--- /dev/null
+/**
+ * 表示データ作成用テンプレート(patTemplate)
+ *
+ * LICENSE: This source file is licensed under the terms of the GNU General Public License.
+ *
+ * @package Magic3 Framework
+ * @author 平田直毅(Naoki Hirata) <naoki@aplo.co.jp>
+ * @copyright Copyright 2006-2014 Magic3 Project.
+ * @license http://www.gnu.org/copyleft/gpl.html GPL License
+ * @version SVN: $Id$
+ * @link http://www.magic3.org
+ */
+<patTemplate:tmpl name="_widget">
+<nav class="navbar navbar-default navbar-fixed-top{NAVBAR_OPTION_CLASS}" role="navigation">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#default_menu-navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <a class="navbar-brand{SITENAME_OPTION_CLASS}" href="{SITE_URL}">{SITENAME}</a>
+ </div>
+ <div class="collapse navbar-collapse" id="default_menu-navbar-collapse">
+ <ul class="nav navbar-nav">{MENU_HTML}</ul>
+<patTemplate:tmpl name="show_search" visibility="hidden">
+ <div class="nav navbar-nav navbar-right col-sm-4">
+ <form class="navbar-form" role="search">
+ <div class="input-group">
+ <input type="hidden" name="task" value="search">
+ <input type="hidden" name="option" value="com_search">
+ <input type="text" class="form-control" placeholder="キーワード検索" name="searchword">
+ <div class="input-group-btn">
+ <button class="btn btn-default" type="submit"><i class="glyphicon glyphicon-search"></i></button>
+ </div>
+ </div>
+ </form>
+ </div>
+</patTemplate:tmpl>
+ </div>
+</nav>
+</patTemplate:tmpl>