[ 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 Reports_ChartSaveAjax_View extends Vtiger_IndexAjax_View { 12 13 public function checkPermission(Vtiger_Request $request) { 14 $record = $request->get('record'); 15 if (!$record) { 16 throw new AppException('LBL_PERMISSION_DENIED'); 17 } 18 19 $moduleName = $request->getModule(); 20 $moduleModel = Reports_Module_Model::getInstance($moduleName); 21 $reportModel = Reports_Record_Model::getCleanInstance($record); 22 23 $currentUserPriviligesModel = Users_Privileges_Model::getCurrentUserPrivilegesModel(); 24 if (!$currentUserPriviligesModel->hasModulePermission($moduleModel->getId()) && !$reportModel->isEditable()) { 25 throw new AppException('LBL_PERMISSION_DENIED'); 26 } 27 } 28 29 public function process(Vtiger_Request $request) { 30 $mode = $request->getMode(); 31 $viewer = $this->getViewer($request); 32 $moduleName = $request->getModule(); 33 34 $record = $request->get('record'); 35 $reportModel = Reports_Record_Model::getInstanceById($record); 36 $reportModel->setModule('Reports'); 37 $reportModel->set('advancedFilter', $request->get('advanced_filter')); 38 39 40 $secondaryModules = $reportModel->getSecondaryModules(); 41 if(empty($secondaryModules)) { 42 $viewer->assign('CLICK_THROUGH', true); 43 } 44 45 $dataFields = $request->get('datafields', 'count(*)'); 46 if(is_string($dataFields)) $dataFields = array($dataFields); 47 48 $reportModel->set('reporttypedata', Zend_Json::encode(array( 49 'type'=>$request->get('charttype', 'pieChart'), 50 'groupbyfield'=>$request->get('groupbyfield'), 51 'datafields'=>$dataFields) 52 )); 53 $reportModel->set('reporttype', 'chart'); 54 $reportModel->save(); 55 56 $reportChartModel = Reports_Chart_Model::getInstanceById($reportModel); 57 58 $data = $reportChartModel->getData(); 59 $viewer->assign('CHART_TYPE', $reportChartModel->getChartType()); 60 $viewer->assign('DATA', json_encode($data, JSON_HEX_APOS)); 61 $viewer->assign('MODULE', $moduleName); 62 63 $viewer->view('ChartReportContents.tpl', $moduleName); 64 } 65 }
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 |