Eike Kettner
25788a0b23
Add routes for storing/retrieving client settings
2021-05-27 21:34:05 +02:00
Eike Kettner
a1a93e5ca6
Fixes searching items with fulltext
...
When using fulltext only search, then only the index must be searched.
This wasn't working anymore, because the routes added a query to
always select valid items (those not being processed). But this lead
to the downstream code to always consult the database, too. Since the
routes are using a "simple-search" interface, this is now adding the
valid-state condition if applicable. There are still more low-level
interfaces that can be used when searching should be done differently.
Closes : #823
2021-05-23 14:14:25 +02:00
Stefan Scheidewig
558197e415
Fixed the imports
2021-04-15 20:49:34 +02:00
Stefan Scheidewig
fa34312020
Implemented endpoint to delete multiple attachments
2021-04-15 18:05:01 +02:00
Stefan Scheidewig
93f772351a
Made multi id read logic sharable
2021-04-15 18:03:58 +02:00
Eike Kettner
3e0914ece7
Correctly count tag categories
...
If multiple tags of the same category are applied to the same item,
just summing tag counts will produce the wrong results as now items
are counted multiple times.
2021-04-11 14:34:44 +02:00
Scala Steward
144ea852bf
Update fs2-core, fs2-io to 2.5.4
2021-03-31 21:10:42 +02:00
Eike Kettner
c36073b852
Allow to give human readable summary to user tasks
2021-03-27 22:13:13 +01:00
Eike Kettner
03459124ca
Don't return items still in processing
2021-03-27 22:13:13 +01:00
Eike Kettner
cc38b850a6
Remove deprecated search routes and some refactoring
2021-03-27 22:13:13 +01:00
Eike Kettner
274e433d9d
Allow to change use enum for org/equipment
2021-03-10 23:55:18 +01:00
Eike Kettner
0229a867af
Add a use colum to metadata entities
2021-03-10 23:55:18 +01:00
Eike Kettner
1a188afbd7
Re-add ui-version to keep browser resource cache in service-worker
2021-03-10 23:16:01 +01:00
Eike Kettner
64e3cb04f3
Remove fomantic ui and ui-header handling
2021-03-09 22:45:29 +01:00
Eike Kettner
7b1ec97c97
Fix sort when using fulltext only
2021-03-08 00:47:15 +01:00
Eike Kettner
63d146c2de
Resolve fulltext search queries the same way as before
...
For now, fulltext search is only possible when being the only term or
inside the root AND expression.
2021-03-07 09:40:47 +01:00
Eike Kettner
d4006461f6
Serving scalajs artifacts and provide errors to js
2021-03-03 00:45:10 +01:00
Eike Kettner
dadab0d308
Implement search by query in endpoints
2021-03-01 15:31:02 +01:00
Eike Kettner
e079ec1987
Provide custom error structure for parse failures
2021-03-01 00:51:01 +01:00
Eike Kettner
9013d9264e
Add more convenient date parsers and some basic macros
2021-03-01 00:51:01 +01:00
Eike Kettner
af73b59ec2
Parser improvements
...
- default expressions into a and node
- fix parsing string lists that end in whitespace
- fix package names of internal classes
2021-03-01 00:51:01 +01:00
Eike Kettner
a80d73d5d2
Optimize imports
2021-03-01 00:51:01 +01:00
Eike Kettner
e9ed998e3a
Basic poc to search via custom query
2021-03-01 00:51:01 +01:00
Eike Kettner
186014a1c6
Refactor search to separate between a base query and user query
...
The `findBase` is adding only strictly required conditions. Everything
else comes from the user.
2021-03-01 00:51:01 +01:00
Eike Kettner
e6d9ce2c37
Remove obsolete type capabilities
...
These are now detected by the new scala compiler and lead to compile
errors.
2021-03-01 00:16:30 +01:00
mergify[bot]
9156e56d65
Merge pull request #651 from eikek/language-source
...
Add language to a source
2021-02-19 01:30:24 +00:00
Eike Kettner
7ef3185659
Add language to a source
...
Allows to define upload urls for different languages.
2021-02-18 23:34:42 +01:00
Eike Kettner
5c6f57cc6a
Trim values of some input data
...
Some values don't make sense when padded with whitespace, like
organization name, source ids etc. These are trimmed now when
received.
2021-02-18 22:07:32 +01:00
Eike Kettner
5181283b1b
Add a short-name to organizations
2021-02-17 22:55:35 +01:00
Eike Kettner
20ccdda609
Add a notes field to equipments
2021-02-17 22:39:07 +01:00
Eike Kettner
48eee00c0b
Allow person to be correspondent, concerning or both
2021-02-16 22:49:55 +01:00
Eike Kettner
f29353adb3
Use different worker cache name per ui
...
Avoid to have users clear their browser caches
2021-02-14 11:29:36 +01:00
Eike Kettner
f6e5bda2d8
Change default ui to be the new ui
...
The old ui is still available, using a header: `Docspell-Ui: 1`. Using
a browser addon a "ui switch" can be easily achieved.
2021-02-14 01:46:13 +01:00
Eike Kettner
dd935454c9
First version of new ui based on tailwind
...
This drops fomantic-ui as css toolkit and introduces tailwindcss. With
tailwind there are no predefined components, but it's very easy to
create those. So customizing the look&feel is much simpler, most of
the time no additional css is needed.
This requires a complete rewrite of the markup + styles. Luckily all
logic can be kept as is. The now old ui is not removed, it is still
available by using a request header `Docspell-Ui` with a value of `1`
for the old ui and `2` for the new ui.
Another addition is "dev mode", where docspell serves assets with a
no-cache header, to disable browser caching. This makes developing a
lot easier.
2021-02-14 01:46:13 +01:00
Eike Kettner
96612e0e59
Refactor scan mailbox form and add flag for post-processing
...
Mails are filtered once by using an imap search and then by some globs
to filter files and subjects. Imap can search by subject via a
string-contains, but not via globs or patterns (afaik). The subject
filter is applied to all downloaded mail headers. Now for post
processing (moving to some target folder or deleting), it can be
chosen to post-process all "seen" mails or only those that matched all
filters.
2021-01-24 01:46:31 +01:00
mergify[bot]
8dd1672c8c
Merge pull request #583 from eikek/fix-baseurl-setting
...
Render baseurl without trailing slash
2021-01-21 23:44:14 +00:00
Eike Kettner
0ec620fcf0
Render baseurl without trailing slash
...
The webapp expects it like this currently, because the url is only a
string.
2021-01-21 21:42:08 +01:00
Eike Kettner
a6f29153c4
Control what tag categories to use for auto-tagging
2021-01-19 01:20:13 +01:00
Eike Kettner
249f9e6e2a
Extend guessing tags to all tag categories
2021-01-18 21:51:45 +01:00
Eike Kettner
b08e88cd69
Add (inofficial) routes to get system information
2021-01-05 20:54:53 +01:00
Eike Kettner
668abf2140
Add a reset-password admin route
2021-01-04 20:59:31 +01:00
Eike Kettner
2a172ce720
Remove fulltext recreate-key config value
...
It's now in the admin routes, protected by the
`admin-endpoint.secret`.
2021-01-04 15:18:02 +01:00
Eike Kettner
306f064ad9
Create a place for admin routes
...
And move re-creation of fulltext index in this place.
2021-01-04 15:18:02 +01:00
Eike Kettner
0cfd8974d3
Add a flag to imap settings to enable/disable oauth2 scheme
2021-01-04 11:03:04 +01:00
Eike Kettner
6346bf6a34
Add summary for fulltext searches
2020-12-17 00:11:33 +01:00
Eike Kettner
8fba637ebe
Add folder counts to search summary
2020-12-16 01:14:27 +01:00
Eike Kettner
80e23d1c84
Add a route to get search summary
2020-12-15 23:37:02 +01:00
Eike Kettner
80406cabc2
Refactoring some code into separate files
2020-12-15 21:03:47 +01:00
Eike Kettner
adee496b77
Convert source record
2020-12-15 21:03:46 +01:00
Eike Kettner
b338f18e98
Remove redundant fileCount from search result
2020-12-15 21:03:46 +01:00
Eike Kettner
5882405f30
Search index if search object only contains this field
2020-12-05 02:59:57 +01:00
Eike Kettner
0337391b20
Change remember period to 30 days
2020-12-04 20:30: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
fc2668feee
Allow to connect a person to an organization
2020-12-01 23:39:45 +01:00
Eike Kettner
0ee8ff66d5
Allow to search by source name
2020-11-30 14:07:45 +01:00
Eike Kettner
7052bc6b8e
Add cc and bcc to item mail
2020-11-28 01:36:59 +01:00
Eike Kettner
5fe532001b
Allow to specify document lanugage with the request
2020-11-23 20:49:01 +01:00
Eike Kettner
7b7f1e4d6d
Return custom field values with search results
2020-11-23 10:23:25 +01:00
Eike Kettner
066c856981
Allow to search for custom field values
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
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
5034e12bec
Add a subject filter to scan-mailbox args
2020-11-13 23:15:20 +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
55a6f7aaf6
Add more properties to upload meta data
2020-11-11 21:01:23 +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
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
8c8788bc69
Provide fallback image for previews
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
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
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
f4c79c72ae
Allow to remove tags from multiple items
2020-10-31 14:42:17 +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
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
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
458fa7edd9
Allow to search in a defined item subset
2020-10-25 22:19:55 +01: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
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
030ee6c932
Update website
2020-09-24 00:49:51 +02:00
Eike Kettner
f6f63000be
Prepend a duplicate check when uploading files
2020-09-23 23:37:00 +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
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
c658677032
Autoformat
2020-09-09 00:29:32 +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
f9fcee81a5
Add start-now button for train-classifier task
2020-09-02 21:22:22 +02:00
Eike Kettner
8c4f2e702b
Add classifier settings
2020-09-02 18:28:14 +02:00
Eike Kettner
de5b33c40d
Add updated
column to some tables
2020-08-24 21:30:52 +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
07e9a9767e
Add a task to re-process files of an item
2020-08-12 22:29:56 +02:00
Eike Kettner
098e4cf868
Fix uploading to enabled/disabled source endpoints
2020-08-09 09:21:23 +02:00
Eike Kettner
43946ed347
Fail early when source id is wrong
2020-08-08 18:43:18 +02:00
Eike Kettner
06ad9ac46c
Add routes to conveniently set/toggle tags
2020-08-08 15:08:04 +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
f3ba224124
Add missing organization/person/equipment routes
2020-08-07 01:30:43 +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
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
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
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
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
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
2ab0b5e222
Rename space -> folder
2020-07-11 11:54:23 +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
752a94a9e2
Implement space operations
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
347a029af8
Scalafix organize-imports
2020-06-28 21:20:47 +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
14213c4c27
Allow some solr query options in the config file
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
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
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
ffbb16db45
Transport highlighting information to the client
2020-06-23 00:17:29 +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
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
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
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
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
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
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
e51e84408b
Change notify-due-item routes to allow multiple tasks per user
2020-06-13 14:26:38 +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
c6accca0ff
Add route to create and associate correspondent org
2020-06-11 22:11:58 +02:00