Commit Graph

1695 Commits

Author SHA1 Message Date
eikek
e483a97de7 Adopt to new loggin api 2022-02-19 21:41:38 +01:00
eikek
6442771270 Add a new module to take care of logging
It is based on outr/scribe; mainly providing a json log format and
much easier configuration.
2022-02-19 02:31:26 +01:00
Henning Häcker
7d60cce769 fix typo 2022-02-17 21:18:13 +01:00
eikek
55700992c2 Migrate file ids
Issue: #1379
2022-02-15 22:20:12 +01:00
eikek
553b1fa249 Add a file-repository for better organizing files
Docspell now must use a new api for accessing files.

Issue: #1379
2022-02-15 22:20:06 +01:00
eikek
19e040b029 Send results from processing documents in the event 2022-02-10 23:37:36 +01:00
eikek
d6829ea69b Allow background tasks return results that are included in the event 2022-02-09 23:39:53 +01:00
Renovate Bot
c79460f260 Update dependency @fortawesome/fontawesome-free to v6 2022-02-07 23:22:46 +00:00
eikek
55fe9d7882 Set version to 0.33.0-SNAPSHOT 2022-02-07 00:07:45 +01:00
eikek
64c03927aa Set version to 0.32.0 2022-02-06 23:32:51 +01:00
eikek
1b4443c83e Update some node packages 2022-02-05 18:11:53 +01:00
eikek
d67b063735 Fix updating queue page 2022-01-30 17:39:34 +01:00
eikek
14a413e787 Update channel names when retrieving user tasks
Usertasks hold their arguments in an opaque json structure that is not
connected to the other data at the db level. When loading tasks that
holds references (like channels) they could have changed in the
meantime. This is now a hacky way around that updates the channels
when loading. Should they be deleted, the tasks fails when running.
2022-01-30 17:09:52 +01:00
mergify[bot]
151646bba2
Merge pull request #1329 from eikek/fix/periodic-query-scope
Fix query in periodic query task
2022-01-29 18:04:10 +00:00
eikek
9a516d95c8 Fix query in periodic query task
It didn't specify to only search in valid items

Fixes: #1323
2022-01-29 18:49:09 +01:00
eikek
4f9c91d6af Reordered some routes due to a change in http4s
Upstream ticket http4s#5959
2022-01-29 18:33:06 +01:00
eikek
e8afdf71f4 Table ui tweak 2022-01-29 17:36:18 +01:00
eikek
040100f992 Keep form state after save 2022-01-29 17:36:18 +01:00
eikek
e4527400ca Remove more unused client code 2022-01-29 17:36:18 +01:00
eikek
74db2d39a7 Remove unused settings 2022-01-29 17:36:18 +01:00
eikek
e1a8b9b121 Use collective settings for shares 2022-01-29 17:36:18 +01:00
eikek
3710f525d1 Use share ui settings 2022-01-29 10:12:15 +01:00
eikek
1ca64f09d1 Add route to get settings for a share
Returns the client settings of the creator.
2022-01-29 10:11:54 +01:00
eikek
c29ce73dd0 Client settings per collective and user
Client settings can be stored at the user and and the collective. The
settings used in the application are merged from these two settings,
where any user setting takes precedence. The form can now manage both
variants.

Refs: #838
2022-01-29 10:11:25 +01:00
eikek
d0248c530b Wrap tag columns in query boxes 2022-01-28 00:21:42 +01:00
eikek
00b65f664d Fix sorting of tags in search menu
The order of tags is based on their overall counts and doesn't change
when tag association changes (due drag and drop) or the search.
2022-01-28 00:03:41 +01:00
mergify[bot]
b701d25c77
Merge pull request #1320 from eikek/dashboard
Dashboard
2022-01-26 22:40:40 +00:00
eikek
c83f3564b3 Fix formatting 2022-01-26 23:26:06 +01:00
eikek
e6477a04b6 Dashboard updates 2022-01-26 21:27:31 +01:00
eikek
3ff7e255b4 Save and load dashboards 2022-01-26 21:27:31 +01:00
eikek
e83bf6b750 Editable dashboard 2022-01-26 21:27:26 +01:00
eikek
2c2b34cd89 Readonly dashboard 2022-01-26 21:22:51 +01:00
eikek
67f1575707 Create upload component 2022-01-26 21:22:35 +01:00
eikek
370679daed Some predefined boxes for a dashboard 2022-01-26 21:22:20 +01:00
eikek
0337be98f9 Outline dashboard model 2022-01-26 21:21:55 +01:00
eikek
cb3005211b Permalink for bookmark searches 2022-01-26 21:21:36 +01:00
eikek
631450cb16 Add some static links to the dashboard 2022-01-26 21:21:19 +01:00
eikek
e6775f77dc Dashboard page template 2022-01-26 21:21:01 +01:00
eikek
c38ab3ef82 Rename HomePage to SearchPage 2022-01-26 21:20:34 +01:00
eikek
e847b58692 Fix initializing new fields from given data 2022-01-23 10:09:49 +01:00
eikek
0c56c3b46a Fixing typo in version
This should fix nightly builds. Build script changed to be more compatible.
2022-01-23 01:06:00 +01:00
Renovate Bot
c1147a4c85 Update dependency nanoid to 3.1.31 [SECURITY] 2022-01-22 10:30:56 +00:00
eikek
73f47d7be3 Replace viewerjs with pdfjs viewer
The pdfjs distribution contains a standalone viewer already.
2022-01-20 00:16:39 +01:00
eikek
23cb34a6ff Manage notification channels separately and migrate
It's more convenient to manage notification channels separately, as it
is done with email settings. Notification hook and other forms are
adopted to only select channels. Hooks can now use more than one
channel.
2022-01-19 21:57:30 +01:00
eikek
d41490dd88 Add a name to notification channels
This name is supposed to be used by users to distinguish multiple channels.
2022-01-17 18:10:59 +01:00
eikek
76ad708111 Update sbt-openapi-schema plugin to 0.9.0 2022-01-17 17:53:31 +01:00
eikek
4aee69b6ee Set version to 0.32.0-SNAPSHOT 2022-01-16 13:48:23 +01:00
eikek
0d1d093c59 Set version to 0.31.0 2022-01-16 13:18:33 +01:00
eikek
8a4471343c Fix personal/non-personal when updating bookmarks 2022-01-16 00:31:59 +01:00
eikek
7b4300ee2f Add quick-select for tag categories above dropdown
Closes: #960
2022-01-15 18:52:46 +01:00
eikek
ab2b18e192 Extract tag dropdown into a separate component 2022-01-15 13:26:32 +01:00
eikek
348fd50297 Improve selecting tags in the dropdown a bit
This is some low hanging fruit, related to #573, #960. At least we see
now the category and the filter is applied to it as well.
2022-01-14 23:49:08 +01:00
eikek
bc1ec90b6e Allow subsampling when generating preview images
This cuts down considerably when high-dpi images are provided in pdfs.
The test file, scanned with 600dpi resulting in a 5.4M pdf file
contains a 9900x13800 image. This image is loaded into memory in order
to scale it down by PDFBox. This easily results in out of memory
errors (this image requires already ~400M). With subsampling the size
is reduced at most by a factor of 8. Still recommended to avoid large
dpi image-only scans for text based documents or increase the heap
size for joex.
2022-01-13 00:04:50 +01:00
eikek
42fb87a432 Remove pubsub entries when shutting down and initialize by uri 2022-01-12 21:18:38 +01:00
mergify[bot]
02790ba8e7
Merge pull request #1279 from eikek/gotify-priority
Add priority to gotify channel
2022-01-12 20:17:11 +00:00
eikek
7aebc1ccdf Add priority to gotify channel
Closes: #1277
2022-01-12 20:59:24 +01:00
eikek
bafb930877 Fix preview css when switching between tile and list
Closes: #1261
2022-01-12 19:23:20 +01:00
mergify[bot]
5f10798e86
Merge pull request #1274 from eikek/feature/email-content
Feature/email content
2022-01-11 22:06:20 +00:00
eikek
404fb2a37f Allow a custom message part for the periodic query task 2022-01-11 22:50:19 +01:00
eikek
dd9937740a Allow notification templates to fail
Templates were hardcoded. To make them dynamic, errors must be handled.
2022-01-11 21:49:39 +01:00
eikek
42d631876d Remove obsolete code 2022-01-11 21:09:38 +01:00
eikek
648a81bcdb Disable "group by month" option when there is only one group
When fulltext search is used, there only is one group. It also doesn't
make much sense when there is just one month group as well.
2022-01-11 18:33:26 +01:00
eikek
379c016aa2 Fix deleting periodic query tasks 2022-01-11 00:48:53 +01:00
eikek
cf92550de4 Fix mariadb migration 2022-01-10 15:28:02 +01:00
eikek
c79bdad7e4 Rename methods 2022-01-10 15:09:49 +01:00
eikek
978381a5ba Fix openapi spec 2022-01-10 14:59:27 +01:00
eikek
699cf091e6 Allow bookmarks in periodic query notification 2022-01-10 14:25:20 +01:00
eikek
ccb4df5bd7 Prevent duplicate bookmark names 2022-01-10 00:41:07 +01:00
eikek
54a4e6efee Fix formatting 2022-01-09 23:58:57 +01:00
eikek
9415f72ec0 Instead of client only, make bookmarks a server aware feature
Makes it much more useful
2022-01-09 23:58:57 +01:00
eikek
187e7d020d Some ui tweaks 2022-01-09 14:58:21 +01:00
eikek
c2fc1d117f Manage bookmarks 2022-01-09 14:39:59 +01:00
eikek
a5b70962d8 Select bookmarks in search menu 2022-01-09 02:10:22 +01:00
eikek
04b258689f Check for existing bookmarks 2022-01-08 22:42:48 +01:00
eikek
a50a0a9a1a Bookmark queries scoped to user or collective 2022-01-08 22:42:48 +01:00
eikek
f914aa723e Move lesser used menubar items into a menu 2022-01-08 12:38:14 +01:00
eikek
05229a7e9c Allow managing clientsettings per collective 2022-01-08 12:38:14 +01:00
eikek
706cfaeb05 Introduce table to store client settings per collective 2022-01-08 12:38:14 +01:00
Scala Steward
652e85ccea
Reformat with scalafmt 3.3.1 2022-01-02 00:50:55 +01:00
Sytone
b8d7b6952e
Add more countries
Missing a set of countries so added them and the rest I could find so more users can use this.
2021-12-29 21:47:19 -08:00
eikek
808672ed07 Set version to 0.31.0-SNAPSHOT 2021-12-22 22:18:42 +01:00
eikek
9b701035b2 Set version to 0.30.1 2021-12-22 20:37:28 +01:00
eikek
3a642ee01e Fix sending notification mails from background tasks
When looking up the mail settings, a valid user id must be given.
2021-12-22 17:57:26 +01:00
eikek
50e4c31872 Set new version to 0.31.0-SNAPSHOT 2021-12-21 22:01:03 +01:00
eikek
42a54e134d Set version to 0.30.0 2021-12-21 21:28:43 +01:00
eikek
5b5dfeb51c Simplify postcss config
No need to split plugins anymore
2021-12-21 21:09:03 +01:00
eikek
1a86fcca78 Enable tests again
They were disabled due to network problems
2021-12-21 19:50:40 +01:00
eikek
1ff2af6779 Disable tests due to networking problems 2021-12-21 00:36:43 +01:00
eikek
f5e375614f Fix tailwind setup
- Adopted postcss and tailwind config to new version
- renamed colors bluegray->slate etc to not have custom
  definitions (hope to reduce migration next time)
- tailwind now doesn't build the complete css anymore, so the
  `dev-ui-build` script must compile both
2021-12-20 23:40:32 +01:00
eikek
0b606e6b05 Use logfmt for log lines and remove ansi color codes 2021-12-19 22:29:56 +01:00
eikek
55b93e2853 Small correction in ui text 2021-12-19 20:24:24 +01:00
eikek
435036505a List view styling tweaks 2021-12-17 00:36:23 +01:00
eikek
1eb1db730c Select list/tile view and store to ui settings
Issue: #526
2021-12-15 22:30:41 +01:00
eikek
114576f984 Remove print statement 2021-12-11 22:46:55 +01:00
eikek
c21b2cdd29 Update scalafmt to 3.0.8 2021-12-11 22:46:55 +01:00
eikek
4ffc8d1f14 Add support for more generic notification
This is a start to have different kinds of notifications. It is
possible to be notified via e-mail, matrix or gotify. It also extends
the current "periodic query" for due items by allowing notification
over different channels. A "generic periodic query" variant is added
as well.
2021-12-11 18:57:32 +01:00
Renovate Bot
bfd8b2554e Update dependency tailwindcss to v3 2021-12-09 23:09:15 +00:00
Renovate Bot
400aae8224 Update dependency @tailwindcss/forms to ^0.4.0 2021-12-09 20:48:36 +00:00
eikek
b79ac5fbad Add missing db migrations for h2 and mariadb 2021-11-20 15:24:23 +01:00
eikek
501c6f2988 Updating stanford corenlp to 4.3.2; adding more languages
There are models for Spanish, that have been added now. Also the
Hungarian language has been added to the list of supported
languages (for tesseract mainly, no nlp models)
2021-11-20 14:31:39 +01:00
eikek
20fc9955ba Fix reprocessing to lookup the last used language 2021-11-20 01:34:16 +01:00
eikek
4176b6bc64 Publish event when a waiting job is removed
Fixes: #1182
2021-11-18 21:52:11 +01:00
eikek
95ded62cb9 Set version to 0.30.0-SNAPSHOT 2021-11-18 00:24:52 +01:00
eikek
54bbbde8b9 Set version to 0.29.0 2021-11-17 23:00:49 +01:00
eikek
13f28f753a Use an internal url for the rest server to register for messages 2021-11-17 21:27:26 +01:00
eikek
d2b7c37dfc Fix searching on share page if fulltext search is disabled 2021-11-16 22:55:37 +01:00
eikek
0651db9901 Make publish async, replace joexclient in periodic job scheduler 2021-11-16 22:55:37 +01:00
eikek
ce4c192b5b Fix notification about new items
Don't set the flag when already on "home page".
2021-11-14 21:45:59 +01:00
eikek
fcb25637d3 Improve new job count bubble 2021-11-13 20:39:40 +01:00
eikek
0cb2bde160 Improve e-mail input field
Closes: #987
2021-11-13 00:21:04 +01:00
eikek
ee2a4aaaf0 Fix button names in scanmailboxform
Closes: #1147
2021-11-12 23:42:37 +01:00
eikek
28b4546607 Hide sidebar by default on small devices
Closes: #1169
2021-11-12 23:21:51 +01:00
eikek
7a8527f821 Indicate number of running jobs in tob nav
Issue: #1069
2021-11-12 22:01:30 +01:00
eikek
9acdb8ef96 Fix formatting 2021-11-12 00:10:12 +01:00
eikek
cf933b60a7 Encode ws messages as JSON 2021-11-11 23:54:37 +01:00
eikek
5c7947299f Fix scaladoc 2021-11-08 00:15:14 +01:00
eikek
7b8afe8371 Make internal endpoints available to nodes only 2021-11-08 00:13:02 +01:00
eikek
61c01ad79b Use job group instead of parsing the task arguments 2021-11-08 00:07:44 +01:00
eikek
b041e2616d Fix uploads with utf8 bytes in filenames
This adds a modified parser for `Content-Disposition` header to fix
issue #991. The parser in http4s for `Content-Disposition` header
removes filenames that are sent as plain utf8 bytes. See also
http4s/http4s#5053.
2021-11-07 22:11:00 +01:00
eikek
62d02d75b4 Show a message when a new document arrived 2021-11-07 17:14:02 +01:00
eikek
8ae314bead Fix websocket initialization 2021-11-07 00:40:43 +01:00
eikek
42767e7732 Refresh home page on item-process event 2021-11-06 23:35:43 +01:00
eikek
3e58d97f72 Add websockets and notify frontend when an item is processed 2021-11-06 21:32:30 +01:00
eikek
f38d520a1d Hooking the new pubsub impl into the application 2021-11-06 01:44:06 +01:00
eikek
4d5c695882 Hide implementation details from PubSubT interface 2021-11-05 20:56:02 +01:00
eikek
d483d9f176 Initial naive pubsub impl generalising from current setup 2021-11-05 01:05:24 +01:00
eikek
ae30a3890e Set version to 0.29.0-SNAPSHOT 2021-10-27 22:08:16 +02:00
eikek
b3ca7954bb Set version to 0.28.0 2021-10-27 20:53:34 +02:00
eikek
8811fe40da Fix date picker css in home page 2021-10-27 01:34:27 +02:00
eikek
8fd86f9ec1 Don't allow shares with fulltext queries
Currently the query implementation cannot combine multiple/nested
fulltext searches within a query. It doesn't seem useful to have
shares based on fulltext searches, so it is disabled for now.

Issue: #446
2021-10-25 21:29:55 +02:00
eikek
3f71985b64 Hide menu in share detail when not usable 2021-10-25 17:24:20 +02:00
eikek
c21d4c4508 Fix share manage for new shares 2021-10-25 15:14:47 +02:00
eikek
668cd7d974 Refactor config validation 2021-10-25 11:27:06 +02:00
eikek
118d23c3a2 Add list of env variables to documentation
Issue: #1121
2021-10-25 00:23:20 +02:00
eikek
94b26a1721 Generate random server secret if not provided from config 2021-10-25 00:23:20 +02:00
eikek
4e5924d796 Refactor config loading and add config from environment
Issue: #1121
2021-10-24 23:02:39 +02:00
eikek
48d2bec9c4 Update http4s to 0.23.6 2021-10-24 18:24:03 +02:00
eikek
c2d54cebb5 Fix postcss-purgecss dependency 2021-10-24 14:45:19 +02:00
eikek
208f7e6445 Update npm packages 2021-10-24 12:53:41 +02:00
eikek
99f3be9c0d Allow simple search on share page 2021-10-24 02:06:27 +02:00
eikek
28993e27e5 Dropdown cc and bcc recipients in mail form 2021-10-24 01:41:18 +02:00
eikek
f5bb85c61e Improve share email form 2021-10-24 01:41:18 +02:00
eikek
eaccb60732 Fix date field background for sidebar and main content 2021-10-24 01:41:18 +02:00
eikek
6696aba481 Show user shares when asking to delete user 2021-10-24 01:41:18 +02:00
eikek
2ac0b84e52 Link shares to the user, not the collective
The user is required when searching because of folders (sadly), so the
share is connected to the user.
2021-10-24 01:41:18 +02:00
eikek
9009ebcb39 Prefill share mail form
To have access to the translated content, the messages must be given
to the update function. There is no way to set the values in the view.
2021-10-23 14:33:24 +02:00
eikek
16ccddab9f Add mail form when creating shares 2021-10-23 14:33:24 +02:00
eikek
337293128d Add route to send mail for a share 2021-10-23 14:33:24 +02:00
eikek
09242fddb2 Fix swapped translation 2021-10-23 14:33:24 +02:00
eikek
40aa2d4102 Use powersearch input element in share form 2021-10-23 14:33:24 +02:00
eikek
fe77f7245a Fix navbar link for anonymous 2021-10-23 14:33:24 +02:00
eikek
7cbdf919f4 Show item detail for a shared item 2021-10-23 14:33:24 +02:00
eikek
02cbd95e0d Increment share access on verify 2021-10-23 14:33:24 +02:00
eikek
f25d40b493 First simple item detail version for a share 2021-10-23 14:33:24 +02:00
eikek
f216c472ee Detect how to display pdf files
Closes: #1099
2021-10-23 14:33:24 +02:00
eikek
b6187bb88d Outline share detail page 2021-10-23 14:33:24 +02:00
eikek
1a10216e3d Get item details from a share 2021-10-23 14:33:24 +02:00
eikek
c62b8526be View attachments from a share 2021-10-23 14:33:24 +02:00
eikek
9eb2f9c6fe Implement binary routes for shares 2021-10-23 14:33:24 +02:00
eikek
4ad90b76b4 Fix tag menu when restricting results
When search results are restricted in a share view, tags may disappear
and thus the tags from the beginning need to be kept.
2021-10-23 14:33:24 +02:00
eikek
813797756c Extend search stats to fully populate search menu
Refs: #856
2021-10-23 14:33:24 +02:00
eikek
e961a5ac10 Use search stats to populate search menu 2021-10-23 14:33:24 +02:00
eikek
e52271f9cd Implement share preview image 2021-10-23 14:33:24 +02:00
eikek
7b0f378558 Refactor to allow internal card links into search menu
Also allows to exchange the preview-url in the item card
2021-10-23 14:33:24 +02:00
eikek
83dd675e4f Basic search view for shares 2021-10-23 14:33:24 +02:00
eikek
a286556116 Initial impl of search route 2021-10-23 14:33:24 +02:00
eikek
f4596db63d Authorize share access 2021-10-23 14:33:24 +02:00
eikek
97922340d9 Share page skeleton 2021-10-23 14:33:24 +02:00
eikek
aa21e7a74c Create shares from search and select view 2021-10-23 14:33:24 +02:00
eikek
189009325e Update tailwind to 2.2.16 2021-10-23 14:33:24 +02:00
eikek
4ef9d6c3ff Add expired flag to share details 2021-10-23 14:33:24 +02:00
eikek
c7d587bea4 Basic management of shares 2021-10-23 14:33:24 +02:00
eikek
de1baf725f Generate a query string given an expression
Initialize share record and improve tests.
2021-10-23 14:33:24 +02:00
eikek
aa8f3b82fc Use passwords when reading PDFs 2021-09-30 11:48:59 +02:00
eikek
f74624485f Allow to manage passwords for a collective 2021-09-30 10:35:38 +02:00
eikek
3c93b63c8a Add option to decrypt PDFs during conversion
Refs: #1074
2021-09-29 23:04:26 +02:00
Renovate Bot
af1d8962de Update dependency postcss-cli to v9 2021-09-24 19:43:19 +00:00
eikek
650e2c7c47 Set new version to 0.28.0-SNAPSHOT 2021-09-23 19:48:36 +02:00
eikek
80b73be68f Set version to 0.27.0 2021-09-23 17:37:54 +02:00
eikek
d8b272a407 Fix styles for secondary button and dimmer 2021-09-23 17:37:05 +02:00
eikek
40727d205a Refactor occurrences folding streams of strings 2021-09-23 15:26:20 +02:00
eikek
071f4067bf Use existing mimetype detection when storing files 2021-09-23 14:10:24 +02:00
eikek
1761526e20 Simplify MimeType class and parse mimetypes in a more lenient way 2021-09-23 14:10:24 +02:00
eikek
617f931a14 Remove unused code 2021-09-23 09:27:44 +02:00
eikek
e31107eb49 Require a otp to disable 2fa 2021-09-23 09:27:44 +02:00
eikek
bbfc5b56d8 Document TOTP 2021-09-23 09:27:44 +02:00
Renovate Bot
844c453864 Update dependency ansi-regex to 5.0.1 [SECURITY] 2021-09-23 02:43:56 +00:00
Renovate Bot
489ef310f3 Update dependency nth-check to 2.0.1 [SECURITY] 2021-09-23 02:00:09 +00:00
eikek
4362301212 Fix base64 string in default config
While not being used, it is parsed and fails if it's not valid base64.
2021-09-22 19:48:10 +02:00
eikek
9013f2de5b Update scalafmt settings 2021-09-22 17:23:24 +02:00
eikek
20a829cf7a Refactoring for migrating to binny library 2021-09-22 14:18:43 +02:00
eikek
860efcf06f Fix more license occurrences 2021-09-22 11:55:56 +02:00
eikek
9785db0683 Change license header of all files 2021-09-21 22:35:38 +02:00
eikek
193b81bf7d Fix version check
Refs: #1068
2021-09-21 22:07:19 +02:00
eikek
16b5655b54 Go back to old version scheme
Refs: #1039
2021-09-13 11:39:57 +02:00
eikek
506e9a0c36 Move sent mails when merging items
Fixes: 1055
2021-09-08 22:29:34 +02:00
eikek
a94aeff75c Add ui for showing data to be deleted for a user 2021-09-08 20:57:10 +02:00
eikek
e89b571ab2 Add a route to show what is deleted 2021-09-08 20:57:10 +02:00
eikek
736968b049 Fix adding a new user and don't allow to add non-local users
The user structure must provide the correct account source now.
2021-09-08 20:57:10 +02:00
eikek
8df235e9db Delete the user along its data 2021-09-08 20:57:10 +02:00
eikek
3650a7d20c Make sure DML statements use the correct logger
It also seems to be necessary now to add the space in the `WHERE`.
Normally, the `fr` interpolator would add spaces….
2021-09-08 20:56:18 +02:00
eikek
11de82402e Add cross checks for the server config 2021-09-06 14:47:42 +02:00
eikek
4237caa755 Add some documentation for OIDC 2021-09-06 14:24:52 +02:00
eikek
28fdeb5a93 Fixing http redirect status codes 2021-09-06 11:40:47 +02:00
eikek
468ba90158 Fix OTP authentication for external accounts 2021-09-06 01:07:31 +02:00
eikek
8158e36d40 Improve logging and rename oauth->openid 2021-09-06 00:29:19 +02:00
eikek
984dda9da0 Add OpenID support to webapp 2021-09-05 23:43:07 +02:00
eikek
f8362329a9 Authenticate with external accounts using OIDC
After successful authentication at the provider, an account is
automatically created at docspell and the user is logged in.
2021-09-05 21:39:30 +02:00
eikek
7edb96a297 Register external accounts
This creates the account if it doesn't exist yet; otherwise it's a
noop. Only valid for non-local accounts.
2021-09-05 21:38:14 +02:00
eikek
aa099a340e Remove unused code 2021-09-05 21:38:14 +02:00
eikek
aef56233a5 Add a new column to distinguish local from external users 2021-09-05 21:38:14 +02:00
eikek
b73c252762 Implement authentication via OpenIdConnect and OAuth2
The new subproject "oidc" handles all the details for working with an
OpenID Connect provider (like keycloak) or only OAuth2 - only
supporting the "Authorization Code Flow" for both variants.
2021-09-05 17:32:15 +02:00
eikek
4e57be6dfd Fix endpoint path in openapi spec 2021-09-02 22:06:33 +02:00
eikek
3a5ef62715 Add missing sql changesets 2021-09-01 00:57:03 +02:00
eikek
9dfe7f30a0 Remove unused contact kind 2021-09-01 00:57:03 +02:00
eikek
1afc005a6c Adopt login process for two-factor auth 2021-08-31 21:29:07 +02:00
eikek
999c39833a Add user setting page for totp 2021-08-31 21:28:17 +02:00
eikek
309a52393a Initial impl for totp 2021-08-31 16:45:39 +02:00
eikek
2b46cc7970 Add a simple module for totps
This is a wrapper around the nice and minimal java-otp library [0].

[0] https://github.com/jchambers/java-otp
2021-08-31 16:45:39 +02:00
eikek
733096f979 Improve querying item results
The join to retrieve the attachment count per item turned out to be
very expensive. And it is not used anymore for the result, only to
support fulltext search. It is now removed from the query. The
DISTINCT keyword is also removed, because it is not necessary and it
is expensive. With the DISTINCT removed, a new index (provided in the
previous commit) can now be used to avoid sorting items.
2021-08-29 11:09:06 +02:00
eikek
a5a8c2553b Add indexes to better support certain queries 2021-08-29 00:38:12 +02:00
eikek
9812b8f6c8 Set new version to 21.12-SNAPSHOT 2021-08-28 12:54:44 +02:00
eikek
be510b0363 Set version to 0.26.0 2021-08-28 11:54:08 +02:00
eikek
637f11d0f6 Fix solr setup by adding a text_he field
This field is used for Hebrew language. Solr doesn't support it out of
the box. The new field type is just a very basic field using the
standard tokenizer and lowercase filter. It is very likely not
providing good results. Hebrew is really difficult and it requires at
least installing plugins for solr - this is out of scope for docspell.
Users can setup their solr however they like and run a re-index
afterwards.
2021-08-28 00:10:36 +02:00
mergify[bot]
3520a2ec26
Merge pull request #1037 from eikek/small-list-improvements
Allow to specify ordering when retrieving meta data
2021-08-27 21:18:47 +00:00
eikek
cf88f5c2de Allow to specify ordering when retrieving meta data
The query now searches in more fields. For example, when getting a
list of tags, the query is applied to the tag name *and* category.
When listing persons, the query now also looks in the associated
organization name.

This has been used to make some headers in the meta data tables
clickable to sort the list accordingly.

Refs: #965, #538
2021-08-27 23:04:54 +02:00
eikek
7b2fb70c04 Add missing data to insert statement
Closes: #1032
2021-08-27 22:51:34 +02:00
wallace
eab7fe57d2 Fix formatting with scalafmt 2021-08-24 02:24:20 +03:00
wallace
589c41003f Add hebrew document language 2021-08-24 01:19:42 +03:00
eikek
6bb6cad39d Test db migrations for all supported databases 2021-08-23 23:41:03 +02:00
eikek
993a391c13 Add the attachment-only option to a source
The upload request can now contain a boolean for importing only
attachments when e-mails are uploaded. This option is now also added
to a source url.

Refs: #983
2021-08-23 14:19:11 +02:00
mergify[bot]
45f6357f49
Merge pull request #1024 from eikek/enhance-search-mode
Enhance search mode to search in all items
2021-08-21 13:56:43 +00:00
eikek
d5022f883e Enhance search mode to search in all items 2021-08-21 15:45:14 +02:00
eikek
0a0dd80bdc Add new checkbox to scan mailbox form 2021-08-21 13:49:12 +02:00
eikek
751fa3da5a Add attachments-only filter to uploads
When uploading a file which is an e-mail, this option allows to skip
the mail body when the file is being processed.
2021-08-21 13:49:12 +02:00
eikek
5d33b3841a Add a task to check for updates periodically
It must be enabled and configured by the admin.

Refs: #990
2021-08-20 00:25:27 +02:00
eikek
90421599ea Fix storing empty-trash task
It was wrongly stored using RPeriodicTask directly, but the higher
level `UserTask` must be used instead, because this ensures a
correctly scoped periodic task using the `updateOneTask` method. Since
this is a system task, it can be given a fixed ID which makes it now
safe even if stored using RPeriodicTask directly.

The bug resulted in multiple empty-trash tasks to be inserted (on each
restart).

Refs: #347
2021-08-20 00:25:25 +02:00
Scala Steward
e4fecefaea
Reformat with scalafmt 3.0.0 2021-08-19 08:50:30 +02:00
eikek
8f23b68587 Add a qr code to the link of an item or attachment 2021-08-18 00:20:27 +02:00
eikek
f1445e797b Highlight search menu tabs that contain data
Refs: #966
2021-08-16 22:13:53 +02:00
eikek
cf10f63af4 Improve main view in home page 2021-08-16 17:00:57 +02:00
eikek
ac0603335f Improve merge items list
Allow to reorder for mobile and remove elements.
2021-08-16 16:00:43 +02:00
eikek
c7c488f0cc Fix position of merged attachments 2021-08-16 15:05:26 +02:00
eikek
21647e950d Add docs for merging items 2021-08-16 14:41:56 +02:00
eikek
9478152a94 Switch to search view after successful merge 2021-08-16 14:40:57 +02:00
eikek
a923351b09 Fix item merge when merging tags and text fields
Also hard delete the remaining items. They are empty (have no
attachments), because data is moved if possible. Doesn't make much
sense to keep them, because restoring them isn't much useful.
2021-08-16 14:40:52 +02:00
eikek
8099b78b0e Merge items in webui 2021-08-16 12:55:25 +02:00
eikek
85085ec173 Implement item merge 2021-08-16 12:32:54 +02:00
eikek
22d331f082 Integrate item merge dialog into home page 2021-08-16 12:32:54 +02:00
eikek
14e4a8f792 Fixup for deleting items
First, when checking for existence of a file, deleted items are not
conisdered.

The working with fulltext search has been changed: deleted items are
removed from fulltext index and are re-added when they are restored.
The fulltext index currently doesn't hold the item state and it would
mean much more work to introduce it into the index (or, worse, to
reprocess the results from the index). Thus, deleted items can only be
searched using database queries. It is probably a very rare use case
when fulltext search should be applied to deleted items. They have
been deleted for a reason and the most likely case is that they are
simply removed.

Refs: #347
2021-08-15 16:00:30 +02:00
eikek
bc6924fd5d Show delete/restore buttons conditionally
When only trashed items are selected, the "delete" button doesn't make
sense and vice versa.
2021-08-15 12:41:10 +02:00
eikek
f4a2b86ea8 Use a minimum age of items to remove
In order to keep deleted items for a while, the periodic task can now
use a duration to only remove items with a certain age. This can be
used to ensure that a deleted item stays at least X days before it
will be removed from the database.

Refs: #347
2021-08-15 12:32:50 +02:00
eikek
ef31c90e34 Fix submitter column of a collective-scoped periodic job 2021-08-14 22:07:56 +02:00
eikek
4562c77152 Fix migration changeset name for h2 2021-08-14 22:07:56 +02:00
eikek
31d885ed79 Refactor user tasks to support collective and user scopes
Before, there were periodic tasks run per collective and not user by
making sure that submitter + group are the same value. This is now
encoded in `UserTaskScope` so it is now obvious and errors can be
reduced when using this.
2021-08-14 22:07:56 +02:00
eikek
548dfb9a57 Fix openapi.yml where undefined query parameter 2021-08-14 20:40:04 +02:00
eikek
27fd7a5867 Make sure the empty-trash task is started for all collectives 2021-08-14 20:40:04 +02:00
eikek
50706c3d6d Add a task implementation to delete items 2021-08-14 19:33:18 +02:00
eikek
4901276c66 Change "empty trash" settings for a collective and submit the job 2021-08-14 19:33:15 +02:00
eikek
828e5cf703 Allow to restore deleted items in webui 2021-08-14 16:50:17 +02:00
eikek
f999662905 Add routes to restore deleted items 2021-08-14 16:48:03 +02:00
eikek
eede20b014 Display deleted items in the webui
The card renders a trash can in the top right corner and the detail
page shows a label and also this trash can.
2021-08-14 16:06:55 +02:00
eikek
3f1ff5c1ac Allow to search in deleted items 2021-08-14 15:35:17 +02:00
eikek
edb344314f Use an enum instead of a boolean to differentiate search
It's not very likely to have more modes of search besides normal and
trashed, but got surprised in that way quite often and it's nicer this
way anyways.
2021-08-14 15:11:48 +02:00
eikek
a7b74bd5ae Allow to search in soft-deleted items
A new query/request parameter can be used to apply a search to only
soft-deleted items.

The query expression `Trashed` has been introduced which selects only
items with state `Deleted`. This is another option an analog to
`ValidItemStates` (both cannot be used together as they would select
no items). This new query node is not added to the parser, because
users may not use it in their own queries - it must be part of the
"fixed" query so the application can control in which subset to search
(it would otherwise be possible to select any items).
2021-08-14 14:53:05 +02:00
eikek
cb777e30c0 Delete items by introducing a deleted state
When deleting items via the http api, they are not deleted anymore but
a new status "Deleted" is set. The collective insights contains now a
count separately for deleted items.
2021-08-14 14:18:03 +02:00
eikek
48d13a35fc Fix search summary to restrict on valid items 2021-08-14 14:09:07 +02:00
eikek
08ce6b5256 Fix path to viewerjs for pdf view 2021-08-13 00:58:13 +02:00
Renovate Bot
51c35bd7dd
Update dependency path-parse to 1.0.7 [SECURITY] 2021-08-12 11:22:06 +00:00
eikek
1901fe1a8c Adopt deprecated APIs from fs2; use fs2.Path 2021-08-07 17:51:56 +02:00
monnypython
52d601f595
Update Home.elm 2021-08-05 12:45:33 +02:00
monnypython
86515321a8
Update Color.elm 2021-08-05 12:38:01 +02:00
monnypython
5cf69fef6c
Update AddressForm.elm
Since organizations do not only exist in cities, "Ort" would probably be the more general term.
2021-08-05 12:28:06 +02:00
eikek
1256a6e8cf Allo wildcards when searching by attachment ids 2021-07-31 01:23:37 +02:00
eikek
1c3a1cc0dc Set version to 0.26.0-SNAPSHOT 2021-07-29 23:11:36 +02:00
eikek
fe06cc1e6b Set version to 0.25.1 2021-07-29 22:53:43 +02:00
eikek
c59d4f8a6d Add the japanese content field to solr
This is a follow up on #961. It was forgotten when the japanese
language was added.
2021-07-29 22:22:34 +02:00
eikek
e696c06656 Set version to 0.26.0-SNAPSHOT 2021-07-29 18:10:27 +02:00
eikek
17e49f40c7 Set version to 0.25.0 2021-07-29 17:47:53 +02:00
eikek
4af8dd0950 Preprocess japanese texts to find dates
Not very efficient, but should work to find the position of dates in
japanese text.
2021-07-29 01:35:15 +02:00
wallace
e8348e2809 Remove excessive spaces 2021-07-29 02:08:48 +03:00
wallace11
1095a7d56f
Add another Japanese test 2021-07-29 01:13:22 +03:00
wallace11
119a4ffdc9
Update Japanese tests with more sensible data 2021-07-29 01:08:48 +03:00
eikek
f994d4b248 Add japanese document language 2021-07-28 20:05:48 +02:00
eikek
09b224b07a Left align item separator and make it more prominent
Refs: #950
2021-07-27 18:10:46 +02:00
eikek
15b15666bf Allow to use the created timestamp in item queries
Refs: 925
2021-07-27 17:33:13 +02:00
eikek
9578dd2b2b Add route to remove tags for a single item 2021-07-25 23:27:06 +02:00
eikek
3483dfe32e Fix openapi doc 2021-07-25 22:00:54 +02:00
eikek
fcef52856a Allow tag ids or tag names when replacing tags 2021-07-25 21:26:22 +02:00
eikek
782ca0fa4f Remove a deleted item from search results
When an item is deleted in detail view, the results must be updated to
reflect the new state. The results are now changed by removing the
corresponding item.

Fixes: #920
2021-07-25 17:35:01 +02:00
eikek
21eb7dad94 Change headers of all elm files 2021-07-25 14:00:11 +02:00
eikek
42b37df6a1 Fix header formatting 2021-07-25 13:57:05 +02:00
eikek
a6c0af93e8 Use more space in sidebar
Reduce left and right padding
2021-07-25 13:42:57 +02:00
eikek
912104ce49 Small german corrections
Fixes: #901
2021-07-25 13:40:15 +02:00
eikek
eb977ab3a7 Show the number of selected files on upload page
Fixes: #896
2021-07-25 13:37:06 +02:00
mergify[bot]
1851c5b7af
Merge pull request #944 from scala-steward/update/tika-core-2.0.0
Update tika-core to 2.0.0
2021-07-25 11:18:53 +00:00
Scala Steward
558007235b Update tika-core to 2.0.0
Include new ODF parser from tika-2.0.0
2021-07-25 13:08:18 +02:00
eikek
916217df4f Make convert-all-pdfs an admin endpoint 2021-07-25 01:25:24 +02:00
eikek
bde8af8d58 Merge branch 'current-docs' 2021-07-17 18:02:31 +02:00
eikek
eeebe750f9 Improve some openapi descriptions 2021-07-17 18:01:18 +02:00
eikek
d95a78f495 Allow to set folder by id or name 2021-07-17 15:10:19 +02:00
eikek
1c0d87527b Log error when setting folder doesn't work 2021-07-17 15:10:00 +02:00
eikek
cd304bcff7 Improve doc string for some endpoints 2021-07-17 13:09:20 +02:00
eikek
1913877de1 The id must be recreated for each job, obviously
Fixes: #938
2021-07-16 21:14:47 +02:00
eikek
280968355e Improve doc string for some endpoints 2021-07-14 22:32:17 +02:00
eikek
f7eed33545 Return a 404 if a source was not found when checking a file 2021-07-08 21:17:48 +02:00
eikek
1120434cd9 Replace generating preview images with an admin endpoint
It doesn't make much sense to have this per collective, because this
is triggered by an admin after changing the server config file. So it
is now implemented as an admin endpoint that affects all files.
2021-07-04 21:37:34 +02:00
eikek
8e5c88fd32 Add copyright header to source files 2021-07-04 10:57:53 +02:00
monnypython
4299fcedd8
Update German translations
Fixes some typos and replaces "Absenden" with "Speichern" that seems a better fit when saving data (submitting a form) in German.
2021-07-01 22:45:12 +02:00
monnypython
d6f3d7dd6e
Fix typo in German translation 2021-07-01 00:24:43 +02:00
Lucki
159472b37e
Enhance german translation (#899) 2021-06-29 17:34:47 +02:00
eikek
ce6f53cc29 Fix next-job query to do round-robin through job groups 2021-06-27 00:04:56 +02:00
eikek
988367a281 Extend query builder to compare results from subselects 2021-06-26 21:12:02 +02:00
eikek
7dcb61ef56 Use old ip checks and fix dev-ui-build script
These checks could be improved to not use javas InetAddress. But for
now it should have the same behaviour as before.
2021-06-26 14:43:16 +02:00
Lucki
0bdfcd531d
Improve German translation 2021-06-24 23:10:57 +02:00
eikek
9e552d2ac1 Move webapp related build files into the webapp directory 2021-06-22 23:47:15 +02:00
eikek
02b8078f01 Use fs2 Files api 2021-06-22 23:17:32 +02:00
eikek
bd791b4593 Upgrade code base to CE3 2021-06-22 22:53:34 +02:00
eikek
528ee6ecdc Set version to 0.25.0-SNAPSHOT 2021-06-18 23:53:50 +02:00
eikek
068281f9a7 Set version to 0.24.0 2021-06-18 22:39:04 +02:00
eikek
4a9ab2c1be Only update category options if the query selected all tags
The tag category is a bit special (sadly). The options are retrieved
by going through the tags. It must not update these, if a query
selects only a subset of tags.
2021-06-16 00:14:35 +02:00
eikek
31c4e14e76
Merge pull request #870 from monnypython/master
Some small corrections and ideas for the German translation
2021-06-15 01:20:23 +02:00
monnypython
77cb25bbc4
Update ClassifierSettingsForm.elm 2021-06-14 23:15:03 +02:00
monnypython
22045dcead
Update AttachmentMeta.elm 2021-06-14 23:13:34 +02:00
eikek
e021f06946 Update language dropdown for new data
When receiving a new value to display in the form, the language
dropdown was not initialized with the corresponding value.
2021-06-14 21:02:36 +02:00
monnypython
0cc06898fe
Update ScanMailboxForm.elm 2021-06-14 13:32:19 +02:00
monnypython
2f3f5e483e
Update EquipmentManage.elm 2021-06-14 08:05:35 +02:00
monnypython
653ffd9ba5
Update SourceManage.elm 2021-06-13 21:14:55 +02:00
monnypython
36c0fb9ea4
Update UiSettingsForm.elm 2021-06-13 21:12:54 +02:00
monnypython
d93f08a63a
Update SourceManage.elm 2021-06-13 00:36:39 +02:00
monnypython
78fa0920a7
Update SourceForm.elm
Line 72: Not sure but i think it sounds a bit better :)
Line 77: What is a glob?
2021-06-13 00:31:19 +02:00
monnypython
77760da156
Update SearchMenu.elm 2021-06-13 00:24:55 +02:00
monnypython
3a0fb82489
Update ScanMailboxForm.elm
A long attempt to simplify or shorten nested sentences without affecting the information content:

Line 179: As normal user i don't know what a "Glob" is.
Line 190: "...die hier definiert wird..." --> I think that's redundant. Where else? Or not?
Line 196:  ...löschen (falls *kein* Zielordner angegeben ist). --> would actually be enough or?
2021-06-13 00:22:13 +02:00
monnypython
3cdbd8c033
Update OrgTable.elm
Is "Typ" better than "Art" or maybe "Verwenden als...."?
2021-06-12 23:44:28 +02:00
eikek
8791326d6a Fix openapi linter warnings 2021-06-12 21:50:51 +02:00
monnypython
bae27b644b
Update HttpError.elm 2021-06-11 00:20:58 +02:00
monnypython
87f3542a80
Update FolderDetail.elm 2021-06-11 00:19:05 +02:00
monnypython
fe42fb212e
Update EquipmentManage.elm 2021-06-11 00:16:40 +02:00
monnypython
e69ef578a7
Update EquipmentForm.elm 2021-06-11 00:15:15 +02:00
monnypython
fc3da2c197
Update DetailEdit.elm 2021-06-11 00:11:41 +02:00
monnypython
16cbe09fa7
Update CustomFieldInput.elm 2021-06-11 00:06:58 +02:00
monnypython
a204cddef8
Update CustomFieldForm.elm 2021-06-11 00:05:26 +02:00
monnypython
b8d7b643a1
Update CollectiveSettingsForm.elm 2021-06-11 00:02:33 +02:00
monnypython
60b6ad9663
Update ClassifierSettingsForm.elm
Line 66,67: I think that's a little clearer straight away.
2021-06-10 23:58:29 +02:00
monnypython
32ffa43745
Update CalEventInput.elm
Is "Anstehend" better than "Nächste Zeiten"?
2021-06-10 23:52:34 +02:00
monnypython
f252c9cfcb
Update AttachmentMeta.elm
I think in German one speaks more of "Absender", "Empfänger" and "Unternehmen". Is "Ausstattung" better than "Zubehör"? I think the due date implies the date in German usage. The date could therefore be left out.
Since the equipment is only available from the recipient, in my opinion the recipient could be left out. The position in the sidebar must of course always be arranged under recipient.
2021-06-10 23:49:17 +02:00
eikek
7ec0668f03 Use a single place to create values for bool custom fields 2021-06-10 01:30:53 +02:00
eikek
29cfa035f4 Add boolean custom field immediately with value false
The time the user selects this field it should be pushed to the
server, because the initial value of "false" is a correct value. All
other fields require the user to type something first.
2021-06-10 01:30:53 +02:00
eikek
bf74e3aa23 Don't toggle dropdown on space
Closing the dropdown menu is now possible with ESC. Space will only
open the dropdown, but not close it. So now it's possible to type a
space into the search field.

Fixes: #863
2021-06-09 22:18:18 +02:00
eikek
481d31ee74 Hide content search field when fulltext is not enabled 2021-06-07 21:30:41 +02:00