本文整理汇总了PHP中Vtiger_Module_Model::getClassInstance方法的典型用法代码示例。如果您正苦于以下问题:PHP Vtiger_Module_Model::getClassInstance方法的具体用法?PHP Vtiger_Module_Model::getClassInstance怎么用?PHP Vtiger_Module_Model::getClassInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Vtiger_Module_Model
的用法示例。
在下文中一共展示了Vtiger_Module_Model::getClassInstance方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getReports
/**
* Function returns Report Models for the folder
* @param <Vtiger_Paging_Model> $pagingModel
* @return <Reports_Record_Model>
*/
function getReports($pagingModel) {
$paramsList = array(
'startIndex'=>$pagingModel->getStartIndex(),
'pageLimit'=>$pagingModel->getPageLimit(),
'orderBy'=>$this->get('orderby'),
'sortBy'=>$this->get('sortby'));
$reportClassInstance = Vtiger_Module_Model::getClassInstance('Reports');
$fldrId = $this->getId ();
if($fldrId == 'All') {
$fldrId = false;
$paramsList = array( 'startIndex'=>$pagingModel->getStartIndex(),
'pageLimit'=>$pagingModel->getPageLimit(),
'orderBy'=>$this->get('orderby'),
'sortBy'=>$this->get('sortby')
);
}
$reportsList = $reportClassInstance->sgetRptsforFldr($fldrId, $paramsList);
if(!$fldrId){
foreach ($reportsList as $reportId => $reports) {
$reportsCount += count($reports);
}
}else{
$reportsCount = count($reportsList);
}
$pageLimit = $pagingModel->getPageLimit();
if($reportsCount > $pageLimit){
if(!$fldrId){
$lastKey = end(array_keys($reportsList));
array_pop($reportsList[$lastKey]);
}else{
array_pop($reportsList);
}
$pagingModel->set('nextPageExists', true);
}else{
$pagingModel->set('nextPageExists', false);
}
$reportModuleModel = Vtiger_Module_Model::getInstance('Reports');
if($fldrId == false) {
return $this->getAllReportModels($reportsList, $reportModuleModel);
} else {
$reportModels = array();
for($i=0; $i < count($reportsList); $i++) {
$reportModel = new Reports_Record_Model();
$reportModel->setData($reportsList[$i])->setModuleFromInstance($reportModuleModel);
$reportModels[] = $reportModel;
unset($reportModel);
}
return $reportModels;
}
}