Details
-
Type: Improvement
-
Status: Done/Fixed
-
Priority: Minor
-
Resolution: Fixed/Completed
-
Affects Version/s: 4.7.24, 4.7.25
-
Fix Version/s: 4.7.30
-
Component/s: Core CiviCRM
-
Labels:
-
Versioning Impact:Patch (backwards-compatible bug fixes)
-
Documentation Required?:None
-
Funding Source:Contributed Code
-
Verified?:No
Description
Steps to reproduce:
- Note the system ID of an existing custom field. In this example we'll use Most Important Issue, custom field ID=1, options: Education; Environment; Social Justice.
- Find any existing contact and set a value in the custom field, e.g., "Education"
- Edit a contact's "Addressee" field to "Customized", with the value "{contact.custom_1}" and save the contact; note that the Addressee field now says "Education".
- Change the value of this custom field via the appropriate inline editing or tab for the custom field group; alternatively, use the CustomValue.create API like so:
cv api CustomValue.create sequential=1 entity_id=N entity_table="civicrm_contact" custom_1="Env"NOTE: This repro recipe will not work if you change this field value by using the "Edit" button for the contact (i.e., by navigating to to /civicrm/contact/add?reset=1&action=update&cid=[N]); or by using the Contact.create API) - Note that the Addressee field value is NOT updated to reflect the new custom field value.
Quick diagnosis:
- Looks like the CustomValue API / CustomValueTable BAO should be invoking CRM_Contact_BAO_Contact::processGreetings() if the entity_table parameter = 'civicrm_contact', but it's not.
- Also, the inline UI for custom field groups should be sure to refresh the page data for display of greetings.