Commit Graph

1485 Commits

Author SHA1 Message Date
Eike Kettner
21cd778c37 Merge branch 'fix-0.17' into master 2020-12-15 20:45:39 +01:00
Eike Kettner
14428c0ead Set version to 0.17.1 2020-12-15 20:25:59 +01:00
Eike Kettner
a987ede7c9 Avoid server roundtrip when switching pages
When changing pages in webui a server request should not happen. This
makes the webapp snappy again.

Issue: #508
2020-12-15 20:22:12 +01:00
Eike Kettner
ae0a543101 Set next version to 0.18.0-SNAPSHOT 2020-12-14 14:57:40 +01:00
Eike Kettner
398f969207 Set version to 0.17.0 2020-12-14 14:34:27 +01:00
Eike Kettner
27d087b14c Fix foreign key constraints 2020-12-14 14:34:22 +01:00
Eike Kettner
7e42426edc Fix page routing with remember me 2020-12-11 01:16:57 +01:00
Eike Kettner
c00714ab61 Don't redirect to login for open pages 2020-12-08 21:12:09 +01:00
Eike Kettner
f55566388a Fix endless reload of login page 2020-12-06 00:58:15 +01:00
Eike Kettner
66bd4f53cb Fix person-org relation info 2020-12-05 22:44:19 +01:00
Eike Kettner
2aed7ba142 Simplify search bar and search menu
The functionality of the search bar is now in the search menu, too.
The search menu shows one input field for "textual search", which is
either the fulltext search (if enabled) or a basic search in various
names.
2020-12-05 22:38:27 +01:00
Eike Kettner
5882405f30 Search index if search object only contains this field 2020-12-05 02:59:57 +01:00
Eike Kettner
0b6f965fcb Fix rememberme for missing local storage 2020-12-04 22:57:21 +01:00
Eike Kettner
0337391b20 Change remember period to 30 days 2020-12-04 20:30:25 +01:00
Eike Kettner
f5ae389eea Cleanup remember-me tokens periodically 2020-12-04 17:59:25 +01:00
Eike Kettner
a0642905db Use remember-me cookie if present 2020-12-04 17:59:25 +01:00
Eike Kettner
c10c1fad72 Prepare remember-me authentication variant 2020-12-04 17:59:25 +01:00
Eike Kettner
290989f67f Reorder correspondent person suggestion based on org relationship 2020-12-01 23:39:45 +01:00
Eike Kettner
d4470ab5fd Restrict person dropdown options to the associated organization 2020-12-01 23:39:45 +01:00
Eike Kettner
a6dd71af9f Set an organization to a person in webapp 2020-12-01 23:39:45 +01:00
Eike Kettner
2e28c8e57b Harmonize table views 2020-12-01 23:39:45 +01:00
Eike Kettner
fc2668feee Allow to connect a person to an organization 2020-12-01 23:39:45 +01:00
Eike Kettner
346d23928d Allow to search in source names in webui 2020-11-30 14:26:10 +01:00
Eike Kettner
0ee8ff66d5 Allow to search by source name 2020-11-30 14:07:45 +01:00
Eike Kettner
bdc49aae98 Let user change template for card title and subtitle 2020-11-29 23:36:25 +01:00
Eike Kettner
81a136d915 Use a template for rendering title and subtitle of the item card
Introduces `ItemTemplate` to conveniently create strings given an
item.
2020-11-29 23:36:20 +01:00
Eike Kettner
45e4035e07 Set version to 0.17.0-SNAPSHOT 2020-11-28 18:13:50 +01:00
Eike Kettner
4682bf4a0e Set version to 0.16.0 2020-11-28 17:55:40 +01:00
mergify[bot]
7ee69f7a57
Merge pull request #481 from eikek/reload-fix
Reload fix
2020-11-28 01:23:26 +00:00
Eike Kettner
75055ba34b Fix help link menu item 2020-11-28 01:48:58 +01:00
Eike Kettner
7052bc6b8e Add cc and bcc to item mail 2020-11-28 01:36:59 +01:00
Eike Kettner
d62c4a5a72 Fix updating search view
For example, when content-search was activated the view was not
correctly updated after deleting or drag-and-drop.
2020-11-28 00:51:16 +01:00
Tammo van Lessen
e9347176bd
Fixes an off-by-one classic to also accept dates in January 2020-11-28 00:43:35 +01:00
Eike Kettner
32c9113bd4 Remove unused code 2020-11-28 00:00:10 +01:00
Eike Kettner
1091a4fbdc Show concerning/correspond person exclusively in dropdowns
Now a person that is not marked as "concerning only" is treated as
"correspondent only". The options of all dropdown fields are now
restricted to those subsets.

Issue: #332
2020-11-27 23:13:37 +01:00
Eike Kettner
3fabe0a582 Update to Scala 2.13.4 2020-11-27 20:26:24 +01:00
Eike Kettner
7cc290135a Show currently logged in user
Closes: #329
2020-11-26 23:53:55 +01:00
Eike Kettner
c87163052b Allow to choose from existing tag categories
Also fixes a ui problem with a too long dropdown menu in the small
modal popup when adding tags or custom fields in item detail view.

Issue: #331
2020-11-26 23:53:50 +01:00
Eike Kettner
0919eec3c2 Improve field query and fix mariadb's pickiness with parens
If no query is given, don't search with `like '%'`. MariaDB doesn't
want parens around columns in the GROUP BY clause.
2020-11-25 21:08:49 +01:00
Eike Kettner
52c6659f9f Add missing schema migrations for custom fields 2020-11-25 21:08:49 +01:00
Eike Kettner
41b26fbbd6 Don't hide field dropdown when no fields are defined 2020-11-24 23:38:22 +01:00
Eike Kettner
a18ac17f0c Search with wildcards for custom fields 2020-11-24 21:44:27 +01:00
Eike Kettner
c389c8fe66 Change field-type into field-format in ui 2020-11-24 21:44:27 +01:00
mergify[bot]
436022ceee
Merge pull request #466 from eikek/wildcard-number-search
Allow to search with wildcard in a number custom field
2020-11-24 00:32:02 +00:00
Eike Kettner
c1c92f0932 Add language to upload page 2020-11-23 21:12:45 +01:00
Eike Kettner
2384af1347 Fix centering dropzone title 2020-11-23 21:12:33 +01:00
Eike Kettner
7fee52f6f2 Add language to scan-mailbox-form 2020-11-23 21:00:19 +01:00
Eike Kettner
5fe532001b Allow to specify document lanugage with the request 2020-11-23 20:49:01 +01:00
Eike Kettner
29a5419072 Allow to search with wildcard in a number custom field 2020-11-23 13:44:49 +01:00
Eike Kettner
1ef035f061 Fix hiding tags/fields when corresponding setting exists 2020-11-23 11:20:59 +01:00
Eike Kettner
9bea0298ad Allow to query custom field values with wildcards 2020-11-23 10:59:13 +01:00
Eike Kettner
473985c80e Filter empty custom field values in webui 2020-11-23 10:47:45 +01:00
Eike Kettner
7712e02d2d Don't allow empty custom field values 2020-11-23 10:38:59 +01:00
Eike Kettner
f8c6d183ed Don't scroll in preview image 2020-11-23 10:30:24 +01:00
Eike Kettner
6d22bac720 Display custom field values on item card 2020-11-23 10:23:37 +01:00
Eike Kettner
7b7f1e4d6d Return custom field values with search results 2020-11-23 10:23:25 +01:00
Eike Kettner
44459aecd0 Fix initialising date fields 2020-11-23 09:43:12 +01:00
Eike Kettner
cdcc8210fe Throttle customfield update requests 2020-11-23 09:27:05 +01:00
Eike Kettner
7026852123 Indicate saving custom field values 2020-11-23 00:16:50 +01:00
Eike Kettner
bcdb2fc0fe Show custom field values in item detail header 2020-11-22 23:14:51 +01:00
Eike Kettner
a2e0c23644 Amend search form for custom fields 2020-11-22 21:41:09 +01:00
Eike Kettner
23b343649c Fix and enhance custom-multi-input field 2020-11-22 21:41:09 +01:00
Eike Kettner
066c856981 Allow to search for custom field values 2020-11-22 21:41:09 +01:00
Eike Kettner
c5ab663091 Allow a comma and a point for money values 2020-11-22 21:41:09 +01:00
Eike Kettner
bb19e02c66 Ui improvements
- don't show custom fields in edit menu if there are none. This
reduces load of ui elements. The first custom field must be created in
manage-data page.

- Add more validation to the money type
2020-11-22 21:41:09 +01:00
Eike Kettner
ff30ed5558 Add custom fields to multi-edit form 2020-11-22 21:41:09 +01:00
Eike Kettner
76647d132f Show custom field values in detail view 2020-11-22 21:41:09 +01:00
Eike Kettner
1aefff37aa Return custom field values with item details 2020-11-22 21:41:09 +01:00
Eike Kettner
1ee36cef8f Add fields when clicking in the dropdown
Remove the additional button
2020-11-22 21:41:09 +01:00
Eike Kettner
cc6db61a3a Allow to create fields when editing items 2020-11-22 21:41:09 +01:00
Eike Kettner
af1cca7d83 Fix condition for deleting custom field value 2020-11-22 21:41:09 +01:00
Eike Kettner
4059ef31c1 Allow providing values for custom fields in item detail 2020-11-22 21:41:09 +01:00
Eike Kettner
e90f65f941 Manage custom fields in webui 2020-11-22 21:41:09 +01:00
Eike Kettner
8d35d100d6 Change custom fields for multiple items 2020-11-22 21:41:09 +01:00
Eike Kettner
93295d63a5 Change custom field values for a single item 2020-11-22 21:41:09 +01:00
Eike Kettner
62313ab03a Add and change custom fields 2020-11-22 21:41:09 +01:00
Eike Kettner
248ad04dd0 Prepare custom fields 2020-11-22 21:41:09 +01:00
Eike Kettner
417581845b Fix openapi datastructures 2020-11-16 09:53:44 +01:00
Eike Kettner
1d6cdac92d Set version to 0.16.0-SNAPSHOT 2020-11-15 13:11:39 +01:00
Eike Kettner
79510529c2 Set version to 0.15.0 2020-11-15 12:51:25 +01:00
Eike Kettner
f8634a5098 Use js pdf renderer for file view when settings tell so 2020-11-15 01:13:13 +01:00
Eike Kettner
063c9895dd Fix table layout and notification form
The styling is broken if th elements are outside a tr. The
notification form had the same problem as the scan-mailbox form
reported in #382
2020-11-15 00:09:29 +01:00
Eike Kettner
46dbdd2625 Fix css when hovering a blue card 2020-11-14 13:42:30 +01:00
Eike Kettner
b98edba9e5 Click on tag in item detail to switch to search 2020-11-14 13:16:35 +01:00
Eike Kettner
fe8c122968 Switch to search by clicking on correspondent/concerned in detail 2020-11-14 12:57:38 +01:00
Eike Kettner
cf578a88d3 Make item detail header a link list 2020-11-14 12:11:04 +01:00
Eike Kettner
e2545de347 Make item-detail and item-light consistent in field naming
This changes the public structure for an "item-light" as returned in
search results. It makes unifying things easier if both names are the
same.
2020-11-14 11:37:50 +01:00
Eike Kettner
23391ef41c Refactor link-target in a separate module 2020-11-14 11:32:19 +01:00
Eike Kettner
4b700fb249 Indicate on a card that multi-select mode is active 2020-11-14 11:03:22 +01:00
Eike Kettner
ee6b54006c Fix reset search for content-only and provide it on top bar 2020-11-14 10:41:20 +01:00
Eike Kettner
795cd8bc80 Set search when clicking on parts of the item card
When user clicks on correspondent etc. on an item card, the search is
set to this value.
2020-11-14 01:45:10 +01:00
Eike Kettner
faf97222ea Make resetting search form more efficient
Instead of reloading the whole menu, only empty the fields.
2020-11-14 01:45:10 +01:00
Eike Kettner
b1d0ae0cc8 Expose clicks on item cards 2020-11-14 01:45:10 +01:00
Eike Kettner
ec5b822e09 Add subject-filter to scan-mailbox-form 2020-11-13 23:15:20 +01:00
Eike Kettner
5034e12bec Add a subject filter to scan-mailbox args 2020-11-13 23:15:20 +01:00
Eike Kettner
2f9e0a8214 Use more prominent indication when an item is selected
Downside to this approach is that the item card is not accessible when
selected.
2020-11-13 01:54:19 +01:00
Eike Kettner
8950cc4dc9 Improve item card 2020-11-13 01:18:45 +01:00
mergify[bot]
e5ce1fd45f
Merge pull request #437 from eikek/upload-improvements
Upload improvements
2020-11-12 22:58:08 +00:00
Eike Kettner
75c1c5b7f4 Add tags and file-filter settings to scan-mailbox form 2020-11-12 22:37:37 +01:00
Eike Kettner
04ba14f802 Amend source form with tags and file-filter
Allow to define tags and a file filter per source.
2020-11-12 22:37:28 +01:00
Eike Kettner
4fd6e02ec0 Improve glob and filter archive entries 2020-11-11 21:01:23 +01:00
Eike Kettner
27eb5d70de Apply given tags in processing step
Issue: #346
2020-11-11 21:01:23 +01:00
Eike Kettner
55a6f7aaf6 Add more properties to upload meta data 2020-11-11 21:01:23 +01:00
Eike Kettner
a21a97f7d5 Add a simple glob data type 2020-11-10 22:44:08 +01:00
Eike Kettner
746e04c624 Improve logging when creating preview images 2020-11-10 22:25:46 +01:00
Eike Kettner
ed26fe226b Split item card it several functions 2020-11-10 22:25:25 +01:00
Eike Kettner
976aa75710 Move card size definition in css and fix height bug
For very tall images (sometimes shopping receipts), the height must be
restricted, too.
2020-11-09 21:36:17 +01:00
Eike Kettner
10305bc82d Minor improvements 2020-11-09 21:16:53 +01:00
Eike Kettner
29455d638c Add startup task to find page counts of existing files 2020-11-09 20:35:35 +01:00
Eike Kettner
de00b46e5d Move searchbar to the right 2020-11-09 17:12:06 +01:00
Eike Kettner
89646ef3f6 Hide number of pages, if item is only one file with one page 2020-11-09 17:06:44 +01:00
Eike Kettner
7a14b05ea7 Enhance item card displaying current file and number of pages 2020-11-09 17:04:56 +01:00
Eike Kettner
848c245db6 Change the card link to only use the main content
The card is no longer a link itself. The main target is moved to be
the content (the area containing the title and tags). This is in
preparation of upcoming changes: if the whole card is a link, it
cannot contain other links, due to a restriction by html. Later a card
may have more links to provide.
2020-11-09 14:36:58 +01:00
Eike Kettner
67e8994aec Use attachment preview urls
This changes the preview urls to use the concrete attachment ids. This
way browsers have it easier to switch the preview image when the
attachment position is changed.
2020-11-09 14:29:52 +01:00
Eike Kettner
8c08bf233d Amend search results with attachment info
This uses again another query per item to retrieve some information
about each attachment already in the search results.
2020-11-09 14:24:28 +01:00
Eike Kettner
a77f34b7ba Add a processing step to retrieve page counts 2020-11-09 11:08:24 +01:00
Eike Kettner
5906c705c9 Allow the user to choose between 3 preview sizes 2020-11-09 09:40:21 +01:00
Eike Kettner
8c8788bc69 Provide fallback image for previews 2020-11-09 09:00:03 +01:00
Eike Kettner
d4bbb936b6 Count preview image sizes in insight data 2020-11-09 09:00:03 +01:00
Eike Kettner
30682fbecc Document the re-generate all previews endpoint 2020-11-09 09:00:03 +01:00
Eike Kettner
f4e50c5229 Provide endpoints to submit tasks to re-generate previews
The scaling factor can be given in the config file. When this changes,
images can be regenerated via POSTing to certain endpoints. It is
possible to regenerate just one attachment preview or all within a
collective.
2020-11-09 09:00:02 +01:00
Eike Kettner
6037b54959 Don't fail processing if generating preview fails 2020-11-09 00:05:11 +01:00
Eike Kettner
cf6e63785d Fix potential index-out-of-bounds error in classifier
The stanford library expects a non-empty text.
2020-11-09 00:04:51 +01:00
Eike Kettner
709848244c Create tasks to generate all previews
There is a task to generate preview images per attachment. It can
either add them (if not present yet) or overwrite them (e.g. some
config has changed).

There is a task that selects all attachments without previews and
submits a task to create it. This is submitted on start automatically
to generate previews for all existing attachments.
2020-11-08 23:46:02 +01:00
Eike Kettner
eede194352 Fix deleting preview files 2020-11-08 21:27:55 +01:00
Eike Kettner
2c96590aad First ui view of preview images for items
Users can choose to not show them via ui settings
2020-11-08 15:12:56 +01:00
Eike Kettner
7ba6baf6f0 Make preview image smaller 2020-11-08 15:12:56 +01:00
Eike Kettner
757ad31165 Add a route to get the item preview
This is the first available preview of an attachment wrt position. If
all attachments have a preview image, the preview of the first
attachment is returned.
2020-11-08 15:12:56 +01:00
Eike Kettner
8cc89fd3b7 Move handling binary responses to a shared space 2020-11-08 15:12:56 +01:00
Eike Kettner
d376ef3ef1 Add simple route to get the preview image 2020-11-08 13:33:39 +01:00
Eike Kettner
6db5c39d78 Fix converted filename
Mark it by default with a string from the config file.

Issue: 397
2020-11-08 09:45:03 +01:00
Eike Kettner
ef7cb4e779 Create a preview image of all files during processing 2020-11-08 01:25:59 +01:00
Eike Kettner
0841a33ae3 Add a table to hold the preview files 2020-11-08 01:25:38 +01:00
Eike Kettner
350a271b22 Add simple pdf page preview function 2020-11-08 01:25:14 +01:00
Eike Kettner
59dfae6a49 Introduce fomantic-ui, replacing semantic-ui
Replaced semantic-ui with the drop-in replacement fomantic-ui [0]
which is a maintained fork. The fomantic-ui used here is a custom
build [1] of the less-version _without_ google-fonts (css-only). The
javascript part of fomantic-ui is not used, and also jquery could be
dropped now.

[0] https://fomantic-ui.com
[1] https://github.com/eikek/fomantic-slim-default

Issue: #349
2020-11-05 22:44:10 +01:00
Eike Kettner
47e780d35f Set version to 0.15.0-SNAPSHOT 2020-11-01 21:00:19 +01:00
Eike Kettner
1a1104c387 Set version to 0.14.0 2020-11-01 20:25:07 +01:00
Eike Kettner
a965605a9e Improve tag multi-edit 2020-10-31 14:42:17 +01:00
Eike Kettner
f4c79c72ae Allow to remove tags from multiple items 2020-10-31 14:42:17 +01:00
Eike Kettner
6a16d8afc7 Allow to confirm/unconfirm multiple items 2020-10-29 23:15:38 +01:00
Eike Kettner
ab50792879 Change icon for hiding/showing search menu 2020-10-29 23:02:08 +01:00
Eike Kettner
0461cfefe7 Fix sql error for mariadb <10.4
MariaDB below 10.4 doesn't support parentheses around selects for
`intersect` and `union`.

https://mariadb.com/kb/en/intersect/#parentheses

Fixes #404
2020-10-28 22:54:51 +01:00
Eike Kettner
509823404e Try improve search bar/menu switch
Adressing some parts of #395
2020-10-28 21:55:42 +01:00
mergify[bot]
96d7eb5c97
Merge pull request #401 from eikek/fix-replace-cards
Preserve context highlighting from full-text search
2020-10-27 23:57:12 +00:00
Eike Kettner
c6b8355902 Preserve context highlighting from full-text search
When replacing changed cards the fulltext highlighting should be
preserved from the original item.
2020-10-27 22:51:11 +01:00
Eike Kettner
183bcf5bec Add ui-settings flag for side menus 2020-10-27 22:35:52 +01:00
Eike Kettner
83b41b027f Change default position for notes to bottom 2020-10-27 20:43:58 +01:00
mergify[bot]
2ad2f3be57
Merge pull request #392 from eikek/fix-process-timeout
Fix process timeout
2020-10-26 23:48:27 +00:00
Eike Kettner
ab1139523a Let the convert-all task retry when pdf conversion fails 2020-10-26 23:39:26 +01:00
Eike Kettner
b59696a9d3 Make sure to only remove/retry items in premature states 2020-10-26 23:39:26 +01:00
Eike Kettner
0114bb4d72 Use source name from config file for integration endpoint uploads
Fixes: #389
2020-10-26 22:37:30 +01:00
Eike Kettner
dd89e05cc2 Convert exceptions when converting to pdf into an error result
The file processing tries pdf conversion once and keeps going if it
fails. Some errors (e.g. timeouts) are raised via an exception.

Issue: #387
2020-10-26 19:51:02 +01:00
Eike Kettner
0f84200118 Indicate saving when changing name for multiple items 2020-10-26 15:32:58 +01:00
Eike Kettner
0eabb7d589 Change tooltip of new select-items button 2020-10-26 14:46:04 +01:00
Eike Kettner
998aad5627 Delete multiple items 2020-10-26 14:46:04 +01:00
Eike Kettner
9193d7ca51 Send multiple items to reprocessing 2020-10-26 14:03:56 +01:00
Eike Kettner
26e89bf84e Edit org/person/equipment of multiple items 2020-10-26 13:35:47 +01:00
Eike Kettner
2e6026b817 Edit dates of multiple items 2020-10-26 13:16:03 +01:00
Eike Kettner
7ade7dd70b Display direction icon when editing multiple items 2020-10-26 12:49:30 +01:00
Eike Kettner
d4043634ac Edit direction of multiple items 2020-10-26 12:48:15 +01:00
Eike Kettner
42c989a6cd Edit folder of multiple items 2020-10-26 12:39:44 +01:00
Eike Kettner
17472fa4ca Edit name of multiple items 2020-10-26 12:17:55 +01:00
Eike Kettner
7ad37c8d26 Editing tags for multiple items 2020-10-26 11:54:04 +01:00
Eike Kettner
5735a47199 Replace changed item cards 2020-10-25 23:08:40 +01:00
Eike Kettner
458fa7edd9 Allow to search in a defined item subset 2020-10-25 22:19:55 +01:00
Eike Kettner
5f2f20c8d7 Extend http api for multi-edit 2020-10-25 22:19:55 +01:00
Eike Kettner
55cfc4c908 Allow to select multiple items for deletion and edit 2020-10-25 22:19:55 +01:00
Eike Kettner
6ea9193b5e Only scroll to the last visited item when initializing the page
When searching again on that page, scrolling/highlighting should not
happen. It now happens whenever coming to this page (not only when
going back from detail view).

Fixes: #373
2020-10-22 23:33:57 +02:00
Eike Kettner
3e752487e4 Remove unused argument 2020-10-22 23:33:46 +02:00
Eike Kettner
fc5f7c7dca Use previously updated ui settings
Fixes: #368
2020-10-22 00:08:03 +02:00
Eike Kettner
3e2d272746 Add unique constraint for equipment names
Fixes #370
2020-10-21 22:42:19 +02:00
Eike Kettner
3c0b86cb19 Fix regex patterns used for NER
Patterns are split on whitespace by the nlp library and then compiled,
so each "word" must be a valid regex.

Fixes: #356
2020-10-21 00:55:14 +02:00
Eike Kettner
6639a39375 Set version to 0.14.0-SNAPSHOT 2020-10-19 15:07:01 +02:00
Eike Kettner
7a9daa9f4b Set version to 0.13.0 2020-10-19 14:16:16 +02:00
Eike Kettner
e68ee67aec Fix route in openapi spec for uploading 2020-10-19 13:45:14 +02:00
Eike Kettner
d66ae4fdc2 Display error message properly on modal edit 2020-10-19 00:30:55 +02:00
Eike Kettner
3771587e55 Find duplicate tags without category 2020-10-19 00:30:41 +02:00
Eike Kettner
6a3386ce66 Fix sql comparison with optional values 2020-10-19 00:29:41 +02:00
Eike Kettner
ec0d0f8475 Fix openapi spec for rest-server
- The `itemId` parameter was not declared for
  `item/{itemId}/reprocess`
- `tagCategories*` must be declared required for `ItemSearch`
  structure
2020-10-18 23:55:56 +02:00
Eike Kettner
5e0eaf419e Fix browser back button to restore scroll state
Removes the url parameter that was used to identify the card to scroll
to and instead use the id from the internal model.
2020-10-18 21:35:42 +02:00
Eike Kettner
ead2e52253 Show item name in document title 2020-10-18 14:26:18 +02:00
Eike Kettner
fc5035ea8d Use anchor links instead of javascript to go to detail view 2020-10-18 14:09:52 +02:00
Eike Kettner
4ee881963e Fix cookie's secure flag based on protocol
Now, if the configured base-url is `localhost` (that is, it is left
unchanged), the request is insepected to retrieve the base-url value.
This is then used to set the `secure` cookie attribute. The `domain`
attribute has been removed from the cookie.

The notify-items task has been updated to use the same pattern for
creating absolute urls to items it its mail body.
2020-10-11 18:31:36 +02:00
Eike Kettner
df646dfabe Get the client host first from x-forwarded-host header
Then use the x-forwarded-for header (doing a reverse lookup, if
possible). At last use the Host header.
2020-10-09 23:47:07 +02:00
Eike Kettner
3f697f51aa Autoformat 2020-10-06 23:31:09 +02:00
Eike Kettner
160fc6627c Reset upload page on init
Fixes: #294
2020-10-03 00:37:27 +02:00
Eike Kettner
87d9e03f1f Submit search when intialising overview page
When coming back from detail with changes to an item, it should update
the view. Otherwise it is confusing to still see a deleted or changed
item.
2020-10-03 00:32:42 +02:00
Eike Kettner
53c8d3031d Skip invalid dates find in texts
Fixes: #298
2020-10-02 22:37:15 +02:00
Eike Kettner
80ddca9aa3 Add counter to joblog for correct log order
This is to distinguish log entries created at the same time.
2020-10-02 22:14:30 +02:00
Eike Kettner
d4354b8b49 Skip pdf conversion if a converted file exists
For images the conversion also returns the extracted text. If this
would have failed to be saved, it is extracted in the following
text-extraction step.
2020-10-02 17:39:39 +02:00
Eike Kettner
b6f23b038a Fix finding attachments for retries
The attachments to process again must be searched in sources and
archives, too.
2020-10-02 17:39:34 +02:00
Eike Kettner
5e21552358 Don't do duplicate check on retries 2020-10-02 16:50:52 +02:00
Eike Kettner
e26d7129e7 Add fix for mariadb text columns
The `text` data type can only store up to 64kb data. The `mediumtext`
up to 16M and `longtext` up to 4G.

Issue: #297
2020-10-02 16:50:51 +02:00
Eike Kettner
552cdac1d3 Apply flyway api changes 2020-09-28 15:12:10 +02:00
Eike Kettner
db9753046a Set version to 0.13.0-SNAPSHOT 2020-09-28 01:12:10 +02:00
Eike Kettner
f40eb15e86 Set version to 0.12.0 2020-09-28 00:52:09 +02:00
Eike Kettner
67e1ba05f4 Fix domain for auth cookie
The domain was incorrectly extracted from the request. It must be
using the `Host` header at last, trying now `X-Forwarded-For` and
`X-Forwarded-Host` first.
2020-09-28 00:52:09 +02:00
Eike Kettner
72048b9b34 Drop deferred message if user clicked away 2020-09-26 01:28:34 +02:00
Eike Kettner
284c42aec6 Remove attachment tab menu 2020-09-26 01:15:16 +02:00
Eike Kettner
e831d7bdd7 Move attachment tabs into a menu
If multiple attachments are present, the tab menu doesn't show all. So
if there is more than one attachment they can be selected from a menu.
2020-09-26 01:14:56 +02:00
Eike Kettner
ca05b3c195 Fix initialising pages; improve scroll to item 2020-09-25 22:54:50 +02:00
Eike Kettner
030ee6c932 Update website 2020-09-24 00:49:51 +02:00
Eike Kettner
285db78613 Add checkbox to upload page for skipping duplicates 2020-09-23 23:37:00 +02:00
Eike Kettner
f6f63000be Prepend a duplicate check when uploading files 2020-09-23 23:37:00 +02:00
Eike Kettner
02a0343e55 Allow to enable/disable keyboard navigation in user settings 2020-09-22 22:33:21 +02:00
Eike Kettner
5b56ea881c Use Ctrl modifier when navigating in item detail
Otherwise it clashes with input fields
2020-09-22 22:07:27 +02:00
Eike Kettner
60b8dc2134 Navigate items using keyboard
- previous/next item with `.,`
- confirm with `c`
- unconfirm with `u`
2020-09-22 00:27:32 +02:00
Eike Kettner
dc0e05bc20 Navigate in ugly dropdown with keybord
- iterate through options with n,p,j,k
- select with enter
- remove item with esc
- fixes dropdown bug when removing an item, where the menu opens
2020-09-21 23:52:50 +02:00
Eike Kettner
22d70b4997 Allow keyboard navigation in FixedDropdown 2020-09-21 23:27:09 +02:00
Eike Kettner
42a7a003a7 Save name in item detail while typing 2020-09-21 21:12:00 +02:00
Eike Kettner
a5bc6b53a9 Reset hidden fields on confirm
On confirm hidden fields are cleared, so that no "confirmed"
information is attached that the user has never seen.
2020-09-21 14:38:40 +02:00
Eike Kettner
ed1d13e712 Hide folder menu entry if folder field is not active 2020-09-21 14:10:31 +02:00
Eike Kettner
9958d228bd Remove hidden fields from list view 2020-09-21 14:08:13 +02:00
Eike Kettner
57ab050cf7 Remove hidden fields from item details 2020-09-21 13:58:52 +02:00
Eike Kettner
3a3be8cd1e Remove unnecessary scrolling and fix background 2020-09-19 09:30:35 +02:00
Eike Kettner
0f345bb75f Fix footer css on some pages 2020-09-19 09:10:30 +02:00
Eike Kettner
d3bf03482e Add a simple service worker to make an installable app 2020-09-18 22:59:58 +02:00
Eike Kettner
b5f3c64058 Only copy search term when selection changes
This is a fixup for #261
2020-09-18 16:04:57 +02:00
Eike Kettner
f78696b479 Fix manifest.json
For "add to your homescreen" on mobile devices.
2020-09-17 00:02:31 +02:00
Eike Kettner
aeedf58c2b Move field contents when switching search mode in search bar 2020-09-16 22:30:24 +02:00
Eike Kettner
09785292e7 Visually indicate the last viewed item in the list 2020-09-15 23:33:28 +02:00
Eike Kettner
ad110b2a05 Replace js code with proper elm using elm-scroll package 2020-09-14 23:35:21 +02:00
Eike Kettner
3852c69da1 Scroll to the current item when going back from detail
The list view now supports an item id that will be scrolled to and is
highlighted with a shadow. When going back from detail view this is
now used to scroll to the currently viewed item.
2020-09-14 21:57:14 +02:00
Eike Kettner
913bfb611c Remove unused viewmode 2020-09-14 21:57:14 +02:00
Eike Kettner
f65f5eff35 Set client base-url from browser when not given
This is necessary when generating absolute URLs in the webapp (as done
in "Sources" page).
2020-09-13 14:05:20 +02:00
Eike Kettner
d8bb6dcba3 Dynamically configure cookie and base-url
When `base-url` is the default (i.e. localhost), the cookie is now
configured with the domain doing the request and the webapp is
configured to run requests against the host in the address bar of the
browser.
2020-09-13 14:05:20 +02:00
Eike Kettner
5809f94d6f Set version to 0.12.0-SNAPSHOT 2020-09-09 22:32:54 +02:00
Eike Kettner
43f331841f Set version to 0.11.1 2020-09-09 21:45:16 +02:00
Eike Kettner
9c82f186d0 Add missing solr migration for french 2020-09-09 21:39:23 +02:00
Eike Kettner
c658677032 Autoformat 2020-09-09 00:29:32 +02:00
Eike Kettner
97757876d5 Fix formatting 2020-09-08 00:47:42 +02:00
Eike Kettner
6358b4eb75 Set version to 0.12.0-SNAPSHOT 2020-09-08 00:33:35 +02:00
Eike Kettner
cc0416804b Set version to 0.11.0 2020-09-07 23:59:05 +02:00
Eike Kettner
eb11b33028 Fix mariadb changsets 2020-09-07 20:02:50 +02:00
Eike Kettner
c9bd57592b Don't use test data if there is just one config
If classifier models cannot be compared, there is no reason to test.
2020-09-07 20:02:50 +02:00
Eike Kettner
76ccfb8a81 Only learn from confirmed items
Text classification should only learn from confirmed items. Log if
classification is disabled when processing an item.
2020-09-07 13:04:40 +02:00
Eike Kettner
cb1a9e0699 Use separate sql migration for h2 2020-09-07 13:04:29 +02:00
Eike Kettner
06879456a6 Change job priority on queue page 2020-09-05 18:50:58 +02:00
Eike Kettner
1dcccbcf7d Allow to hide classification settings in the webapp 2020-09-05 16:00:19 +02:00
Eike Kettner
7a0f71604d Serve static files/assets preferring the gzip version 2020-09-03 01:29:09 +02:00
Eike Kettner
4309bd8dfd Some cleanup 2020-09-02 21:22:30 +02:00
Eike Kettner
f9fcee81a5 Add start-now button for train-classifier task 2020-09-02 21:22:22 +02:00
Eike Kettner
8677eca6d4 Fix setting default in dropdown 2020-09-02 18:28:14 +02:00
Eike Kettner
237b960625 Guess a tag on item processing using a trained model if available 2020-09-02 18:28:14 +02:00
Eike Kettner
316b490008 Implement learning a text classifier from collective data 2020-09-02 18:28:14 +02:00
Eike Kettner
68bb65572b Integrate learn-classifier task into the app 2020-09-02 18:28:14 +02:00
Eike Kettner
0c97b4ef76 Initial impl of a text classifier based on stanford-nlp 2020-09-02 18:28:14 +02:00
Eike Kettner
8c4f2e702b Add classifier settings 2020-09-02 18:28:14 +02:00
Eike Kettner
3473cbb773 Use collective data with NER annotation 2020-08-25 20:40:44 +02:00
Eike Kettner
de5b33c40d Add updated column to some tables 2020-08-24 21:30:52 +02:00
Eike Kettner
96d2f948f2 Use collective's addressbook to configure regexner 2020-08-24 14:40:52 +02:00
Eike Kettner
8628a0a8b3 Allow configuring stanford-ner and cache based on collective 2020-08-24 10:55:59 +02:00
Eike Kettner
fdb46da26d Add french language and upgrade stanford-nlp to 4.0.0 2020-08-23 17:48:42 +02:00
Eike Kettner
30d5abddd8 Set version to 0.11.0-SNAPSHOT 2020-08-15 00:41:58 +02:00
Eike Kettner
f2fbf20f00 Set version to 0.10.0 2020-08-14 23:42:01 +02:00
Eike Kettner
7921dca665 Fixup for dropdown improvement 2020-08-14 23:37:28 +02:00
Eike Kettner
fde52bbbb0 Make dropdowns searchable by default and improve open/close clicks
Ref #207
2020-08-14 23:04:39 +02:00
Eike Kettner
760dec2230 Rename new route for retrieving used tags 2020-08-13 23:25:30 +02:00
Eike Kettner
3986487f11 Add api docs and cleanup 2020-08-13 21:22:54 +02:00
Eike Kettner
081c4da903 Add a route to trigger the convert-all-pdf task for a collective 2020-08-13 01:06:13 +02:00
Eike Kettner
69674eb485 Improve job-queue query to make sure jobs across all states show up 2020-08-13 01:06:13 +02:00
Eike Kettner
41ea071555 Add a task to convert all pdfs that have not been converted 2020-08-13 01:06:13 +02:00
Eike Kettner
07e9a9767e Add a task to re-process files of an item 2020-08-12 22:29:56 +02:00
Eike Kettner
57c1144f40 Allow to filter tags/categories in search menu 2020-08-10 13:25:25 +02:00
Eike Kettner
098e4cf868 Fix uploading to enabled/disabled source endpoints 2020-08-09 09:21:23 +02:00
Eike Kettner
6460315b2b Improve menu shadow 2020-08-09 09:12:28 +02:00
Eike Kettner
e793b63248 Allow to hide fields in menus based on ui settings 2020-08-08 22:51:02 +02:00
Eike Kettner
43946ed347 Fail early when source id is wrong 2020-08-08 18:43:18 +02:00
Eike Kettner
5810eac899 Fix remembering selection when going to detail view 2020-08-08 17:24:27 +02:00
Eike Kettner
75c958281e Redesign search/landing page 2020-08-08 16:38:52 +02:00
Eike Kettner
000d1aff2b Toggle tags via drag-drop from list view 2020-08-08 15:50:54 +02:00
Eike Kettner
06ad9ac46c Add routes to conveniently set/toggle tags 2020-08-08 15:08:04 +02:00
Eike Kettner
f86f644365 Prepare for drag-drop items into tags in list view 2020-08-08 14:34:26 +02:00
Eike Kettner
b1ef0c55af Show only visible folders in search menu 2020-08-08 14:16:13 +02:00
Eike Kettner
d6d16e39bd Drag-drop items into folders in list view 2020-08-08 14:03:36 +02:00
Eike Kettner
9c50a85363 Prepare drag-drop for items into folders 2020-08-08 13:20:29 +02:00
Eike Kettner
f0a5f84c8b Define how many tags to see in ui settings 2020-08-08 11:16:45 +02:00
Eike Kettner
4c57d16501 Rename ui setting field 2020-08-08 10:23:08 +02:00
Eike Kettner
7c8c2f856f Include tag categories into the new tag selection field 2020-08-08 10:20:43 +02:00
Eike Kettner
3642b95f8c Add a better tag selection field 2020-08-08 09:23:48 +02:00
Eike Kettner
1c8b66194b Add a route to return used tags
This is part of the `/insights` route without queries for file usage.
2020-08-08 08:35:35 +02:00
Eike Kettner
a4796f3f7f Return more tag details with item insights 2020-08-08 00:41:20 +02:00
Eike Kettner
c8ad9bf11f Put number of folders to display in ui settings 2020-08-08 00:06:23 +02:00
Eike Kettner
873d9fafc3 Add better folder field to search menu and re-order fields 2020-08-08 00:06:21 +02:00
Eike Kettner
c0a7c0d62c Fix modal positioning in item detail 2020-08-07 16:56:15 +02:00
Eike Kettner
af7cfa0ae1 Allow editing metadata in item-detail 2020-08-07 01:30:43 +02:00
Eike Kettner
f3ba224124 Add missing organization/person/equipment routes 2020-08-07 01:30:43 +02:00
Eike Kettner
639ab7440e Fix edit menu layout 2020-08-06 23:49:54 +02:00
Eike Kettner
a8ea391715 Render edit-modals above the menu and not the whole page 2020-08-06 23:38:55 +02:00
Eike Kettner
a6a6e334d5 Search by tag category via web ui 2020-08-06 22:23:35 +02:00
Eike Kettner
070c2b5e5f Allow to search by tag categories
The server accepts a list of tag categories for inclusion and
exclusion. The categories in the include list imply to return items
that have at least one tag of each category. The categories in the
exclude list imply to return all items that have no tag in any of
these categories.
2020-08-06 21:43:27 +02:00
Eike Kettner
cf3e051e83 Fix load more button 2020-08-06 00:49:15 +02:00
Eike Kettner
dfbbcdf73c Allow only one horizontal form being open 2020-08-05 23:11:21 +02:00
Eike Kettner
082f468155 Use a icon menu for the edit menu top bar 2020-08-05 22:43:04 +02:00
Eike Kettner
baa25d0f2f Allow to set item notes below or above the files 2020-08-05 22:43:04 +02:00
Eike Kettner
0453494cc6 Make notes below the files view and always visible
It looks similiar to github's readme. If there are no notes, the form
is displayed.
2020-08-05 22:41:08 +02:00
Eike Kettner
1662e1e2c8 Split ItemDetail file into multiple files due to its size 2020-08-05 17:57:45 +02:00
Eike Kettner
08f953dd52 Display item notes in card view if configured
The user can set a maximum length of the item notes to display in each
card. If set to 0, it is hidden.
2020-08-05 00:09:44 +02:00
Eike Kettner
09d74b7e80 Return item notes with search results
In order to not make the response very large, a admin can define a
limit on how much to return.
2020-08-05 00:09:37 +02:00
Eike Kettner
dbd27057d1 Improve source view and add qrcode for urls
The qr-code for urls is added so that these urls are easy to copy into
a phone. Then buttons for copying them into the clipboard have been
added.
2020-08-03 23:58:41 +02:00
Eike Kettner
ed8f16fe73 Add a qr-code for source urls 2020-08-03 18:27:13 +02:00
Eike Kettner
deacd8e9f6 Set version to 0.10.0-SNAPSHOT 2020-08-01 19:03:32 +02:00
Eike Kettner
2664b3ddb2 Set version to 0.9.0 2020-08-01 16:09:24 +02:00
Eike Kettner
45b0deeced Print solr url on start
This is useful info to see which url has been selected, same as db
connection.
2020-08-01 15:59:14 +02:00
Eike Kettner
1fc57fc2b2 Set default value for min-text-len to 500
This value is used to decide whether to try OCR or not. If text is
below this value, OCR is run and both results are compared. It was set
to 10, which is just one or two words. Since the context for docspell
are documents, this value is too low.
2020-08-01 15:46:00 +02:00
Eike Kettner
a06d20a479 Remove duplicate results from index-only search 2020-08-01 15:46:00 +02:00
Eike Kettner
b4e11a7264 Fixes a race condition when initializing the calendar-event field
The problem was that the field executes a request to validate its
state. This was initiated at the same time for two values. Then it was
undetermined which value comes back first.
2020-08-01 11:42:01 +02:00
mergify[bot]
f95f01759b
Merge pull request #198 from eikek/default-search
Default search
2020-07-31 23:28:23 +00:00
Eike Kettner
0599176ae8 Update scala to 2.13.3 2020-08-01 01:03:43 +02:00
Eike Kettner
46b784cc33 Simplify search bar and menu
The option "contents" has been removed from the search bar. This field
is not intended to be used alone, but rather in conjunction with other
fields. Otherwise it may be really slow on large databases.

The "name" option has been removed from the search menu. This doesn't
provide anything better over the "Names" field, that search more
fields, including item names.
2020-08-01 00:26:41 +02:00
mergify[bot]
5bf302a40e
Merge pull request #196 from eikek/website
Website
2020-07-31 20:51:38 +00:00
Eike Kettner
808a5a3c94 Remove old site 2020-07-31 01:28:09 +02:00
mergify[bot]
2f5036231c
Merge pull request #194 from eikek/sort-tag-list
Sort tag list by count
2020-07-30 22:23:42 +00:00
Eike Kettner
091ded50cb Sort tag list by count
It was displayed in some random order. Now the most used tag is first.
2020-07-31 00:14:25 +02:00
Eike Kettner
79eb7b4d66 Fix datepicker position for action input fields
Either the width and appearance must be changed to match this of an
`ui action input` or the position must be fixed as done here. It is
not correctly positioned, because the `ui input` class uses a flex.
2020-07-31 00:02:57 +02:00
Eike Kettner
f8c6f79b10 Initial website 2020-07-30 20:33:26 +02:00
Eike Kettner
cec4948710 Add pdf meta data to extracted text to add it to full-text index 2020-07-19 01:07:49 +02:00
Eike Kettner
209c068436 Use keywords in pdfs to search for existing tags
During processing, keywords stored in PDF metadata are used to look
them up in the tag database and associate any existing tags to the
item.

See #175
2020-07-19 00:28:04 +02:00
Eike Kettner
da68405f9b Extract meta data from pdfs using pdfbox 2020-07-18 23:04:46 +02:00
Eike Kettner
bd20165d1a Use given folder-id when adding initial fts docs 2020-07-18 23:04:01 +02:00
Eike Kettner
3d49ceaab5 Use ocrmypdf tool to create pdf/a during conversion
- Use another external tool to convert pdf to pdf which also adds the
  extracted text as another layer into the pdf

- Although not used, the external conversion routine will now check
  for an existing text file that is named as the pdf file with extension
  `.txt`. If present it is included in the conversion result and will be
  used as the extracted text.

- text extraction for pdf files happens now on the converted file,
  because it may already contain the text from the conversion step and
  thus avoids running OCR twice.

- All errors during conversion are not fatal; processing continues
  without a converted file.
2020-07-18 17:19:29 +02:00
Eike Kettner
99210365ce Update documentation for folders 2020-07-17 00:02:25 +02:00
Eike Kettner
94089fd0b6 Fix decoding joex responses in JoexClient 2020-07-15 20:45:07 +02:00
Eike Kettner
c697501571 Add folders sql changeset for mariadb 2020-07-14 23:22:52 +02:00
Eike Kettner
25538d6a59 Allow to set a folder when importing mailboxes 2020-07-14 23:18:39 +02:00
Eike Kettner
225877a40c Show folder in item detail view 2020-07-14 23:18:39 +02:00
Eike Kettner
ca5b7b999f Update source form to specify folder 2020-07-14 23:18:39 +02:00
Eike Kettner
5b01c93711 Add a folder-id to item processing
This allows to define a folder when uploading files. All generated
items are associated to this folder on creation.
2020-07-14 23:18:39 +02:00
Eike Kettner
ec7f027b4e Fix postgres changeset for folders 2020-07-12 16:15:02 +02:00
Eike Kettner
259526a088 Organize imports 2020-07-12 13:51:52 +02:00
Eike Kettner
22fa1dba13 Apply folder restriction to fulltext only search
And update index when folder changes.
2020-07-12 13:50:45 +02:00
Eike Kettner
aeba4ba913 Refactor full-text migrations and add folder to solr schema 2020-07-12 13:50:14 +02:00
Eike Kettner
e387b5513f Remove items in non-member folders from sql search results 2020-07-11 22:25:56 +02:00
Eike Kettner
5b95fddf3d Make item queries depend on the account-id
Now the user is required, too, to list items.
2020-07-11 21:54:51 +02:00
Eike Kettner
e66c501056 Extend dropdown to display additional option info
Use this to display folder information when setting the folder on an
item.
2020-07-11 17:56:08 +02:00
Eike Kettner
0df541f30a Allow to search by folders 2020-07-11 16:52:13 +02:00
Eike Kettner
86443e10a6 Set the folder of an item 2020-07-11 12:57:17 +02:00
Eike Kettner
5bde78083a Hide delete button when creating new folder 2020-07-11 11:54:23 +02:00
Eike Kettner
2ab0b5e222 Rename space -> folder 2020-07-11 11:54:23 +02:00
Eike Kettner
0365c1980a Show new data about spaces in web-ui 2020-07-11 01:30:29 +02:00
Eike Kettner
60a08fc786 Return member count and if current user is owner or member 2020-07-11 01:30:29 +02:00
Eike Kettner
ea4ab11195 Allow to only return owning spaces 2020-07-11 01:30:28 +02:00
Eike Kettner
6c304b4e7a Manage spaces in web-ui 2020-07-11 01:30:28 +02:00
Eike Kettner
752a94a9e2 Implement space operations 2020-07-11 01:30:28 +02:00
Eike Kettner
0e8c9b1819 Initial outline for managing spaces 2020-07-11 01:30:28 +02:00
Eike Kettner
d43e17d9fb Transport user-id to client 2020-07-11 01:30:28 +02:00
Eike Kettner
c12201c4a5 Add routes to manage spaces 2020-07-11 01:30:28 +02:00
Eike Kettner
7ec0fc2593 Add endpoints for managing spaces to openapi spec 2020-07-11 01:30:28 +02:00
Eike Kettner
13ad5e3219 Setup space entities 2020-07-11 01:30:28 +02:00
Eike Kettner
fadd21944f Set version to 0.9.0-SNAPSHOT 2020-06-29 21:04:15 +02:00
Eike Kettner
8998706598 Set version to 0.8.0 2020-06-29 20:37:52 +02:00
Eike Kettner
7b922fec94 Update documentation and fix changelog wording 2020-06-29 20:37:52 +02:00
Eike Kettner
347a029af8 Scalafix organize-imports 2020-06-28 21:20:47 +02:00
Eike Kettner
5bad157b9e Change link on home page 2020-06-28 19:34:28 +02:00
Eike Kettner
82104ff148 Update documentation and changelog 2020-06-28 14:45:04 +02:00
Eike Kettner
d3b3c6289b Prepare docker setup for fulltext search 2020-06-28 13:37:39 +02:00
Eike Kettner
8500d4d804 Extend consumedir.sh to work with integration endpoint
Now running one consumedir script can upload files to multiple
collectives separately.
2020-06-28 00:08:37 +02:00
Eike Kettner
41c0f70d3b Fix cancelling jobs
A request to cancel a job was not processed correctly. The cancelling
routine of a task must run, regardless of the (non-final) state. Now
it works like this: if a job is currently running, it is interrupted
and its cancel routine is invoked. It then enters "cancelled" state.
If it is stuck, it is loaded and only its cancel routine is run. If it
is in a final state or waiting, it is removed from the queue.
2020-06-26 23:08:27 +02:00
Eike Kettner
23477e34f9 Change columns from timestamp to datetime
In MariaDB the timestamp has some properties that make it a not a good
fit.
2020-06-26 17:07:00 +02:00
Eike Kettner
d79ae6233a Restrict proposals for due date
Avoid dates too far in the future.
2020-06-26 16:58:17 +02:00
Eike Kettner
91da3b149e Reducing default retries to 2
Many errors cannot be recovered from by retrying. There is currently
no way to distinguish these states so it is now set to a lower value
to have not long wait times until an item arrives.
2020-06-25 23:57:01 +02:00
mergify[bot]
50b3554c9a
Merge pull request #160 from eikek/fts
Fts
2020-06-25 21:19:42 +00:00
Eike Kettner
dc8f1a0387 Fix global re-index task to re-create the schema
Otherwise new instances could not be re-indexed.
2020-06-25 23:02:06 +02:00
Eike Kettner
4a41168bbb Allow a collective to re-index their data
If something goes wrong, this might be necessary.
2020-06-25 21:52:38 +02:00
Eike Kettner
2a98c2ca42 Fix openapi spec for joex 2020-06-25 08:43:02 +02:00
Eike Kettner
c81b92af6d Documentation updates 2020-06-25 01:36:26 +02:00
Eike Kettner
0ba1736bc8 Remove items/attachments from index on delete 2020-06-25 00:00:10 +02:00
Eike Kettner
64c96942a9 Fix deleting items that have sent mails 2020-06-24 23:47:58 +02:00
Eike Kettner
14213c4c27 Allow some solr query options in the config file 2020-06-24 23:37:20 +02:00
Eike Kettner
793f33b640 Update finding documentation 2020-06-24 23:37:20 +02:00
Eike Kettner
532caed84c Consistent logging of request/responses to solr
Using a middleware. Also add missing changesets for mariadb.
2020-06-24 21:25:46 +02:00
Eike Kettner
47697a8056 Set some logs to trace 2020-06-24 01:16:13 +02:00
Eike Kettner
7df77208fe Fix duplicate search results 2020-06-24 01:15:53 +02:00
Eike Kettner
8e0282c25f Indicate when the search-menu is not used 2020-06-24 01:15:41 +02:00
Eike Kettner
7d7460b1c9 Cleanup + hiding false errors from log 2020-06-24 00:23:22 +02:00
Eike Kettner
30937d4908 Set default max page size to 200 2020-06-24 00:04:10 +02:00
Eike Kettner
43b18db76a Don't scroll when loading more items 2020-06-24 00:03:58 +02:00
Eike Kettner
b8558d6837 Don't trigger search when fields are cleared 2020-06-24 00:03:17 +02:00
Eike Kettner
6846f2f46e Add new search-index route to web-ui 2020-06-24 00:03:17 +02:00
Eike Kettner
d5c9923a6d Add a route that only searches the full-text index
It returns the results in the same order as received from the index to
preserve the relevance ordering.
2020-06-24 00:03:17 +02:00
Eike Kettner
d9f0f05613 Refactor findItemsWithTags to more general useful 2020-06-23 21:27:01 +02:00
Eike Kettner
647911563e Fix paging when using full-text search 2020-06-23 01:44:52 +02:00
Eike Kettner
15c0fb4395 Merge branch 'master' into fts 2020-06-23 00:32:27 +02:00
Eike Kettner
e06a3f8fdd ScalafmtAll 2020-06-23 00:18:59 +02:00
Eike Kettner
a3e16e57de Display search highlighting in webapp 2020-06-23 00:17:29 +02:00
Eike Kettner
ffbb16db45 Transport highlighting information to the client 2020-06-23 00:17:29 +02:00
Eike Kettner
a58ffd11e1 Return attachment-name from index 2020-06-22 21:28:26 +02:00
Eike Kettner
8ffbf651b0 Add fts routes to openapi.yml 2020-06-22 21:00:34 +02:00
Eike Kettner
5e77ff0fc5 Start search by pressing enter and not on each stroke
This reduces (unecessary) requests and eases the restless list
rendering. Throttling is still in place to avoid too many requests
when e.g. holding the enter-key.
2020-06-22 00:46:11 +02:00
Eike Kettner
6c8abf4cd7 Fix searchmenu styling 2020-06-21 23:45:12 +02:00
Eike Kettner
af4522c0a7 Prepare ui to handle content search 2020-06-21 22:33:10 +02:00
Eike Kettner
3d82e03a8a Remove solr query from debug log 2020-06-21 22:29:45 +02:00
Eike Kettner
cfe5aa8894 Use no-op fts-client if disabled + push this flag to the webui 2020-06-21 21:06:08 +02:00
Eike Kettner
330fdcdd5b Add rest endpoints to re-create the index 2020-06-21 20:13:33 +02:00
Eike Kettner
0d8b03fc61 Add backend operations for re-creating the full-text index 2020-06-21 15:46:51 +02:00
Eike Kettner
14ea4091c4 Renaming things 2020-06-21 13:15:02 +02:00
Eike Kettner
2f6e531c45 Refactoring index migration task 2020-06-21 01:37:23 +02:00
Eike Kettner
9acea8307d Update full-text index when changing data 2020-06-21 00:33:39 +02:00
Eike Kettner
383614f908 Allow updating single fields in solr 2020-06-20 23:37:47 +02:00
Eike Kettner
7609b2b7c3 Run scalafmtAll 2020-06-20 23:03:51 +02:00
Eike Kettner
1f4ff0d4c4 Add language to schema, extend fts-client 2020-06-20 22:44:47 +02:00
Eike Kettner
3576c45d1a First basic working solr search 2020-06-20 02:18:49 +02:00
Eike Kettner
2a0bf24088 Setup solr schema and index all data using a system task
The task runs on application start. It sets the schema using solr's
schema api and then indexes all data in the database. Each step is
memorized so that it is not executed again on subsequent starts.
2020-06-19 21:37:22 +02:00
Eike Kettner
1f4220eccb Index exsiting data in solr 2020-06-19 00:43:35 +02:00
Eike Kettner
60c079f664 Add task to index current database state 2020-06-18 22:38:45 +02:00
Eike Kettner
146d1b0562 Make data to index more flexible and extensible 2020-06-17 23:20:46 +02:00
Eike Kettner
522daaf57e Introducing fts client into codebase 2020-06-17 23:20:46 +02:00
Eike Kettner
ee801745a7 Add fultext field to search params 2020-06-17 23:20:46 +02:00
Eike Kettner
c7f598e3b0 Initial module setup 2020-06-17 23:20:46 +02:00
Eike Kettner
492f4d304f Set version to 0.8.0-SNAPSHOT 2020-06-17 22:28:45 +02:00
Eike Kettner
33bef52229 Set version to 0.7.0 2020-06-17 21:59:13 +02:00
Eike Kettner
bc20e9a9bb Execute search when loading page 2020-06-17 21:57:50 +02:00
Eike Kettner
4028b7979e Fix mariadb timestamp columns
MariaDB automatically inserts the current time, even when saying `SET
datecol = null`.
2020-06-17 21:51:30 +02:00
Eike Kettner
897d91475e Update scalafmt-core to 2.6.0 2020-06-17 19:53:56 +02:00
Eike Kettner
7a3d2e4dc6 Extract OItemSearch from OItem 2020-06-15 23:13:48 +02:00
Eike Kettner
09579eef16 Add docs for how to create a smtp gateway 2020-06-14 21:35:20 +02:00
Eike Kettner
0643534994 Add edit icon for changing attachment name 2020-06-14 17:03:07 +02:00
Eike Kettner
84a26461ed Add a route to update the name of an attachment 2020-06-14 17:03:07 +02:00
Eike Kettner
e15e2c9313 Replace hardcoded number by a config value 2020-06-14 00:49:19 +02:00
Eike Kettner
479a341b13 Add documentation page for searching 2020-06-14 00:18:18 +02:00
Eike Kettner
e0c8c45061 Hide search menu by default and add search bar to top
Adds a search bar to the top of the listing page that is the same as
the `All Names` search field in the search menu. Search menu can be
toggled as before.
2020-06-13 22:05:16 +02:00
Eike Kettner
88234986e6 Make name field search in item name only
Now there is an `allNames` field that searches names of multiple
things.
2020-06-13 21:17:29 +02:00
Eike Kettner
67666595eb Make name search case insensitive 2020-06-13 21:17:15 +02:00
Eike Kettner
217fef7384 Throttle search requests
Throttle search requests when typing. Also fix handling subscriptions
in main.
2020-06-13 21:17:15 +02:00
Eike Kettner
5468e24b55 Add search field for 'all-names' to search menu 2020-06-13 21:03:45 +02:00
Eike Kettner
f30c8a5e4d Add new search term that searches in all meta data
A field that searches via substring search in names of correspondents
and concerned meta data.
2020-06-13 17:08:26 +02:00
Eike Kettner
35c9409680 Automatically add wildcards to name search
If wildcards are already present or if the search string appears in
quotes, wildcard '*' characters are not added.
2020-06-13 16:31:16 +02:00
Eike Kettner
6e4aeb512d Reorganize search menu items 2020-06-13 16:19:35 +02:00
Eike Kettner
617487f5b3 Add mail-debug flag to rest-server
It has been added to the joex application, but it should be possible
to debug mail problems on both apps.
2020-06-13 15:10:00 +02:00
Eike Kettner
1f9f09ba6f Reorder user task table columns 2020-06-13 14:48:12 +02:00
Eike Kettner
bdfc151272 Close task form after submitting and return to list view 2020-06-13 14:40:13 +02:00
Eike Kettner
2c13f9307c Adopt UI to allow multiple notification tasks 2020-06-13 14:26:38 +02:00
Eike Kettner
e51e84408b Change notify-due-item routes to allow multiple tasks per user 2020-06-13 14:26:38 +02:00
Eike Kettner
d41ddd9729 Fix bug in dropdown
The menu for a multi-dropdown should only show entries that are not
already selected (there is no use case to select the same item more
than once).
2020-06-12 23:12:49 +02:00
Eike Kettner
216c89c7d1 Some small documentation fixes 2020-06-12 21:52:29 +02:00
Eike Kettner
9658b2780b Prettify modal dialogs a bit 2020-06-12 00:17:26 +02:00
Eike Kettner
936177a910 Allow to add remaining metadata in item edit view 2020-06-11 22:52:30 +02:00
Eike Kettner
363eb81aff Add remaining routes to create and update item meta data 2020-06-11 22:28:31 +02:00
Eike Kettner
a4d60c0d92 Add correspondent organizations in item edit view 2020-06-11 22:11:58 +02:00
Eike Kettner
c6accca0ff Add route to create and associate correspondent org 2020-06-11 22:11:58 +02:00
Eike Kettner
459647f83f Add new tags in item detail view 2020-06-11 21:52:10 +02:00
Eike Kettner
f407f08ed3 Add a route to add a new tag and associate it to an item 2020-06-11 21:51:42 +02:00
Eike Kettner
d440247857 Change modify item routes to use http put 2020-06-09 23:20:58 +02:00
Eike Kettner
80131522de Use same limit for searchable dropdowns 2020-06-09 22:57:21 +02:00
Eike Kettner
a3b482fa13 Fix some icons 2020-06-09 21:10:49 +02:00
Eike Kettner
3ad9b24c2c Use a better way to select a color 2020-06-08 21:48:27 +02:00
Eike Kettner
4c832dba35 Fix search on initial page load
It must now wait until ui-settings have been provided.
2020-06-08 01:17:19 +02:00
Eike Kettner
e8c3edfd23 Add pdf-preview checkbox to ui settings 2020-06-08 01:13:26 +02:00
Eike Kettner
1dd84c11bd Apply tag colors from settings 2020-06-08 00:54:47 +02:00
Eike Kettner
1cd65b7b7c Store tag category colors in ui settings 2020-06-07 22:16:40 +02:00
Eike Kettner
f4e37b512f Add input field to provide colors for tag categories 2020-06-07 21:42:11 +02:00
Eike Kettner
5b2b2eceb3 Show tags in item list view
Also set default page size down to 60.
2020-06-07 15:43:46 +02:00
Eike Kettner
1d2a6e6caa Add endpoint to search for items and return their tags
This is a more expensive query, since the tags must be resolved per
item. This is now implemented by doing additional queries while
caching each resolved tag.
2020-06-07 15:18:28 +02:00
Eike Kettner
79fc5a30a1 Introduce ui settings and let user set page size for item search 2020-06-07 00:51:11 +02:00
Eike Kettner
6abdb95f02 Reformatting 2020-06-06 20:52:23 +02:00
Eike Kettner
77e8a51acd Fix updating item list when there are no results 2020-06-06 15:15:53 +02:00
Eike Kettner
071ab60a5c Remove i_date query binding 2020-06-06 15:15:29 +02:00
Eike Kettner
d5819eab35 Fix offset/limit clause for mariadb
MariaDB wants first limit and then offset (optionally), postgres
doesn't care.
2020-06-06 11:13:33 +02:00
Eike Kettner
b150269528 Add a load-more button to item list 2020-06-06 11:05:15 +02:00
Eike Kettner
e5b90eff34 Allow client to load items in batches 2020-06-06 11:05:15 +02:00
Eike Kettner
062618bf86 Fix typos in documentation 2020-06-03 23:50:48 +02:00
Eike Kettner
2efb0210af Authorize first on integration route 2020-05-28 07:33:14 +02:00
Eike Kettner
4e0d95a213 Allow to check availability of the integration endpoint 2020-05-27 23:55:45 +02:00
Eike Kettner
7b64cdd0c1 Add missing integration-endpoint in openapi spec
This got forgotten to add in openapi, it is already implemented.
2020-05-27 23:40:50 +02:00
Eike Kettner
6165b6b8c6 Set default value for allowed-ips protection to false
The endpoint is disabled by default, no matter what protection modes
are enabled. If all are disabled, then the endpoint is not
protected (if enabled by an admin). Conversely, if all protection
modes are enabled, they all must succeed.

All protection modes should be off by default, so the user would
choose one. It is confusing, if a user enables one and doesn't realize
that another one is also enabled by default.
2020-05-27 23:30:52 +02:00
Eike Kettner
5679ac4858 Remove references to pdf in the doc
It's not only for pdf files anymore.
2020-05-27 00:44:04 +02:00
Eike Kettner
3d902c3273 Add a docker image for watching a directory 2020-05-25 19:43:06 +02:00
Eike Kettner
f33c2a2293 Set version to 0.7.0-SNAPSHOT 2020-05-25 17:58:05 +02:00
Eike Kettner
9caa074657 Set version to 0.6.0 2020-05-25 17:29:57 +02:00
Eike Kettner
e882b87f15 Update changelog and small doc fixes 2020-05-25 17:29:50 +02:00
Eike Kettner
50a4b5ccb9 Hide delete button on new form 2020-05-25 17:03:31 +02:00
Eike Kettner
4b0eb650f2 Rename package to avoid name clashes 2020-05-25 16:22:09 +02:00
Eike Kettner
56624515a5 ScalafmtAll 2020-05-25 13:56:06 +02:00
Eike Kettner
2e88207ff1 Post process all extracted text
Removes 0 bytes and leading/trailing whitespace
2020-05-25 13:56:06 +02:00
Eike Kettner
4e22361985 Documentation updates 2020-05-25 09:52:19 +02:00
Eike Kettner
ee394eae86 Try streamline the different impls for MimeType 2020-05-25 09:24:24 +02:00
Eike Kettner
81a1b7af0b Make the current drop target visible 2020-05-24 17:48:02 +02:00
Eike Kettner
90e039ceb3 Change attachments position via drag-and-drop 2020-05-24 17:30:25 +02:00
Eike Kettner
3cb738568f Allow to change position of attachments 2020-05-24 17:30:25 +02:00
Eike Kettner
6807ce4d2f Move utility functions into a Util file 2020-05-24 15:58:09 +02:00
Eike Kettner
bcd13bed94 Show information on what files to upload 2020-05-24 15:13:30 +02:00
Eike Kettner
4694433e38 Fix attachment positions
It worked for new items, because the implicit offset was 0. when
adding archives to existing items, there are already attachments and
the new attachments are added to the end. This won't work if files are
added concurrently, because there is no quick and reliable way to
determine the offset then.
2020-05-24 15:13:30 +02:00
Eike Kettner
1dde43e092 Only process attachments in task arguments
When files are added to an item, the attachments already present must
not be "re-processed".
2020-05-24 13:29:38 +02:00
Eike Kettner
4e49c78e72 Change some log levels of item processing task 2020-05-24 12:54:35 +02:00
Eike Kettner
973847807f Update add item view with upload progress info 2020-05-24 11:48:49 +02:00
Eike Kettner
24caba1457 Refactor UploadRoutes to remove duplicate code 2020-05-24 11:48:49 +02:00
Eike Kettner
f519a8effa Check for an existing item before attempting to add files 2020-05-24 11:48:49 +02:00
Eike Kettner
075b665c68 Add some more tlds to look for 2020-05-24 11:48:49 +02:00
Eike Kettner
6501060730 Make notes more prominent. Fix heading in mail form 2020-05-23 20:15:55 +02:00
Eike Kettner
b8267f60c1 Fix edit notes rendering
It must be outside the iframe tree, to not modify it when it
appears/disappears.
2020-05-23 20:15:55 +02:00
Eike Kettner
a5ca3b0325 Add routes and upload form to item detail 2020-05-23 20:15:55 +02:00
Eike Kettner
f4949446e3 Allow to specify an item id to amend files to existing items 2020-05-23 20:15:55 +02:00
Eike Kettner
25d089da6c Update state and proposals only on invalid items
Invalid items are those that are not ready, and not shown to the user.
When changing metadata, it should only be changed, if the item was not
already shown to the user.
2020-05-23 15:46:24 +02:00
Eike Kettner
855d4eefa8 Set progress in a linear way between each step 2020-05-23 15:33:58 +02:00
eikek
e2fc13673e
Merge pull request #129 from eikek/integration-endpoint
Integration endpoint
2020-05-23 15:00:03 +02:00
Eike Kettner
785cdde1a6 Update documentation 2020-05-23 14:37:12 +02:00
Eike Kettner
f16632bc7f Allow a collective to disable the integration endpoint 2020-05-23 14:29:24 +02:00
Eike Kettner
f74f8e5198 Add new way for uploading files to any collective
Applications running next to docspell may want a way to upload files
to any collective for integration purposes. This endpoint can be used
for this. It is disabled by default and can be enabled via the
configuration file.
2020-05-23 14:29:24 +02:00
Eike Kettner
892002b351 Remove unused routes
The functionality has been implemented in `CheckFileRoutes`.
2020-05-23 10:29:59 +02:00
Eike Kettner
229baa0719 Fix redirecting / to /app
Before all paths not otherwise handled were redirected, but it should
only be the root path.
2020-05-23 09:58:34 +02:00
Eike Kettner
4227278bb0 Update documentation 2020-05-23 00:10:07 +02:00
Eike Kettner
69c46f9f1f Fix date-picker initialization in search menu 2020-05-21 23:27:08 +02:00
Eike Kettner
920fcf28dd Change webapp to support multiple scan-mailbox tasks 2020-05-21 22:04:45 +02:00
Eike Kettner
9f9dd6c0fb Change routes for scan-mailbox task to allow multiple tasks per user 2020-05-21 22:04:45 +02:00
Eike Kettner
743aa9d754 Hide correct list element in item card 2020-05-21 01:02:46 +02:00
Eike Kettner
4724e691bc Update user info in scan-mailbox form 2020-05-21 00:09:47 +02:00
Eike Kettner
09b6b1bb05 Improve user-task texts 2020-05-20 22:58:19 +02:00
Eike Kettner
d9782582d8 Use max-mails setting with higher priority
The `mail-chunk-size` is set to its configured value or `max-mails`
whichever is lower.
2020-05-20 22:44:29 +02:00
Eike Kettner
c0259dba7e Allow to enable debug flag for javamail 2020-05-20 22:15:25 +02:00
Eike Kettner
2858d6b853 Notify job executors at the end of the task 2020-05-20 19:44:45 +02:00
Eike Kettner
31a1abf395 Add server limits to importing mails task 2020-05-20 17:52:38 +02:00
Eike Kettner
f2d67dc816 Initial impl of import from mailbox user task 2020-05-20 17:52:38 +02:00
Eike Kettner
451a09dda0 Allow to skip joex notification on uploads 2020-05-20 17:52:38 +02:00
Eike Kettner
852455c610 Add upload operation to task arguments 2020-05-20 17:52:38 +02:00
Eike Kettner
6e8582ea80 Implement scan-mailbox form and routes 2020-05-20 17:52:38 +02:00
Eike Kettner
0d6677f90b Add stub form scan-mailbox form 2020-05-20 17:52:38 +02:00
Eike Kettner
a4be63fd77 Add stub for scan-mailbox task 2020-05-20 17:52:38 +02:00
Eike Kettner
ebe65c7624 Change menu title in user settings 2020-05-20 17:52:38 +02:00
Eike Kettner
5d5311913c Add ScanMailboxArgs 2020-05-20 17:52:38 +02:00
Eike Kettner
c9de74fd91 Add imap settings 2020-05-18 08:46:04 +02:00
Eike Kettner
cece5b6193 Fix mobile support
Next to the missing css classs, the viewport definition was missing in
the html.
2020-05-17 23:21:42 +02:00
Eike Kettner
f5c23ceb3d Change edit-notes icon 2020-05-17 22:41:25 +02:00
Eike Kettner
dd2e66095a Update screenshots 2020-05-17 22:23:11 +02:00
Eike Kettner
ee4d4e7ae5 Improve responsiveness of detail view 2020-05-17 21:58:19 +02:00
Eike Kettner
72a88f21cb Use cards for viewing items 2020-05-17 21:42:16 +02:00
Eike Kettner
98f202b797 More ui tweaks to item list 2020-05-17 18:16:04 +02:00
Eike Kettner
62111e5f93 Allow to hide the search menu
This is more convenient on small screens
2020-05-17 18:15:44 +02:00
Eike Kettner
f45b40342c Improve document list view
Replace the html table with something that has more vertical space,
but scales better horizontally. On most screens at least 6-8 entries
should be visible at once.
2020-05-17 18:15:22 +02:00
Eike Kettner
d65c1e0d36 Use date from e-mails to set item date 2020-05-17 11:58:51 +02:00
Eike Kettner
5e6ce1737c Change recognizing dates with short years
Short years are now added to the current centure (2000) such that date
strings like 12/26/11 result in 12/26/2011 and not 12/26/1911.
2020-05-17 11:58:51 +02:00
Eike Kettner
3e10e2175a Sort by weights better and save them 2020-05-17 11:58:51 +02:00
Scala Steward
5d6658770e Update emil-common, emil-doobie, ... to 0.6.0 2020-05-17 11:55:53 +02:00
Eike Kettner
6747a86fea Simplify jsoup sanitizer to reuse from emil 2020-05-14 23:56:08 +02:00
Eike Kettner
0a5501dcb0 Fix findFileByChecksum 2020-05-10 21:03:12 +02:00
Eike Kettner
9c882e1be9 Fix package name 2020-05-10 21:03:12 +02:00
Eike Kettner
bd5066740d Joex depends on backend module
The job executor depends on backend module, since it may control the
application via user tasks. The `ONode` can now be moved from the
store module into the backend module.
2020-05-10 21:03:12 +02:00
Eike Kettner
c41cdeefec Update scalafmt to 2.5.1 + scalafmtAll 2020-05-04 23:53:57 +02:00
Eike Kettner
9ec75cf85e Set next version to 0.6.0-SNAPSHOT 2020-04-30 22:39:02 +02:00
Eike Kettner
e1117bcc92 Set version to 0.5.0 2020-04-30 22:04:29 +02:00
Eike Kettner
96c5e99f19 Fix scaladoc tag
There is no scaladoc tag @implNote.
2020-04-30 22:04:29 +02:00
Eike Kettner
a9869e927e Add new feature to list 2020-04-30 21:41:19 +02:00
Eike Kettner
1d1df58cb9 Put edit notes icon in item action bar 2020-04-30 21:23:56 +02:00
Eike Kettner
0a1b3fcf95 Set list-id header for notification mails 2020-04-30 21:23:56 +02:00
Eike Kettner
75a66ecb86 Update http4s to 0.21.4 2020-04-29 01:05:13 +02:00
Eike Kettner
7fa25c3711 Move notes toggle to top 2020-04-27 21:25:49 +02:00
Eike Kettner
a939839041 Delete single attachments 2020-04-26 23:11:49 +02:00
Eike Kettner
75c32fa2bf Remove wrong header line in upload page 2020-04-24 23:25:04 +02:00
Eike Kettner
fa10fe3fae Update scala to 2.13.2 2020-04-24 22:24:31 +02:00
Eike Kettner
315ea63f44 Improve notify mail template 2020-04-23 23:17:34 +02:00
Eike Kettner
af4e5f161d Add documentation about notify-due-items 2020-04-23 22:26:06 +02:00
Eike Kettner
06d2c9ecba Add info text to int field 2020-04-23 21:46:10 +02:00
Eike Kettner
84e0ebf1a2 Add a flag for restricting overdue items 2020-04-23 21:37:03 +02:00
Eike Kettner
b2ca314da9 Check code formatting with travis ci 2020-04-23 20:25:21 +02:00
Eike Kettner
d52efdfcf0 Improve mail template 2020-04-22 23:41:09 +02:00
Eike Kettner
ffc1cdee51 Sort due items by their earliest due date 2020-04-22 22:21:28 +02:00
Eike Kettner
e1f9ae2629 Include links to items into mail template 2020-04-22 21:53:25 +02:00
Eike Kettner
bbfd694b45 Allow to start a user task once 2020-04-22 21:08:45 +02:00
Eike Kettner
af5b62c057 Remove form message on updates 2020-04-22 21:08:45 +02:00
Eike Kettner
2723d6b43b Implement notify-due-items task 2020-04-22 21:08:45 +02:00
Eike Kettner
e7b81c701f Better handle no connections 2020-04-22 21:08:45 +02:00
Eike Kettner
2042824ab4 Fix initial loading notify form 2020-04-22 21:08:45 +02:00
Eike Kettner
93182c040e Save notify-due-items user task 2020-04-22 21:08:45 +02:00
Eike Kettner
3a90d874a5 Improve form 2020-04-22 21:08:45 +02:00
Eike Kettner
5a2e28415a Streamline form and input field 2020-04-22 21:08:45 +02:00
Eike Kettner
c8683743d0 Provide help within the form 2020-04-22 21:08:45 +02:00
Eike Kettner
5bfa7b05a0 Add better input for calendar events 2020-04-22 21:08:45 +02:00
Eike Kettner
3524904faf Add routes to check calendar events 2020-04-22 21:08:45 +02:00
Eike Kettner
9b30542974 Copy/paste form together 2020-04-22 21:08:45 +02:00
Eike Kettner
ad772c0c25 Server-side stub impl for notify-due-items 2020-04-22 21:08:45 +02:00
Eike Kettner
e97e0db45c Prepare notification form 2020-04-22 21:08:45 +02:00
Eike Kettner
362e1a5e14 Fix compile errors in test code 2020-04-07 23:00:25 +02:00
Eike Kettner
1206105f0b Fix several bugs with handling e-mail files
- When converting from html->pdf, the wkhtmltopdf program exits with
  errors if the document contains invalid links. The content is now
  cleaned before handed to wkhtmltopdf.
- Update emil library which fixes a bug when reading mails without
  explicit transfer encoding (8bit)
- Add a info header to converted mails
2020-04-07 22:38:25 +02:00
Eike Kettner
63161b5bdf Add docker setup to quickstart 2020-03-31 22:56:51 +02:00
Eike Kettner
efc73c1060 Set version to 0.5.0-SNAPSHOT 2020-03-28 23:52:15 +01:00
Eike Kettner
c77ead3921 Set version to 0.4.0 2020-03-28 21:44:14 +01:00
Eike Kettner
e331808ecf Update microsite 2020-03-28 21:44:14 +01:00
Eike Kettner
6a1297fc95 Add a limit for text analysis 2020-03-27 22:54:49 +01:00
Eike Kettner
14a25fe23e Fix serializing mediatype parameters 2020-03-27 21:50:06 +01:00
Eike Kettner
aed5dfaff6 Fix mimetype extractors 2020-03-27 21:49:55 +01:00
Eike Kettner
75405dbcba Update documentation 2020-03-27 20:16:18 +01:00
Eike Kettner
16edf84752 Setup new site 2020-03-27 00:35:15 +01:00
Eike Kettner
9656ba62f4 scalafmtAll 2020-03-26 18:26:00 +01:00
Eike Kettner
09ea724c13 Store message-id of eml files 2020-03-25 22:00:51 +01:00
Eike Kettner
43efb4e6ba Use doobie support from emil project 2020-03-24 23:40:29 +01:00
Eike Kettner
e305b46708 Extract tnef attachments and fix incomplete html
The wkhtmltopdf requires the content encoding set correctly in the
document.
2020-03-24 23:40:29 +01:00
Eike Kettner
0b80572664 Fix encodings for mails with non-utf8 html parts 2020-03-24 23:40:29 +01:00
Eike Kettner
cf7ccd572c Improve handling encodings
Html and text files are not fixed to be UTF-8. The encoding is now
detected, which may not work for all files. Default/fallback will be
utf-8.

There is still a problem with mails that contain html parts not in
utf8 encoding. The mail text is always returned as a string and the
original encoding is lost. Then the html is stored using utf-8 bytes,
but wkhtmltopdf reads it using latin1. It seems that the `--encoding`
setting doesn't override encoding provided by the document.
2020-03-23 22:51:28 +01:00
Eike Kettner
b265421a46 Allow to use the browser's pdf viewer
The viewerjs library has some limitations. Sometimes PDFs are quite
blurry and some content is displayed scrambled. Switching to the
browsers build-in PDF viewer (for chromium and firefox) fixes this. So
while on mobile the viewerjs is the only working viewer, for desktop
use it might be desireable to use the browsers builtin viewer instead.
2020-03-22 22:03:43 +01:00
Eike Kettner
75ead33652 Provide a download link to the original archive file 2020-03-22 21:48:49 +01:00
Eike Kettner
7e6eec9533 Include archive infos in item detail 2020-03-22 21:35:50 +01:00
Eike Kettner
cbc95b11e6 Add routes to retrive the archive of an attachment 2020-03-22 21:21:49 +01:00
Eike Kettner
9a99c852a8 Fix typo in search menu 2020-03-22 21:08:01 +01:00
Eike Kettner
3703dce9a6 Update fs2 to 2.3.0 2020-03-20 22:47:09 +01:00
Eike Kettner
cba466ed47 Set item due date candidate
After processing, set the due date of an item to the first candidate.
The earliest due date is considered best match.
2020-03-20 22:39:09 +01:00
Eike Kettner
74a6cf1dd1 Remove unused migration directory 2020-03-19 22:43:41 +01:00
Eike Kettner
b1a1a2b837 Add archives to collective insights 2020-03-19 22:43:18 +01:00
Eike Kettner
d78bd4142c Update documentation 2020-03-19 22:42:58 +01:00
Eike Kettner
439aaee27b Search archives when looking for files via checksum 2020-03-19 22:42:48 +01:00
Eike Kettner
6b1156182c Add support for eml (rfc822 email) files 2020-03-19 22:42:40 +01:00
Eike Kettner
4ed7a137f7 Add support for archive files
Each attachment is now first extracted into potentially multiple ones,
if it is recognized as an archive. This is the first step in
processing. The original archive file is also stored and the resulting
attachments are associated to their original archive.

First support is implemented for zip files.
2020-03-19 22:42:27 +01:00
Eike Kettner
10f3d5b7ed Fix bug to select other attachments 2020-03-17 22:37:43 +01:00
Eike Kettner
f0449dd2ce Properly initialize thread pools 2020-03-17 22:37:12 +01:00
Eike Kettner
00ca6b5697 Improve text analysis
- Search for consecutive labels

- Sort list of candidates by a weight

- Search for organizations using person labels
2020-03-17 22:34:50 +01:00
Eike Kettner
718e44a21c Add cleanup jobs task 2020-03-09 20:24:00 +01:00
Eike Kettner
854a596da3 Integrate periodic tasks
The first use case for periodic task is the cleanup of expired
invitation keys. This is part of a house-keeping periodic task.
2020-03-08 22:49:49 +01:00
Eike Kettner
616c333fa5 Implement storage routines for periodic scheduler 2020-03-08 13:56:23 +01:00
Eike Kettner
1e598bd902 Sketch a scheduler for running periodic tasks
Periodic tasks are special in that they are usually kept around and
started based on a schedule. A new component checks periodic tasks and
submits them in the queue once they are due.

In order to avoid duplicate periodic jobs, the tracker of a job is
used to store the periodic job id. Each time a periodic task is due,
it is first checked if there is a job running (or queued) for this
task.
2020-03-08 12:55:03 +01:00
Eike Kettner
9b28858d06 Create a simple client for joex in its api module
This client can be used within the backend app and later in other
modules. The `OJoex` object is replaced with a better implementation
where the http client is initialized once on app start.
2020-03-03 23:07:49 +01:00
Eike Kettner
42c59179b8 Fix search by checksum to include source files 2020-03-02 20:56:32 +01:00
Eike Kettner
867b59ac10 Fix link in doc menu 2020-03-01 14:08:21 +01:00
Eike Kettner
d8bbcb1409 Fix front-page links for microsite
The links work while testing locally with jekyll. Must be checked at
the published site.
2020-03-01 09:45:38 +01:00
Eike Kettner
b7f2c051f4 Set next version to 0.4.0-SNAPSHOT 2020-02-28 21:19:01 +01:00
Eike Kettner
aa3b9258c4 Set version to 0.3.0 2020-02-28 20:52:39 +01:00
Eike Kettner
3f53779ae4 Change documentation side menu and front 2020-02-28 20:52:39 +01:00
Eike Kettner
ad8d64eded Fix microsite and add changelog 2020-02-27 23:59:03 +01:00
Eike Kettner
1bb464b9ed Extend tools/ds.sh to check for file existence 2020-02-27 20:03:46 +01:00
Eike Kettner
902fd63125 Fix initializing concerned equipment 2020-02-26 20:43:16 +01:00
Eike Kettner
2f87065b2e sbt scalafmtAll 2020-02-25 20:55:00 +01:00
Eike Kettner
c8d090ae28 Remove small notes form field in favor for the new one 2020-02-24 22:34:32 +01:00
Eike Kettner
381de1e198 Show project version in the documentation 2020-02-24 20:59:15 +01:00
Eike Kettner
25c3f2b541 Add more explaining tooltips 2020-02-24 15:18:42 +01:00
Eike Kettner
478797e2a4 Add a help link to the main menu 2020-02-24 15:11:58 +01:00
Eike Kettner
36093c5d52 Add reverse proxy doc 2020-02-24 15:11:50 +01:00
Eike Kettner
cc16b0c024 Fix query to also work with mariadb 2020-02-24 13:34:54 +01:00
Eike Kettner
5f32eadaba Fix dropdown in source create view 2020-02-23 23:01:48 +01:00
Eike Kettner
661cc3e65f Fix deleting attachments (again) 2020-02-23 20:18:13 +01:00
Eike Kettner
d937e0501a Add source files to collective insights 2020-02-23 20:17:53 +01:00
Eike Kettner
be8eacdbe9 Display full attachment name in title tooltip 2020-02-23 14:36:19 +01:00
Eike Kettner
1f431c3222 Make link to original file enabled if files are different 2020-02-23 14:33:22 +01:00
Eike Kettner
957073fe62 Return info about original files in item detail
This adds data to the current rest api.
2020-02-23 14:25:32 +01:00
Eike Kettner
ec419c7bfd Adopt nix modules to new config 2020-02-22 12:40:56 +01:00
Eike Kettner
74a037887d Fix deleting items and attachments to also remove the binary files 2020-02-22 00:54:55 +01:00
Eike Kettner
8cfecfb3dd Update docs 2020-02-22 00:48:58 +01:00
Eike Kettner
98576a5fb5 Add link to original file 2020-02-20 22:40:27 +01:00
Eike Kettner
72fd3b1a25 Implement downloading original file 2020-02-20 22:33:57 +01:00
Eike Kettner
39809f9d05 Sketch route for retrieving original file 2020-02-20 22:12:27 +01:00
Eike Kettner
7fe8843893 Update documentation sites 2020-02-20 21:43:37 +01:00
Eike Kettner
3f316ab4d0 Update config file doc 2020-02-20 21:10:00 +01:00
Eike Kettner
fbe0c1aec5 Allow more chars for mimetype 2020-02-20 00:39:31 +01:00
Eike Kettner
97305d27ff Integrate support for more files into processing and upload
The restriction that only pdf files can be uploaded is removed. All
files can now be uploaded. The processing may not process all. It is
still possible to restrict file uploads by types via a configuration.
2020-02-19 23:27:00 +01:00
Eike Kettner
9b1349734e Convert some files to pdf 2020-02-19 02:03:10 +01:00
Eike Kettner
5869e2ee6e Streamline extern-conv stdin/infile 2020-02-18 12:43:47 +01:00
Eike Kettner
0dcc00836b Make logger configurable in system commands 2020-02-18 12:02:43 +01:00
Eike Kettner
bd605b8c94 Add first drafts for converting 2020-02-18 01:31:22 +01:00
Eike Kettner
c665c212a0 Early draft for running wkhtmltopdf 2020-02-17 14:02:23 +01:00
Eike Kettner
e0682464b5 Configure pdf extraction; move Logger and DataType to common 2020-02-17 14:01:36 +01:00
Eike Kettner
3d615181e0 Early draft for text extraction 2020-02-17 01:57:22 +01:00
Eike Kettner
8143a4edcc Adding extraction primitives 2020-02-16 21:37:26 +01:00
Eike Kettner
851ee7ef0f Reorganize processing code
Use separate modules for

- text extraction
- conversion to pdf
- text analysis
2020-02-15 21:25:25 +01:00
Eike Kettner
919381be1e More research on how to create pdfs from other files 2020-02-15 13:57:21 +01:00
Eike Kettner
3deba44282 Rename example files 2020-02-15 12:52:24 +01:00
Eike Kettner
1309c8b7fa Move mimetype detection to docspell-files 2020-02-14 22:06:18 +01:00
Eike Kettner
5c3d2b2e28 Rename example-files to files 2020-02-14 11:14:09 +01:00
Eike Kettner
bf9bf25502 Rename example files 2020-02-14 11:10:54 +01:00
Eike Kettner
569aae3038 Add example files into its own project
The text and convert module can use them in their tests.
2020-02-11 22:46:23 +01:00
Eike Kettner
2c0425433e Move File class to common module 2020-02-11 22:42:04 +01:00
Eike Kettner
3026f199f7 Some research on pdf conversion 2020-02-11 22:41:44 +01:00
Eike Kettner
ce22b727b1 Add new convert module and sketch its integration 2020-02-11 00:33:52 +01:00
Eike Kettner
3be90d64d5 Move SystemCommand to common module 2020-02-10 22:23:06 +01:00
Eike Kettner
ba3865ef5e Starting to support more file types
First, files are be converted to PDF for archiving. It is also easier
to create a preview. This is done via the `ConvertPdf` processing
task (which is not yet implemented).

Text extraction then tries first with the original file. If that
fails, OCR is done on the (potentially) converted pdf file.

To not loose information of the original file, it is saved using the
table `attachment_source`. If the original file is already a pdf, or
the conversion did not succeed, the `attachment` and
`attachment_source` record point to the same file.
2020-02-10 12:42:45 +01:00
Eike Kettner
5c37efeaba Apply scalafmt to all files 2020-02-09 01:54:26 +01:00
Eike Kettner
533396d386 Using the new preview route to show the attachment in webui 2020-02-08 18:02:31 +01:00
Eike Kettner
8908ad2561 Add attachment preview url based on ViewerJS
The viewerJS library can display PDF files easily using pdfjs. Another
attachment route redirects to the viewerjs application to display the
current attachment.

The attachment responses have been improved in that now the response
headers are added to all responses. Additional a HEAD route has been
added to support the viewerJS application.
2020-02-08 18:02:31 +01:00
Eike Kettner
e1826f39ac Disable revolver plugin on non-app projects
This allows to type `reStart` in the root sbt project to start both
applications.
2020-02-08 18:02:31 +01:00
Eike Kettner
9b66604b96 Include item notes in search 2020-02-08 13:39:06 +01:00
Eike Kettner
d2edddd238 Show attachment meta data in ui
Allow to view the extracted text and results from text analysis of an
attachment.
2020-02-08 12:23:59 +01:00
Eike Kettner
f8aa5c28ac Update http4s to 0.21.0-RC3, fs2 to 2.2.2 2020-02-04 22:14:18 +01:00
Eike Kettner
c9c8672234 Fix line-breaks in mail body 2020-02-02 12:25:15 +01:00
Eike Kettner
518d6911f0 Edit notes in a larger area 2020-01-29 21:57:02 +01:00
Eike Kettner
c504a3df42 Fix elm-analyse issues 2020-01-29 20:56:14 +01:00
Eike Kettner
1c8a143623 Add a complete example for nixos 2020-01-24 23:12:08 +01:00
Eike Kettner
61bbdab8b5 nix: add user doc and pkg fixes
- Add user doc for how to use with nix/nixos

- fix potential collisions in packages if both are installed via
  `nix-env`
2020-01-24 21:56:48 +01:00
Eike Kettner
23af8acff8 Add support for integrating into nix/nixos 2020-01-20 00:21:15 +01:00
Eike Kettner
2454f358b1 Add sbt task to create a zip for things in tools/ 2020-01-19 20:32:52 +01:00
Eike Kettner
8f7e8c7800 Add redirect for root (/) to gui (/app) 2020-01-18 17:48:45 +01:00
Eike Kettner
1c13537f47 Set version to 0.3.0-SNAPSHOT 2020-01-12 15:36:09 +01:00
Eike Kettner
ab045b0ce6 Set version to 0.2.0 2020-01-12 13:58:04 +01:00
Eike Kettner
d8da55fa23 Update readme + fix typo 2020-01-12 13:56:50 +01:00
Eike Kettner
e8122e5f35 Fix input width for multi dropdown and recipients 2020-01-12 13:37:56 +01:00
Eike Kettner
4b4d236ca4 Show loader while sending mail 2020-01-12 12:31:31 +01:00
Eike Kettner
d057d4de7c Shorten attachment filenames in tab view 2020-01-12 11:56:31 +01:00
Eike Kettner
8058bdd398 Fix textarea issue 2020-01-12 10:58:48 +01:00
Eike Kettner
6d0c140e8e Add mariadb database migration 2020-01-12 01:17:49 +01:00
Eike Kettner
c6f3920351 Streamline query parameters 2020-01-12 01:13:03 +01:00
Eike Kettner
d535130c9e Provide email proposals from address book 2020-01-12 01:04:42 +01:00
Eike Kettner
c84a69aa9c Update documentation 2020-01-11 22:12:51 +01:00
Eike Kettner
bb1f948f25 Fix search menu width 2020-01-11 20:22:51 +01:00
Eike Kettner
c15701a21a Use PasswordInput in change password form 2020-01-11 18:55:33 +01:00
Eike Kettner
6e56aad251 Sow sent mails in item detail 2020-01-11 18:15:08 +01:00
Eike Kettner
88efe13209 Fix item route responses
Also avoid storing empty strings in a nullable field.
2020-01-11 12:58:04 +01:00
Eike Kettner
2ecfb679d9 Add routes to retrieve sent mails 2020-01-11 12:58:04 +01:00
Eike Kettner
b795a22992 Send mails for items 2020-01-10 00:45:29 +01:00
Eike Kettner
2d69d39dd1 Connect multiple items to a mail 2020-01-09 18:20:59 +01:00
Eike Kettner
7a3289c41d Prepare sending mail 2020-01-08 22:44:34 +01:00
Eike Kettner
51ce48997c Start with send-mail widget 2020-01-08 20:51:57 +01:00
Eike Kettner
4490a444a9 Allow dots in identifiers 2020-01-07 00:20:41 +01:00
Eike Kettner
32050a9faf Finish mail settings 2020-01-07 00:20:28 +01:00
Eike Kettner
f235f3a030 Starting with mail functionality 2020-01-05 23:23:28 +01:00
Eike Kettner
2e3454c7a1 Starting with mail settings 2020-01-05 15:31:32 +01:00
Eike Kettner
9020d9aa3b Don't require a prefix when configuring byte arrays 2020-01-05 15:29:58 +01:00
Eike Kettner
993a3d05e2 Fix redirection after login 2020-01-03 20:42:38 +01:00
Eike Kettner
06d84550f5 Fix documentation for ds.sh 2020-01-03 18:17:48 +01:00
Eike Kettner
6eaac50e63 Save search query state
For when coming back from detail view.
2020-01-03 00:22:07 +01:00
Eike Kettner
9a300e213d Correct secondary menu width 2020-01-02 23:46:56 +01:00
Eike Kettner
d90afa30aa Add search field to equipment view 2020-01-02 21:16:33 +01:00
Eike Kettner
4e7315c2a9 Add search field to tag view 2020-01-02 20:48:23 +01:00
Eike Kettner
7ba413e49f Add search field to person view 2020-01-02 20:42:51 +01:00
Eike Kettner
906ee9034e Add search field to organization view 2020-01-02 20:21:54 +01:00
Eike Kettner
8814de3c38 Allow simple search when listing meta data 2020-01-02 20:21:49 +01:00
Eike Kettner
eb6c483ef0 Add route to check for files by their checksum
Adopt scripts in `tools/` to check for existing files using these
routes.
2019-12-31 23:45:02 +01:00
Eike Kettner
d05e919eb4 Update doobie, use legacy java.time conversions 2019-12-31 13:55:09 +01:00
Eike Kettner
65641d1347 Add max-height for features image 2019-12-31 01:51:42 +01:00
Eike Kettner
7d047b13c9 Add reset search form button 2019-12-31 01:39:55 +01:00
Eike Kettner
c73cdd82ab Improve item detail view
- Separate page (permalink) for item details

- Use available space and hide search menu

- Disable item navigation links if there is nothing to go to

- Show notes more prominently and allow to hide them
2019-12-31 01:22:40 +01:00
Eike Kettner
36a6fdd746 Change webapp url paths
Don't use `#`, because many people find it awkward. Now "normal" urls
are used and elm takes care to not issue a server request when these
change.
2019-12-30 22:28:02 +01:00
Eike Kettner
b15b9cc217 Streamline routing
- put openapi doc behind `api/doc` instead of `app/doc`
- don't require `index.html` for the webapp
2019-12-30 22:03:25 +01:00
Eike Kettner
fc3e22e399 Apply scalafmt to all files 2019-12-30 21:44:13 +01:00
Eike Kettner
57e274e2b0 Upgrade microsite 2019-12-30 02:33:46 +01:00
Eike Kettner
2001cca88b Using elm-format for all files 2019-12-29 21:55:12 +01:00
Eike Kettner
a9e70401de Update dependencies 2019-12-28 12:38:11 +01:00
Eike Kettner
07a23b9611 Fix percent encoding
Must use utf8 bytes, of course…
2019-12-11 21:56:31 +01:00
Eike Kettner
2b10652082 Allow to reuse invitation keys on error 2019-11-17 17:13:39 +01:00
Eike Kettner
852d292d9b Add elm-analyse file and fix a few warnings 2019-11-17 00:46:34 +01:00
Eike Kettner
f747c6146d Use same meta data for creating and deleting cookie
The cookie might not be removed by browsers, if these infos don't
match.
2019-11-17 00:44:42 +01:00
Eike Kettner
fd311b9688 Disable autocomplete on some input fields 2019-10-28 18:05:34 +01:00
Eike Kettner
2ad1586d00 Set stricter compile options and fix cookie data 2019-09-28 22:17:45 +02:00
Eike Kettner
a07626533d Set version to 0.2.0-SNAPSHOT 2019-09-21 22:36:22 +02:00
Eike Kettner
7b5edb5a89 Set version to 0.1.0 2019-09-21 22:16:31 +02:00
Eike Kettner
4562786206 Fix path to docspell assets 2019-09-21 22:14:02 +02:00
Eike Kettner
3eb9916f1a Add a firefox add-on 2019-09-21 22:02:37 +02:00
Eike Kettner
30b5c9d7f8 Add new a tool ds.sh
A commandline script to upload given files to docspell. The URLs can
be configured using a configuration file.
2019-09-21 22:02:37 +02:00
Eike Kettner
c76af5cbf4 New logo 2019-09-21 22:02:36 +02:00
Eike Kettner
6ce7096af0 Add consumedir.sh script
Script for watching a directory for new files and uploading them to
docspell.
2019-09-21 22:02:36 +02:00
Eike Kettner
831cd8b655 Initial version.
Features:

- Upload PDF files let them analyze

- Manage meta data and items

- See processing in webapp
2019-09-21 22:02:36 +02:00
Eike Kettner
6154e6a387 Initial application stub 2019-09-21 14:54:03 +02:00