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