Commit Graph

66 Commits

Author SHA1 Message Date
Joram Wilander
64f81762cb Remove legacy reference to hasDirectProfile (#4308) 2016-10-24 10:51:14 -04:00
Joram Wilander
d4c9123acf Fix bad use of websocket event when a new user is added (#4309) 2016-10-24 09:48:04 -04:00
Joram Wilander
4aa96c76b4 Fix autocomplete for old mechanisms and add partial fix for channel switcher (#4279) 2016-10-20 12:32:20 -03: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
Pepijn
944bb1ba61 First commit for toggling mentions using shortcut and button (#4169)
Also did some refactoring and moved code to actions

Fixed coding style errors
2016-10-11 09:07:38 -04:00
David Lu
78a4b19fd7 PLT-3785 Re-enabled marking messages unread (#4179)
* Re-added ALT+Click to mark msgs unread, fixed mentions for DM

* Added string to /shortcuts
2016-10-11 09:06:12 -04:00
Harrison Healey
816a738d28 PLT-4343 Fixes for mobile main menu (#4148)
* Fixed mobile app link in the main menu to be displayed on mobile browsers

* Fixed doubled up dividers in mobile menu

* Added scrolling to mobile main menu
2016-10-04 14:38:19 -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
93f2b6a833 Updating ESLint (#4085) 2016-09-23 12:29:54 -04:00
George Goldberg
8443ca5828 PLT-1759 - Auto-complete for !channels when posting messages. (#3890)
* Auto-complete for !channels when posting messages.

This is part 1 of the fix for PLT-1759 to make channels linkable.

Still to do:
- Make the !channels clickable when they appear in messages. This is
  blocked until PR #3865 is resolved as it looks like that refactors
  some of the code that would be touched by making this change.

- Unit tests. Again, I think the above referenced PR should be merged
  before tackling this.

* Fix style problems.

* Highlighting of !channel-names in messages.

This only identifies the !channel-name (not the display name). The
implementation of the auto-complete on channel names now needs to be
modified to convert to the channel handle before sending the message.

* Display !channel-name as !Display Name.

When we encounter !channel-name in a message, display it as a link using
the channel's actual name rather than it's handle (name).

* Match on names and display name, and use name.

* Autocomplete channels matching on both the name and the the display
  name.
* Use the name as the text we fill in instead of the display name. It's
  potentially a bit ugly, but it minimises complexity for now as
  otherwise we'd have to do complicated things to the message box.

* Fix style issues.

* Load more channels everywhere.

Whenever we load the list of channels, we should also load the list of
more channels. This is to enable auto-completing and auto-linking of all
channels whether or not the user is in them currently.

* Include more channels in the map for linking.

* Listen for channel list updates for autolinking.

* Remove accidental console.log.

* Autocomplete on more channels too.

* i18n for channel autocomplete.

* Link directly to channels in !channel mentions.

This currently does not work if you aren't a member of that channel.
Need to decide what the correct behaviour is in that case.

* Fix style issues.

* Show channel name and handle in suggestion.

* Match channels only at start or after space.

* Better matching in text-formatting.

Only match channels after a space-type character or at the start in the
posts list too.

* Move the route construction to make tests work.

Moves route-construction out of text_formatting.jsx and into utils.jsx
so that the unit tests work once again.
2016-09-19 08:21:22 -04:00
enahum
781ff323db Webrtc client side (#4026)
* WebRTC Server side

* WebRTC client side

* Bug fixes and improvements

* Pushing UI improvements for webrtc (#3728)

* Pushing UI improvements for webrtc

* Updating webrtc css

* PLT-3943 WebRTC P1: bug fixes and improvements

* Video resolution set to std, reduce volume of ringtone and flip video horizontally

* Fix calling a user B while WebRTC RHS is still opened

* Leave RHS opened when call ends, Fix isBusy on popover and channel_header

* Fix pre-release feature, RHS & System Console

* PLT-3945 - Updating UI for webrtc (#3908)

* PLT-3943 Webrtc p1

* Add ongoing call indicator when RHS is opened

* UI updates to to webrtc notifcation (#3959)
2016-09-16 15:35:13 -03:00
enahum
ecd433d697 PLT-1238 on permalink not visible back button points to last channel or town-square (#4019) 2016-09-14 12:16:29 -03:00
Christopher Speller
1e7985a87a Modifying permissions system. (#3897) 2016-09-13 12:42:48 -04:00
Joram Wilander
9d11dd437f Send hello event containing server version on WebSocket connect (#3936) 2016-09-04 20:45:34 -03:00
Joram Wilander
f32eb525f3 Do not send push notifications for channels being actively viewed (#3931) 2016-09-02 12:50:15 -04:00
Joram Wilander
a76db5b84f PLT-2074 Refactor desktop notification settings UI and add setting for duration (#3883)
* Refactor desktop notification settings UI and add setting for duration

* Update en.json

* Update desktop_notification_settings.jsx
2016-08-29 09:52:59 -04:00
enahum
7bd26b1927 Add missing directProfiles updates on real-time user updates (#3876) 2016-08-24 20:48:40 -03:00
enahum
e6d15f77e8 PLT-3942 Add real-time updates for center channel profile picture popover (#3871)
* PLT-3942 Add real-time updates for center channel profile picture pop-over

* Send user data with the websocket event to prevent further requests

* Add helper for profile sanitation
2016-08-24 18:10:49 -03:00
Corey Hulen
e1fdc63f28 PLT-3593 fixing issue of removing from team DM list (#3857) 2016-08-22 20:39:05 -04:00
Corey Hulen
eafc802831 PLT-3881 Fix websocket errors after leaving the team (#3815) 2016-08-17 11:17:44 -04:00
Joram Wilander
ccf9778520 Clear search term before displaying flagged posts (#3802) 2016-08-16 14:52:56 -04:00
David Lu
ef33f3fcd1 PLT-3005 Added confirmation screen to integrations (#3747) 2016-08-15 11:10:31 -04:00
enahum
fdd7962d42 PLT-3869 Fix set default language when user logs out (#3796) 2016-08-15 09:21:12 -04:00
David Lu
bb0b895bad Removed /shortcuts from mobile (#3753) 2016-08-11 10:32:41 -04: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
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
enahum
5bc3cea6fe PLT-3484 OAuth2 Service Provider (#3632)
* PLT-3484 OAuth2 Service Provider

* PM text review for OAuth 2.0 Service Provider

* PLT-3484 OAuth2 Service Provider UI tweaks (#3668)

* Tweaks to help text

* Pushing OAuth improvements (#3680)

* Re-arrange System Console for OAuth 2.0 Provider
2016-08-03 13:19:27 -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
Joram Wilander
a88ff1b64d Fix console error when receiving a new message in the system console or on another team (#3688) 2016-07-28 08:41:17 -04:00
Joram Wilander
199c55b566 Only get channels and posts on WebSocket connect if team is set (#3684) 2016-07-27 09:53:49 -04:00
Joram Wilander
d1de884845 Fix RHS not closing when thread is deleted by another user (#3641) 2016-07-20 17:34:25 -04:00
Christopher Speller
1641370fbe Moving javascript driver back to platform (#3613) 2016-07-19 10:16:44 -04:00
Joram Wilander
c0ab2636d6 PLT-2241 Refactored statuses into a more real-time system (#3573)
* Refactored statuses into a more real-time system

* Updated package.json with correct commit and fixed minor bug

* Minor updates to statuses based on feedback

* When setting status online, update only LastActivityAt if status already exists
2016-07-18 11:10:03 -04:00
David Lu
34077a407b made /shortcuts separate for mac (#3571) 2016-07-14 11:57:06 -08:00
Harrison Healey
caabfbcdd5 PLT-2992 Added the ability to use different themes for each team (#3411)
* Cleaned up user_settings_theme.jsx and import_theme_modal.jsx

* Made ImportThemeModal use a callback to return the theme to the user settings modal instead of saving it directly

* Moved user theme from model to preferences

* Added serverside API to delete preferences TODO update package with client stuff

* Changed constants.jsx so that Preferences and ActionTypes can be imported on their own

* Updated ThemeProps migration code to properly rename solarized code themes

* Fixed warnings thrown by AppDispatcher

* Added clientside UI to support team-specific themes

* Removed debugging code from test

* Fixed setting a user's theme when they haven't set their theme before
2016-07-14 10:08:36 -04:00
David Lu
8e810bc2eb PLT-3153 Converted slash command triggers to lowercase on save (#3577)
* Converted slash command triggers to lowercase on save

* Made slash commands case insensitive
2016-07-14 10:05:25 -04:00
samogot
9b9facd3d2 PLT-3366 Holding down the ALT key and clicking on a message adds a new messages indicator (squashed) (#3374) 2016-07-14 08:19:27 -04:00
Joram Wilander
006fc6c253 Fixes reading wrong websocket message property (#3580) 2016-07-13 12:55:20 -04:00
Corey Hulen
d02b890150 Fixes javascript error with missing func (#3570) 2016-07-13 07:27:05 -04:00
Joram Wilander
ad343a0f4a Added infrastructure for basic WebSocket API (#3432) 2016-07-12 09:36:27 -04:00
Harrison Healey
9481a4f0ef Merge release 3.2 into master (#3548)
* Bumping version to: 3.2.0-rc1

* PLT-2863 fixing bad merge that broke this PR (#3523)

* PLT-2863 adding remove user from team

* PLT-2863 adding the client side UI

* Fixing trailing space

* Fixing reported issues

* Adding documentatino

* Switching to final javascript driver

* Fixing bad merge

* Fixing bad merge

* PLT-3538 Fix Login page doesn't show SAML option if gitlab is enabled (#3524)

* Login error messages fix (#3525)

* daily translations 20160708 (#3533)

* Fixed permissions when getting a file attachment to use the correct user id (#3535)

* PLT-3575 Fix Cannot upload certificates with .cer file extension on SAML (#3534)

* PLT-3560 blocking adding to channel once user is removed (#3537)

* Always allow system admins to see the Integrations sidebar (#3536)

* Plt 3475 - Post control improvements (#3538)

* Adding class to post when dropdown is active.

* plt-3475 - Post controls improvements

* daily translations 20160711 (#3544)
2016-07-11 14:21:51 -04:00
Corey Hulen
d5f243dad6 PLT-2863 adding remove user from team (#3429)
* PLT-2863 adding remove user from team

* PLT-2863 adding the client side UI

* Fixing trailing space

* Fixing reported issues

* Adding documentatino

* Switching to final javascript driver
2016-07-06 13:40:59 -08:00
Joram Wilander
6c33350f5c On receive of a comment that we don't have the thread for, acquire the thread (#3490) 2016-07-06 08:48:00 -04:00
Joram Wilander
a65f1fc266 Do not clear the more direct messsages list on every open (#3485) 2016-07-05 11:32:37 -04:00
Corey Hulen
b63f61fe7d PLT-3440 (#3440) 2016-06-29 08:16:20 -04:00
Eric Sethna
48ea4bc6f6 Update permalink error message (#3427)
* Clarify permalink error message

* Clarify permalink error message en.json

* Update global_actions.jsx

* Update en.json
2016-06-28 15:11:50 -04:00
Christopher Speller
14510ce194 Adding webpack code splitting (#3377) 2016-06-22 10:30:01 -04:00
Park Daesun
ca138883ab Remove the unnecessary comma (#3351)
It is not error, but It is unnecessary
2016-06-16 09:19:47 -08:00
David Lu
804705e0c5 Fixed DM channels not opening (#3336) 2016-06-15 08:01:31 -04:00