Commit Graph

60 Commits

Author SHA1 Message Date
Harrison Healey
caec18a2fb Handled possible race confition in TestGetMessageForNotification (#4737) 2016-12-08 12:41:00 -03:00
enahum
e57cba15ea PLT-4762 Prevent turn off of (at)mentions (server) (#4714) 2016-12-06 10:57:38 -05:00
Corey Hulen
b212acf312 PLT-4429 disabling at_all at_channel metions mentions when channel has more than 1k users (#4627)
* PLT-4429 disabling explicit mentions when channel has more than 1k users

* Fixing test case

* Adding setting to the admin console

* Fixing bad translation
2016-11-24 08:26:45 -05:00
Rachel Willmer
a25afb1134 Fix SystemAdmin use of CreateAt in CreatePost API (#4349) (#4408) 2016-11-17 14:05:53 -05:00
Joram Wilander
3885532750 Fix notifications for public/private channels and add basic unit test (#4295) 2016-10-21 16:23:59 -04:00
Joram Wilander
365b8b465e Merging performance branch into master (#4268)
* improve performance on sendNotifications

* Fix SQL queries

* Remove get direct profiles, not needed anymore

* Add raw data to error details if AppError fails to decode

* men

* Fix decode (#4052)

* Fixing json decode

* Adding unit test

* Initial work for client scaling (#4051)

* Begin adding paging to profiles API

* Added more paging functionality

* Finish hooking up admin console user lists

* Add API for searching users and add searching to all user lists

* Add lazy loading of profiles

* Revert config.json

* Fix unit tests and some style issues

* Add GetProfilesFromList to Go driver and fix web unit test

* Update etag for GetProfiles

* Updating ui for filters and pagination (#4044)

* Updating UI for pagination

* Adjusting margins for filter row

* Adjusting margin for specific modals

* Adding relative padding to system console

* Adjusting responsive view

* Update client user tests

* Minor fixes for direct messages modal (#4056)

* Remove some unneeded initial load calls (#4057)

* UX updates to user lists, added smart counts and bug fixes (#4059)

* Improved getExplicitMentions and unit tests (#4064)

* Refactor getting posts to lazy load profiles correctly (#4062)

* Comment out SetActiveChannel test (#4066)

* Profiler cpu, block, and memory profiler. (#4081)

* Fix TestSetActiveChannel unit test (#4071)

* Fixing build failure caused by dependancies updating (#4076)

* Adding profiler

* Fix admin_team_member_dropdown eslint errors

* Bumping session cache size (#4077)

* Bumping session cache size

* Bumping status cache

* Refactor how the client handles channel members to be large team friendly (#4106)

* Refactor how the client handles channel members to be large team friendly

* Change Id to ChannelId in ChannelStats model

* Updated getChannelMember and getProfilesByIds routes to match proposal

* Performance improvements (#4100)

* Performance improvements

* Fixing re-connect issue

* Fixing error message

* Some other minor perf tweaks

* Some other minor perf tweaks

* Fixing config file

* Fixing buffer size

* Fixing web socket send message

* adding some error logging

* fix getMe to be user required

* Fix websocket event for new user

* Fixing shutting down

* Reverting web socket changes

* Fixing logging lvl

* Adding caching to GetMember

* Adding some logging

* Fixing caching

* Fixing caching invalidate

* Fixing direct message caching

* Fixing caching

* Fixing caching

* Remove GetDirectProfiles from initial load

* Adding logging and fixing websocket client

* Adding back caching from bad merge.

* Explicitly close go driver requests (#4162)

* Refactored how the client handles team members to be more large team friendly (#4159)

* Refactor getProfilesForDirectMessageList API into getAllProfiles API

* Refactored how the client handles team members to be more large team friendly

* Fix js error when receiving a notification

* Fix JS error caused by current user being overwritten with sanitized version (#4165)

* Adding error message to status failure (#4167)

* Fix a few bugs caused by client scaling refactoring (#4170)

* When there is no read replica, don't open a second set of connections to the master database (#4173)

* Adding connection tacking to stats (#4174)

* Reduce DB writes for statuses and other status related changes (#4175)

* Fix bug preventing opening of DM channels from more modal (#4181)

* 	Fixing socket timing error (#4183)

* Fixing ping/pong handler

* Fixing socket timing error

* Commenting out status broadcasting

* Removing user status changes

* Removing user status changes

* Removing user status changes

* Removing user status changes

* Adding DoPreComputeJson()

* Performance improvements (#4194)

* * Fix System Console Analytics queries
* Add db.SetConnMaxLifetime to 15 minutes
* Add "net/http/pprof" for profiling
* Add FreeOSMemory() to manually release memory on reload config

* Add flag to enable http profiler

* Fix memory leak (#4197)

* Fix memory leak

* removed unneeded nil assignment

* Fixing go routine leak (#4208)

* Merge fixes

* Merge fix

* Refactored statuses to be queried by the client rather than broadcast by the server (#4212)

* Refactored server code to reduce status broadcasts and to allow getting statuses by IDs

* Refactor client code to periodically fetch statuses

* Add store unit test for getting statuses by ids

* Fix status unit test

* Add getStatusesByIds REST API and move the client over to use that instead of the WebSocket

* Adding multiple threads to websocket hub (#4230)

* Adding multiple threads to websocket hub

* Fixing unit tests

* Fixing so websocket connections from the same user end up in the same… (#4240)

* Fixing so websocket connections from the same user end up in the same list

* Removing old comment

* Refactor user autocomplete to query the server (#4239)

* Add API for autocompleting users

* Converted at mention autocomplete to query server

* Converted user search autocomplete to query server

* Switch autocomplete API naming to use term instead of username

* Split autocomplete API into two, one for channels and for teams

* Fix copy/paste error

* Some final client scaling fixes (#4246)

* Add lazy loading of profiles to integration pages

* Add lazy loading of profiles to emoji page

* Fix JS error when receiving post in select team menu and also clean up channel store
2016-10-19 14:49:25 -04: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
enahum
60347559c7 PLT-3734 Cleaning up shouldSendEvent function (#4024)
* PLT-3734 Cleaning up shouldSendEvent function

* Fix LHS unread highlight and jewel mentions
2016-09-27 10:19:50 -04:00
Christopher Speller
1e7985a87a Modifying permissions system. (#3897) 2016-09-13 12:42:48 -04: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
dde158c57f Refactored mention parsing and added unit tests (#3806) 2016-08-16 11:36:46 -05:00
Joram Wilander
0184d6059b PLT-3506 Added flagged posts functionality (#3679)
* Added flagged posts functionality

* UI Improvements to flags (#3697)

* Added flag functionality for mobile

* Updating flagged text (#3699)

* Add back button to RHS thread when coming from flagged posts

* Updating position of flags (#3708)

* Plt 3506 - Reverting flag position (#3724)

* Revert "Updating position of flags (#3708)"

This reverts commit aaa05632c5.

* Fixing the icon in search

* Help text and white space improvements (#3730)

* Updatng help text and some white spacing.

* Updating help text
2016-08-04 10:38:09 -05:00
Joram Wilander
8563fbc41e Add a wait condition in outgoing webhook test to prevent race condition (#3177) 2016-05-31 12:56:15 -04:00
Thomas Balthazar
c226cabc04 PLT-2170 Send payload in application/json for outgoing webhooks (#3160)
* Send payload in application/json for outgoing webhooks

The Add outgoing webhook UI now has a 'Content-Type' field that allows
to choose between application/x-www-form-urlencoded and
application/json. All outgoing webhooks created before this change will
be considered as x-www-form-urlencoded. There's also a minor change in
the way the outgoing webhook summary is displayed: the 'Callback URLs'
label was missing.

* Fix JS formatting errors

* Increase ContentType field length to 128
2016-05-31 10:51:28 -04:00
Thomas Balthazar
934ff34ccb Send Post ID in webhooks (#3120) 2016-05-26 11:37:54 -04:00
Harrison Healey
0fe75cb782 PLT-1909 Removed the ability to edit system posts (#3013)
* Removed the ability to edit system posts

* Added increased timeout to SpinnerButton unit tests
2016-05-17 12:27:03 -04:00
Joram Wilander
07126101d3 Recent mention searches now OR terms instead of AND (#2931) 2016-05-09 09:00:08 -07:00
Harrison Healey
87989b8afd PLT-2258 Unified login screen and related APIs (#2820)
* Unified login screen and related APIs

* Refactored login API call to be less convoluted

* Removed LDAP login prompt from invite process

* Fixed existing LDAP users being able to log in if LDAP was configured, but disabled

* Gofmt

* Future proofed login API

* Updated login APIs based on feedback

* Added additional auditing to login API

* Actually removed loginById
2016-05-03 14:10:36 -04:00
Arif Usman
e76a30bca0 Fixed typo (#2862) 2016-05-03 13:07:49 -04:00
Corey Hulen
2e5617c29b PLT-2057 User as a first class object (#2648)
* Adding TeamMember to system

* Fixing all unit tests on the backend

* Fixing merge conflicts

* Fixing merge conflict

* Adding javascript unit tests

* Adding TeamMember to system

* Fixing all unit tests on the backend

* Fixing merge conflicts

* Fixing merge conflict

* Adding javascript unit tests

* Adding client side unit test

* Cleaning up the clint side tests

* Fixing msg

* Adding more client side unit tests

* Adding more using tests

* Adding last bit of client side unit tests and adding make cmd

* Fixing bad merge

* Fixing libraries

* Updating to new client side API

* Fixing borken unit test

* Fixing unit tests

* ugg...trying to beat gofmt

* ugg...trying to beat gofmt

* Cleaning up remainder of the server side routes

* Adding inital load api

* Increased coverage of webhook unit tests (#2660)

* Adding loading ... to root html

* Fixing bad merge

* Removing explicit content type so superagent will guess corectly (#2685)

* Fixing merge and unit tests

* Adding create team UI

* Fixing signup flows

* Adding LDAP unit tests and enterprise unit test helper (#2702)

* Add the ability to reset MFA from the commandline (#2706)

* Fixing compliance unit tests

* Fixing client side tests

* Adding open server to system console

* Moving websocket connection

* Fixing unit test

* Fixing unit tests

* Fixing unit tests

* Adding nickname and more LDAP unit tests (#2717)

* Adding join open teams

* Cleaning up all TODOs in the code

* Fixing web sockets

* Removing unused webockets file

* PLT-2533 Add the ability to reset a user's MFA from the system console (#2715)

* Add the ability to reset a user's MFA from the system console

* Add client side unit test for adminResetMfa

* Reorganizing authentication to fix LDAP error message (#2723)

* Fixing failing unit test

* Initial upgrade db code

* Adding upgrade script

* Fixing upgrade script after running on core

* Update OAuth and Claim routes to work with user model changes (#2739)

* Fixing perminant deletion. Adding ability to delete all user and the entire database (#2740)

* Fixing team invite ldap login call (#2741)

* Fixing bluebar and some img stuff

* Fix all the different file upload web utils (#2743)

* Fixing invalid session redirect (#2744)

* Redirect on bad channel name (#2746)

* Fixing a bunch of issue and removing dead code

* Patch to fix error message on leave channel (#2747)

* Setting EnableOpenServer to false by default

* Fixing config

* Fixing upgrade

* Fixing reported bugs

* Bug fixes for PLT-2057

* PLT-2563 Redo password recovery to use a database table (#2745)

* Redo password recovery to use a database table

* Update reset password audits

* Split out admin and user reset password APIs to be separate

* Delete password recovery when user is permanently deleted

* Consolidate password resetting into a single function

* Removed private channels as an option for outgoing webhooks (#2752)

* PLT-2577/PLT-2552 Fixes for backstage (#2753)

* Added URL to incoming webhook list

* Fixed client functions for adding/removing integrations

* Disallowed slash commands without trigger words

* Fixed clientside handling of errors on AddCommand page

* Minor auth cleanup (#2758)

* Changed EditPostModal to just close if you save without making any changes (#2759)

* Renamed client -> Client in async_client.jsx and fixed eslint warnings (#2756)

* Fixed url in channel info modal (#2755)

* Fixing reported issues

* Moving to version 3 of the apis

* Fixing command unit tests (#2760)

* Adding team admins

* Fixing DM issue

* Fixing eslint error

* Properly set EditPostModal's originalText state in all cases (#2762)

* Update client config check to assume features is defined if server is licensed (#2772)

* Fixing url link

* Fixing issue with websocket crashing when sending messages to different teams
2016-04-21 22:37:01 -07:00
JoramWilander
8326025d5b Removed search test case where MySQL and PostgreSQL didn't agree 2016-03-18 12:53:09 -04:00
hmhealey
994358c31a Reworked the code for sending notifications and checking for out of channel mentions to share some data 2016-02-04 11:38:58 -05:00
hmhealey
f8005744a2 Changed out of channel mention tests to use proper email addresses 2016-02-04 11:38:57 -05:00
hmhealey
b7d045844c Added serverside check for a post that @mentions someone who isn't in the channel 2016-02-04 11:38:56 -05:00
=Corey Hulen
1006e99859 Fixing email unit tests 2016-02-01 08:35:08 -08:00
JoramWilander
c4cca4d418 Updated search test cases 2016-01-27 07:37:05 -05:00
JoramWilander
fb794f03c1 Update search query to ignore system messages 2016-01-26 11:51:27 -05:00
Corey Hulen
aefbb541d0 Revert " PLT-7 adding loc for db calls" 2016-01-20 13:36:16 -06:00
=Corey Hulen
75f8729e2d PLT-7 adding loc db calls for users table 2016-01-20 12:43:44 -06:00
=Corey Hulen
f5eb3c1bcb PLT-7 adding loc for db calls audits and prefs 2016-01-20 07:59:56 -06:00
Reed Garmsen
e7eb86c8c3 Updated emails in unit tests to include '+' 2015-12-13 14:21:23 -08:00
hmhealey
4b51490a38 Moved logic for making direct channels visible to both members on post to the server 2015-12-07 18:14:07 -05:00
hmhealey
40e0ba37ca Changed post searching to ignore requests to return everything by searching for * 2015-11-04 10:30:32 -05:00
Christopher Speller
188182a3a4 Adding ability to fetch posts around a specifc post 2015-11-03 11:34:52 -05:00
hmhealey
663bec8147 Moved logic for searching for posts by multiple users/channels into the sql query 2015-10-26 11:45:09 -04:00
hmhealey
2383d5dd37 Changed post searching to allow searching by multiple users/channels 2015-10-23 17:28:02 -04:00
hmhealey
06fd374c19 Added from:, in:, and channel: search modifiers 2015-10-19 13:25:19 -04:00
Christopher Speller
b85b529373 Changing SpinPunch to Mattermost in copyright 2015-10-08 12:27:09 -04:00
=Corey Hulen
08a3acbb44 Adding team settings to admin console 2015-09-22 01:15:41 -07:00
JoramWilander
47e6a33a45 Implement OAuth2 service provider functionality. 2015-09-16 15:49:12 -04:00
Joram Wilander
2bc6451e39 Merge pull request #486 from asubset/master
Fix getParentsPosts() query
2015-08-28 07:51:17 -04:00
Jason Rossman
879fa084c9 fix GetParentPosts() query 2015-08-27 12:45:47 -06:00
JoramWilander
041d89b85a Refactored post handling/updating on both the client and server. 2015-08-27 08:21:26 -04:00
=Corey Hulen
c277a98b5d Merge branch 'master' into mm-1420 2015-07-22 18:05:44 -08:00
JoramWilander
b821d23ed7 fixed unit tests to work with team domain changes and update partial url regex for files 2015-07-21 19:23:00 -04:00
Christopher Speller
73ee387319 Fixing issues with files trasitioning to relative paths 2015-07-21 18:06:30 -04:00
=Corey Hulen
848eeeeef4 fixing merge conflicts 2015-07-21 12:26:27 -08:00
Christopher Speller
c6fb95912b Changing the way we mattermost handles URLs. team.domain.com becomes domain.com/team.
Renaming team.Name to team.DisplayName and team.Domain to team.Name.
So: team.Name -> url safe name. team.DisplayName -> nice name for users
2015-07-20 17:45:23 -04:00
hmhealey
c09f1b9e4e Renamed FullName column in database to Nickname. Renamed all serverside references from FullName to Nickname. 2015-07-17 15:13:24 -04:00
nickago
372869354f removed testing material 2015-07-16 14:49:15 -07:00