Convert event badges to use token processor
authorEileen McNaughton <emcnaughton@wikimedia.org>
Sat, 18 Sep 2021 22:49:29 +0000 (10:49 +1200)
committerEileen McNaughton <emcnaughton@wikimedia.org>
Mon, 20 Sep 2021 23:21:21 +0000 (11:21 +1200)
commitb7472bd6e34f6c0aa1e264b88d994e4c43b1e4b7
tree3cafeebdb9e6feef4f308e70f63be3c88f3ec418
parent62d3fbb94b5f52190f038bf4522420cab5a15d22
Convert event badges to use token processor

This adds the token processor class for participants and
switches the one place where we currently resolve participant
tokens to use it.

In the process I upgrade the badge tokens with a syntax change and
drop a few more that are actually
a) weird / seemingly accidentally exposed and
b) not really part of the participant entity

ie event template title & default role id

With participant tokens we have been fortunate not
to let a non-standard implementation go out
so it's only the event badges which are
a bit obscure / less used / less likely to be
blindly used. I have added token replacement
but I think it will be all very edge case
CRM/Badge/BAO/Badge.php
CRM/Core/EntityTokens.php
CRM/Core/SelectValues.php
CRM/Event/ParticipantTokens.php [new file with mode: 0644]
CRM/Upgrade/Incremental/php/FiveFortyThree.php
Civi/Core/Container.php
tests/phpunit/CRM/Event/Form/Task/BadgeTest.php
tests/phpunit/CRM/Utils/TokenConsistencyTest.php