PLT-6924 Added config options to disable file uploads/downloads on mobile (#7049)
Этот коммит содержится в:
коммит произвёл
Corey Hulen
родитель
da6e6ca0bf
Коммит
3c0f082506
@@ -46,18 +46,10 @@
|
||||
"TimeBetweenUserTypingUpdatesMilliseconds": 5000,
|
||||
"EnablePostSearch": true,
|
||||
"EnableUserTypingMessages": true,
|
||||
"EnableUserStatuses": true,
|
||||
"EnableChannelViewedMessages": true,
|
||||
"EnableUserStatuses": true,
|
||||
"ClusterLogTimeoutMilliseconds": 2000
|
||||
},
|
||||
"ElasticsearchSettings": {
|
||||
"ConnectionUrl": "http://dockerhost:9200",
|
||||
"Username": "elastic",
|
||||
"Password": "changeme",
|
||||
"EnableIndexing": false,
|
||||
"EnableSearching": false,
|
||||
"Sniff": true
|
||||
},
|
||||
"TeamSettings": {
|
||||
"SiteName": "Mattermost",
|
||||
"MaxUsersPerTeam": 50,
|
||||
@@ -112,6 +104,8 @@
|
||||
},
|
||||
"FileSettings": {
|
||||
"EnableFileAttachments": true,
|
||||
"EnableMobileUpload": true,
|
||||
"EnableMobileDownload": true,
|
||||
"MaxFileSize": 52428800,
|
||||
"DriverName": "local",
|
||||
"Directory": "./data/",
|
||||
@@ -167,6 +161,9 @@
|
||||
"AboutLink": "https://about.mattermost.com/default-about/",
|
||||
"HelpLink": "https://about.mattermost.com/default-help/",
|
||||
"ReportAProblemLink": "https://about.mattermost.com/default-report-a-problem/",
|
||||
"AdministratorsGuideLink": "https://about.mattermost.com/administrators-guide/",
|
||||
"TroubleshootingForumLink": "https://about.mattermost.com/troubleshooting-forum/",
|
||||
"CommercialSupportLink": "https://about.mattermost.com/commercial-support/",
|
||||
"SupportEmail": "feedback@mattermost.com"
|
||||
},
|
||||
"AnnouncementSettings": {
|
||||
@@ -287,6 +284,14 @@
|
||||
"TurnUsername": "",
|
||||
"TurnSharedKey": ""
|
||||
},
|
||||
"ElasticsearchSettings": {
|
||||
"ConnectionUrl": "http://dockerhost:9200",
|
||||
"Username": "elastic",
|
||||
"Password": "changeme",
|
||||
"EnableIndexing": false,
|
||||
"EnableSearching": false,
|
||||
"Sniff": true
|
||||
},
|
||||
"DataRetentionSettings": {
|
||||
"Enable": false
|
||||
},
|
||||
@@ -294,4 +299,4 @@
|
||||
"RunJobs": true,
|
||||
"RunScheduler": true
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -236,6 +236,8 @@ type PasswordSettings struct {
|
||||
|
||||
type FileSettings struct {
|
||||
EnableFileAttachments *bool
|
||||
EnableMobileUpload *bool
|
||||
EnableMobileDownload *bool
|
||||
MaxFileSize *int64
|
||||
DriverName string
|
||||
Directory string
|
||||
@@ -539,6 +541,16 @@ func (o *Config) SetDefaults() {
|
||||
*o.FileSettings.EnableFileAttachments = true
|
||||
}
|
||||
|
||||
if o.FileSettings.EnableMobileUpload == nil {
|
||||
o.FileSettings.EnableMobileUpload = new(bool)
|
||||
*o.FileSettings.EnableMobileUpload = true
|
||||
}
|
||||
|
||||
if o.FileSettings.EnableMobileDownload == nil {
|
||||
o.FileSettings.EnableMobileDownload = new(bool)
|
||||
*o.FileSettings.EnableMobileDownload = true
|
||||
}
|
||||
|
||||
if o.FileSettings.MaxFileSize == nil {
|
||||
o.FileSettings.MaxFileSize = new(int64)
|
||||
*o.FileSettings.MaxFileSize = 52428800 // 50 MB
|
||||
|
||||
@@ -452,6 +452,8 @@ func getClientConfig(c *model.Config) map[string]string {
|
||||
props["SupportEmail"] = *c.SupportSettings.SupportEmail
|
||||
|
||||
props["EnableFileAttachments"] = strconv.FormatBool(*c.FileSettings.EnableFileAttachments)
|
||||
props["EnableMobileFileUpload"] = strconv.FormatBool(*c.FileSettings.EnableMobileUpload)
|
||||
props["EnableMobileFileDownload"] = strconv.FormatBool(*c.FileSettings.EnableMobileDownload)
|
||||
props["EnablePublicLink"] = strconv.FormatBool(c.FileSettings.EnablePublicLink)
|
||||
|
||||
props["WebsocketPort"] = fmt.Sprintf("%v", *c.ServiceSettings.WebsocketPort)
|
||||
|
||||
@@ -26,6 +26,8 @@ export default class StorageSettings extends AdminSettings {
|
||||
|
||||
getConfigFromState(config) {
|
||||
config.FileSettings.EnableFileAttachments = this.state.enableFileAttachments;
|
||||
config.FileSettings.EnableMobileUpload = this.state.enableMobileUpload;
|
||||
config.FileSettings.EnableMobileDownload = this.state.enableMobileDownload;
|
||||
config.FileSettings.MaxFileSize = this.parseInt(this.state.maxFileSize) * 1024 * 1024;
|
||||
config.FileSettings.DriverName = this.state.driverName;
|
||||
config.FileSettings.Directory = this.state.directory;
|
||||
@@ -41,6 +43,8 @@ export default class StorageSettings extends AdminSettings {
|
||||
getStateFromConfig(config) {
|
||||
return {
|
||||
enableFileAttachments: config.FileSettings.EnableFileAttachments,
|
||||
enableMobileUpload: config.FileSettings.EnableMobileUpload,
|
||||
enableMobileDownload: config.FileSettings.EnableMobileDownload,
|
||||
maxFileSize: config.FileSettings.MaxFileSize / 1024 / 1024,
|
||||
driverName: config.FileSettings.DriverName,
|
||||
directory: config.FileSettings.Directory,
|
||||
@@ -206,18 +210,54 @@ export default class StorageSettings extends AdminSettings {
|
||||
label={
|
||||
<FormattedMessage
|
||||
id='admin.file.enableFileAttachments'
|
||||
defaultMessage='Enable File Attachments:'
|
||||
defaultMessage='Allow File Sharing:'
|
||||
/>
|
||||
}
|
||||
helpText={
|
||||
<FormattedMessage
|
||||
id='admin.file.enableFileAttachmentsDesc'
|
||||
defaultMessage='When false, disable file and image uploads on messages.'
|
||||
defaultMessage='When false, disables file sharing on the server. All file and image uploads on messages are forbidden across clients and devices, including mobile.'
|
||||
/>
|
||||
}
|
||||
value={this.state.enableFileAttachments}
|
||||
onChange={this.handleChange}
|
||||
/>
|
||||
<BooleanSetting
|
||||
id='enableMobileUpload'
|
||||
label={
|
||||
<FormattedMessage
|
||||
id='admin.file.enableMobileUploadTitle'
|
||||
defaultMessage='Allow File Uploads on Mobile:'
|
||||
/>
|
||||
}
|
||||
helpText={
|
||||
<FormattedMessage
|
||||
id='admin.file.enableMobileUploadDesc'
|
||||
defaultMessage='When false, disables file uploads on mobile apps. If Allow File Sharing is set to true, users can still upload files from a mobile web browser.'
|
||||
/>
|
||||
}
|
||||
value={this.state.enableMobileUpload}
|
||||
onChange={this.handleChange}
|
||||
disabled={!this.state.enableFileAttachments}
|
||||
/>
|
||||
<BooleanSetting
|
||||
id='enableMobileDownload'
|
||||
label={
|
||||
<FormattedMessage
|
||||
id='admin.file.enableMobileDownloadTitle'
|
||||
defaultMessage='Allow File Downloads on Mobile:'
|
||||
/>
|
||||
}
|
||||
helpText={
|
||||
<FormattedMessage
|
||||
id='admin.file.enableMobileDownloadDesc'
|
||||
defaultMessage='When false, disables file downloads on mobile apps. Users can still download files from a mobile web browser.'
|
||||
/>
|
||||
}
|
||||
value={this.state.enableMobileDownload}
|
||||
onChange={this.handleChange}
|
||||
disabled={!this.state.enableFileAttachments}
|
||||
/>
|
||||
<TextSetting
|
||||
id='maxFileSize'
|
||||
label={
|
||||
|
||||
@@ -323,8 +323,12 @@
|
||||
"admin.email.smtpUsernameTitle": "SMTP Server Username:",
|
||||
"admin.email.testing": "Testing...",
|
||||
"admin.false": "false",
|
||||
"admin.file.enableFileAttachments": "Enable File Attachments:",
|
||||
"admin.file.enableFileAttachmentsDesc": "When false, disable file and image uploads on messages.",
|
||||
"admin.file.enableFileAttachments": "Allow File Sharing:",
|
||||
"admin.file.enableFileAttachmentsDesc": "When false, disables file sharing on the server. All file and image uploads on messages are forbidden across clients and devices, including mobile.",
|
||||
"admin.file.enableMobileDownloadDesc": "When false, disables file downloads on mobile apps. Users can still download files from a mobile web browser.",
|
||||
"admin.file.enableMobileDownloadTitle": "Allow File Downloads on Mobile:",
|
||||
"admin.file.enableMobileUploadDesc": "When false, disables file uploads on mobile apps. If Allow File Sharing is set to true, users can still upload files from a mobile web browser.",
|
||||
"admin.file.enableMobileUploadTitle": "Allow File Uploads on Mobile:",
|
||||
"admin.file_upload.chooseFile": "Choose File",
|
||||
"admin.file_upload.noFile": "No file uploaded",
|
||||
"admin.file_upload.uploadFile": "Upload",
|
||||
|
||||
Ссылка в новой задаче
Block a user