62 Commits
Author SHA1 Message Date
George Goldberg a6c364822a MM-11516: Check channel ID in URL param and Body are same. (#9185) 2018-07-31 14:13:44 -04: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
Jesús Espino e475cecf00 Remove unnecesary elses after return error (#9137) 2018-07-23 11:55:42 +05:30
George Goldberg 2d16a71af9 MM-11228: Fix channel update/patch API endpoints. (#9073) 2018-07-10 10:55:46 +02:00
Jesse Hallam 6b7a35b653 MM-11118: disallow deleting direct or group channels (#9054) 2018-07-05 09:17:43 +02:00
Jesse Hallam 2d7cd02abc MM-10833: send down computed channel props (#8953)
* MM-10833: send down computed channel props

This allows channel headers to reference channel mentions for a client
that doesn't already know about the channels in question.

We intentionally don't send down the props for the autocomplete and
search endpoints since they aren't used in that context, and would add
unnecessary overhead.

* update channel props on patch

* revert to treating channel purpose as plaintext
2018-06-26 16:46:57 -04:00
George Goldberg 0c4078b6b0 MM-9730 & MM-9729: Missing Server PRs (#8908)
* MM-9730: API endpoint to update scheme-derived roles of TeamMembers.

* MM-9729: API to update scheme-derived roles of ChannelMembers.
2018-06-05 07:41:03 -04:00
Martin Kraft d3e14a1bf8 Merge remote-tracking branch 'origin/master' into advanced-permissions-phase-2 2018-05-09 15:00:07 -04:00
Saturnino Abril 30fd4a2951 update permission of converting a channel from public to private to allow team admin (#8723) 2018-05-05 02:16:00 +08:00
Martin Kraft f4dcb4edf2 MM-10182 & MM-10183: Adds channel scheme and team scheme API endpoint. (#8680)
* MM-10183: Adds channel scheme API endpoint.

MM-10182: Adds team scheme API endpoint.

MM-10182_3: Switch from scheme_id in path to body.

* MM-10182/MM-10183: Changes path from 'schemes' to 'scheme'.

* MM-10182: Fix merge error.
2018-05-02 07:31:14 -04: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
Saturnino Abril 3224d2f6a3 add api to convert a channel from public to private and restrict that to system_admin (#8655) 2018-04-23 08:18:58 -04:00
Jesús Espino 014a3b6a60 Fixing misspell errors (#8544) 2018-03-29 10:04:54 -04:00
George Goldberg 71c9dff766 Merge branch 'advanced-permissions-phase-1' 2018-03-27 22:36:55 +01:00
Saturnino Abril 07b14c370a post a system message after a channel is converted from public to private (#8501) 2018-03-27 21:14:42 +08:00
George Goldberg 7941c30117 Merge branch 'master' into advanced-permissions-phase-1 2018-02-06 17:25:53 +00:00
George Goldberg e1cd646135 XYZ-37: Advanced Permissions Phase 1 Backend. (#8159)
* XYZ-13: Update Permission and Role structs to new design.

* XYZ-10: Role store.

* XYZ-9/XYZ-44: Roles API endpoints and WebSocket message.

* XYZ-8: Switch server permissions checks to store backed roles.

* XYZ-58: Proper validation of roles where required.

* XYZ-11/XYZ-55: Migration to store backed roles from policy config.

* XYZ-37: Update unit tests to work with database roles.

* XYZ-56: Remove the "guest" role.

* Changes to SetDefaultRolesFromConfig.

* Short-circuit the store if nothing has changed.

* Address first round of review comments.

* Address second round of review comments.
2018-02-06 15:34:08 +00:00
Chris e0ee73ef99 ABC-79: Optimize channel autocomplete query (#8163)
* optimize channel autocomplete query

* move to new autocomplete endpoint
2018-01-31 09:26:40 -05: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 91bfc72a99 Reduce logging data races, fix MySQL test race condition (#7994)
* fix races

* revert unintentional change

* fix test as intended
2017-12-22 12:09:33 +00:00
Saturnino Abril 709ef99eca [PLT-7362] Add post' root ID to APIv4 addChannelMember to render added user (as system post) at RHS (#7730)
* add post' root ID to apiv4 addChannelMember to render added user (as system post) at RHS

* add check to post_root_id parameter

* add AddChannelMemberWithRootId function for backward compatibility
2017-10-31 15:48:58 -04:00
Chris c5e8cb25ca simplify things (#7735) 2017-10-30 11:57:24 -05:00
Christopher Speller 4491b5ecdf Performance improvements for 40M posts (#7708)
* Optimizing get root posts SQL query

* Setting session invalidation to be reliable

* Adding app reciever to SessionHasPermissionToUser

* Adding app reciever to SessionHasPermissionToTeam

* Adding app reciever to SessionHasPermissionTo

* Clear session cache if permission was denied

* Fixing rebase issues

* Revert "Optimizing get root posts SQL query"

This reverts commit f364757e7015cfb4ec673d0a4fc3d57cd25d8dd7.

* Fixing build
2017-10-25 11:48:15 -07:00
Santos Solorzano a7afadec3a Add User To Channel api route returns a 400 error when trying to add users to a DM or GM channel (#7587) 2017-10-12 13:54:37 -04:00
Joram Wilander 3e144f82e2 Only update session activity on specific endpoints (#7549) 2017-10-03 11:16:33 -07:00
Joram Wilander 8b9dbb8613 PLT-7404 Return viewed at times in view channel API response (#7428)
* Return viewed at times in view channel API response

* Updated transaction to read and write once

* Remove transaction and only update if new value greater than older
2017-09-29 08:45:59 -07:00
Chris dcf9e96a0b remove global refs from api/api4 (#7496) 2017-09-22 13:54:27 -04:00
Christopher Speller 29fca51821 Renaming repo 2017-09-06 23:11:59 -07:00
Chris 1adfd0e9be app type transition (#7167) 2017-09-06 17:12:54 -05:00
George Goldberg 63b10be020 APIv4: NewLocAppError -> NewAppError (#7328) 2017-08-31 10:03:16 -04:00
Corey Hulen 1709b94227 PLT-5745 Cleaning up duplicate calls (#7298)
* PLT-5745 Cleaning up duplicate calls

* Fixing missing calls

* Fixing broken test
2017-08-28 10:08:37 -04:00
Jonathan fd6856b674 PLT-7206: Remove the "Delete Channel" option for private channels if you're the last channel member and policy setting restricts channel deletion (#7050)
* PLT-7206: UI changes. Removed last user in channel loophole, refactored code to clean it up, added differentiated support for public and private channels, added unit tests. Still need to implement server-side checks

* PLT-7206: All helper methods in channel_utils.jsx now accept the same three boolean variables in the same order and use the same boolean logic to check their values.

* PLT-7206: Added unit tests for showManagementOptions(...)

* PLT-7206: Fixed test case descriptions

* Added unit tests for showCreateOption(...)

* PLT-7206: Added unit tests for canManageMembers(...)

* PLT-7206: Removed last person in channel loophole from server-side code

* PLT-7206: Reverted config.json

* PLT-7206: Fixed double negatives in unit test names

* PLT-7206: PR feedback - Removed confusing comment and unused variable
2017-08-09 09:34:09 -04:00
Saturnino Abril 8f8a978e84 [PLT-6838] Restrict channel delete option per permission policy even for last channel member (#6706)
* channel delete option is hidden from the menu unless there is appropriate permissions as set in the policy page

* apply to public channel only and add restriction to API layer

* updated channel deletion
2017-07-05 06:32:27 +08:00
Robin Naundorf 0a20e8d326 PLT-6019: Add APIv4 Endpoint for restoring Channels (#6263) 2017-05-15 16:12:30 -04:00
JoramWilander 9d109b0700 Merge branch 'release-3.9' into merge-3.9 2017-05-12 08:00:28 -04:00
Harrison Healey a21a06afd9 PLT-6556 Fixed last member of a channel not being able to delete channel with api v4 (#6397) 2017-05-11 16:32:14 -04:00
Joram Wilander 8c8d9dbf8f Forward port 3.8.1 changes that missed master (#6362) 2017-05-09 16:01:06 -04:00
Robin Naundorf 5efcd2d9d3 Add API Endpoint for deleted Channels (#5889) 2017-05-09 07:52:46 -05:00
Joram Wilander 88a328421f Update channel patch to post the correct system messages (#6290) 2017-05-03 08:52:36 -07:00
Joram Wilander 96906482ce PLT-6214 Move channel store and actions over to redux (#6235)
* Move channel store and actions over to redux

* Fix style errors

* Fix unit test

* Various fixes

* More fixes

* Revert config changes
2017-04-28 13:16:03 -04:00
Saturnino Abril b0e5713680 APIv4 POST /channels/group (#6166) 2017-04-20 09:55:43 -04:00
Harrison Healey fb6f2a123c PLT-5860 Updated copyright date (#6058)
* PLT-5860 Updated copyright date in about modal

* PLT-5860 Updated copyright notice in JSX files

* PLT-5860 Updated copyright notice in go files

* Fixed misc copyright dates

* Fixed component snapshots
2017-04-12 08:27:57 -04:00
Harrison Healey c7bdce8a66 PLT-5900 Removed automatic configuration of SiteURL (#5952)
* Revert "PLT-5765 Passed SiteURL to SendNotifications (#5705)"

This reverts commit a8e68bd890.

* Removed automatic configuration of SiteURL

* Reverted unintentional config changes

* Updated help text

* Added link to docs in Site URL warning

* Fixed merge conflict
2017-04-04 11:54:52 -04:00
Joram Wilander 5f6d50bff1 Use 201 status code where appropriate for APIv4 (#5903) 2017-03-31 09:56:20 -04:00
Joram Wilander 4e224c2996 Implement PUT /channels/{channel_id}/members/{user_id}/notify_props for APIv4 (#5901) 2017-03-31 09:55:37 -04:00
Saturnino Abril 8a31718db1 APIv4 get /channels/{channel_id}/pinned (#5893) 2017-03-29 08:09:05 -07:00
Saturnino Abril 01aaccb340 APIv4 post /channels/ids (#5845)
* APIv4 post /channels/ids

* updated enpoint as /teams/{team_id}/channels/ids
2017-03-27 08:41:40 -03:00
Joram Wilander 28a78d7607 Implement some channel endpoints for APIv4 (#5846)
* Add v4 endpoint for getting the channels on a team for a user

* Implement PUT /channels/{channel_id}/patch endpoint for APIv4

* Implement POST /teams/{team_id}/channels/search endpoint for APIv4

* Update permission check
2017-03-24 13:45:34 -07:00
Joram Wilander 61b1237c20 Update channel permissions for v4 endpoints (#5829)
* Fix join channel permission for v4 endpoint

* Allow regular users to get public channels they are not in

* Fix unit test
2017-03-22 08:13:44 -07:00
Joram Wilander dcdea9b54c Fix compile error on master (#5813) 2017-03-20 10:12:43 -04:00