[ 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 Potentials_GroupedBySalesStage_Dashboard extends Vtiger_IndexAjax_View { 12 13 /** 14 * Retrieves css styles that need to loaded in the page 15 * @param Vtiger_Request $request - request model 16 * @return <array> - array of Vtiger_CssScript_Model 17 */ 18 function getHeaderCss(Vtiger_Request $request){ 19 $cssFileNames = array( 20 //Place your widget specific css files here 21 ); 22 $headerCssScriptInstances = $this->checkAndConvertCssStyles($cssFileNames); 23 return $headerCssScriptInstances; 24 } 25 26 function getSearchParams($stage,$assignedto,$dates) { 27 $listSearchParams = array(); 28 $conditions = array(); 29 array_push($conditions,array("sales_stage","e",$stage)); 30 if($assignedto == ''){ 31 $currenUserModel = Users_Record_Model::getCurrentUserModel(); 32 $assignedto = $currenUserModel->getId(); 33 } 34 if($assignedto != 'all'){ 35 $ownerType = vtws_getOwnerType($assignedto); 36 if($ownerType == 'Users') 37 array_push($conditions,array("assigned_user_id","e",getUserFullName($assignedto))); 38 else{ 39 $groupName = getGroupName($assignedto); 40 $groupName = $groupName[0]; 41 array_push($conditions,array("assigned_user_id","e",$groupName)); 42 } 43 } 44 if(!empty($dates)) { 45 array_push($conditions,array("closingdate","bw",$dates['start'].','.$dates['end'])); 46 } 47 $listSearchParams[] = $conditions; 48 return '&search_params='. json_encode($listSearchParams); 49 } 50 51 public function process(Vtiger_Request $request) { 52 $currentUser = Users_Record_Model::getCurrentUserModel(); 53 $viewer = $this->getViewer($request); 54 $moduleName = $request->getModule(); 55 56 $linkId = $request->get('linkid'); 57 $owner = $request->get('owner'); 58 $dates = $request->get('expectedclosedate'); 59 60 //Date conversion from user to database format 61 if(!empty($dates)) { 62 $dates['start'] = Vtiger_Date_UIType::getDBInsertedValue($dates['start']); 63 $dates['end'] = Vtiger_Date_UIType::getDBInsertedValue($dates['end']); 64 } 65 66 $moduleModel = Vtiger_Module_Model::getInstance($moduleName); 67 $data = $moduleModel->getPotentialsCountBySalesStage($owner, $dates); 68 $listViewUrl = $moduleModel->getListViewUrl(); 69 for($i = 0;$i<count($data);$i++){ 70 $data[$i][] = $listViewUrl.$this->getSearchParams($data[$i][0],$owner,$dates); 71 } 72 73 $widget = Vtiger_Widget_Model::getInstance($linkId, $currentUser->getId()); 74 75 $viewer->assign('WIDGET', $widget); 76 $viewer->assign('MODULE_NAME', $moduleName); 77 $viewer->assign('DATA', $data); 78 79 //Include special script and css needed for this widget 80 $viewer->assign('STYLES',$this->getHeaderCss($request)); 81 $viewer->assign('CURRENTUSER', $currentUser); 82 83 $content = $request->get('content'); 84 if(!empty($content)) { 85 $viewer->view('dashboards/DashBoardWidgetContents.tpl', $moduleName); 86 } else { 87 $viewer->view('dashboards/GroupBySalesStage.tpl', $moduleName); 88 } 89 } 90 }
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 |