mirror of
https://github.com/silverstripe/silverstripe-userforms.git
synced 2024-10-22 17:05:42 +02:00
FIX Pass submissions GridFieldConfig to GridField constructor to avoid error in state
This framework bug causes the submissions GridField to lose the filter context when exporting as CSV. Passing the config directly to the GridField constructor allows the state to be set containing the config, where setting it after construction will lose this context. This will be fixed in SS 3.5.x and 3.6.x core releases, but this fix patches it for userforms anyway.
This commit is contained in:
parent
630c5c3395
commit
d88ce28174
@ -125,7 +125,6 @@ class UserDefinedForm extends Page
|
||||
$self = $this;
|
||||
|
||||
$this->beforeUpdateCMSFields(function ($fields) use ($self) {
|
||||
|
||||
// define tabs
|
||||
$fields->findOrMakeTab('Root.FormOptions', _t('UserDefinedForm.CONFIGURATION', 'Configuration'));
|
||||
$fields->findOrMakeTab('Root.Recipients', _t('UserDefinedForm.RECIPIENTS', 'Recipients'));
|
||||
@ -167,12 +166,6 @@ class UserDefinedForm extends Page
|
||||
|
||||
|
||||
// view the submissions
|
||||
$submissions = new GridField(
|
||||
'Submissions',
|
||||
_t('UserDefinedForm.SUBMISSIONS', 'Submissions'),
|
||||
$self->Submissions()->sort('Created', 'DESC')
|
||||
);
|
||||
|
||||
// make sure a numeric not a empty string is checked against this int column for SQL server
|
||||
$parentID = (!empty($self->ID)) ? (int) $self->ID : 0;
|
||||
|
||||
@ -229,10 +222,20 @@ SQL;
|
||||
$export->setCsvHasHeader(true);
|
||||
$export->setExportColumns($columns);
|
||||
|
||||
$submissions->setConfig($config);
|
||||
$submissions = GridField::create(
|
||||
'Submissions',
|
||||
_t('UserDefinedForm.SUBMISSIONS', 'Submissions'),
|
||||
$self->Submissions()->sort('Created', 'DESC'),
|
||||
$config
|
||||
);
|
||||
$fields->addFieldToTab('Root.Submissions', $submissions);
|
||||
$fields->addFieldToTab('Root.FormOptions', new CheckboxField('DisableSaveSubmissions', _t('UserDefinedForm.SAVESUBMISSIONS', 'Disable Saving Submissions to Server')));
|
||||
|
||||
$fields->addFieldToTab(
|
||||
'Root.FormOptions',
|
||||
CheckboxField::create(
|
||||
'DisableSaveSubmissions',
|
||||
_t('UserDefinedForm.SAVESUBMISSIONS', 'Disable Saving Submissions to Server')
|
||||
)
|
||||
);
|
||||
});
|
||||
|
||||
$fields = parent::getCMSFields();
|
||||
|
Loading…
Reference in New Issue
Block a user