/** * Register all Parent & No-child element, for Add Element popover */ public function registerElement() { $currentShortcode = null; $megamenuShortcodes = JSNTplMMHelperShortcode::getshortcodeTags(); foreach ($megamenuShortcodes as $name => $scInfo) { $arr = explode('_', $name); $type = $scInfo['type']; if (!$currentShortcode || in_array($currentShortcode, $arr) || !$currentShortcode && $type == 'layout') { $class = JSNTplMMHelperShortcode::getShortcodeClass($name); $element = new $class(); $this->setElement($type, $class, $element); $this->registerSubEl($class, 1); } } }
foreach ($layouts as $columns) { $columns_name = implode('x', $columns); $icon_class = implode('-', $columns); $icon_class = 'jsn-mm-layout-' . $icon_class; $icon = "<i class='{$icon_class}'></i>"; printf('<div class="thumb-wrapper col-md-1 col-xs-2" data-columns="%s" title="%s">%s</div>', implode(',', $columns), $columns_name, $icon); } ?> </div> </div> </div> <div class="clearfix"></div> <?php $elements = $this->getElements(); $megaMenuShortcodes = JSNTplMMHelperShortcode::getshortcodeTags(); $elementsHtml = array(); $categories = array("All"); foreach ($elements['element'] as $element) { // don't show sub-shortcode if (!isset($element->config['name'])) { continue; } // get shortcode category $category = ''; // category name of this shortcode if (!empty($megaMenuShortcodes[$element->config['shortcode']])) { $categoryName = $megaMenuShortcodes[$element->config['shortcode']]['provider']['name'] || ''; $category = strtolower(str_replace(' ', '', $categoryName)); if (!array_key_exists($category, $categories)) { $categories[$category] = $categoryName;