[ 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_Reference_UIType extends Vtiger_Base_UIType { 12 13 /** 14 * Function to get the Template name for the current UI Type object 15 * @return <String> - Template Name 16 */ 17 public function getTemplateName() { 18 return 'uitypes/Reference.tpl'; 19 } 20 21 /** 22 * Function to get the Display Value, for the current field type with given DB Insert Value 23 * @param <Object> $value 24 * @return <Object> 25 */ 26 public function getReferenceModule($value) { 27 $fieldModel = $this->get('field'); 28 $referenceModuleList = $fieldModel->getReferenceList(); 29 $referenceEntityType = getSalesEntityType($value); 30 if(in_array($referenceEntityType, $referenceModuleList)) { 31 return Vtiger_Module_Model::getInstance($referenceEntityType); 32 } elseif (in_array('Users', $referenceModuleList)) { 33 return Vtiger_Module_Model::getInstance('Users'); 34 } 35 return null; 36 } 37 38 /** 39 * Function to get the display value in detail view 40 * @param <Integer> crmid of record 41 * @return <String> 42 */ 43 public function getDisplayValue($value) { 44 $referenceModule = $this->getReferenceModule($value); 45 if($referenceModule && !empty($value)) { 46 $referenceModuleName = $referenceModule->get('name'); 47 if($referenceModuleName == 'Users') { 48 $db = PearDatabase::getInstance(); 49 $nameResult = $db->pquery('SELECT first_name, last_name FROM vtiger_users WHERE id = ?', array($value)); 50 if($db->num_rows($nameResult)) { 51 return $db->query_result($nameResult, 0, 'first_name').' '.$db->query_result($nameResult, 0, 'last_name'); 52 } 53 } else { 54 $entityNames = getEntityName($referenceModuleName, array($value)); 55 $linkValue = "<a href='index.php?module=$referenceModuleName&view=".$referenceModule->getDetailViewName()."&record=$value' 56 title='".vtranslate($referenceModuleName, $referenceModuleName)."'>$entityNames[$value]</a>"; 57 return $linkValue; 58 } 59 } 60 return ''; 61 } 62 63 /** 64 * Function to get the display value in edit view 65 * @param reference record id 66 * @return link 67 */ 68 public function getEditViewDisplayValue($value) { 69 $referenceModule = $this->getReferenceModule($value); 70 if($referenceModule) { 71 $referenceModuleName = $referenceModule->get('name'); 72 $entityNames = getEntityName($referenceModuleName, array($value)); 73 return $entityNames[$value]; 74 } 75 return ''; 76 } 77 78 public function getListSearchTemplateName() { 79 $fieldModel = $this->get('field'); 80 $fieldName = $fieldModel->getName(); 81 if($fieldName == 'modifiedby'){ 82 return 'uitypes/OwnerFieldSearchView.tpl'; 83 } 84 return parent::getListSearchTemplateName(); 85 } 86 87 }
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 |