[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

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

   1  <?php
   2  
   3  /*+**********************************************************************************

   4   * The contents of this file are subject to the vtiger CRM Public License Version 1.0

   5   * ("License"); You may not use this file except in compliance with the License

   6   * The Original Code is:  vtiger CRM Open Source

   7   * The Initial Developer of the Original Code is vtiger.

   8   * Portions created by vtiger are Copyright (C) vtiger.

   9   * All Rights Reserved.

  10   ************************************************************************************/
  11  
  12  class Rss_List_View extends Vtiger_Index_View {
  13  
  14  	function checkPermission(Vtiger_Request $request) {
  15          $moduleName = $request->getModule();
  16          $moduleModel = Vtiger_Module_Model::getInstance($moduleName);
  17  
  18          $currentUserPriviligesModel = Users_Privileges_Model::getCurrentUserPrivilegesModel();
  19          if(!$currentUserPriviligesModel->hasModulePermission($moduleModel->getId())) {
  20              throw new AppException('LBL_PERMISSION_DENIED');
  21          }
  22      }
  23  
  24  	function preProcess(Vtiger_Request $request, $display=true) {
  25          parent::preProcess($request);
  26      }
  27      
  28      function preProcessTplName(Vtiger_Request $request) {
  29          return 'ListViewPreProcess.tpl';
  30      }
  31      
  32      function process (Vtiger_Request $request) {
  33          $viewer = $this->getViewer ($request);
  34          $moduleName = $request->getModule();
  35          $moduleModel = Vtiger_Module_Model::getInstance($moduleName);
  36  
  37          $this->initializeListViewContents($request, $viewer);
  38          
  39          $viewer->assign('MODULE_MODEL', $moduleModel);
  40          $viewer->assign('CURRENT_USER_MODEL', Users_Record_Model::getCurrentUserModel());
  41          
  42          $viewer->view('ListViewContents.tpl', $moduleName);
  43      }
  44  
  45      function postProcess(Vtiger_Request $request) {
  46          $viewer = $this->getViewer ($request);
  47          $moduleName = $request->getModule();
  48  
  49          $viewer->view('ListViewPostProcess.tpl', $moduleName);
  50          parent::postProcess($request);
  51      }
  52      /*

  53       * Function to initialize the required data in smarty to display the List View Contents

  54       */
  55  	public function initializeListViewContents(Vtiger_Request $request, Vtiger_Viewer $viewer) {
  56          $module = $request->getModule();
  57          $recordId = $request->get('id');
  58          $moduleModel = Vtiger_Module_Model::getInstance($module);
  59          if($recordId) {
  60              $recordInstance = Rss_Record_Model::getInstanceById($recordId, $module);
  61          } else {
  62              $recordInstance = Rss_Record_Model::getCleanInstance($module);
  63              $recordInstance->getDefaultRss();
  64              $recordInstance = Rss_Record_Model::getInstanceById($recordInstance->getId(), $module);
  65          }
  66          
  67          $viewer = $this->getViewer($request);
  68          $viewer->assign('MODULE',$module);
  69          $viewer->assign('RECORD',$recordInstance);
  70          $linkParams = array('MODULE'=>$module, 'ACTION'=>$request->get('view'));
  71          $viewer->assign('QUICK_LINKS',$moduleModel->getSideBarLinks($linkParams));
  72          $viewer->assign('LISTVIEW_HEADERS', $this->getListViewRssHeaders($module));
  73      }
  74      
  75      /**

  76       * Function to get the list of Script models to be included

  77       * @param Vtiger_Request $request

  78       * @return <Array> - List of Vtiger_JsScript_Model instances

  79       */
  80  	function getHeaderScripts(Vtiger_Request $request) {
  81          $headerScriptInstances = parent::getHeaderScripts($request);
  82          $moduleName = $request->getModule();
  83  
  84          $jsFileNames = array(
  85              'modules.Vtiger.resources.List',
  86              "modules.$moduleName.resources.List",
  87              'modules.CustomView.resources.CustomView',
  88              "modules.$moduleName.resources.CustomView",
  89              "modules.Emails.resources.MassEdit",
  90              "modules.Vtiger.resources.CkEditor"
  91          );
  92  
  93          $jsScriptInstances = $this->checkAndConvertJsScripts($jsFileNames);
  94          $headerScriptInstances = array_merge($headerScriptInstances, $jsScriptInstances);
  95          return $headerScriptInstances;
  96      }
  97      
  98          /**

  99       * Function to get the list view header

 100       * @return <Array> - List of Vtiger_Field_Model instances

 101       */
 102  	public function getListViewRssHeaders($module) {
 103          $headerFieldModels = array();
 104          $headerFields = array(
 105                          'title' => array(
 106                              'uitype' => '1',
 107                              'name' => 'title',
 108                              'label' => 'LBL_SUBJECT',
 109                              'typeofdata' => 'V~O',
 110                              'diplaytype' => '1',
 111                          ), 
 112                          'sender' => array(
 113                              'uitype' => '1',
 114                              'name' => 'sender',
 115                              'label' => 'LBL_SENDER',
 116                              'typeofdata' => 'V~O',
 117                              'diplaytype' => '1',
 118                          )
 119                          );
 120          foreach ($headerFields as $fieldName => $fieldDetails) {
 121                  $fieldModel = Settings_Webforms_Field_Model::getInstanceByRow($fieldDetails);
 122                  $fieldModel->module = $module;
 123                  $fieldModelsList[$fieldName] = $fieldModel;
 124          }
 125          return $fieldModelsList;
 126      }
 127  }


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