Add setting to disable Smarty in Scheduled reminders
Until now, Smarty has been turned on in scheduled reminders.
This can cause problems when inline CSS is present in the scheduled reminder (e.g. when the html for the reminder was generated via Mosaico using the https://civicrm.org/extensions/mosaico-message-templates extension). It causes a fatal error when sending the messages which may not be detected and may cause other scheduled jobs to fail.
We could fix this by turning it off but some sites may want to preserve the current behaviour (those who actually use Smarty in their scheduled reminders - we don't now how many of these exist but we presume that they are in the minority - see https://github.com/civicrm/civicrm-core/pull/15436#issuecomment-541923948 for a discussion of why Smarty was enabled originally).
So we:
- add a new setting
scheduled_reminder_smarty
which by default is null, i.e. we disable this feature for new sites. - enable this feature during the upgrade to preserve the existing behaviour
- let people know they we might want to turn it off in a post upgrade message
We should also consider mentioning this in the https://civicrm.org/extensions/mosaico-message-templates documentation.
See https://github.com/civicrm/civicrm-core/pull/15436 and #58 (closed) for relevant background.