[REF] Load participant id within completeOrder rather than passing it in
authoreileen <emcnaughton@wikimedia.org>
Sun, 21 Feb 2021 21:29:35 +0000 (10:29 +1300)
committereileen <emcnaughton@wikimedia.org>
Sun, 21 Feb 2021 21:34:18 +0000 (10:34 +1300)
commit1759de8a46dbee45bad449c8fee18fe756b614f6
treeddb1c7959085ace233301a1841b43604971ab062
parent3030b0843d200c8442a654da14d9ae66c13315ce
[REF] Load participant id within completeOrder rather than passing it in

The participantID passed in is simply loaded by retrieving participant_id from
the participant payment table earlier on. By doing it in the function
instead we can simplify the code that does that. There is no apiv4 for
participant payment as yet and once we start thinking about adding that
other questions arise (should we retrieve it via the line item instead)
so I went for a very limited change that simply replicates the
way it is currently retrieved (and does not, for example, increase the scope
to consider whether Attended should be updated to Registered) - in other
words this is as close to no-change as possible

I also deliberately left any changes to the nasty by-pass out of scope - that
needs to be tackled from the other end - ie removing the reason for the bypass
first and in the meantime we don't want to make it look any less hacky as we
don't want anyone to try to 'use' it
Test cover in testRepeatTransactionPassedInFinancialTypeTwoLineItems
CRM/Contribute/BAO/Contribution.php