From c8873813184220004dc2ff205e9ec388caca49ae Mon Sep 17 00:00:00 2001 From: Agniva De Sarker Date: Tue, 12 Sep 2023 10:08:09 +0530 Subject: [PATCH] MM-53736: Compliance export button state fix (#24488) In system console > compliance export, if we set the radio button from false to true. It would enable the "Run export now" button as well. This would actually allow the user to create a job without enabling compliance export. As a result, there would be a job entry which would never run because the config setting was never enabled. To fix this, we don't enable/disable the button until the config is actually saved. https://mattermost.atlassian.net/browse/MM-53736 ```release-note NONE ``` --------- Co-authored-by: Mattermost Build --- .../system_console/compliance/compliance_export_ui_spec.js | 2 +- .../src/components/admin_console/message_export_settings.jsx | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/e2e-tests/cypress/tests/integration/channels/enterprise/system_console/compliance/compliance_export_ui_spec.js b/e2e-tests/cypress/tests/integration/channels/enterprise/system_console/compliance/compliance_export_ui_spec.js index 04585b0fcc..009d33de32 100644 --- a/e2e-tests/cypress/tests/integration/channels/enterprise/system_console/compliance/compliance_export_ui_spec.js +++ b/e2e-tests/cypress/tests/integration/channels/enterprise/system_console/compliance/compliance_export_ui_spec.js @@ -148,7 +148,7 @@ describe('Compliance Export', () => { cy.findByTestId('enableComplianceExportfalse').click(); // * Verify that exported button is disabled - cy.findByRole('button', {name: /run compliance export job now/i}).should('be.disabled'); + cy.findByRole('button', {name: /run compliance export job now/i}).should('be.enabled'); }); it('MM-T1167 - Compliance Export job can be canceled', () => { diff --git a/webapp/channels/src/components/admin_console/message_export_settings.jsx b/webapp/channels/src/components/admin_console/message_export_settings.jsx index 3caba72f09..3b33083f92 100644 --- a/webapp/channels/src/components/admin_console/message_export_settings.jsx +++ b/webapp/channels/src/components/admin_console/message_export_settings.jsx @@ -42,6 +42,7 @@ export default class MessageExportSettings extends AdminSettings { enableComplianceExport: config.MessageExportSettings.EnableExport, exportFormat: config.MessageExportSettings.ExportFormat, exportJobStartTime: config.MessageExportSettings.DailyRunTime, + canRunJob: config.MessageExportSettings.EnableExport, }; if (config.MessageExportSettings.GlobalRelaySettings) { state.globalRelayCustomerType = config.MessageExportSettings.GlobalRelaySettings.CustomerType; @@ -316,7 +317,7 @@ export default class MessageExportSettings extends AdminSettings { /> } getExtraInfoText={this.getJobDetails} - disabled={this.props.isDisabled || !this.state.enableComplianceExport} + disabled={this.props.isDisabled || !this.state.canRunJob} /> );