Commit Graph

967 Commits

Author SHA1 Message Date
George Goldberg
8c8bc7111c Slack import unit tests (#4201)
* Slack Import unit tests (for some functions).

Covers the completely self contained functions in the Slack Importer
that are straightforward to unit test.

JSON processing functions are not yet unit tested.

* Unit tests for Slack Import JSON parsing.

This tests the 3 functions for parsing JSON, using a sample set of
Slack data for posts, channels, and users.
2016-10-12 10:03:30 -04:00
Stan Hu
d4268cf0d8 Trim trailing slashes to prevent OAuth2 URI mismatch errors (#4204)
Closes https://gitlab.com/gitlab-org/gitlab-mattermost/issues/84
2016-10-12 09:51:57 -04:00
George Goldberg
552508706d Import /me messages from Slack. (#4164)
Use message formatting consistent with how Mattermost does for the /me
command for new messages.
2016-10-12 09:33:58 -04:00
George Goldberg
5ca05124cf Import Slack uploads if present in zip archive. (#4088)
* Import Slack uploads if present in zip archive.

This is part 3 of PLT-4280, to support importing file uploads when
importing from Slack. It is assumed the uploads in the zip archive will
be present as per the output of slack-advanced-exporter:

https://github.com/grundleborg/slack-advanced-exporter

If the uploads are not present (ie. this is a vanilla Slack export
archive) uploads are treated in the same way as before this patch,
providing only a link to the upload on Slack's servers.

* Update to new Files API.
2016-10-12 09:31:05 -04:00
Harrison Healey
7fb818d4ce PLT-3105 Fixed bugs with FileInfos migration, including duplicate FileInfos being saved (#4134)
* Added a limit to GetByPath for the rare cases when two old files had the same path

* Fixed files still being displayed for deleted posts

* Added a lock to prevent migrateFilenamesToFileInfos from migrating multiple posts at once
2016-10-06 17:44:41 -03:00
George Goldberg
cd5bf7cb5a Correctly import Slack topic and purpose. (#4152)
In order to maintain consistency with how topic and purpose are used in
Slack, the mapping is as follows:

Slack   -> Mattermost
=====      ==========
Purpose -> Purpose
Topic   -> Header
2016-10-05 08:14:36 -04:00
George Goldberg
1a5a624470 Fix import of Slack file_comment messages. (#4132)
At the moment, the importer fails to parse the JSON of these types of
message, and so ignores them.

This fix means they are now parsed and imported just as if they were
standalone messages (not file comments), which is better, and what the
existing code clearly intended to happen.

For the future, they should probably be changed to be imported as
replies to the message with the file attached that they are commenting
on.

Fixes #4131.
2016-10-04 08:51:38 -04:00
Christopher Speller
8f91c77755 Adding ability to serve TLS directly from Mattermost server (#4119) 2016-10-03 16:03:15 -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
Harrison Healey
fc54aececc Added a short wait to TestSetActiveChannel to stop randomly failing tests (#4115)
* Added a short wait to TestSetActiveChannel to stop randomly failing tests

* Increased the timeout in TestWebSocketEvent
2016-09-29 12:57:37 -04:00
enahum
caeadde2f2 PLT-4155 Show correct login method in system console (#4102)
* PLT-4155 Show correct login method in system console

* Remove checking for system admin privileges in getProfiles
2016-09-28 08:49:54 -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
Corey Hulen
bfca752940 Fixing the console level debug statements (#4092) 2016-09-27 11:07:32 -03:00
Christopher Speller
667db6e10c Cleaning up some old code from the permissions system change (#4090) 2016-09-26 13:41:50 -04:00
Christopher Speller
7fcc004beb Modifications to rate limiting settings. (#4091) 2016-09-26 09:56:12 -07:00
Ryan Wang
1479c4a2ca Message is displayed when user joins Off_Topic (#4067) 2016-09-26 07:47:17 -04:00
Christopher Speller
2ca0e8f9a0 Updating golang dependancies (#4075) 2016-09-23 10:17:51 -04:00
Joram Wilander
353761b917 Fix TestSetActiveChannel unit test (#4071) 2016-09-22 16:59:33 -04:00
Christopher Speller
efdb0dfa0b Fixing update roles API (#4060) 2016-09-22 08:31:38 -04:00
George Goldberg
de79343b9a Fix !channel linking in Slack import. (#4065)
Original version of the patch didn't take into account that, like with
@mentions, there's an "old" and a "new" format in the Slack export files
for channel mentions. This version imports both correctly.
2016-09-21 15:17:48 -03:00
Corey Hulen
185387e277 Fixing build break (#4063) 2016-09-21 10:36:38 -07:00
Corey Hulen
fc5df5c435 Fix issue when saving session has an error (#4053)
* Fix issue is saving session has an error

* Fixing break break
2016-09-21 07:17:58 -04:00
enahum
33e20b874e PLT-4202 fix javascript error manage OAuth2 apps (#4039)
* PLT-4202 fix javascript error manage OAuth2 apps

* Fix unit tests
2016-09-20 12:02:08 -04:00
enahum
4e3d465210 PLT-4179 send push notifications with override_username (#4040) 2016-09-20 12:01:12 -04:00
George Goldberg
33eda94db3 PLT-1764 #channels => !channels on Slack import. (#4028) 2016-09-19 08:22:08 -04:00
enahum
9d40538106 PLT-4157 CLI to make a user active or inactive (#4025) 2016-09-15 11:33:16 -04: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
Joram Wilander
837808eba3 Update getUser API and add it to the JS driver (#4020) 2016-09-14 09:57:33 -03:00
Christopher Speller
1e7985a87a Modifying permissions system. (#3897) 2016-09-13 12:42:48 -04:00
Joram Wilander
132be6a02b Accept nil values for incoming webhook attachments (#4011) 2016-09-13 11:56:03 -04:00
Pierre Rudloff
987cb10e71 Unescape HTML entities in e-mail titles (fixes #3906) (#3969) 2016-09-12 16:20:41 -04:00
Christopher Speller
adfcda4802 Some improvments to slack import (#4010) 2016-09-12 11:57:36 -04:00
Jason Blais
b6ed10a31e PLT-3766 Change remaining LDAP references to AD/LDAP (#3985)
* Update user.go

* Update en.json

* Update ldap_test_button.jsx

* Update en.json
2016-09-08 09:48:12 -03:00
Joram Wilander
ba2e131804 Include build number in server version given to the client (#3984) 2016-09-08 09:48:02 -03:00
Harrison Healey
73692f010e PLT-3775/PLT-4067 Fixes for email notifications for 3.4 2016-09-06 18:51:42 -03:00
Jason Blais
449b066598 PLT-3766 Change LDAP references to AD/LDAP in the UI (#3925) 2016-09-06 16:27:32 -03:00
enahum
35b816b922 PLT-3921 Fix System Console Recent Active Users (#3856)
* PLT-3921 System Console Recent Active Users
2016-09-06 15:48:43 -03:00
George Goldberg
af0df81a97 Fix @channel, @here and @everyone Slack import. (#3946)
Does this by adding special case regexes to the @mention importing code
in the Slack importer for these three special mention types.

Fixes PLT-4053
2016-09-06 12:56:29 -04:00
Joram Wilander
dda0ea3552 PLT-3875 Update error page to use Markdown and add error for missing OAuth code (#3934)
* Update error page to use Markdown and add error for missing OAuth code

* Add line breaks to error messages 

This is to make the error message easier to read.

* Update en.json
2016-09-06 08:29:14 -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
Christopher Speller
eb0111f6bb Fixing SanitizeProfile (#3930) 2016-09-02 08:24:20 -08:00
enahum
ae46819b8e Update LastViewAt in create post API if not from a webhook (#3913) 2016-09-02 11:19:42 -04:00
Christopher Speller
5d7f239962 Adding LDAP test connection button. Reordering LDAP settings. (#3912) 2016-09-01 17:05:20 -04:00
Joram Wilander
26f96b240d PLT-3462 Add the ability to clear push notifications after channel is viewed (#3834)
* Add the ability to clear push notifications after channel is viewed

* Fix race condition between updating the mention count and reading it when sending push notifications
2016-08-31 12:52:14 -04:00
Joram Wilander
b0b39ce71c Add debug logging when receiving an oauth redirect (#3916) 2016-08-31 10:56:31 -03:00
Dmitri Aizenberg
dc09b7781a PLT-1527 Add a slash command to set yourself away (#3752)
* added handlers for slash commands

* added manual status persistance

* added tests

* removed extra debug output and comments

* rebase - fixing the PR

* making echo messages after slash commands ephemeral
2016-08-31 09:24:14 -04:00
enahum
1326ab66a1 PLT-3984 Add the ability to regenerate OAuth Client Secret (#3899) 2016-08-30 21:15:40 -03:00
enahum
18808faead PLT-3994 Fix OAuth2: Properly handle allowing an app fails (#3888)
* PLT-3994 Fix OAuth2: Properly handle allowing an app fails

* Remove Content-Type from allowOAuth
2016-08-30 13:40:30 -04:00
enahum
6c8746dbdc PLT-4026 Use client dir constant for OAuth Authorization page (#3895) 2016-08-30 09:00:50 -08:00