CRM_Event_Form_Task_Register - Fix error "getFieldValue failed" (tentative)
authorTim Otten <totten@civicrm.org>
Tue, 8 Dec 2020 05:27:13 +0000 (21:27 -0800)
committerTim Otten <totten@civicrm.org>
Wed, 9 Dec 2020 01:18:04 +0000 (17:18 -0800)
commit21aab5a3f2d0f276a3294a57a52decdd202e41aa
treef966a1d2500d2a4fe27bc913d46790d7f103b745
parentb33c0edc5fdf8ae36a63dea7c1ae62d0f7ff9f1c
CRM_Event_Form_Task_Register - Fix error "getFieldValue failed" (tentative)

When preparing the event-registration form, `CRM_Event_Page_Tab::preProcess()` looks up the designated contact ID and
calls `checkUserPermission()`.  The error message is (effectively) reporting that the permission-check fails because
there is no contact ID.

And this is a legit thing to complain about -- if you're embedding the event-registration form as part of a
search-task, then there is no *singular* contact ID.  (There is a potentially very long list of contact IDs - which is
probably stored/reported some other way.) The permission-check for this context seems like it ought to be different.

I labeled the commit (tentative) because I'm not entirely certain that I understand the contract of this
route/controller.  It has multiple overlapping use-cases, and I'm not certain if I've tracked them all.  However, this
patch does seem to fix the "getFieldValue failed" problem when running as a search-task.
CRM/Event/Form/Task/Register.php
CRM/Event/Page/Tab.php