[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
1 <?php 2 /*+*********************************************************************************** 3 * The contents of this file are subject to the vtiger CRM Public License Version 1.0 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 Vtiger_Dashboard_View extends Vtiger_Index_View { 12 13 function checkPermission(Vtiger_Request $request) { 14 $moduleName = $request->getModule(); 15 if(!Users_Privileges_Model::isPermitted($moduleName, $actionName)) { 16 throw new AppException(vtranslate('LBL_PERMISSION_DENIED')); 17 } 18 } 19 20 function preProcess(Vtiger_Request $request, $display=true) { 21 parent::preProcess($request, false); 22 $viewer = $this->getViewer($request); 23 $moduleName = $request->getModule(); 24 25 $dashBoardModel = Vtiger_DashBoard_Model::getInstance($moduleName); 26 //check profile permissions for Dashboards 27 $moduleModel = Vtiger_Module_Model::getInstance('Dashboard'); 28 $userPrivilegesModel = Users_Privileges_Model::getCurrentUserPrivilegesModel(); 29 $permission = $userPrivilegesModel->hasModulePermission($moduleModel->getId()); 30 if($permission) { 31 $widgets = $dashBoardModel->getSelectableDashboard(); 32 } else { 33 $widgets = array(); 34 } 35 $viewer->assign('MODULE_PERMISSION', $permission); 36 $viewer->assign('WIDGETS', $widgets); 37 $viewer->assign('MODULE_NAME', $moduleName); 38 if($display) { 39 $this->preProcessDisplay($request); 40 } 41 } 42 43 function preProcessTplName(Vtiger_Request $request) { 44 return 'dashboards/DashBoardPreProcess.tpl'; 45 } 46 47 function process(Vtiger_Request $request) { 48 $viewer = $this->getViewer($request); 49 $moduleName = $request->getModule(); 50 51 $dashBoardModel = Vtiger_DashBoard_Model::getInstance($moduleName); 52 53 //check profile permissions for Dashboards 54 $moduleModel = Vtiger_Module_Model::getInstance('Dashboard'); 55 $userPrivilegesModel = Users_Privileges_Model::getCurrentUserPrivilegesModel(); 56 $permission = $userPrivilegesModel->hasModulePermission($moduleModel->getId()); 57 if($permission) { 58 $widgets = $dashBoardModel->getDashboards(); 59 } else { 60 return; 61 } 62 63 $viewer->assign('MODULE_NAME', $moduleName); 64 $viewer->assign('WIDGETS', $widgets); 65 $viewer->assign('CURRENT_USER', Users_Record_Model::getCurrentUserModel()); 66 $viewer->view('dashboards/DashBoardContents.tpl', $moduleName); 67 } 68 69 public function postProcess(Vtiger_Request $request) { 70 parent::postProcess($request); 71 } 72 73 /** 74 * Function to get the list of Script models to be included 75 * @param Vtiger_Request $request 76 * @return <Array> - List of Vtiger_JsScript_Model instances 77 */ 78 public function getHeaderScripts(Vtiger_Request $request) { 79 $headerScriptInstances = parent::getHeaderScripts($request); 80 $moduleName = $request->getModule(); 81 82 $jsFileNames = array( 83 '~/libraries/jquery/gridster/jquery.gridster.min.js', 84 '~/libraries/jquery/jqplot/jquery.jqplot.min.js', 85 '~/libraries/jquery/jqplot/plugins/jqplot.canvasTextRenderer.min.js', 86 '~/libraries/jquery/jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js', 87 '~/libraries/jquery/jqplot/plugins/jqplot.pieRenderer.min.js', 88 '~/libraries/jquery/jqplot/plugins/jqplot.barRenderer.min.js', 89 '~/libraries/jquery/jqplot/plugins/jqplot.categoryAxisRenderer.min.js', 90 '~/libraries/jquery/jqplot/plugins/jqplot.pointLabels.min.js', 91 '~/libraries/jquery/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js', 92 '~/libraries/jquery/jqplot/plugins/jqplot.funnelRenderer.min.js', 93 '~/libraries/jquery/jqplot/plugins/jqplot.barRenderer.min.js', 94 '~/libraries/jquery/jqplot/plugins/jqplot.logAxisRenderer.min.js', 95 'modules.Vtiger.resources.DashBoard', 96 'modules.'.$moduleName.'.resources.DashBoard', 97 'modules.Vtiger.resources.dashboards.Widget' 98 ); 99 100 $jsScriptInstances = $this->checkAndConvertJsScripts($jsFileNames); 101 $headerScriptInstances = array_merge($headerScriptInstances, $jsScriptInstances); 102 return $headerScriptInstances; 103 } 104 105 /** 106 * Function to get the list of Css models to be included 107 * @param Vtiger_Request $request 108 * @return <Array> - List of Vtiger_CssScript_Model instances 109 */ 110 public function getHeaderCss(Vtiger_Request $request) { 111 $parentHeaderCssScriptInstances = parent::getHeaderCss($request); 112 113 $headerCss = array( 114 '~/libraries/jquery/gridster/jquery.gridster.min.css', 115 '~/libraries/jquery/jqplot/jquery.jqplot.min.css', 116 ); 117 $cssScripts = $this->checkAndConvertCssStyles($headerCss); 118 $headerCssScriptInstances = array_merge($parentHeaderCssScriptInstances , $cssScripts); 119 return $headerCssScriptInstances; 120 } 121 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:08:37 2014 | Cross-referenced by PHPXref 0.7.1 |