本文整理匯總了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;
}
}