Commit graph

112 commits

Author SHA1 Message Date
Jesús Espino
be28b7dad5
Migrate webapp global state to redux (#737)
* Migrating workspace tree to redux

* More changes for use the redux store for boads and views

* Taking into account the templates on websocket event updates

* Fixing bug on boardTree maintenance

* Websocket client now connects once and subscribe/desubscribe on the fly

* Including usage of the new websocket client

* More work around migrating to redux

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* Fixing some things

* WIP

* WIP

* Another small fix

* Restoring filtering, sorting and grouping

* Fixing some other bugs

* Add search text reducer

* Fixing another drag and drop problem

* Improve store names and api

* Fixing small bgus

* Some small fixes

* fixing login

* Fixing register page

* Some other improvements

* Removing unneeded old files

* Removing the need of userCache

* Fixing comments and fixing content ordering

* Fixing sort

* Fixing some TODOs

* Fixing tests

* Fixing snapshot

* Fixing cypress tests

* Fix eslint

* Fixing server tests

* Updating the add cards actions

* Fixing some tiny navigation problems

* Mocking the api calls to pass the tests

* Migrating a new test to redux

* Adding the card right after the insert of the block (not wait for ws event)

* Showing the ws disconnect banner only after 5 seconds of disconnection

* Fixing share view

* Fix eslint

* Fixing problem with sort/groupby modifications

* Fixing some details on redirections and templates creation

* Fixing small bugs around undo

* Fix update properties on click outside the dialog

* Improving the column resize look and feel

* Removing the class based objects from the store (now they are all plain objects

* Fix eslint

* Fixing tests

* Removing unneeded code
2021-08-02 17:46:00 +02:00
Doug Lauder
efedf2f481
Fix nil stringer error (#788)
* fix nil stringer error
* include API path with all API ERROR logs
* enable "caller" field
* disable colour output and min msg length for plugin
* bump Logr version to v2.0.4
2021-07-27 12:57:29 -04:00
Doug Lauder
a0524dd386
Lint server & plugin for CI (#720)
* enable CI linting for server and plugin
* replace `golint` (deprecated) with `revive`
* use GH actions for lint
2021-07-14 09:36:18 -04:00
Doug Lauder
ebd477464b
fix remaining golangci linter warnings (#686)
* fix remaining linter warnings
2021-07-08 21:09:02 -04:00
Harshil Sharma
e0ec1c03e0
New Props: Created By, Created At, Updated By, Updated At (#583)
* Added create_at column for blocks

* Populating created by

* Added logic for storing created by

* Added GetBlock by ID to store interface

* Added creayed by and modified by properties

* Added created by and modified by properties

* Added lastmodifiedat property

* Fixed existing webapp test

* Added webapp unit tests

* Added webapp unit tests

* Added webapp unit tests

* Adding server test

* Added server tests

* Fixed a bug causing created by to be set empty

* Avodining timezone specific test behavior

* Made cypress viewport bigger to avoid out-of-viewoport issues in multiple tests

* Removed a leftover comment

* Added updated at/by in table view

* Added updated at in card view

* Fixing sort

* Fixed sorting of updated by

* Fixed existing tests

* Added table tests

* Added cardTree fix

* Fixed tests

* Removed unused import

* Update snapshots

* Added a tamper attempt test

* Removed some leftover debug code

* Removed sending creator from client

* Fixed lint error

* Fixed a build issue

* Avoided setting insert query params multiple times

* Multiple minor review fixes

* Fixed test
2021-07-08 20:06:43 +05:30
Doug Lauder
66975bdfe9
First pass linter cleanup (#603)
* first pass linter cleanup

* address review comments
2021-06-21 11:21:42 +02:00
Doug Lauder
edc3eb7e8f
Refactor App lifecycle (#590)
* remove Server dep from App

* remove appbuilder
2021-06-18 16:03:42 +02:00
Doug Lauder
5c69113911
Auditing (#542)
* audit wip

* finish API coverage

* fix unit test

* remove sample logging and audit config

* default logger

* fix go.mod and go.sum
2021-06-11 14:24:51 +02:00
Harshil Sharma
90f6389745
Person Property Type (#406)
* Added getWorkspaceUsers API

* Integrated workspace user API in UI

* Integrated workspace user API in UI

* Added toto for implementation slot

* Implemenmted getWorkspaceUSers to get data from Focalboard DB

* Updated store mocks

* Made select styles a shared constant

* Removed unwanted diffs

* Removed unwanted diffs

* Updated snapshots for new property type

* Added user store test

* Added missing copyright notice

* Returning error if no users found to retain original behavior

* Minor fixes and added tests

* Minor fixes

* Used React context for workspace users

* Used useContext hook, and added additional user ID -> user context to avoid that computation by all componnets

* Mergerd both workspace user contextx

* Minor review fix
2021-06-04 18:53:15 +05:30
Doug Lauder
417de9f837
Logger for FocalBoard server (#466)
- structured, asynchronous logging
- supports discreet log levels, including custom levels
- supports output to console, files, and all common log aggregators.
- supports JSON, plain text and GELF formats
- lazy formatting and writing
2021-05-29 02:23:10 -04:00
Jesús Espino
f1b8d88d6b
Changing mattermost-auth method to work based on shared database access (#335)
* Improving mattermost auth implementation

* Making mattermost-auth based on shared database access

* Reverting unneeded changes in the config.json file

* Fixing tiny problems

* Removing the need of using the mattermost session token

* Fixing some bugs and allowing to not-bind the server to any port

* Small fix to correctly get the templates

* Adding the mattermost-plugin code inside focalboard repo

* Adding a not working code part of the cluster websocket communication

* Updating the mattermost version

* Adding the cluster messages for the websockets

* Updating to the new node version

* Making it compatible with S3

* Addressing some tiny problems

* Fixing server tests

* Adds support for MySQL migrations and initialization

Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
2021-05-24 19:06:11 +02:00
Hossein
e2dd9a978a
Add Export/import board (#403)
* Resolve GH-261

* fix eslint

* Address comments

* update mocks

* add test
2021-05-13 15:04:49 -06:00
Chen-I Lim
7be7bed916 Show workspace title in sidebar 2021-03-30 15:25:16 -07:00
Chen-I Lim
3531c8307d Global template support 2021-03-30 14:04:00 -07:00
Chen-I Lim
9ff340c989 Store files per workspace and root block 2021-03-29 16:27:35 -07:00
Chen-I Lim
98bfd5a57a Allow sharing with workspace 2021-03-29 10:41:27 -07:00
Chen-I Lim
725971784b Workspace backend support 2021-03-26 11:01:54 -07:00
Bo-Yi Wu
2b4e03eed6 chore(format): update coding style 2021-03-21 16:28:26 +08:00
Jesús Espino
3290ab48b8 Fixing email validation 2021-03-18 13:34:42 +01:00
lutfuahmet
4887aee648 Register Request email validation 2021-03-18 10:32:23 +03:00
Chen-I Lim
02e436c902 Store fileId for image blocks instead of url 2021-02-23 11:42:28 -08:00
Chen-I Lim
1ad985232d Add Swagger / OpenAPI docs 2021-02-17 11:29:20 -08:00
Chen-I Lim
3ba6f7fa0a Disable login, reg, change password for single-user 2021-02-09 15:58:08 -08:00
Chen-I Lim
0fe96ad7ed Check for single user token 2021-02-09 12:27:34 -08:00
Chen-I Lim
1957e1dbaa cleanup 2021-02-05 11:22:56 -08:00
Chen-I Lim
c484eb8c43 Don't require CSRF token for get files 2021-02-05 10:45:28 -08:00
Chen-I Lim
daf83691b1 Refactor API to use middleware 2021-02-05 10:28:52 -08:00
Chen-I Lim
d655ca3af6 Add X-Requested-With header check for CSRF 2021-02-03 10:16:37 -08:00
Chen-I Lim
37987a2a61 getSharing requires session 2021-02-03 10:12:27 -08:00
Chen-I Lim
79b79b35bc Auth readToken in websocket 2021-02-02 18:21:37 -08:00
Chen-I Lim
d641039131 Registered user count 2021-01-27 09:22:33 -08:00
Chen-I Lim
3995cbd0e4 Product name 2021-01-26 14:13:46 -08:00
Chen-I Lim
22e3e03c39 Check local conn for admin APIs 2021-01-22 14:14:12 -08:00
Chen-I Lim
6af0780c17 Merge branch 'main' into admin-local 2021-01-22 11:28:45 -08:00
Chen-I Lim
1286349a22 Change password 2021-01-21 10:16:40 -08:00
Chen-I Lim
91f51fe0b9 Local server on unix port, admin set password 2021-01-20 13:52:25 -08:00
Chen-I Lim
c0f8f1288f Cleanup api errorResponse 2021-01-14 10:03:01 -08:00
Chen-I Lim
7915564d2c Require signup token to register 2021-01-13 16:56:01 -08:00
Chen-I Lim
413a6e33c7 cleanup 2021-01-13 12:15:38 -08:00
Chen-I Lim
b8bfc7fce3 Pass read_token to getSubTree 2021-01-13 09:40:37 -08:00
Chen-I Lim
61fb38d418 Allow GetSubTree without auth. WIP 2021-01-12 18:49:08 -08:00
Chen-I Lim
2f71295275 Get/set sharing 2021-01-12 15:35:30 -08:00
Chen-I Lim
7052a022b3 Store modifiedBy for deleted blocks 2021-01-12 11:16:25 -08:00
Chen-I Lim
f2e8bc8285 Store blocks modified_by userID 2021-01-11 18:53:08 -08:00
Jesús Espino
daae244cba Merge remote-tracking branch 'origin/main' into auth 2021-01-11 13:56:26 +01:00
Chen-I Lim
c1a73f88b3 Log error in Server API 2021-01-05 19:50:24 -08:00
Chen-I Lim
0bd645df4e Filter orphaned nodes on export 2020-12-14 11:24:38 -08:00
Chen-I Lim
6f40b80d6e Filter out orphaned blocks on export 2020-12-10 12:39:09 -08:00
Jesús Espino
e5941d6440 More work on auth 2020-12-07 20:40:16 +01:00
Jesús Espino
c8ac701587 Merge remote-tracking branch 'origin/main' into auth 2020-12-04 16:04:28 +01:00
Jesús Espino
f491241c1a Preliminary auth implementation 2020-12-04 16:03:09 +01:00
Jesús Espino
99cefc5356 More work on auth 2020-12-04 11:28:35 +01:00
Chen-I Lim
850f60e1fb Add rootId to blocks. Requires archive export / re-import. 2020-12-03 14:09:48 -08:00
Jesús Espino
7382f9c55c Adding sessions code 2020-12-02 21:12:14 +01:00
Jesús Espino
11d336fef0 Merge remote-tracking branch 'origin/main' into auth 2020-11-17 15:44:04 +01:00
Jesús Espino
a1008fee1c Working on auth 2020-11-17 15:43:56 +01:00
Chen-I Lim
37fd30413b Duplicate board 2020-11-12 10:16:59 -08:00
Jesús Espino
35ebd44d24 More work on authentication 2020-11-06 16:46:35 +01:00
Chen-I Lim
972b621d12 Notify changes to root blocks (empty parentID) 2020-10-26 10:54:37 -07:00
Jesús Espino
72f4783e34 Some other code improvements from the golangci 2020-10-22 15:22:36 +02:00
Jesús Espino
607b8aa063 Some improvements based on golangci-lint checks, and adding more rules 2020-10-22 13:34:42 +02:00
Jesús Espino
19ab85b329 Splitting the server in multiple packages 2020-10-16 19:12:53 +02:00