1<?
if (!defined(
"B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !==
true)
10<div
class=
"menu-items" id=
"menu-items">
18 if (!isset($arMenuSection[
'type']) && $arMenuSection[
'type'] !=
"section")
23 $htmlMenu .=
'<div class="menu-separator">' . (isset($arMenuSection[
'text']) ? $arMenuSection[
'text'] :
'') .
'</div>';
25 if (!isset($arMenuSection[
'items']) || !is_array($arMenuSection[
'items']))
30 $htmlMenu .=
'<div class="menu-section menu-section-groups">';
32 foreach ($arMenuSection[
'items'] as $arMenuItem)
34 $htmlMenu .=
'<div class="menu-item';
36 if (isset($arMenuItem[
"class"]))
38 $htmlMenu .=
' ' . $arMenuItem[
"class"];
43 foreach ($arMenuItem as $attrName => $attrVal)
45 if ($attrName ==
'text' || $attrName ==
'type' || $attrName ==
'class')
50 $htmlMenu .=
' ' . $attrName .
'="' . $attrVal .
'"';
55 if (isset($arMenuItem[
'text']))
57 $htmlMenu .= $arMenuItem[
'text'];
60 $htmlMenu .=
'</div>';
63 $htmlMenu .=
'</div>';
70 <div
id=
"mobile_menu_preview_wrap">
71 <div
class=
"navigation-panel"></div>
72 <iframe
id=
"mobile_menu_preview"></iframe>
73 <div
id=
"preview_loading">
74 <div
class=
"loading-label">Loading...</div>
82 BXMSlider.setStateEnabled(BXMSlider.state.LEFT,
true);
83 document.addEventListener(
"DOMContentLoaded",
function ()
90 init:
function (currentItem)
92 this.isDesktop =
false;
94 var userAgent = navigator.userAgent;
95 if(userAgent.indexOf(
"Android") < 0 && userAgent.indexOf(
"iPhone") < 0 && userAgent.indexOf(
"iPad") < 0)
97 this.isDesktop =
true;
101 BX(
"menu-items").style.float =
"none";
103 this.currentItem = currentItem;
104 var items = document.getElementById(
"menu-items");
108 items.addEventListener(
"click",
function (event)
110 that.onItemClick(event);
115 onItemClick:
function (event)
117 var target =
event.target;
118 if (target && target.nodeType && target.nodeType == 1 && BX.hasClass(target,
"menu-item"))
120 if (this.currentItem !=
null)
121 this.unselectItem(this.currentItem);
122 this.selectItem(target);
124 var url = target.getAttribute(
"data-url");
125 var pageId = target.getAttribute(
"data-pageid");
129 if(BX.type.isNotEmptyString(url) && BX.type.isNotEmptyString(pageId))
130 app.loadPage(url, pageId);
131 else if(BX.type.isNotEmptyString(url))
136 var previewFrame = BX(
"mobile_menu_preview");
137 var wrapPreview = BX(
"mobile_menu_preview_wrap");
138 BX(
"preview_loading").style.display =
"table";
139 BX(
"preview_loading").style.opacity = 1.0;
141 wrapPreview.style.display =
"inline";
143 previewFrame.src = url;
144 previewFrame.onload =
function(){
154 BX(
"preview_loading").style.opacity = value/100;
157 callback_complete: function ()
159 BX(
"preview_loading").style.display =
"none"
166 this.currentItem = target;
171 selectItem:
function (item)
173 if (!BX.hasClass(item,
"menu-item-selected"))
174 BX.addClass(item,
"menu-item-selected");
177 unselectItem:
function (item)
179 BX.removeClass(item,
"menu-item-selected");
static Init($arExt=array(), $bReturn=false)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)