Файловый менеджер - Редактировать - /home/wuectly/www/03cbe/menu.zip
Назад
PK Xt!]��= menu.xmlnu &1i� <?xml version="1.0" encoding="utf-8"?> <extension version="3.7" type="plugin" group="editors-xtd" method="upgrade"> <name>plg_editors-xtd_menu</name> <author>Joomla! Project</author> <creationDate>August 2016</creationDate> <copyright>(C) 2016 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.7.0</version> <description>PLG_EDITORS-XTD_MENU_XML_DESCRIPTION</description> <files> <filename plugin="menu">menu.php</filename> </files> <languages> <language tag="en-GB">en-GB.plg_editors-xtd_menu.ini</language> <language tag="en-GB">en-GB.plg_editors-xtd_menu.sys.ini</language> </languages> </extension> PK Xt!]�䮉X X menu.phpnu &1i� <?php /** * @package Joomla.Plugin * @subpackage Editors-xtd.menu * * @copyright (C) 2016 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; /** * Editor menu button * * @since 3.7.0 */ class PlgButtonMenu extends JPlugin { /** * Load the language file on instantiation. * * @var boolean * @since 3.7.0 */ protected $autoloadLanguage = true; /** * Display the button * * @param string $name The name of the button to add * * @since 3.7.0 * @return array */ public function onDisplay($name) { /* * Use the built-in element view to select the menu item. * Currently uses blank class. */ $user = JFactory::getUser(); if ($user->authorise('core.create', 'com_menus') || $user->authorise('core.edit', 'com_menus')) { $link = 'index.php?option=com_menus&view=items&layout=modal&tmpl=component&' . JSession::getFormToken() . '=1&editor=' . $name; $button = new JObject; $button->modal = true; $button->class = 'btn'; $button->link = $link; $button->text = JText::_('PLG_EDITORS-XTD_MENU_BUTTON_MENU'); $button->name = 'share-alt'; $button->options = "{handler: 'iframe', size: {x: 800, y: 500}}"; return $button; } } } PK g}!] � t3bootstrap.phpnu &1i� <?php /** *------------------------------------------------------------------------------ * @package T3 Framework for Joomla! *------------------------------------------------------------------------------ * @copyright Copyright (C) 2004-2013 JoomlArt.com. All Rights Reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt * @authors JoomlArt, JoomlaBamboo, (contribute to this project at github * & Google group to become co-author) * @Google group: https://groups.google.com/forum/#!forum/t3fw * @Link: http://t3-framework.org *------------------------------------------------------------------------------ */ if (!class_exists('T3BootstrapTpl', false)) { T3::import('menu/t3bootstrap.tpl'); } class T3Bootstrap { /** * Internal variables */ protected $menutype; protected $menu; /** * @param string $menutype */ function __construct($menutype = 'mainmenu') { $this->menutype = $menutype; $this->menu = ''; } /** * @return string */ function render() { if(!$this->menu){ ob_start(); T3BootstrapTpl::render($this->getList()); $this->menu = ob_get_contents(); ob_end_clean(); } return $this->menu; } /** * @return mixed */ function getList() { $app = JFactory::getApplication(); $menu = $app->getMenu(); // Get active menu item $items = $menu->getItems('menutype', $this->menutype); $lastitem = 0; if ($items) { foreach ($items as $i => $item) { $item->deeper = false; $item->shallower = false; $item->level_diff = 0; $itemParams = version_compare(JVERSION, '4','ge') ? $item->getParams() : $item->params; if (isset($items[$lastitem])) { $items[$lastitem]->deeper = ($item->level > $items[$lastitem]->level); $items[$lastitem]->shallower = ($item->level < $items[$lastitem]->level); $items[$lastitem]->level_diff = ($items[$lastitem]->level - $item->level); } $item->parent = (boolean)$menu->getItems('parent_id', (int)$item->id, true); $lastitem = $i; $item->active = false; $item->flink = $item->link; // Reverted back for CMS version 2.5.6 switch ($item->type) { case 'separator': case 'heading': // No further action needed. break; case 'url': if ((strpos($item->link, 'index.php?') === 0) && (strpos($item->link, 'Itemid=') === false)) { // If this is an internal Joomla link, ensure the Itemid is set. $item->flink = $item->link . '&Itemid=' . $item->id; } break; case 'alias': // If this is an alias use the item id stored in the parameters to make the link. $item->flink = 'index.php?Itemid=' . $itemParams->get('aliasoptions'); break; default: $router = $app::getRouter(); if(version_compare(JVERSION, '4', 'lt')){ if ($router->getMode() == JROUTER_MODE_SEF) { $item->flink = 'index.php?Itemid=' . $item->id; } else { $item->flink .= '&Itemid=' . $item->id; } } else { if(strpos($item->flink,'Itemid=') === false) $item->flink .= (strpos($item->flink,'?') === false ? '?' : '&').'Itemid=' . $item->id; } break; } if (strcasecmp(substr($item->flink, 0, 4), 'http') && (strpos($item->flink, 'index.php?') !== false)) { $item->flink = JRoute::_($item->flink, true, $itemParams->get('secure')); } else { $item->flink = JRoute::_($item->flink); } // We prevent the double encoding because for some reason the $item is shared for menu modules and we get double encoding // when the cause of that is found the argument should be removed $item->title = htmlspecialchars($item->title, ENT_COMPAT, 'UTF-8', false); $item->anchor_css = htmlspecialchars($itemParams->get('menu-anchor_css', ''), ENT_COMPAT, 'UTF-8', false); $item->anchor_title = htmlspecialchars($itemParams->get('menu-anchor_title', ''), ENT_COMPAT, 'UTF-8', false); $item->menu_image = $itemParams->get('menu_image', '') ? htmlspecialchars($itemParams->get('menu_image', ''), ENT_COMPAT, 'UTF-8', false) : ''; } if (isset($items[$lastitem])) { $items[$lastitem]->deeper = (1 > $items[$lastitem]->level); $items[$lastitem]->shallower = (1 < $items[$lastitem]->level); $items[$lastitem]->level_diff = ($items[$lastitem]->level - 1); } } return $items; } /** * Get base menu item. * * @return object */ public static function getBase() { return self::getActive(); } /** * Get active menu item. * * @return object */ public static function getActive() { $menu = JFactory::getApplication()->getMenu(); return $menu->getActive() ? $menu->getActive() : $menu->getDefault(); } } PK g}!]-m �, , megamenu.phpnu &1i� <?php /** *------------------------------------------------------------------------------ * @package T3 Framework for Joomla! *------------------------------------------------------------------------------ * @copyright Copyright (C) 2004-2013 JoomlArt.com. All Rights Reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt * @authors JoomlArt, JoomlaBamboo, (contribute to this project at github * & Google group to become co-author) * @Google group: https://groups.google.com/forum/#!forum/t3fw * @Link: http://t3-framework.org *------------------------------------------------------------------------------ */ if(!class_exists('T3MenuMegamenuTpl', false)){ T3::import('menu/megamenu.tpl'); } if (is_file(T3_TEMPLATE_PATH.'/html/megamenu.php')) { require_once T3_TEMPLATE_PATH.'/html/megamenu.php'; } #[AllowDynamicProperties] class T3MenuMegamenu { /** * Internal variables */ protected $_items = array(); protected $children = array(); protected $settings = null; protected $params = null; protected $menu = ''; protected $active_id = 0; protected $active_tree = array(); protected $top_level_caption = false; /** * @param string $menutype menu type to render * @param array $settings settings information * @param null $params other parameters */ function __construct($menutype = 'mainmenu', $settings = array(), $params = null) { $app = JFactory::getApplication(); $menu = $app->getMenu('site'); $attributes = array('menutype'); $values = array($menutype); if(isset($settings['access'])){ $attributes[] = 'access'; $values[] = $settings['access']; } else { $settings['access'] = array(1); } if(isset($settings['language'])){ $attributes[] = 'language'; $values[] = $settings['language']; } $items = $menu->getItems($attributes, $values); $active = ($menu->getActive()) ? $menu->getActive() : $menu->getDefault(); $this->active_id = $active ? $active->id : 0; $this->active_tree = $active->tree; $this->settings = $settings; $this->params = $params; $this->editmode = isset($settings['editmode']); foreach ($items as &$item) { //remove all non-parent item (the parent has access higher access level) if($item->level >= 2 && !isset($this->_items[$item->parent_id])){ continue; } //intergration with new params joomla 3.6.x (menu_show) $menu_show = $item->getParams()->get('menu_show'); if (empty($menu_show) && $menu_show!==null) continue; $parent = isset($this->children[$item->parent_id]) ? $this->children[$item->parent_id] : array(); $parent[] = $item; $this->children[$item->parent_id] = $parent; $this->_items[$item->id] = $item; } foreach ($items as &$item) { // bind setting for this item $key = 'item-' . $item->id; $setting = isset($this->settings[$key]) ? $this->settings[$key] : array(); // decode html tag if (isset($setting['caption']) && $setting['caption']) $setting['caption'] = str_replace(array('[lt]', '[gt]'), array('<', '>'), $setting['caption']); if ($item->level == 1 && isset($setting['caption']) && $setting['caption']) $this->top_level_caption = true; // active - current $class = ''; if ($item->id == $this->active_id) { $class .= ' current'; } if (in_array($item->id, $this->active_tree)) { $class .= ' active'; } elseif ($item->type == 'alias') { $aliasToId = $item->getParams()->get('aliasoptions'); if (count($this->active_tree) > 0 && $aliasToId == $this->active_tree[count($this->active_tree) - 1]) { $class .= ' active'; } elseif (in_array($aliasToId, $this->active_tree)) { $class .= ' alias-parent-active'; } } $item->class = $class; $item->mega = 0; $item->group = 0; $item->dropdown = 0; if (isset($setting['group']) && $item->level > 1) { $item->group = 1; } else { if ((isset($this->children[$item->id]) && ($this->editmode || !isset($setting['hidesub']))) || isset($setting['sub'])) { $item->dropdown = 1; } } $item->mega = $item->group || $item->dropdown; // set default sub if not exists if ($item->mega) { if (!isset($setting['sub'])) $setting['sub'] = array(); if (isset($this->children[$item->id]) && (!isset($setting['sub']['rows']) || !count($setting['sub']['rows']))) { $c = $this->children[$item->id][0]->id; $setting['sub'] = array('rows'=>array(array(array('width'=>12, 'item'=>$c)))); } } $item->setting = $setting; $item->flink = $item->link; // Reverted back for CMS version 2.5.6 switch ($item->type) { case 'separator': case 'heading': // No further action needed. break; case 'url': if ((strpos($item->link, 'index.php?') === 0) && (strpos($item->link, 'Itemid=') === false)) { // If this is an internal Joomla link, ensure the Itemid is set. $item->flink = $item->link . '&Itemid=' . $item->id; } break; case 'alias': // If this is an alias use the item id stored in the parameters to make the link. $item->flink = 'index.php?Itemid=' . $item->getParams()->get('aliasoptions'); break; default: //$router = JSite::getRouter(); $item->flink = 'index.php?Itemid=' . $item->id; break; } if (strcasecmp(substr($item->flink, 0, 4), 'http') && (strpos($item->flink, 'index.php?') !== false)) { $item->flink = JRoute::_($item->flink, true, $item->getParams()->get('secure')); } else { $item->flink = JRoute::_($item->flink); } // We prevent the double encoding because for some reason the $item is shared for menu modules and we get double encoding // when the cause of that is found the argument should be removed $item->title = htmlspecialchars($item->title, ENT_COMPAT, 'UTF-8', false); $item->anchor_css = htmlspecialchars($item->getParams()->get('menu-anchor_css', ''), ENT_COMPAT, 'UTF-8', false); $item->anchor_title = htmlspecialchars($item->getParams()->get('menu-anchor_title', ''), ENT_COMPAT, 'UTF-8', false); $item->anchor_rel = htmlspecialchars($item->getParams()->get('menu-anchor_rel', ''), ENT_COMPAT, 'UTF-8', false); $item->menu_image = $item->getParams()->get('menu_image', '') ? htmlspecialchars($item->getParams()->get('menu_image', ''), ENT_COMPAT, 'UTF-8', false) : ''; $item->menu_image_css = htmlspecialchars($item->getParams()->get('menu_image_css', ''), ENT_COMPAT, 'UTF-8', false); } } function render($return = false) { $this->menu = ''; $this->_('beginmenu'); $keys = array_keys($this->_items); if (count($keys)) { //in case the keys is empty array $this->nav(null, $keys[0]); } $this->_('endmenu'); if ($return) { return $this->menu; } else { echo $this->menu; } } function nav($pitem, $start = 0, $end = 0) { if ($start > 0) { if (!isset($this->_items[$start])) return; $pid = $this->_items[$start]->parent_id; $items = array(); $started = false; foreach ($this->children[$pid] as $item) { if ($started) { if ($item->id == $end) break; $items[] = $item; } else { if ($item->id == $start) { $started = true; $items[] = $item; } } } if (!count($items)) return; } else if ($start === 0) { $pid = $pitem->id; if (!isset($this->children[$pid])) return; $items = $this->children[$pid]; } else { //empty menu return; } $this->_('beginnav', array( 'item' => $pitem )); foreach ($items as $item) { $this->item($item); } $this->_('endnav', array( 'item' => $pitem )); } function item($item) { // item content $setting = $item->setting; $this->_('beginitem', array( 'item' => $item, 'setting' => $setting, 'menu' => $this )); $this->menu .= $this->_('item', array( 'item' => $item, 'setting' => $setting, 'menu' => $this )); if ($item->mega) { $this->mega($item); } $this->_('enditem', array( 'item' => $item )); } function mega($item) { $setting = $item->setting; $sub = $setting['sub']; $items = isset($this->children[$item->id]) ? $this->children[$item->id] : array(); $firstitem = count($items) ? $items[0]->id : 0; $this->_('beginmega', array( 'item' => $item )); $endItems = array(); $k1 = $k2 = 0; foreach ($sub['rows'] as $row) { foreach ($row as $col) { if (!isset($col['position'])) { if ($k1) { $k2 = $col['item']; if (!isset($this->_items[$k2]) || $this->_items[$k2]->parent_id != $item->id) break; $endItems[$k1] = $k2; } $k1 = $col['item']; } } } $endItems[$k1] = 0; $firstitemscol = true; foreach ($sub['rows'] as $row) { $this->_('beginrow', array( 'menu' => $this )); foreach ($row as $col) { $this->_('begincol', array( 'setting' => $col, 'menu' => $this )); if (isset($col['position'])) { $this->module($col['position']); } else { if (!isset($endItems[$col['item']])) continue; $toitem = $endItems[$col['item']]; $startitem = $firstitemscol ? $firstitem : $col['item']; $this->nav($item, $startitem, $toitem); $firstitemscol = false; } $this->_('endcol'); } $this->_('endrow'); } $this->_('endmega'); } function module($module) { // load module $id = intval($module); $db = JFactory::getDbo(); $query = $db->getQuery(true); $query ->select('m.id, m.title, m.module, m.position, m.content, m.showtitle, m.params') ->from('#__modules AS m') ->where('m.id = ' . $id) ->where('m.published = 1') ->where('m.access IN ('.implode(',', $this->settings['access']).')'); $db->setQuery($query); $module = $db->loadObject(); //check in case the module is unpublish or deleted if ($module && $module->id) { $style = 'T3Xhtml'; $content = JModuleHelper::renderModule($module, array( 'style' => $style )); $app = JFactory::getApplication(); $frontediting = $app->get('frontediting', 1); $user = JFactory::getUser(); $canEdit = $user->id && $frontediting && !(T3::isAdmin() && $frontediting < 2) && $user->authorise('core.edit', 'com_modules'); $menusEditing = ($frontediting == 2) && $user->authorise('core.edit', 'com_menus'); if ($app->isClient('site') && $canEdit && trim($content) != '' && $user->authorise('core.edit', 'com_modules.module.' . $module->id)) { $displayData = array('moduleHtml' => &$content, 'module' => $module, 'position' => $module->position, 'menusediting' => $menusEditing); JLayoutHelper::render('joomla.edit.frontediting_modules', $displayData); } $this->menu .= $content . "\n"; } } function _($tmpl, $vars = array()) { $vars['menu'] = $this; $this->menu .= T3MenuMegamenuTpl::_($tmpl, $vars); } function get($prop) { if (isset($this->$prop)) return $this->$prop; return null; } function getParam($name, $default = null) { if (!$this->params) return $default; return $this->params->get($name, $default); } } PK g}!]L}�D�( �( megamenu.tpl.phpnu &1i� <?php /** *------------------------------------------------------------------------------ * @package T3 Framework for Joomla! *------------------------------------------------------------------------------ * @copyright Copyright (C) 2004-2013 JoomlArt.com. All Rights Reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt * @authors JoomlArt, JoomlaBamboo, (contribute to this project at github * & Google group to become co-author) * @Google group: https://groups.google.com/forum/#!forum/t3fw * @Link: http://t3-framework.org *------------------------------------------------------------------------------ */ class T3MenuMegamenuTpl { static function beginmenu($vars) { $menu = $vars['menu']; $animation = $menu->getParam('navigation_animation', ''); $trigger = $menu->getParam('navigation_trigger', 'hover'); $responsive = $menu->getParam('responsive', 1); $anim_duration = $menu->getParam('navigation_animation_duration', 0); $cls = ' class="t3-megamenu' . ($trigger == 'hover' && $animation ? ' animate ' . $animation : '') . '"'; $data = $animation && $anim_duration ? ' data-duration="' . $anim_duration . '"' : ''; $data = $data . ($responsive ? ' data-responsive="true"' : ''); return "<div $cls $data>"; } static function endmenu($vars) { return '</div>'; } static function beginnav($vars) { $item = $vars['item']; $cls = ''; if (!$item) { // first nav $cls = 'nav navbar-nav level0'; } else { $cls .= ' mega-nav'; $cls .= ' level' . $item->level; } if ($cls) $cls = 'class="' . trim($cls) . '"'; return '<ul itemscope itemtype="http://www.schema.org/SiteNavigationElement" ' . $cls . '>'; } static function endnav($vars) { return '</ul>'; } static function beginmega($vars) { $item = $vars['item']; $setting = $item->setting; $sub = $setting['sub']; $cls = 'nav-child ' . ($item->dropdown ? 'dropdown-menu mega-dropdown-menu' : 'mega-group-ct'); $style = ''; $data = ''; if (isset($sub['class'])) { $data .= " data-class=\"{$sub['class']}\""; $cls .= " {$sub['class']}"; } if (isset($setting['alignsub']) && $setting['alignsub'] == 'justify') { $cls .= ' ' . ($vars['menu']->editmode ? 'span' : T3_BASE_NONRSP_WIDTH_PREFIX) . '12'; } else { if (isset($sub['width'])) { if ($item->dropdown) $style = ' style="width: ' . str_replace('px', '', $sub['width']) . 'px"'; $data .= ' data-width="' . str_replace('px', '', $sub['width']) . '"'; } } if ($cls) $cls = 'class="' . trim($cls) . '"'; return "<div $cls $style $data><div class=\"mega-dropdown-inner\">"; } static function endmega($vars) { return '</div></div>'; } static function beginrow($vars) { return '<div class="' . ($vars['menu']->editmode ? 'row-fluid' : T3_BASE_ROW_FLUID_PREFIX) . '">'; } static function endrow($vars) { return '</div>'; } static function begincol($vars) { $setting = isset($vars['setting']) ? $vars['setting'] : array(); $width = isset($setting['width']) ? $setting['width'] : T3_BASE_MAX_GRID; $data = "data-width=\"$width\""; $cls = ($vars['menu']->editmode ? 'span' : T3_BASE_NONRSP_WIDTH_PREFIX) . $width; if (isset($setting['position'])) { $cls .= " mega-col-module"; $data .= " data-position=\"{$setting['position']}\""; } else { $cls .= " mega-col-nav"; } if (isset($setting['class'])) { $cls .= " {$setting['class']}"; $data .= " data-class=\"{$setting['class']}\""; } if (isset($setting['hidewcol'])) { $cls .= " hidden-collapse"; $data .= " data-hidewcol=\"1\""; } if (isset($setting['groupstyle']) && $setting['groupstyle']) { $cls .= " " . $setting['groupstyle']; $data .= " data-groupstyle=\"{$setting['groupstyle']}\""; } return "<div class=\"$cls\" $data><div class=\"mega-inner\">"; } static function endcol($vars) { return '</div></div>'; } static function beginitem($vars) { $item = $vars['item']; $setting = $item->setting; $cls = $item->class; if ($item->dropdown) { $cls .= $item->level == 1 ? ' dropdown' : ' dropdown-submenu'; } if ($item->mega) $cls .= ' mega'; if ($item->group) $cls .= ' mega-group'; if ($item->type == 'separator' && !$item->group && !$item->mega) $cls .= ' divider'; $data = "data-id=\"{$item->id}\" data-level=\"{$item->level}\""; if ($item->group) $data .= " data-group=\"1\""; if (isset($setting['class'])) { $cls .= " {$setting['class']}"; $data .= " data-class=\"{$setting['class']}\""; } if (isset($setting['alignsub'])) { $cls .= " mega-align-{$setting['alignsub']}"; $data .= " data-alignsub=\"{$setting['alignsub']}\""; } if (isset($setting['hidesub'])) $data .= " data-hidesub=\"1\""; if (isset($setting['xicon'])) $data .= " data-xicon=\"{$setting['xicon']}\""; if (isset($setting['caption'])) $data .= " data-caption=\"" . htmlspecialchars($setting['caption']) . "\""; if (isset($setting['hidewcol'])) { $data .= " data-hidewcol=\"1\""; $cls .= " sub-hidden-collapse"; } if ($cls) $cls = 'class="' . trim($cls) . '"'; return "<li itemprop='name' $cls $data>"; } static function enditem($vars) { return '</li>'; } static function item($vars) { $item = $vars['item']; $setting = $item->setting; // Note. It is important to remove spaces between elements. $vars['class'] = $item->anchor_css ? $item->anchor_css : ''; $vars['title'] = $item->anchor_title ? ' title="' . $item->anchor_title . '" ' : ''; $vars['rel'] = $item->anchor_rel ? ' rel="' . $item->anchor_rel . '" ' : ''; $vars['dropdown'] = ' data-target="#"'; $vars['caret'] = ''; $vars['icon'] = ''; $vars['caption'] = ''; $itemParams = version_compare(JVERSION, '4', 'ge') ? $item->getParams() : $item->params; if ($item->dropdown && $item->level < 2) { $vars['class'] .= ' dropdown-toggle'; $vars['dropdown'] .= ' data-toggle="dropdown"'; // Note: data-target for JomSocial old bootstrap lib $vars['caret'] = '<em class="caret"></em>'; } if($item->group){ $vars['class'] .= ' dropdown-header mega-group-title'; } if ($item->menu_image) { $itemParams->get('menu_text', 1) ? $vars['linktype'] = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" /><span class="image-title">' . $item->title . '</span> ' : $vars['linktype'] = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" />'; } else { $vars['linktype'] = $item->title; } if (isset($setting['xicon']) && $setting['xicon']) { $vars['icon'] = '<span class="' . $setting['xicon'] . '"></span>'; } if (isset($setting['caption']) && $setting['caption']) { $vars['caption'] = '<span class="mega-caption">' . $setting['caption'] . '</span>'; } else if ($item->level == 1 && $vars['menu']->get('top_level_caption')) { $vars['caption'] = '<span class="mega-caption mega-caption-empty"> </span>'; } switch ($item->type) { case 'separator': case 'heading': $html = self::_('item_separator', $vars); break; case 'component': $html = self::_('item_component', $vars); break; case 'url': default: $html = self::_('item_url', $vars); } return $html; } static function item_url($vars) { $item = $vars['item']; $class = $vars['class']; $rel = $vars['rel']; $title = $vars['title']; $dropdown = $vars['dropdown']; $caret = $vars['caret']; $linktype = $vars['linktype']; $icon = $vars['icon']; $caption = $vars['caption']; $flink = $item->flink; $flink = JFilterOutput::ampReplace(htmlspecialchars($flink)); switch ($item->browserNav) : default: case 0: $link = "<a itemprop='url' class=\"$class\" $rel href=\"$flink\" $title $dropdown>$icon$linktype$caret$caption</a>"; break; case 1: // _blank $link = "<a itemprop='url' class=\"$class\" $rel href=\"$flink\" target=\"_blank\" $title $dropdown>$icon$linktype$caret$caption</a>"; break; case 2: // window.open $options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes'; $link = "<a itemprop='url' class=\"$class\" $rel href=\"$flink\"" . (!$vars['menu']->editmode ? " onclick=\"window.open(this.href,'targetWindow','$options');return false;\"" : "") . " $title $dropdown>$icon$linktype$caret$caption</a>"; break; endswitch; return $link; } static function item_separator($vars) { $item = $vars['item']; $class = $vars['class']; $title = $vars['title']; $dropdown = $vars['dropdown']; $caret = $vars['caret']; $linktype = $vars['linktype']; $icon = $vars['icon']; $caption = $vars['caption']; // Note. It is important to remove spaces between elements. $class .= " separator"; return "<span class=\"$class\" $title $dropdown>$icon$title $linktype$caret$caption</span>"; } static function item_component($vars) { $item = $vars['item']; $class = $vars['class']; $rel = $vars['rel']; $title = $vars['title']; $dropdown = $vars['dropdown']; $caret = $vars['caret']; $linktype = $vars['linktype']; $icon = $vars['icon']; $caption = $vars['caption']; // Note. It is important to remove spaces between elements. switch ($item->browserNav) : default: case 0: $link = "<a itemprop='url' class=\"$class\" $rel href=\"{$item->flink}\" $title $dropdown>$icon$linktype $caret$caption</a>"; break; case 1: // _blank $link = "<a itemprop='url' class=\"$class\" $rel href=\"{$item->flink}\" target=\"_blank\" $title $dropdown>$icon$linktype $caret$caption</a>"; break; case 2: // window.open $link = "<a itemprop='url' class=\"$class\" $rel href=\"{$item->flink}\"" . (!$vars['menu']->editmode ? " onclick=\"window.open(this.href,'targetWindow','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes');return false;\"" : "") . " $title $dropdown>$icon$linktype $caret$caption</a>"; break; endswitch; return $link; } static function _($tmpl, $vars) { if (function_exists($func = 'T3MenuMegamenuTpl_'.$tmpl)) { return $func($vars) . "\n"; } else if (method_exists('T3MenuMegamenuTpl', $tmpl)) { return T3MenuMegamenuTpl::$tmpl($vars) . "\n"; } else { return "$tmpl\n"; } } }PK g}!]l}�c� � t3bootstrap.tpl.phpnu &1i� <?php /** *------------------------------------------------------------------------------ * @package T3 Framework for Joomla! *------------------------------------------------------------------------------ * @copyright Copyright (C) 2004-2013 JoomlArt.com. All Rights Reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt * @authors JoomlArt, JoomlaBamboo, (contribute to this project at github * & Google group to become co-author) * @Google group: https://groups.google.com/forum/#!forum/t3fw * @Link: http://t3-framework.org *------------------------------------------------------------------------------ */ class T3BootstrapTpl { static function render($list) { $base = T3Bootstrap::getBase(); $active = T3Bootstrap::getActive(); $active_id = $active->id; $path = $base->tree; ?> <ul class="nav navbar-nav"> <?php foreach ($list as &$item) : $ItemParams = version_compare(JVERSION, '4', 'ge') ? $item->getParams() : $item->params; $item->itemParams = $ItemParams; //intergration with new params joomla 3.6.x (menu_show) $menu_show = (int)$ItemParams->get('menu_show', 1); if ($menu_show!=1) continue; $class = 'item-' . $item->id; if ($item->id == $active_id) { $class .= ' current'; } if (in_array($item->id, $path)) { $class .= ' active'; } elseif ($item->type == 'alias') { $aliasToId = $ItemParams->get('aliasoptions'); if (count($path) > 0 && $aliasToId == $path[count($path) - 1]) { $class .= ' active'; } elseif (in_array($aliasToId, $path)) { $class .= ' alias-parent-active'; } } if ($item->type == 'separator' || $item->type == 'heading') { $class .= ' divider'; } if ($item->deeper) { if ($item->level > 1) { $class .= ' dropdown-submenu'; } else { $class .= ' deeper dropdown'; } } if ($item->parent) { $class .= ' parent'; } if (!empty($class)) { $class = ' class="' . trim($class) . '"'; } echo '<li' . $class . '>'; // Render the menu item. switch ($item->type) : case 'separator': case 'url': case 'component': case 'heading': echo self::item($item->type, $item); break; default: echo self::item('url', $item); break; endswitch; // The next item is deeper. if ($item->deeper) { echo '<ul class="dropdown-menu" role="menu">'; } // The next item is shallower. elseif ($item->shallower) { echo '</li>'; echo str_repeat('</ul></li>', $item->level_diff); } // The next item is on the same level. else { echo '</li>'; } endforeach; ?> </ul> <?php } public static function item($type, $item) { if (method_exists(__CLASS__, $type)) { return self::$type($item); } else { return $type; } } public static function component($item) { // Note. It is important to remove spaces between elements. $class = $item->anchor_css ? $item->anchor_css : ''; $title = $item->anchor_title ? 'title="' . $item->anchor_title . '" ' : ''; $caret = ''; $dropdown = ''; if($item->deeper && $item->level < 2){ $class .= ' dropdown-toggle'; $dropdown = ' data-toggle="dropdown"'; $caret = '<em class="caret"></em>'; } if(!empty($class)){ $class = 'class="'. trim($class) .'" '; } if ($item->menu_image) { $item->itemParams->get('menu_text', 1) ? $linktype = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" /><span class="image-title">' . $item->title . '</span> ' : $linktype = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" />'; } else { $linktype = $item->title; } switch ($item->browserNav) : default: case 0: ?> <a <?php echo $class; ?>href="<?php echo $item->flink; ?>" <?php echo $title, $dropdown; ?>><?php echo $linktype, $caret; ?></a> <?php break; case 1: // _blank ?> <a <?php echo $class; ?>href="<?php echo $item->flink; ?>" target="_blank" <?php echo $title, $dropdown; ?>><?php echo $linktype, $caret; ?></a> <?php break; case 2: // window.open ?> <a <?php echo $class; ?>href="<?php echo $item->flink; ?>" onclick="window.open(this.href,'targetWindow','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes');return false;" <?php echo $title, $dropdown; ?>><?php echo $linktype, $caret; ?></a> <?php break; endswitch; } public static function heading($item) { ?> <span class="nav-header"><?php echo $item->title; ?></span> <?php } public static function separator($item) { // Note. It is important to remove spaces between elements. $title = $item->anchor_title ? ' title="' . $item->anchor_title . '" ' : ''; if ($item->menu_image) { $item->itemParams->get('menu_text', 1) ? $linktype = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" /><span class="image-title">' . $item->title . '</span> ' : $linktype = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" />'; } else { $linktype = $item->title; } ?> <span class="separator" <?php echo $title; ?>><?php echo $linktype; ?></span> <?php } public static function url($item) { // Note. It is important to remove spaces between elements. $class = $item->anchor_css ? $item->anchor_css : ''; $title = $item->anchor_title ? 'title="' . $item->anchor_title . '" ' : ''; $caret = ''; $dropdown = ''; if($item->deeper && $item->level < 2){ $class .= ' dropdown-toggle'; $dropdown = ' data-toggle="dropdown"'; $caret = '<em class="caret"></em>'; } if(!empty($class)){ $class = 'class="'. trim($class) .'" '; } if ($item->menu_image) { $item->itemParams->get('menu_text', 1) ? $linktype = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" /><span class="image-title">' . $item->title . '</span> ' : $linktype = '<img class="' . $item->menu_image_css . '" src="' . $item->menu_image . '" alt="' . $item->title . '" />'; } else { $linktype = $item->title; } $flink = $item->flink; $flink = JFilterOutput::ampReplace(htmlspecialchars($flink)); switch ($item->browserNav) : default: case 0: ?> <a <?php echo $class; ?>href="<?php echo $flink; ?>" <?php echo $title, $dropdown; ?>><?php echo $linktype, $caret; ?></a> <?php break; case 1: // _blank ?> <a <?php echo $class; ?>href="<?php echo $flink; ?>" target="_blank" <?php echo $title, $dropdown; ?>><?php echo $linktype, $caret; ?></a> <?php break; case 2: // window.open $options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,' . $item->itemParams->get('window_open'); ?> <a <?php echo $class; ?>href="<?php echo $flink; ?>" onclick="window.open(this.href,'targetWindow','<?php echo $options; ?>');return false;" <?php echo $title, $dropdown; ?>><?php echo $linktype, $caret; ?></a> <?php break; endswitch; } } PK Xt!]��= menu.xmlnu &1i� PK Xt!]�䮉X X I menu.phpnu &1i� PK g}!] � � t3bootstrap.phpnu &1i� PK g}!]-m �, , % megamenu.phpnu &1i� PK g}!]L}�D�( �( H megamenu.tpl.phpnu &1i� PK g}!]l}�c� � �q t3bootstrap.tpl.phpnu &1i� PK � z�
| ver. 1.4 |
Github
|
.
| PHP 8.1.34 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка