Commit graph

243 commits

Author SHA1 Message Date
Corey Hulen
486d12e1c3 PLT-4165 removing team name reserved words (#4289) 2016-10-21 17:19:28 -07:00
Harrison Healey
8a0e649f98 PLT-3105 Files table migration (#4068)
* Implemented initial changes for files table

* Removed *_benchmark_test.go files

* Re-implemented GetPublicFile and added support for old path

* Localization for files table

* Moved file system code into utils package

* Finished server-side changes and added initial upgrade script

* Added getPostFiles api

* Re-add Extension and HasPreviewImage fields to FileInfo

* Removed unused translation

* Fixed merge conflicts left over after permissions changes

* Forced FileInfo.extension to be lower case

* Changed FileUploadResponse to contain the FileInfos instead of FileIds

* Fixed permissions on getFile* calls

* Fixed notifications for file uploads

* Added initial version of client code for files changes

* Permanently added FileIds field to Post object and removed Post.HasFiles

* Updated PostStore.Update to be usable in more circumstances

* Re-added Filenames field and switched file migration to be entirely lazy-loaded

* Increased max listener count for FileStore

* Removed unused fileInfoCache

* Moved file system code back into api

* Removed duplicate test case

* Fixed unit test running on ports other than 8065

* Renamed HasPermissionToPostContext to HasPermissionToChannelByPostContext

* Refactored handleImages to make it more easily understandable

* Renamed getPostFiles to getFileInfosForPost

* Re-added pre-FileIds posts to analytics

* Changed files to be saved as their ids as opposed to id/filename.ext

* Renamed FileInfo.UserId to FileInfo.CreatorId

* Fixed detection of language in CodePreview

* Fixed switching between threads in the RHS not loading new files

* Add serverside protection against a rare bug where the client sends the same file twice for a single post

* Refactored the important parts of uploadFile api call into a function that can be called without a web context
2016-09-30 11:06:30 -04:00
Corey Hulen
bfca752940 Fixing the console level debug statements (#4092) 2016-09-27 11:07:32 -03:00
Christopher Speller
7fcc004beb Modifications to rate limiting settings. (#4091) 2016-09-26 09:56:12 -07:00
enahum
b180bb46e3 PLT-3412 WebRTC Server side & System Console (#3706)
* WebRTC Server side

* WebRTC System Console

* Consistency on variable names

* Add turn and stun uri validation
2016-09-15 08:35:44 -04:00
Christopher Speller
1e7985a87a Modifying permissions system. (#3897) 2016-09-13 12:42:48 -04:00
David Lu
51501f920c PLT-3753 Added Segment analytics (#3972) 2016-09-06 19:51:27 -03:00
Joram Wilander
0d11fc88ea Trim / from SiteURL before sending to client (#3966) 2016-09-06 14:56:18 -04:00
enahum
886ab34443 PLT-4005 Generates default Salts if empty in the config file (#3950) 2016-09-06 08:21:18 -04:00
enahum
4bd5935bd8 PLT-4041 Make SAML FirstName and LastName optional (#3951) 2016-09-06 08:19:58 -04:00
Girish Ramakrishnan
6c085594e4 mail: allow PLAIN auth over non-tls connections (#3900)
This allows mattermost to use a non-tls connection with a SMTP server that
supports PLAIN auth (but not LOGIN). The go library explicitly allows PLAIN
auth over non-tls connections - https://golang.org/src/net/smtp/auth.go#L55

Fixes #2929
2016-09-02 14:33:26 -04:00
Christopher Speller
276e0189b1 Making LDAP FirstName and LastName fields optional. (#3919) 2016-09-01 10:03:55 -04:00
Corey Hulen
839f1ad444 Fixing license (#3878)
* Fixing sanitize license

* Fixing license

* Fixing unit tests
2016-08-25 08:32:44 -04:00
enahum
4780724ead Fix load config panic errors to display message instead of id (#3855) 2016-08-22 16:39:39 -08:00
Harrison Healey
8203fd16ce PLT-3647 Email Batching (#3718)
* PLT-3647 Added config settings for email batching

* PLT-3647 Refactored generation of email notification

* PLT-3647 Added serverside code for email batching

* PLT-3647 Updated settings UI to enable email batching

* PLT-3647 Removed debug code

* PLT-3647 Fixed 0-padding of minutes in batched notification

* PLT-3647 Updated clientside UI for when email batching is disabled

* Go fmt

* PLT-3647 Changed email batching to be disabled by default

* Updated batched email message

* Added email batching toggle to system console

* Changed Email Notifications > Immediate setting to a 30 second batch interval

* Go fmt

* Fixed link to Mattermost icon in batched email notification

* Updated users to use 30 second email batching by default

* Fully disabled email batching when clustering is enabled

* Fixed email batching setting in the system console

* Fixed casing of 'Send Email notifications' -> 'Send email notifications'

* Updating UI Improvements for email batching (#3736)

* Updated text for notification settings and SiteURL.

* Prevented enabling email batching when SiteURL isn't set in the system console

* Re-added a couple debug messages

* Added warning text when clustering is enabled
2016-08-16 14:41:47 -04:00
Harrison Healey
c5fc504cb2 PLT-3617 Switched public file links to use a sha256 hash (#3792)
* Changed FileSettings.PublicLinkSalt to be a pointer

* Switched public file links to use a sha256 hash
2016-08-15 16:38:55 -05:00
Joram Wilander
2073547018 Update licensing switches for Office365 and Google SSO through OAuth2 (#3786) 2016-08-11 13:35:08 -05:00
Harrison Healey
0afa28de09 Changed autodetection of SiteURL (#3764)
* Changed autoconfiguration of SiteURL to be done on every request

* Added SiteURL to system console
2016-08-09 08:53:22 -05:00
Corey Hulen
59d971dc75 PLT-2899 adding clustering of app servers (#3682)
* PLT-2899 adding clustering of app servers

* PLT-2899 base framework

* PLT-2899 HA backend

* PLT-2899 Fixing config file

* PLT-2899 adding config syncing

* PLT-2899 set System console to readonly when clustering enabled.

* PLT-2899 Fixing publish API

* PLT-2899 fixing strings
2016-08-04 13:25:37 -04:00
Harrison Healey
c4a3118e9f PLT-3408 Add SiteURL to config.json (#3692)
* PLT-3408 Changed serverside code to get the service's URL from config.json

* PLT-3408 Changed most clientside code to use the SiteURL config setting instead of window.location

* PLT-3408 Changed default SiteURL to be autodetected
2016-08-02 16:37:09 -04:00
David Lu
2c23a4fe49 Added custom branding to login description (#3710) 2016-08-02 08:34:34 -04:00
Joram Wilander
3f8dda6f5a PLT-3633 EE: Add Google and Office365 SSO through OAuth2 (#3660)
* EE: Add Google and Office365 SSO through OAuth2

* Add localization strings

* Text tweaks for PLT-3633

* Added sign-up button for Office 365

* Updated some error messages and a bit of licensing

* Updated sign-in method section in user settings to include Google and Office365

* Added more localization strings
2016-07-29 14:58:37 -04:00
Harrison Healey
9c2c941449 PLT-1866/PLT-3509 Added links to download the native apps (#3651)
* PLT-1866 Added configurable links for native app downloads

* PLT-1866 Added native app download link to main menu

* PLT-3509 Added native app link to tutorial

* PLT-3509 Added native app link to welcome email

* PLT-3509 Made link to apps in welcome email conditional on being set
2016-07-22 10:53:57 -04:00
Joram Wilander
2bf81a9f09 EE: Don't enforce start date on licenses (#3645) 2016-07-20 17:32:57 -04:00
enahum
86d496c9b7 PLT-3629 fix uploading certificates if the files in the config do not exists (#3634) 2016-07-20 13:01:10 -08:00
David Lu
683f713319 PLT-1465 Added password requirements (#3489)
* Added password requirements

* added tweaks

* fixed error code

* removed http.StatusNotAcceptable
2016-07-06 14:54:54 -08:00
Corey Hulen
b1520d0b94 PLT-3512 adding join/leave channel to the CLI (#3498)
* PLT-3512 adding join/leave channel to the CLI

* PLT-3512 adding list channels to the CLI

* PLT-3512 adding restore channel

* Adding make run-cli command

* Updating txt

* Fixing txt purposed by PMs
2016-07-06 14:11:21 -04:00
Joram Wilander
5f7cb8cfbf PLT-3346/PLT-3342/PLT-3360 EE: Add the ability to restrict channel management permissions (#3453)
* EE: Add the ability to restrict channel management permissions

* Always allow last user in a channel to delete that channel
2016-07-06 08:23:24 -04:00
enahum
5f04dc4f45 SAML support (#3494)
* PLT-3073: Implement SAML/Okta Server side (EE) (#3422)

* PLT-3137 Support for SAML configuration

* PLT-3410 SAML Database Store

* PLT-3411 CLI to add Identity Provider Certificate and Service Provider Private Key

* PLT-3409 SAML Interface for EE

* PLT-3139 Handle SAML authentication server side

* Add localization messages

* PLT-3443 SAML Obtain SP metadata

* PLT-3142 Login & Switch to/from SAML

* Remove Certs for Database & Clean SAML Request

* Make required Username, FirstName and LastName

* PLT-3140 Add SAML to System Console (#3476)

* PLT-3140 Add SAML to System Console

* Move web_client functions to client.jsx

* Fix issues found by PM

* update package.json mattermost driver

* Fix text messages for SAML
2016-07-05 15:49:00 -04:00
Thomas Balthazar
f4dd8e5796 PLT-1316/PLT-3280 Change client-side max file size limit (#3354)
* Change client-side max file size limit

It now relies on the value set in config.json.
Re-enable and tweak the max file size setting in system console.

* Update file upload error message
2016-07-05 15:37:21 -04:00
Joram Wilander
f89e7c6d54 Sanitize personal information out of license for non system admin users (#3487) 2016-07-05 14:02:00 -04:00
enahum
2305b2597f PLT-3456 Fix Errors while starting the server (#3445)
* PLT-3456 AppErrors that are triggered before translations are loaded crash server or produce bad error messages.

* Fixing tests
2016-07-04 09:30:57 -04:00
Joram Wilander
b97b3ae617 EE: Add the ability to restrict the user roles that can send team invites (#3442) 2016-06-29 14:16:17 -04:00
Christopher Speller
8005911ff6 Syncronization interval now set on config save. (#3421) 2016-06-28 15:10:50 -04:00
Christopher Speller
96bddf9016 Adding validation for LDAP settings to configuration (#3425) 2016-06-28 14:53:44 -04:00
enahum
1ac3bfa603 PLT-3364 Fix panic when load config failes (#3361) 2016-06-20 09:14:02 -06:00
David Lu
3f333678d8 PLT-2971 Added email footer for address (#3319)
* Added email footer for address

* added default

* Update html.go

* Changed according to PM
2016-06-16 08:44:02 -04:00
Harrison Healey
a0cc913b85 PLT-3143 Added serverside code for custom Emoji (#3311)
* Added model objects for emoji

* Added database tables for emoji

* Added settings for custom emoji

* Added serverside APIs and unit tests for custom emoji

* Added additional validation to catch duplicate emoji names earlier on

* Added additional validation to prevent users from adding emoji as another user
2016-06-14 07:38:19 -06:00
Martin Schenck
24a2805456 PLT-2058 Debugging incoming web hook content (#3150)
* PLT-2058 Debugging incoming web hook content

This change debugs contents of incoming webhooks using l4g.

The problem is that in order to debug the request body, it neads to be
read. And a Reader can only be read once. Hence, the body is only read
for Debugging if it is actually enabled. Furthermore, a new reader is
created from the content of the old reader in order for the rest of the
method to work as usual (with or without debugging).

The debug statement is wrapped in a closure, so that the content is
only copied if Debug is actually enabled.

It is not possible to return `(string, string)` from the closure to
`l4g.Debug()`. That is the reason the debugging is not done with `=%v`,
but the translations strings end with a space.

I tested the change with a `application/json` HTTP header as well as
`payload=`

The debug method is extracted into util/log.go in order to be re-usable
for debugging `io.Reader`

* Added a config flag to turn off incoming webhook debugging

Setting `EnableWebhookDebugging` to false in the `config.json` will
disable the printing of the content of incoming webhooks to the console

* Defaulting webhook debugging to true

* Added the setting of debugging incoming webhooks to the system console
2016-06-10 09:59:24 -04:00
Thomas Balthazar
1d31b0eca6 PLT-2406 Add "Database:" to Mattermost About Dialog (#3261)
* Add "Database:" to Mattermost About Dialog

The property has been named SQLDriverName to make a difference with the
FileSettings DriverName.

* Add missing string for 'Database' in i18n file
2016-06-07 08:21:09 -04:00
Harrison Healey
2965a00e9b PLT-3168 Hide EnableFormatting advanced setting unless testing is enabled (#3237)
* Added EnableTesting to the client config

* Hid EnableFormatting advanced setting unless testing is enabled
2016-06-05 03:35:39 -03:00
enahum
159953050a PLT-1800 Load server side locale from the config.json (#3202)
* PLT-1800 Load server side locale from the config.json

* Add support for locales with country specifics

* Fix localization on served locale file as plain/text

* Remove github.com/cloudfoundry/jibber_jabber as vendor dependency

* Fix get locale on login_controller
2016-06-02 12:47:26 -07:00
Christopher Speller
786e4dce7d Revert "PLT-1800 Load server side locale from the config.json" (#3201) 2016-06-01 11:56:27 -04:00
enahum
b00a60ab71 PLT-1800 Load server side locale from the config.json (#3135)
* PLT-1800 Load server side locale from the config.json

* Add support for locales with country specifics

* Fix localization on served locale file as plain/text

* Remove github.com/cloudfoundry/jibber_jabber as vendor dependency
2016-06-01 08:56:13 -04:00
David Lu
0d0734ac98 Added duplicated trigger validation (#3124) 2016-05-27 08:35:55 -07:00
Christopher Speller
ec7a273550 Revert "PLT-1800 Load server side locale from the config.json" (#3133) 2016-05-27 09:01:35 -04:00
enahum
a2c183f401 PLT-1800 Load server side locale from the config.json (#3092)
* PLT-1800 Load server side locale from the config.json

* Add support for locales with country specifics

* Fix localization on served locale file as plain/text
2016-05-27 08:25:37 -04:00
Christopher Speller
4ae7128ecb Revert "PLT-1800 Load server side locale from the config.json (#3076)"
This reverts commit 34beaa569b.
2016-05-24 10:39:56 -04:00
enahum
34beaa569b PLT-1800 Load server side locale from the config.json (#3076)
* PLT-1800 Load server side locale from the config.json

* Add support for locales with country specifics
2016-05-24 08:36:27 -04:00
Christopher Speller
2a137e97c4 Adding enterprise build hash to about dialog (#3058) 2016-05-20 07:41:47 -07:00