[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/modules/Documents/views/ -> List.php (source)

   1  <?php
   2  /*+**********************************************************************************
   3   * The contents of this file are subject to the vtiger CRM Public License Version 1.1
   4   * ("License"); You may not use this file except in compliance with the License
   5   * The Original Code is:  vtiger CRM Open Source
   6   * The Initial Developer of the Original Code is vtiger.
   7   * Portions created by vtiger are Copyright (C) vtiger.
   8   * All Rights Reserved.
   9   ************************************************************************************/
  10  
  11  class Documents_List_View extends Vtiger_List_View {
  12  	function __construct() {
  13          parent::__construct();
  14      }
  15      
  16  	function preProcess (Vtiger_Request $request) {
  17          $viewer = $this->getViewer ($request);
  18          $moduleName = $request->getModule();
  19  
  20          $documentModuleModel = Vtiger_Module_Model::getInstance($moduleName);
  21          $defaultCustomFilter = $documentModuleModel->getDefaultCustomFilter();
  22          $folderList = Documents_Module_Model::getAllFolders();
  23  
  24          $viewer->assign('DEFAULT_CUSTOM_FILTER_ID', $defaultCustomFilter);
  25          $viewer->assign('FOLDERS', $folderList);
  26  
  27          parent::preProcess($request);
  28      }
  29      
  30      
  31      /*
  32       * Function to initialize the required data in smarty to display the List View Contents
  33       */
  34  	public function initializeListViewContents(Vtiger_Request $request, Vtiger_Viewer $viewer) {
  35          $moduleName = $request->getModule();
  36          $cvId = $request->get('viewname');
  37          $pageNumber = $request->get('page');
  38          $orderBy = $request->get('orderby');
  39          $sortOrder = $request->get('sortorder');
  40          if($sortOrder == "ASC"){
  41              $nextSortOrder = "DESC";
  42              $sortImage = "icon-chevron-down";
  43          }else{
  44              $nextSortOrder = "ASC";
  45              $sortImage = "icon-chevron-up";
  46          }
  47  
  48          if(empty ($pageNumber)){
  49              $pageNumber = '1';
  50          }
  51  
  52          $listViewModel = Vtiger_ListView_Model::getInstance($moduleName, $cvId);
  53  
  54          $linkParams = array('MODULE'=>$moduleName, 'ACTION'=>$request->get('view'), 'CVID'=>$cvId);
  55          $linkModels = $listViewModel->getListViewMassActions($linkParams);
  56  
  57          $pagingModel = new Vtiger_Paging_Model();
  58          $pagingModel->set('page', $pageNumber);
  59          $pagingModel->set('viewid', $request->get('viewname'));
  60  
  61          if(!empty($orderBy)) {
  62              $listViewModel->set('orderby', $orderBy);
  63              $listViewModel->set('sortorder',$sortOrder);
  64          }
  65  
  66          $searchKey = $request->get('search_key');
  67          $searchValue = $request->get('search_value');
  68          $operator = $request->get('operator');
  69          if(!empty($operator)) {
  70              $listViewModel->set('operator', $operator);
  71              $viewer->assign('OPERATOR',$operator);
  72              $viewer->assign('ALPHABET_VALUE',$searchValue);
  73          }
  74          if(!empty($searchKey) && !empty($searchValue)) {
  75              $listViewModel->set('search_key', $searchKey);
  76              $listViewModel->set('search_value', $searchValue);
  77          }
  78          
  79           $searchParmams = $request->get('search_params');
  80          if(empty($searchParmams)) {
  81              $searchParmams = array();
  82          }
  83          $transformedSearchParams = $this->transferListSearchParamsToFilterCondition($searchParmams, $listViewModel->getModule());
  84          $listViewModel->set('search_params',$transformedSearchParams);
  85       
  86          
  87          //To make smarty to get the details easily accesible
  88          foreach($searchParmams as $fieldListGroup){
  89              foreach($fieldListGroup as $fieldSearchInfo){
  90                  $fieldSearchInfo['searchValue'] = $fieldSearchInfo[2];
  91                  $fieldSearchInfo['fieldName'] = $fieldName = $fieldSearchInfo[0];
  92                  $searchParmams[$fieldName] = $fieldSearchInfo;
  93              }
  94              
  95          }
  96          
  97          
  98          
  99          $listViewModel->set('folder_id',$request->get('folder_id'));
 100          $listViewModel->set('folder_value',$request->get('folder_value'));
 101          
 102          if(!$this->listViewHeaders){
 103              $this->listViewHeaders = $listViewModel->getListViewHeaders();
 104          }
 105          if(!$this->listViewEntries){
 106              $this->listViewEntries = $listViewModel->getListViewEntries($pagingModel);
 107          }
 108          $noOfEntries = count($this->listViewEntries);
 109  
 110          $viewer->assign('VIEWID', $cvId);
 111          $viewer->assign('MODULE', $moduleName);
 112  
 113          if(!$this->listViewLinks){
 114              $this->listViewLinks = $listViewModel->getListViewLinks($linkParams);
 115          }
 116          $viewer->assign('LISTVIEW_LINKS', $this->listViewLinks);
 117  
 118          $viewer->assign('LISTVIEW_MASSACTIONS', $linkModels['LISTVIEWMASSACTION']);
 119  
 120          $viewer->assign('PAGING_MODEL', $pagingModel);
 121          $viewer->assign('PAGE_NUMBER',$pageNumber);
 122  
 123          $viewer->assign('ORDER_BY',$orderBy);
 124          $viewer->assign('SORT_ORDER',$sortOrder);
 125          $viewer->assign('NEXT_SORT_ORDER',$nextSortOrder);
 126          $viewer->assign('SORT_IMAGE',$sortImage);
 127          $viewer->assign('COLUMN_NAME',$orderBy);
 128          $viewer->assign('FOLDER_NAME',$request->get('folder_value'));
 129  
 130          $viewer->assign('LISTVIEW_ENTRIES_COUNT',$noOfEntries);
 131          $viewer->assign('LISTVIEW_HEADERS', $this->listViewHeaders);
 132          $viewer->assign('LISTVIEW_ENTRIES', $this->listViewEntries);
 133  
 134          if (PerformancePrefs::getBoolean('LISTVIEW_COMPUTE_PAGE_COUNT', false)) {
 135              if(!$this->listViewCount){
 136                  $this->listViewCount = $listViewModel->getListViewCount();
 137              }
 138              $totalCount = $this->listViewCount;
 139              $pageLimit = $pagingModel->getPageLimit();
 140              $pageCount = ceil((int) $totalCount / (int) $pageLimit);
 141  
 142              if($pageCount == 0){
 143                  $pageCount = 1;
 144              }
 145              $viewer->assign('PAGE_COUNT', $pageCount);
 146              $viewer->assign('LISTVIEW_COUNT', $totalCount);
 147          }
 148  
 149          $viewer->assign('IS_MODULE_EDITABLE', $listViewModel->getModule()->isPermitted('EditView'));
 150          $viewer->assign('IS_MODULE_DELETABLE', $listViewModel->getModule()->isPermitted('Delete'));
 151          $viewer->assign('SEARCH_DETAILS', $searchParmams);
 152      }
 153  }


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1