Details
-
Type: Bug
-
Status: Won't Do
-
Priority: Major
-
Resolution: Won't Do
-
Affects Version/s: 4.3.5
-
Fix Version/s: Unscheduled
-
Component/s: CiviEvent
-
Labels:None
-
Versioning Impact:Patch (backwards-compatible bug fixes)
Description
We found a peculiar bug whilst using the multi language feature in an event registration workflow: If a participant registered online in a different language than you (the event organiser) are currently using, some of the standard workflow actions do not happen. In particular, the notification email for a manual confirmation will NOT be sent out.
We traced the issue back to the "civicrm_contribution.source" field. It seems to be set to a string that is compiled from the translated version of "Online Event Registration: <event title>". You would think, that this happens merely for documentation purposes - but no! Somehow this field is used to identify the related event.
Example:
A German registrant uses the German version of the event registration page. In the contribution connected to his participation DB entry the field "source" says: "Online-Veranstaltungsanmeldung: SomeEvent2013". Now, if I log in with the interface set to English, I can NOT properly process his registration. However, if I manually (i.e. using the mysql shell) set the "source" field to "Online Event Registration: SomeEvent2013", everything works smoothly.
How is this being processed/compared? Could somebody please fix this, or at least give me some insights so I can do it myself? See also CRM-13461
Steps to reproduce:
1. Enable "Enable Multiple Languages" (in Administer -> Localization -> Languages...)
2. Create new event
3. In "Online Registration:
- Allow online registration: Yes
- Register multiple participants: Yes
- Send Confirmation Mail: Yes
- Include Profile: "New Individual"
4. In "Fees": - Paid Event: Yes
- Enable Pay Later option?: Yes
- Add some fees
5. Register a participant from a different browser with a different (than the primary) language by using e.g. the language switcher
6. Back as administrator, go "Events" -> "Find Participants" and select the new participant.
7. Do "Batch update participants via profile" with their status and set it to "registered"
6. Observe, that the participant's status will change to registered, BUT the system will NOT - send out the "Events - Registration Confirmation and Receipt (on-line)" message
- set the status of the attached contribution to completed