function getListing($user) { $modulewsids = Mobile_WS_Utils::getEntityModuleWSIds(); // Disallow modules unset($modulewsids['Users']); // Calendar & Events module will be merged unset($modulewsids['Events']); $listresult = vtws_listtypes(null, $user); $listing = array(); foreach ($listresult['types'] as $index => $modulename) { if (!isset($modulewsids[$modulename])) { continue; } $listing[] = array('id' => $modulewsids[$modulename], 'name' => $modulename, 'isEntity' => $listresult['information'][$modulename]['isEntity'], 'label' => $listresult['information'][$modulename]['label'], 'singular' => $listresult['information'][$modulename]['singular']); } return $listing; }
function getListing($user) { function useSortBySettings($a, $b) { global $displayed_modules; $posA = $displayed_modules[$a['name']]; $posB = $displayed_modules[$b['name']]; if ($posA == $posB) { return 0; } return $posA < $posB ? -1 : 1; } //settings information global $displayed_modules, $current_language, $app_strings; $modulewsids = Mobile_WS_Utils::getEntityModuleWSIds(); // Disallow modules unset($modulewsids['Users']); include_once dirname(__FILE__) . '/../../Mobile.Config.php'; $CRM_Version = Mobile::config('crm_version'); if ($CRM_Version != '5.2.1') { //we use this class only for privilege purposes on types $listresult = vtws_listtypes(null, $user, 'en_us'); } else { $listresult = vtws_listtypes($user); } $listing = array(); foreach ($listresult['types'] as $index => $modulename) { if (!isset($modulewsids[$modulename])) { continue; } if (in_array($modulename, $displayed_modules)) { $listing[] = array('id' => $modulewsids[$modulename], 'name' => $modulename, 'isEntity' => $listresult['information'][$modulename]['isEntity'], 'label' => getTranslatedString($modulename, $modulename), 'singular' => getTranslatedString('SINGLE_' . $modulename, $modulename)); } } //make sure the active modules are displayed in the order of the $displayed_modules settings entry in MobileSettings.config.php $displayed_modules = array_flip($displayed_modules); usort($listing, 'useSortBySettings'); return $listing; }