/** * * @global array $submenu * @param string $tmpl * @param mvb_Model_Manager $parent * @return string */ public static function render($tmpl, $parent) { global $submenu; $sorted_menu = $parent->getRoleMenu(); $item_tmpl = mvb_Model_Template::retrieveSub('MAIN_MENU_ITEM', $tmpl); $sublist_tmpl = mvb_Model_Template::retrieveSub('MAIN_MENU_SUBLIST', $item_tmpl); $subitem_tmpl = mvb_Model_Template::retrieveSub('MAIN_MENU_SUBITEM', $sublist_tmpl); $list = ''; foreach ($sorted_menu as $menu) { if (self::isSeperator($menu)) { continue; } //render submenu $sub_list = ''; if (isset($submenu[$menu[2]]) && is_array($submenu[$menu[2]])) { foreach ($submenu[$menu[2]] as $sub_menu) { $markers = array('###submenu_name###' => utf8_encode(mvb_Model_Helper::removeHTML($sub_menu[0])), '###value###' => $sub_menu[2], '###checked###' => $parent->getConfig()->hasSubMenu($menu[2], $sub_menu[2]) ? 'checked' : ''); $sub_list .= mvb_Model_Template::updateMarkers($markers, $subitem_tmpl); } $sub_list = mvb_Model_Template::replaceSub('MAIN_MENU_SUBITEM', $sub_list, $sublist_tmpl); } $temp = mvb_Model_Template::replaceSub('MAIN_MENU_SUBLIST', $sub_list, $item_tmpl); $whole = $parent->getConfig()->getMenu($menu[2]); $markers = array('###name###' => utf8_encode(mvb_Model_Helper::removeHTML($menu[0])), '###id###' => $menu[5], '###menu###' => $menu[2], '###whole_checked###' => isset($whole['whole']) ? 'checked' : ''); $list .= mvb_Model_Template::updateMarkers($markers, $temp); } return mvb_Model_Template::replaceSub('MAIN_MENU_ITEM', $list, $tmpl); }
public static function renderMetabox($tmpl, $list, $type) { $content = ''; foreach ($list as $position => $set) { foreach ($set as $priority => $metaboxes) { if (is_array($metaboxes)) { foreach ($metaboxes as $id => $data) { if (is_array($data)) { $data['title'] = mvb_Model_Helper::removeHTML($data['title']); $markers = array('###title###' => utf8_encode(mvb_Model_Helper::removeHTML($data['title'])), '###short_id###' => mvb_Model_Helper::cutStr($data['id'], 25), '###id###' => $data['id'], '###priority###' => $priority, '###internal_id###' => $type . '-' . $id, '###position###' => $position, '###checked###' => self::$parent->getConfig()->hasMetabox($type . '-' . $id) ? 'checked' : ''); $content .= mvb_Model_Template::updateMarkers($markers, $tmpl); } } } } } return $content; }