NOTE: This is a technical subticket of T328075: Move tracking out of donation data blob
This ticket is about changing export code to include the campaign and keywords in the database result instead getting them out of the legacy "data blob".
Affected repositories
- Fundraising Operation Center
Implementation notes
- Change src/DataAccess/DonationExport/ExportQueryBuilder.php to JOIN the tracking table, adding campaign and keyword fields.
- Create a custom export field mapper in src/DataAccess/ExportFieldMappers that returns the field names in getSQLFieldName. The implementation of getValueFromDbResult returns either an empty string (when both fields are empty) or the campaign and keyword fields joined by a slash
- Change entry for tracking in src/DataAccess/DonationExport/DonationExportFieldCollection.php from LegacyDatabaseField to a the new field mapper class.