- Template Name */ public function getTemplateName() { return 'uitypes/MultiOwner.tpl'; } /** * Function to get the Display Value, for the current field type with given DB Insert Value * @param $value * @return */ public function getDisplayValue($values) { if($values == NULL && !is_array($values)) return; foreach($values as $value){ if (self::getOwnerType($value) === 'User') { $userModel = Users_Record_Model::getCleanInstance('Users'); $userModel->set('id', $value); $detailViewUrl = $userModel->getDetailViewUrl(); $currentUser = Users_Record_Model::getCurrentUserModel(); if(!$currentUser->isAdminUser()){ return getOwnerName($value); } } else { $currentUser = Users_Record_Model::getCurrentUserModel(); if(!$currentUser->isAdminUser()){ return getOwnerName($value); } $recordModel = new Settings_Groups_Record_Model(); $recordModel->set('groupid',$value); $detailViewUrl = $recordModel->getDetailViewUrl(); } $displayvalue[] = "" .getOwnerName($value). " "; } $displayvalue = implode(',',$displayvalue); return $displayvalue; } /** * Function to know owner is either User or Group * @param userId/GroupId * @return User/Group */ public static function getOwnerType($id) { $db = PearDatabase::getInstance(); $result = $db->pquery('SELECT 1 FROM vtiger_users WHERE id = ?', array($id)); if ($db->num_rows($result) > 0) { return 'User'; } return 'Group'; } }