function process(Vtiger_Request $request) { $branches = $request->get('branches'); $filter = $request->get('filter'); if (empty($branches)) { return; } $viewer = $this->getViewer($request); $moduleName = $request->getModule(); $moduleModel = Vtiger_Module_Model::getInstance($moduleName); $treeViewModel = Vtiger_TreeView_Model::getInstance($moduleModel); $pagingModel = new Vtiger_Paging_Model(); $pagingModel->set('limit', 'no_limit'); $listViewModel = Vtiger_ListView_Model::getInstance($moduleName, $filter); $listViewModel->set('search_params', $treeViewModel->getSearchParams($branches)); $listEntries = $listViewModel->getListViewEntries($pagingModel, true); if (count($listEntries) === 0) { return; } $listHeaders = $listViewModel->getListViewHeaders(); $viewer->assign('ENTRIES', $listEntries); $viewer->assign('HEADERS', $listHeaders); $viewer->assign('MODULE', $moduleName); $viewer->view('TreeRecords.tpl', $moduleName); }
/** * Function to get the Quick Links for the module * @param <Array> $linkParams * @return <Array> List of Vtiger_Link_Model instances */ public function getSideBarLinks($linkParams) { $linkTypes = ['SIDEBARLINK', 'SIDEBARWIDGET']; $links = Vtiger_Link_Model::getAllByType($this->getId(), $linkTypes, $linkParams); $userPrivilegesModel = Users_Privileges_Model::getCurrentUserPrivilegesModel(); $quickLinks = [['linktype' => 'SIDEBARLINK', 'linklabel' => 'LBL_RECORDS_LIST', 'linkurl' => $this->getListViewUrl(), 'linkicon' => '']]; $moduleModel = Vtiger_Module_Model::getInstance('Dashboard'); if ($userPrivilegesModel->hasModulePermission($moduleModel->getId()) && $userPrivilegesModel->hasModuleActionPermission($this->getId(), 'Dashboard')) { $quickLinks[] = array('linktype' => 'SIDEBARLINK', 'linklabel' => 'LBL_DASHBOARD', 'linkurl' => $this->getDashBoardUrl(), 'linkicon' => ''); } $treeViewModel = Vtiger_TreeView_Model::getInstance($this); if ($treeViewModel->isActive()) { $quickLinks[] = ['linktype' => 'SIDEBARLINK', 'linklabel' => $treeViewModel->getName(), 'linkurl' => $treeViewModel->getTreeViewUrl(), 'linkicon' => '']; } foreach ($quickLinks as $quickLink) { $links['SIDEBARLINK'][] = Vtiger_Link_Model::getInstanceFromValues($quickLink); } $quickWidgets = array(array('linktype' => 'SIDEBARWIDGET', 'linklabel' => 'LBL_RECENTLY_MODIFIED', 'linkurl' => 'module=' . $this->get('name') . '&view=IndexAjax&mode=showActiveRecords', 'linkicon' => '')); foreach ($quickWidgets as $quickWidget) { $links['SIDEBARWIDGET'][] = Vtiger_Link_Model::getInstanceFromValues($quickWidget); } return $links; }