316 Commits
Author SHA1 Message Date
George Goldberg d2945cdd77 MM-11782: Make archived channels experimental and off-by-default. (#9281)
* MM-11782: Make archived channels experimental and off-by-default.

* Fix test.
2018-08-22 21:12:51 +02:00
Martin Kraft 5872bf9c2f Pr 9039 (#9187)
* MM-11065: Allow to search and get archived channels from the API

* Fixing more tests

* Add some unit tests

* Add includeDeleted parameter to session permissions check function

* More test fixing

* Adding archive channels list in channels search

* Add restriction for archived channel edition

* Reverting permissions checks modification

* Changed the query parameter to include_deleted

* Enable search archive channels as true by default

* Adding tests for verify search on deleted channels

* Allowing to override archive channels during the imports

* Fixed test

* Search in archive channels from the API must be explicitly requested

* Removing includeDeleted parameter from GetChannelByName and GetChannelByNameForTeam

* Back to ViewArchivedChannels config

* Fixing tests

* Reverting GetChannelByName parameter

* Add include deleted parameter on GetChannel functions in plugins api

* Fixing tests
2018-07-30 15:06:08 -04:00
Christopher Speller bae26ec268 MM-11160 Adding proper CORS support. (#9152)
* Adding proper CORS support.

* Better CORS tests.
2018-07-26 08:31:22 -07:00
Chris Duarte da124f018d Add ExperimentalSidebarPreference in the config (#9013)
* Add ExperimentalSidebarPreference in the config

* Override Sidebar preference based on GroupUnread settings

* Rename to ExperimentalChannelOrganization

* Add Sidebar config in diagnostics

* Fix diagnostics for experimental_channel_organization
2018-07-23 11:18:24 -04:00
Chris Duarte 3fcecd521a Support for Embeded chat (#9129)
* Add ucLive support

crazy testing

lovely logs

more cookie work arounds

Added Access-Control-Expose-Headers to user login

Add complete_saml_body template and revert loginWithSaml endpoint

Set Access-Control-Allow-Credentials to true in user login

Login via email instead of username

Clean up code

Add comment to give some context

Move faml logic into saml function

Communicate via chrome sendMessage api

Remove unused code

Add config to support multiple extensions

Clean up embedded complete_saml template

Fix indentation for templates

Added license header to extension.go

Add EnableExperimentalExtensions flag

Extension validated for email auth

Clean up api auth code

Remove complete_saml_body.html

* Add extension support in saml

* Clean up code

* Clean up extension validation
2018-07-18 14:56:38 -07:00
Christopher Speller 74e5d8ae66 MM-11120 Adding setting to disable email invitations and rate limiting. (#9063)
* Adding setting to disable email invitations.

* Adding a setting and rate limiting for email invite sending.

* Modifying email rate limit to 20/user/hour

* Adding EnableEmailInvitations to client side config and command.
2018-07-10 10:54:25 +02:00
Asaad Mahmood 8d3ea1bbf6 MM-10766 - Replacing default profile image font (#8955)
* Updating default profile pic font

* Updating profile image font

* Updating test

* Use new default font if configured for old one

* Update OFL.txt
2018-07-05 09:18:26 +02:00
Jason Blais 8821fee6c2 Disable Gfycat by default during Beta and move default keys to server (#9027)
* Update default.json

* Update diagnostics.go

* Added default Gfycat API credentials to server

* Fixed default Gfycat credentials
2018-07-03 11:26:08 +02:00
Jerry Kurian 4b2a626354 add MaxLifetimeconns to server (#9004)
Update e.json string names and remove console log

reorder variables

update db.setConnMaxLifetime to take in *settings.MaxLifetimeConns

Add MaxLifetimeConns to test

Update variable names like MaxLifetimeConns to ConnMaxLifetimeMilliseconds

Update time passed to SetConnMaxLifetime

Revert "Update time passed to SetConnMaxLifetime"

This reverts commit dc1c1b6d5a6404d4ee11c65d4756c19f9316794f.

update en.json

Update supplier_test.go and docker.go ConnMaxLifetimeMilliseconds to 3600000
2018-06-28 09:45:20 -04:00
Kenny Au 437f9f5b64 Gfycat integration (#8971)
* Gfycat integration

* Added gfycat api credentials to config.
2018-06-27 15:35:15 -04:00
Harrison Healey 6d8140337e MM-8701 Limit the number of client config fields sent before user logs in (#8954)
* MM-8701 Limit the number of client config fields sent before user logs in

* Fixed missing client config field

* Reduced duplication between limited and regular client config
2018-06-18 12:39:22 -04:00
Corey Hulen 656c8a62d1 Prototype for CBA (#8475)
* Prototype for CBA

* Fixing gofmt issues

* Do not require password if logging in with certificate

* Fixing issues from feedback

* Adding unit tests

* Fixing feedback
2018-06-12 10:16:39 -07:00
Christopher Speller 2c75247c97 MM-10348 Adding experimental hardened mode. (#8881)
* Adding experimental hardened mode.

* Sanitizing all 500 errors.
2018-06-04 09:48:26 -07:00
Harrison Healey 2fe8878749 MM-9547 Added config setting to control url autolinking schemes (#8862)
* MM-9547 Added config setting to control autolinking schemes

* Renamed AutolinkingSchemes to CustomUrlSchemes
2018-05-30 10:48:04 -04:00
Carlos Tadeu Panato Junior c3e9c41440 [MM-1915] Add Deactivate Account - server side (#8699) 2018-05-28 16:20:08 +02:00
Saturnino Abril 94b2eca2d1 add ExperimentalHideTownSquareinLHS in config setting (#8751) 2018-05-24 16:41:30 -04:00
Jesse Hallam 5c21bdc178 allow tuning *IdleConn* for intra-cluster messages (#8799)
* allow tuning *IdleConn* for inter cluster messages

* default MaxIdleConnsPerHost to 128
2018-05-23 13:17:08 -04:00
Saturnino Abril ce378adc97 add EnablePreviewModeBanner in config (#8834)
Signed-off-by: Saturnino Abril <saturnino.abril@gmail.com>
2018-05-22 11:10:27 -07:00
Christopher Speller 0432f995ec MM-9983 Requiring SiteURL to be set. (#8769)
* Requiring SiteURL to be set.

* Modifying to make tests pass.

* Fixing test.
2018-05-18 08:37:43 -07:00
Joram Wilander c6cbce6100 Add config setting for API team deletion (#8800) 2018-05-18 09:13:23 -04:00
Christopher Speller d8dd271e43 MM-4998 Adding LoginIdAttribute to allow LDAP users to change their login ID without losing their account (#8756)
* Adding LoginIdAttribute

* Modifying LDAP to use loginIDAttribute.

* Adding IDAttribute migration and AD objectGUID support.

* Removing unused idea.

* Fix typo.
2018-05-10 09:46:09 -07:00
Christopher Speller 686c2fbab7 Structured logging (#8673)
* Implementing structured logging

* Changes to en.json to allow refactor to run.

* Fixing global logger

* Structured logger initalization.

* Add caller.

* Do some log redirection.

* Auto refactor

* Cleaning up l4g reference and removing dependancy.

* Removing junk.

* Copyright headers.

* Fixing tests

* Revert "Changes to en.json to allow refactor to run."

This reverts commit fd8249e99b.

* Fixing some auto refactor strangeness and typo.

* Making keys more human readable.
2018-04-27 12:49:45 -07:00
Stan Chan 7826774a14 Add Auto Responder handler (#8386)
WIP Out Of Office

Return error for status command if user status is OOO

Ignore notifications if Out Of Office

Disable AutoResponder if status is set to online

Add test for AutoResponder

DisableAutoResponse when manually setting status

Remove check on status slash command

return early if user does not exists in SendAutoResponse method

Add proper error handling

Add a newline after error handling

Revert back to err == nil in api4/status.go

Remove a.Go when using a.Publish

Add name consistency with the feature auto responder

Last changes for name consistency, also fix failing test with auto_responder

Fix names of functions in auto responder test

Add ExperimentalEnableAutomaticReplies flag

Auto Responder reply to a post
2018-04-12 15:02:36 -04:00
Chris Duarte eb48292a3a Add ExperimentalTimezone flag (#8539) 2018-03-29 10:04:17 -04:00
Martin Kraft 5fa1b35819 Merge branch 'master' into advanced-permissions-phase-1 2018-03-23 09:08:49 -04:00
Chris Duarte 74e703f58d Timezone feature (#8185)
* Add supported timezones into config

Remove Timezone list creation in favor of timezone from configs

Add Timezone field to Users table

Clean up format of SupportedTimezones in config

* Remove unwanted change

* Add test for updating user timezone

* Add empty map[string]string if Timezone is null

* Add EnableTimezoneSelection config

* Revert back to map[string]string for ClientConfig

* Refactor SupportedTimezones into timezones.json

* Include timezones.json in TestConfigFlag

* Add timezone api endpoint

* Bump varchar size to 256 and setMaxSize in user_store

* Refactor LoadConfig to LoadConfig and LoadTimezoneConfig

* Remove unnecessary argument in LoadConfig, mail_test

* Add test for timezone endpoint

* Add license header

* Refactor timezones endpoint to system.go

* Add system base route to timezone endpoint

* db timezone upgrade in db v4.9

* Avoid saving SupportedTimezones to config.json

* Add timezonePath support in config

* Remove EnableTimezoneSelection from config

* Use return statement without return parameter

* Refactor test for SupportedTimezones

* Check for supportedTimezone != nil instead of using len

* Decouple SupportedTimezones out of Config

* Fix failing test

* Add LastTeamIconUpdate back in upgrade.go

* Write timezone config in config_flag_test

* Add code fallback for default timezone support
2018-03-22 09:53:43 -04:00
Chris 7e444dfd88 add config for saml home realm discovery bypass (#8480) 2018-03-20 13:19:34 -05:00
George Goldberg fadcdd271a Merge branch 'master' into advanced-permissions-phase-1 2018-03-13 13:36:23 +00:00
Jesús Espino f2d26801b9 Adding new global relay settings to diagnostics and default.json (#8441) 2018-03-12 17:52:17 +00:00
George Goldberg 901acc9703 Merge branch 'master' into advanced-permissions-phase-1 2018-03-02 15:55:03 +00:00
Joram Wilander 5fb4b1bc93 MM-8593 Default APIv3 to disabled for new installs (#8353)
* Default APIv3 to disabled for new installs

* Add EnableAPIv3 setting to client config

* Enable APIv3 for needed tests
2018-02-23 07:55:02 -08:00
Christopher Speller 75d9a3a3b9 MM-8681 Adding config settings necessary for using CloudFront. (#8307)
* Adding config settings nessisary for using CloudFront.

* Adding new config settings to diagnostics.
2018-02-20 12:49:45 -08:00
Jesús Espino 0aa7ecd5e8 AllowEditPost and PostEditTimeLimit migration (#8208)
* AllowEditPost and PostEditTimeLimit migration

* Not set EDIT_POST permission to sysadmin_role if ALLOW_EDIT_POST is configured to NEVER

* Remove a bit of code duplication
2018-02-09 10:31:01 -05:00
Harrison Healey 9a73f99885 ICU-715 Change ExperimentalGroupUnreadChannels setting to allow for default on/off (#8211) 2018-02-06 18:45:14 -05:00
Chris 741f11a878 add ImageProxyOptions to default.json (#8193) 2018-02-02 16:35:05 -05:00
Christopher Speller 1262d25473 User based rate limiting (#8152) 2018-01-31 09:49:15 -08:00
enahum f2415b98f6 [ICU-621] Add ExperimentalGroupUnreadChannels setting (#8127)
* Add ExperimentalGroupUnreadChannels setting

* track ExperimentalGroupUnreadChannels in diagnostics
2018-01-23 17:59:41 -03:00
Chris 599991ea73 PLT-3383: image proxy support (#7991)
* image proxy support

* go vet fix, remove mistakenly added coverage file

* fix test compile error

* add validation to config settings and documentation to model functions

* add message_source field to post
2018-01-22 15:32:50 -06:00
Chris Duarte 0a9200c35d Add EnableDefaultChannelLeaveJoinMessages config setting (#7961) 2018-01-10 14:04:04 -08:00
Chris Duarte 74eb82cfaa rename DefaultTeamName to ExperimentalPrimaryTeam (#8039) 2018-01-05 08:43:55 -05:00
Chris Duarte 15cc449758 Add color properties to config to white label login buttons (#7826) 2018-01-02 13:36:31 -08:00
Chris Duarte 15347b5527 Allow default team to be configured (#7846) 2017-12-19 10:12:25 -08:00
Chris Duarte 7ed1177a2b add config option to hide tutorial screens (#7840) 2017-12-08 11:15:48 -08:00
Harrison Healey 36777057f2 PLT-8289 Added ability to change location of client plugins (#7942) 2017-12-05 12:25:49 -06:00
Jonathan 375c0632fa PLT-7503: Create Message Export Scheduled Task and CLI Command (#7612)
* Created message export scheduled task

* Added CLI command to immediately kick off an export job

* Added email addresses for users joining and leaving the channel to the export

* Added support for both MySQL and PostgreSQL

* Fixing gofmt error

* Added a new ChannelMemberHistory store and associated tests

* Updating the ChannelMemberHistory channel as users create/join/leave channels

* Added user email to the message export object so it can be included in the actiance export xml

* Don't fail to log a leave event if a corresponding join event wasn't logged

* Adding copyright notices

* Adding message export settings to daily diagnostics report

* Added System Console integration for message export

* Cleaned up TODOs

* Made batch size configurable

* Added export from timestamp to CLI command

* Made ChannelMemberHistory table updates best effort

* Added a context-based timeout option to the message export CLI

* Minor PR updates/improvements

* Removed unnecessary fields from MessageExport object to reduce query overhead

* Removed JSON functions from the message export query in an effort to optimize performance

* Changed the way that channel member history queries and purges work to better account for edge cases

* Fixing a test I missed with the last refactor

* Added file copy functionality to file backend, improved config validation, added default config values

* Fixed file copy tests

* More concise use of the testing libraries

* Fixed context leak error

* Changed default export path to correctly place an 'export' directory under the 'data' directory

* Can't delete records from a read replica

* Fixed copy file tests

* Start job workers when license is applied, if configured to do so

* Suggestions from the PR

* Moar unit tests

* Fixed test imports
2017-11-30 09:07:04 -05:00
Chris Duarte 27ba68a789 Add Config to disable Auth Transfers. (#7843)
* Add Config to disable Auth Transfers.

* Set config ExperimentalEnableAuthenticationTransfer behind an E20 license restriction
2017-11-28 11:46:48 -08:00
Bret Mogilefsky e85ec38301 Don't force AmazonS3Region (#7830)
In [this issue](https://mattermost.atlassian.net/browse/PLT-7475), it says that the UI text should be `Help Text: (Optional) AWS region you selected when creating your S3 bucket. If no region is set, Mattermost attempts to get the appropriate region from AWS, or sets it to "us-east-1" if none found.` 

The [Mattermost documentation](https://docs.mattermost.com/administration/config-settings.html#amazon-s3-region) says the default for this value is `""`, but it's set here. For this reason the behavior described above (getting the appropriate region from AWS, then falling back to `us-east-1` only if that fails) **does not happen**; Mattermost tries region `us-east-1` even if `AmazonS3Endpoint` points to a different region.
2017-11-24 09:58:12 -08:00
Chris Duarte fdbfb9a4ed Replace Channel Name for Team in Email Notifications (#7839)
* allow option to set channel name in email notification subject

* Added TeamName to title when UseChannelInEmailNotifications=true
2017-11-24 12:57:02 -05:00
Harrison Healey fed7a59d6a Added CloseUnusedDirectMessages to default.json (#7899) 2017-11-24 10:48:49 +00:00
Chris Duarte cfa09ce0ef Hide pre-release features section of advanced settings pane. (#7847) 2017-11-21 10:45:41 -05:00