/** * Function to get all the available picklist values for the current field * @return <Array> List of picklist values if the field is of type picklist or multipicklist, null otherwise. */ public function getPicklistValues() { $fieldDataType = $this->getFieldDataType(); if ($this->getName() == 'hdnTaxType') { return null; } if ($fieldDataType == 'picklist' || $fieldDataType == 'multipicklist') { if ($this->isRoleBased()) { $userModel = Users_Record_Model::getCurrentUserModel(); $picklistValues = Vtiger_Util_Helper::getRoleBasedPicklistValues($this->getName(), $userModel->get('roleid')); } else { $picklistValues = Vtiger_Util_Helper::getPickListValues($this->getName()); } $fieldPickListValues = []; foreach ($picklistValues as $value) { $fieldPickListValues[$value] = vtranslate($value, $this->getModuleName()); } return $fieldPickListValues; } else { if (method_exists($this->getUITypeModel(), 'getPicklistValues')) { return $this->getUITypeModel()->getPicklistValues(); } } return null; }
/** * Function which will give the picklist values for a recurrence field * @param type $fieldName -- string * @return type -- array of values */ public static function getReccurencePicklistValues() { $currentUser = Users_Record_Model::getCurrentUserModel(); $fieldModel = Vtiger_Field_Model::getInstance('recurringtype', Vtiger_Module_Model::getInstance('Events')); if ($fieldModel->isRoleBased() && !$currentUser->isAdminUser()) { $userModel = Users_Record_Model::getCurrentUserModel(); $picklistValues = Vtiger_Util_Helper::getRoleBasedPicklistValues('recurringtype', $userModel->get('roleid')); } else { $picklistValues = Vtiger_Util_Helper::getPickListValues('recurringtype'); } foreach ($picklistValues as $value) { $fieldPickListValues[$value] = vtranslate($value, 'Events'); } return $fieldPickListValues; }