Commit Graph

717 Commits

Author SHA1 Message Date
Martin Kraft
c8646eae51 MM-15947: Prevents new user creation with invite link to group-constrained team. (#11023) 2019-06-03 12:38:33 -04:00
Jesús Espino
17e6297a15 Adding Content-Type header to the OAuth complete endpoint (#10961) 2019-05-30 13:38:21 -04:00
Daniel Schalla
f3801d7db5 Dont expose any information about the user status on login failure (#10925) 2019-05-28 11:26:02 -07:00
Andres Orozco
ff0d3ab00b MM-15354: Migrate Channel.Save to sync by default (#10871)
* MM-15354: Migrate Channel.Save() to sync by default

* MM-15354: fix unchanged Channel().Save() methods

* fix typo

* fix nil reference bug and update tests for channels

* fix err shadowing bug

* MM-15354 fix support for sync version of Save
2019-05-27 17:54:04 +02:00
Martin Kraft
e8af4872c6 MM-15422: Adds new parameters for retrieving pages of channels. (#10903)
* MM-15422: Adds new parameters for retrieving pages of channels and searching channels.

* MM-15422: Appends excluded channel names with defaults. Adds separate struct for data-tier option parameter.
2019-05-24 11:28:42 -04:00
Andres Orozco
88005fbf54 MM-15662: Rename "CreateBotAccounts" config.json setting to "EnableBotAccountCreation" (#10875)
* MM-15662 change conflig flag to EnableBotAccountCreation

* undo changes to i18n

* MM-15662: Change config flag for bot creation

adds newline to i18n

* MM-15662 Update diagnostics.go to use new config flag
2019-05-23 13:03:22 -07:00
Christopher Poile
693d11304b * stop exposing plugin's SettingsSchema in api/v4/plugins/webapp (#10911) 2019-05-23 12:34:59 -07:00
Jesús Espino
edd3cc890f MM-15480: Add server support for Range on files (#10892) 2019-05-23 16:46:28 +02:00
Jesús Espino
87ff64ea6d MM-15035: Read from file infos from master on post creation (#10899)
* MM-15035: Read from file infos from master on post creation

* Handling edit post cases for get files metadata
2019-05-23 14:29:41 +02:00
Daniel Schalla
d269891476 [MM-15490] Rework default password requirements (#10844)
* Rework default password requirements

* Update API Test Lib Default User PW

* Remove unused function; Disable password reqs in dev mode

* Disable strict password requirements for unit tests

* Update unit tests
2019-05-21 11:03:36 -07:00
Daniel Schalla
3e6fed8df4 [MM-15641] Set stricter caching policy for file downloads (#10857)
* Set stricter caching policy for file downloads

* Add private directive back to caching header for file downloads
2019-05-21 17:10:39 +02:00
Jesús Espino
6d1ac00330 Migrate Roles Layered store to Sync by default (#10790)
* Migrate Roles Layered store to Sync by default

* Fixing govet

* Addressing PR review comments
2019-05-17 12:03:04 -03:00
Martin Kraft
8d8a4d8614 MM-15485: In-channel system behaviour for at-mentions and slash commands for group-constrained channels. (#10855)
* MM-15108: Prevent non-group-members from being added to group-constrained channels.

* MM-15485: Updates ephemeral message when non-group member is invited to group-constrained channel.

* MM-15485: Prevent group-permitted members from being removed from group-constrained channels. Show custom ephemeral when attempting /kick or /remove.
2019-05-17 12:43:19 +01:00
Miguel de la Cruz
098dbc84cc [MM-14751] Adds group_constrained filter to user list and search endpoints (#10678) 2019-05-16 10:12:06 +01:00
Jesús Espino
beb7592c93 Migrate FileInfo store to Sync by default (#10837) 2019-05-15 22:07:03 +02:00
Martin Kraft
1b78f9debc MM-14897: Changes to be able to add and remove groups from channels. (#10794)
* MM-15162: Changes for LDAP groups removals phase.

* MM-14897: Changes to be able to add and remove groups from channels.

* Update model/client4.go

* MM-14897: PR-requested change to string interpolation.
2019-05-15 12:03:47 -04:00
Shota Gvinepadze
b561d7900c [MM-15356] Migrate "Channel.Update" to Sync by default (#10815) 2019-05-14 23:02:04 +02:00
scott lee davis
ae951f6449 MM-14722 - Don't let bots create other bot accounts (#10808) 2019-05-14 22:15:23 +02:00
Joram Wilander
1a4ea94805 When gzipping file responses add header for uncompressed content length (#10836) 2019-05-14 13:42:48 -04:00
Elias Nahum
5b252e8736 Tracking Push Notifications in a structured logger (notifications.log) (#10823)
* Remove NotificationRegistry table and use structured logging

* Fix ackId for notification sent

* Notification logger at server level

* Remove unused i18n strings
2019-05-13 07:53:46 -07:00
Andres Orozco
30061df036 MM-14723: Add config flag for creating bots (#10795)
* MM-14723 add config flag for creating bots

* MM-14723 - update i18n to handle new config flag

* MM-14723 - change API tests to allow bots by default

* Update i18n/en.json

Co-Authored-By: andresoro <ao15@my.fsu.edu>

* MM-14723: add config flag for enabling/disabling bot creation

* undo changes to apitestlib.go to explicitly change config in each test

* add unit tests for config changes

* MM-14723 update test cases

* MM-14723 update test cases to use UpdateConfig method
2019-05-13 07:48:32 -07:00
Martin Kraft
480fffd3cc MM-15162: Changes for LDAP groups removals. (#10701)
* MM-15162: Changes for LDAP groups removals phase.

* MM-15162: Adds missing translation.

* MM-15162: Fixes tests.

* MM-15162: Removes some confusing branching.

* MM-15162: Make permission less restrictive.

* MM-15162: Moves counting to the DB tier.

* MM-15162: Moves CountGroupsByTeam into own store method.

* MM-15162: Adds count to tests.

* MM-15162: Fix for wrong cast type.

* MM-15162: Fix for possible null SchemeGuest column.

* MM-15162: Fixes bug whereby permissions error didn't return.

* MM-15162: Changes for LDAP groups removals phase.

* MM-15162: Adds missing translation.

* MM-15162: Fixes tests.

* MM-15162: Removes some confusing branching.

* MM-15162: Make permission less restrictive.

* MM-15162: Moves counting to the DB tier.

* MM-15162: Moves CountGroupsByTeam into own store method.

* MM-15162: Adds count to tests.

* MM-15162: Fix for wrong cast type.

* MM-15162: Fix for possible null SchemeGuest column.

* MM-15162: Fixes bug whereby permissions error didn't return.

* MM-15162: Adds missing translation blocking enterprise build.

* MM-15162: Update to group commands.
2019-05-10 11:47:21 -04:00
chahat arora
3f3bc5c49c Update team_test.go (#10813)
* Update team_test.go

* Update plugin_api_test.go
2019-05-09 16:40:05 -04:00
Harrison Healey
dce6cb601f MM-14686 Send all image proxy requests through /api/v4/image (#10775)
* MM-14686 Implement /api/v4/image when proxy is disabled

* MM-14686 Send all image proxy requests through /api/v4/image

* Update unit tests
2019-05-06 09:22:37 -04:00
d28park
4552c20d5b [MM-12958] Support running two Mattermost instances on the same domain using subpaths (#10493) 2019-05-03 22:52:32 +02:00
Elias Nahum
e6be06b3fc MM-14289 & MM-14884 Push notification acknowledge id and include sender name (#10736)
* MM-14289 Add Push notification acknowledge identifier and store tracing logs

* MM-14884 include SenderName property in Push Notifications

* Remove @ sign from channel Name in push notifications

* Fix i18n

* Fix push notification model

* fix TestPostNotificationGetChannelName

* Remove colon from model constant

* Fix Notification Registry tests

* Make postId optional for clear notifications

* Update http status when service is not available

Co-Authored-By: enahum <nahumhbl@gmail.com>
2019-04-30 18:15:29 -04:00
Jesús Espino
9a9d5d4081 Migrate Reactions store to Sync by default (#10737)
* Migrate Reactions store to Sync by default

* Fixing tests

* Fixing tests

* Fixing govet

* fixing tests

* Addressing PR review comments
2019-04-30 12:34:26 -07:00
Jesús Espino
584ec68755 MM-15021: Adding new builtin system schema for Guests (#10601)
* MM-15021: Adding new builtin system schema for Guests

* Fixing tests

* Setting properly the permissions

* Adding guests to sampledata

* Restrict more roles updates in the app layer for guests

* Adding comment to explain that permissions migration must go at the end

* Setting the default guest role for custom scheme during migration

* Fixing import and export

* Creating scheme guest roles on migration

* Fixing tests

* Fixing tests

* Fixing tests
2019-04-30 20:36:21 +02:00
Andres Orozco
290d000ad2 MM-15128 change openDialog to allow dialogs with no elements (#10755) 2019-04-30 15:08:52 +02:00
Siyuan Liu
503b26a904 [MM-15275] Migrate "Team.Save" to Sync (#10695)
* [MM-15275] Migrate "Team.Save" to Sync

* review comments

* resolve merge conflicts

* fix ci

* merge error

* merge error

* fix failed test

* address code review

* review comments
2019-04-30 09:19:06 +01:00
Jesús Espino
c8920588a0 Adding new "VIEW_MEMBERS" permissions restrict the scope of users visibility (#10487)
* MM-14138: Adding new "VIEW_MEMBERS" permissions restrict the scope of users visibility

* Fixing gofmt

* Fixing broken tests

* Addressing PR review comments from Miguel de la Cruz

* Removed hack

* A bit nicer and cleaner code in the UserBelongsToChannels function

* Adding cluster cache invalidation for user team ids

* Checking in the correct order permissions to not leek existency information

* Adding restrictions to TeamMembers and User status requests

* Fixing tests

* Fixing status endpoint permissions checks

* Adding more tests

* Fixing tests

* More tests and making the restrictions query based only on joins

* Adding more tests

* Adding more tests

* fixing merge problems

* Reverting status changes to avoid performance issues

* Adding more tests

* Fixing test

* i18n extract

* Adding extra method for get restrictions for a team

* Add the new elasticsearch functions to search users with restrictions

* Add missing translation string

* Rename restrictedChannelIds to restrictedToChannels

* Remove ToDo

* Adding the permission to the SystemAdmin role during permissions migrations
2019-04-29 16:56:56 +02:00
Saturnino Abril
7e590c7efe [MM-14588] Don't mark the channel as read when adding a member (#10680)
* add flag whether to mark channel as viewed for the requesting user

* remove marking channel as viewed when adding user to a channel
2019-04-27 07:22:12 +08:00
George Goldberg
3989b90a91 Revert "MM-14845: Fix Update and Patch channel for private channels. (#10539)" (#10599)
This reverts commit 0bef611f7a.
2019-04-26 11:07:53 +01:00
Daniel Schalla
f7982216e4 [MM-13671] Rework Team InviteId Creation and Updates (#10536)
* Add regenerate invite ID endpoint; Dont allow inviteID updates via other methods; Remove unrequired checks in get handler

* Fix tests; Dont accept TeamId as invite ID

* Ensure all teams have an InviteID set

* Custom Selector to get empty teams; dont crash when inviteid set fails

* Remote InviteId from TeamPatch

* Add missing translation

* Translation string order

* Use sync store

* gofmt
2019-04-25 23:09:38 +02:00
Puneeth Reddy
ec95793b90 MM-15276: Migrate Team.Update to sync by default (#10693)
* MM-15276: Migrate Team.Update to sync by default

* MM-15276: Addressing review comments and change Update func signature similar to other interface Update method

* update store mocks for update fn

* addressing review comments
2019-04-25 15:29:02 +02:00
Gabe Jackson
be4b473aee Move to the mattermost/go-i18n fork (#10669)
This change is being made to address an issue where the go-i18n
translation library would result in partial-translations when a
given language dictionary was missing a given plural keyword. The
improvement made here leads the translation library to try an
'other' keyword lookup if the first plural keyword fails to have
a value.

This change was not accepted upstream due to concern regarding
changing the behavior, so we are using a fork at this time to
address the issue.
2019-04-23 09:33:42 -04:00
Tyler Ramer
99a8370742 Use gzip for API responses [MM-11426] (#10602)
* Use gzip for API responses [MM-11426]

- Update api4/handlers to use gziphandler wrapper if api configured to
use gzip
- Add test to ensure `Content-Encoding` header is set if `WebserverMode=="gzip"` and `Accept-Encoding="gzip"` present in http request

Authored-by: Tyler Ramer <tyaramer@gmail.com>

* WIP: refractor handlers_test

Clean up, include gzip tests for all functions in handlers

Authored-by: Tyler Ramer <tyaramer@gmail.com>

* fixup! WIP: refractor handlers_test

* fixup! fixup! WIP: refractor handlers_test
2019-04-22 08:22:08 -07:00
Eli Yukelzon
6cc36ab176 [MM-14890] Logs endpoint always returns an empty line (#10559)
* fixed new line being returned in logs, improved the test

* improved the EOL check

* Fixed var shadowning
2019-04-18 10:16:49 +01:00
Martin Kraft
762c257277 MM-14754: Prevent team invites or tokens from working for group-constrained teams. (#10626) 2019-04-17 10:41:47 -04:00
Miguel de la Cruz
83a0e965d3 [MM-15126] Adding terms of service to the login response (#10625) 2019-04-16 17:59:07 +01:00
Jesús Espino
12c50eb830 Initial migration of the store to be sync (#10592)
* Migrating audit store

* Final migration example for the audit store

* async example

* Ending migration

* Removing Async helper

* Fixing tests

* Fixing govet problems with the StoreResult instanstiation
2019-04-15 22:53:52 +02:00
Daniel Schalla
957ec1388b [MM-14381] Fix brittle MFA Login Successful Test (#10565)
* Fix brittle MFA Login Successful Test

* Fix 2FA Conversion issue

Co-Authored-By: DSchalla <daniel@schalla.me>

* Unify naming
2019-04-15 18:40:14 +02:00
Miguel de la Cruz
4c52f91997 Expose GroupConstrained flag where needed and add tests (#10604) 2019-04-15 17:13:11 +02:00
George Goldberg
a69ce6d64d MM-14845: Updates default permissions. (#10590) 2019-04-12 18:00:57 +01:00
Martin Kraft
100433f4cc MM-14757/14758: Restricts deleting team and channel members if the team or channel is group constrained. (#10553)
* MM-14757/14758: Update APIs to reject removals from group-constrained teams.

* MM-14757/14758: Tests API changes.

* MM-14757/14758: Allow users to leave channals and teams.

* MM-14757/14758: Updates translation key order.

* MM-14757/14758: Adds user to team before setting it to group-constrained b/c of new add restrictions.
2019-04-12 10:15:46 -04:00
Jesús Espino
5dee75553d MM-15006: Returning informative errors on config validation (#10585)
* MM-15006: Returning informative errors on config validation

* Adding new unit test verifying the validation and correct response
2019-04-11 08:57:25 +02:00
Christopher Speller
41d117c37b MM-14617 Dependency upgrades and adding modules support. (#10517)
* Dependency upgrades and adding modules support.

* Commenting out file tests playload verification portion.

* Fixing viper.

* Fixing hclog.
2019-04-10 07:56:17 -07:00
Martin Kraft
7bde0378cd MM-14753: Verifies that user can join teams and channels in spite of group constraints. (#10529)
* MM-147753: Verifies that users are allowed to be members of a team or a channel, based on group constraints, prior to allowing the API to add them.

* MM-14753: Allow methods to return meaningful results for deleted teams or channels.

* MM-14753: Renames methods to differentiate from permissions and other team and channel restrictions.

* MM-14753: Only check if users are team/channel members if team/channel is group constrained.

* MM-14753: Updates test function names.

* MM-14753: Changes a few method signatures.

* MM-14753: Small refactor and adds missing returns.

* MM-14753: Changes method names from Get* to Filter* name prefixes.

* MM-14753: Renames error variables.

* MM-14753: Updates method names for consistency with join table names.

* MM-14753: Adds case for non AppError return.

* Update i18n/en.json
2019-04-09 07:09:57 -04:00
Jesús Espino
9fa6b093f3 Fixing permissions checks where related to join public channels (#10511)
* Fixing permissions checks where related to join public channels

* Addressing PR review comments

* Fixing bug

* Adding new tests

* Addressing PR review comments
2019-04-08 11:10:16 +02:00
Daniel Schalla
7c9837d9b1 [MM-14846] Update EditAt for FileIds and Attachment in Post + Ignore FileIds Updates (#10540)
* Set EditAt for FileIds and Attachments; Disallow update/patch of FileIds in API Handler

* Add custom comparison methods for StringArray and Post Attachments

* gofmt

* Split up comparison function to child structs

* Naming consistency

* gofmt
2019-04-04 20:01:21 +02:00