function($issue) {
return sprintf('<li>%s</li>', $issue);
}, $snapshotIssues)) . '</ul>';
+ $preUpgradeMessage .= '<p>' . ts('You may enable snapshots in "<code>%1</code>" by setting the experimental option "<code>%2</code>".', [
+ 1 => 'civicrm.settings.php',
+ 2 => htmlentities('define(\'CIVICRM_UPGRADE_SNAPSHOT\', TRUE)'),
+ ]) . '</p>';
$preUpgradeMessage .= '</details>';
}
}
*/
public static function getActivationIssues(): array {
if (static::$activationIssues === NULL) {
- // TODO This policy should probably be more configurable, eg via `setting` or `define()`.
+ $policy = CRM_Utils_Constant::value('CIVICRM_UPGRADE_SNAPSHOT', 'auto');
+ if ($policy === TRUE) {
+ return [];
+ }
$limits = [
'civicrm_contact' => 200 * 1000,
if (CRM_Core_I18n::isMultilingual()) {
static::$activationIssues['multilingual'] = ts('Multilingual snapshots have not been implemented.');
}
+
+ if ($policy === FALSE) {
+ static::$activationIssues['override'] = ts('Snapshots disabled by override (CIVICRM_UPGRADE_SNAPSHOT).');
+ }
}
return static::$activationIssues;