public function getMenuName($row, $settings = false) { switch ($row['type']) { case 0: $name = empty($row['label']) ? $row['name'] : $row['label']; break; case 3: $name = 'LBL_SEPARATOR'; break; case 5: if ($row['label'] != '') { $name = $row['label']; } elseif ($settings) { $name = vtranslate('LBL_QUICK_CREATE_MODULE', 'Menu') . ': ' . Vtiger_Menu_Model::vtranslateMenu('SINGLE_' . $row['name'], $row['name']); } break; case 6: $name = 'LBL_HOME'; break; case 7: $adb = PearDatabase::getInstance(); $result = $adb->pquery('SELECT viewname,entitytype FROM vtiger_customview WHERE cvid=?', [$row['dataurl']]); $data = $adb->raw_query_result_rowdata($result, 0); if ($settings) { $name = Vtiger_Menu_Model::vtranslateMenu($data['entitytype'], $data['entitytype']) . ': ' . vtranslate($data['viewname'], $data['entitytype']); } else { $name = Vtiger_Menu_Model::vtranslateMenu($data['viewname'], $data['entitytype']); } break; default: $name = $row['label']; break; } return $name; }
public function getAll($roleId) { $db = PearDatabase::getInstance(); $settingsModel = Settings_Menu_Module_Model::getInstance(); $result = $db->pquery('SELECT yetiforce_menu.*, vtiger_tab.name FROM yetiforce_menu LEFT JOIN vtiger_tab ON vtiger_tab.tabid = yetiforce_menu.module WHERE role = ? ORDER BY yetiforce_menu.sequence, yetiforce_menu.parentid;', [$roleId]); $menu = []; for ($i = 0; $i < $db->num_rows($result); ++$i) { $row = $db->raw_query_result_rowdata($result, $i); $menu[] = ['id' => $row['id'], 'parent' => $row['parentid'] == 0 ? '#' : $row['parentid'], 'text' => Vtiger_Menu_Model::vtranslateMenu($settingsModel->getMenuName($row, true), $row['name']), 'icon' => 'menu-icon-' . $settingsModel->getMenuTypes($row['type'])]; } return $menu; }
public static function getMenuIcon($menu, $title = '') { if ($title == '') { $title = Vtiger_Menu_Model::vtranslateMenu($menu['label']); } if (is_string($menu)) { $iconName = vimage_path($menu); if (file_exists($iconName)) { return '<img src="' . $iconName . '" alt="' . $title . '" title="' . $title . '" class="menuIcon" />'; } } if (!empty($menu['icon'])) { if (strpos($menu['icon'], 'adminIcon-') !== false || strpos($menu['icon'], 'userIcon-') !== false) { return '<span class="menuIcon ' . $menu['icon'] . '" aria-hidden="true"></span>'; } else { if (strpos($menu['icon'], 'glyphicon-') !== false) { return '<span class="glyphicon ' . $menu['icon'] . '" aria-hidden="true"></span>'; } } $icon = vimage_path($menu['icon']); if (file_exists($icon)) { return '<img src="' . $icon . '" alt="' . $title . '" title="' . $title . '" class="menuIcon" />'; } } if ($menu['type'] == 'Module') { return '<span class="menuIcon userIcon-' . $menu['mod'] . '" aria-hidden="true"></span>'; } return ''; }