Commit Graph

320 Commits

Author SHA1 Message Date
kolaente 631a265d2d
feat: add proper checks and errors to see if an attachment belongs to the task it's being used as cover image in
continuous-integration/drone/pr Build is passing Details
2022-10-05 15:12:29 +02:00
kolaente 5a40100ac5
feat: provide default user settings for new users via config
continuous-integration/drone/push Build is passing Details
2022-10-02 11:00:58 +02:00
Dominik Pschenitschni 36265fcedf feat(docs): document pnpm (#1251)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Dominik Pschenitschni <mail@celement.de>
Reviewed-on: vikunja/api#1251
Co-authored-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de>
Co-committed-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de>
2022-10-01 15:30:20 +00:00
kolaente 96ed1e33e3
fix: don't allow setting a list namespace to 0
continuous-integration/drone/push Build is failing Details
See https://github.com/go-vikunja/app/issues/13
2022-10-01 15:02:17 +02:00
Felix Breidenstein 9bb8a26706
fix(docs): Fix redirect_url example (#50)
continuous-integration/drone/push Build is failing Details
The name of the openid provider gets appended to the redirect_url
2022-09-28 15:34:53 +02:00
kolaente 2e3603507c
fix(docs): document pnpm instead of yarn
continuous-integration/drone/push Build is failing Details
2022-09-23 12:26:42 +02:00
kolaente 2efc1b5a87
feat(docs): add docs about how to deploy Vikunja in a subdirectory 2022-09-23 12:23:59 +02:00
kolaente 2369ce5554
fix(docs): clarify using port 25 as mail port when mail does not work
continuous-integration/drone/push Build is failing Details
2022-09-05 17:32:48 +02:00
kolaente 3ccc6365a6
fix: prevent moving a list into a pseudo namespace
continuous-integration/drone/push Build is passing Details
2022-08-15 23:25:39 +02:00
kolaente 51314f269d
feat(docs): add k8s docs
continuous-integration/drone/push Build is passing Details
2022-08-12 13:47:18 +02:00
kolaente dbb0f54732
feat: add openid examples
continuous-integration/drone/push Build is passing Details
2022-08-09 10:48:50 +02:00
kolaente f8cc67d37f
chore(docs): add frontendurl to all example configs
continuous-integration/drone/push Build is failing Details
2022-07-19 16:26:38 +02:00
kolaente 8759937e3c
feat(docs): add versions explanation
continuous-integration/drone/push Build is passing Details
2022-07-08 00:14:01 +02:00
kolaente a38efef734
fix(docs): clarify frontend requirements to use Vikunja
continuous-integration/drone/push Build is failing Details
2022-06-30 16:40:38 +02:00
kolaente a060cbe820
chore(docs): clarify openid setup with environment variables
continuous-integration/drone/push Build is failing Details
2022-06-30 16:27:06 +02:00
kolaente ad17ff5c32
fix(docs): image urls in synology setup explanation 2022-06-30 16:25:24 +02:00
kolaente f30a9d1038 chore(docs): add new mailer option to docs 2022-06-30 14:21:17 +00:00
kolaente 2f25b48869
feat: restrict max avatar size
continuous-integration/drone/push Build is passing Details
resolves #1171
2022-06-12 18:29:12 +02:00
k2s 172a6214d7 fix: VIKUNJA_SERVICE_JWT_SECRET should be VIKUNJA_SERVICE_JWTSECRET (#1184)
continuous-integration/drone/push Build is passing Details
Reviewed-on: vikunja/api#1184
Reviewed-by: konrad <k@knt.li>
Co-authored-by: k2s <k2s@noreply.kolaente.de>
Co-committed-by: k2s <k2s@noreply.kolaente.de>
2022-06-12 12:50:43 +00:00
grahammiln acaa85083f feat: ability to serve static files (#1174)
continuous-integration/drone/push Build is passing Details
Added the configuration key, `service.staticpath`, to serve files from the configuration path on root (/).

Serving static files allows the api service to also serve the frontend content. This is a simple option for deploying Vikunja without needing any other servers or proxies.

Running a complete instance becomes:

    VIKUNJA_SERVICE_STATICPATH=/path/to/frontend ./vikunja

Where `/path/to/frontend` is a copy of Vikunja's frontend static files.

## Implementation

Providing a path, via the configuration or environment, adds a static file middleware to serve the path's contents from root (/).

By default, the configuration path is empty and Vikunja's existing behaviour is unchanged.

Co-authored-by: Graham Miln <graham.miln@dssw.co.uk>
Reviewed-on: vikunja/api#1174
Reviewed-by: konrad <k@knt.li>
Co-authored-by: grahammiln <grahammiln@noreply.kolaente.de>
Co-committed-by: grahammiln <grahammiln@noreply.kolaente.de>
2022-05-23 20:49:28 +00:00
tuxthepenguin 4960a498ff Add client-cert parameters of the Go pq driver to the Vikunja config (#1161)
continuous-integration/drone/push Build is failing Details
Co-authored-by: tuxthepenguin <tux@saturnv.uphus-internal.de>
Reviewed-on: vikunja/api#1161
Reviewed-by: konrad <k@knt.li>
Co-authored-by: tuxthepenguin <tuxthepenguin@noreply.kolaente.de>
Co-committed-by: tuxthepenguin <tuxthepenguin@noreply.kolaente.de>
2022-04-23 15:46:00 +00:00
Subhaditya Nath 96e519ea96
fix: broken link (#27)
continuous-integration/drone/push Build is passing Details
2022-04-18 21:00:46 +02:00
kolaente 8aa646e4d9
chore(docs): redirect properly from /docs/docs
continuous-integration/drone/push Build is passing Details
2022-03-06 13:42:07 +01:00
kolaente 82158d7718
fix(docs): don't use cannonify url
continuous-integration/drone/push Build is passing Details
2022-02-25 14:25:03 +01:00
konrad 1322cb16d7 feat: add long-lived api tokens (#1085)
continuous-integration/drone/push Build was killed Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1085
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2022-02-06 13:18:08 +00:00
kolaente 049ae39c62
docs: add guide for Synology NAS
continuous-integration/drone/push Build is failing Details
2022-01-25 22:40:19 +01:00
shilch f7a06e4644 Enable a list to be moved across namespaces (#1096)
continuous-integration/drone/push Build is failing Details
Co-authored-by: Simon Hilchenbach <simon@hilchenba.ch>
Reviewed-on: vikunja/api#1096
Reviewed-by: konrad <k@knt.li>
Co-authored-by: shilch <simon@hilchenba.ch>
Co-committed-by: shilch <simon@hilchenba.ch>
2022-01-23 12:59:43 +00:00
kolaente da318e3db1
docs: update testing
continuous-integration/drone/push Build is failing Details
2022-01-23 11:49:03 +01:00
Mike a4c85fed55
feat(docs): add details of using NGINX Proxy Manager to the Reverse Proxy docs (#13)
continuous-integration/drone/push Build is passing Details
2021-12-19 19:54:18 +01:00
kolaente 13561f2114
docs: improve wording for systemd
continuous-integration/drone/push Build encountered an error Details
(cherry picked from commit 094138b0c55a1d2013615275362749b77bb4dc9a)
2021-12-07 18:35:39 +01:00
kolaente 6ece909286
chore(docs): update docs about compiling from source
continuous-integration/drone/push Build encountered an error Details
2021-11-28 12:56:46 +01:00
kolaente 445cc4f79d
fix(docs): update minimum required go version
continuous-integration/drone/push Build encountered an error Details
2021-11-28 12:49:15 +01:00
kolaente 1fa74cba64
docs: add another tutorial link
continuous-integration/drone/push Build is passing Details
2021-11-16 21:17:53 +01:00
kolaente 9bf32aae99
docs: improve development docs
continuous-integration/drone/push Build is passing Details
2021-11-13 18:20:23 +01:00
kolaente 2aea1691cf
docs: add postgres to docker-compose examples 2021-11-13 18:08:57 +01:00
kolaente 4829c89940
docs: update backup instructions 2021-11-13 18:00:49 +01:00
kolaente cc612d505f
docs: make sure all links to vikunja pages are https
continuous-integration/drone/push Build is passing Details
2021-10-31 11:23:42 +01:00
stephen-hill 82a3330412 Added the ability to configure the JWT expiry date using a new server.jwtttl config parameter. (#999)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Stephen Hill <stephen@gatekiller.co.uk>
Reviewed-on: vikunja/api#999
Co-authored-by: stephen-hill <stephen@gatekiller.co.uk>
Co-committed-by: stephen-hill <stephen@gatekiller.co.uk>
2021-10-09 11:02:28 +00:00
kolaente 68998e90a4
docs: fix api url in docker examples without a proxy
continuous-integration/drone/push Build is passing Details
2021-09-29 20:38:09 +02:00
kolaente dbd6f36da6
docs: add another youtube tutorial
continuous-integration/drone/push Build was killed Details
2021-09-24 22:11:03 +02:00
kolaente 4255bc3a94
docs: add docker-compose example with no proxy
continuous-integration/drone/push Build is failing Details
2021-09-24 20:45:37 +02:00
kolaente be47459c14
Docs: Add another third-party tutorial link
continuous-integration/drone/push Build is passing Details
2021-09-06 21:15:04 +02:00
konrad 90146aea5b User Data Export and import (#967)
continuous-integration/drone/push Build is passing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#967
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2021-09-04 19:26:31 +00:00
kolaente 15e5a9069b
Docs: Update translation guidelines
continuous-integration/drone/push Build is passing Details
2021-08-31 22:45:02 +02:00
kolaente c9d0f519ee
Docs: Update translation guidelines
continuous-integration/drone/push Build is failing Details
2021-08-31 22:41:56 +02:00
kolaente d7b74500c3
Add another youtube tutorial
continuous-integration/drone/push Build is failing Details
2021-08-30 20:55:21 +02:00
kolaente bd24743640
docs: Add other installation resources
continuous-integration/drone/push Build is failing Details
2021-08-23 17:52:01 +02:00
kolaente f8833ae8a2
docs: Add k8s-at-home Helm Chart for Vikunja
continuous-integration/drone/push Build is passing Details
2021-08-20 19:24:50 +02:00
kolaente 98f367eb97
Add menu link to Vikunja Cloud in docs
continuous-integration/drone/push Build is passing Details
2021-08-15 18:20:39 +02:00
kolaente dcddaab7b5
Set todoist migration redirect url to the frontend url by default
continuous-integration/drone/push Build is passing Details
2021-08-14 18:27:29 +02:00
konrad 27119ad6d4 User account deletion (#937)
continuous-integration/drone/push Build is passing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#937
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-11 19:08:10 +00:00
kolaente 77c2b77079
Show config full paths and env variables with config options
continuous-integration/drone/push Build is passing Details
2021-08-11 18:20:34 +02:00
kolaente dc2915875b
Docs: Fix rewrite rules in apache example configs
continuous-integration/drone/push Build is passing Details
2021-08-02 17:09:38 +02:00
kolaente 5cfc9bf2f9
Disable the user account after 10 failed password attempts
continuous-integration/drone/push Build is passing Details
2021-07-29 18:45:22 +02:00
konrad 1571dfa825 Task mentions (#926)
continuous-integration/drone/push Build is passing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#926
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-29 15:42:49 +00:00
kolaente 7ee535de47
Docs improvements
continuous-integration/drone/push Build is passing Details
2021-07-14 00:25:12 +02:00
kolaente 265e778867
Docs: Translation now happening at crowdin
continuous-integration/drone/push Build is passing Details
2021-07-13 11:42:46 +02:00
kolaente d26f81162f
Add ios to the list of not working caldav clients
continuous-integration/drone/push Build is passing Details
2021-07-11 16:37:05 +02:00
kolaente 373e3f3d60
Add a note about default password to docs
continuous-integration/drone/push Build is passing Details
2021-07-09 21:12:32 +02:00
kolaente 7408380560
Add translation docs
continuous-integration/drone/push Build is passing Details
2021-06-24 00:14:29 +02:00
kolaente bf68ccbb25
Don't use the mariadb root user in docker-compose examples
continuous-integration/drone/push Build is passing Details
2021-06-20 22:37:35 +02:00
kolaente b7ec24ff52
Fix old references to master in docs
continuous-integration/drone/push Build is passing Details
2021-05-17 12:53:12 +02:00
kolaente b76ad8efe2
Add more logging and better error messages for openid authentication + clarify docs
continuous-integration/drone/push Build is passing Details
2021-05-16 13:23:10 +02:00
kompetenzbolzen 86b7d224ab Expose tls parameter of Go MySQL driver to config file (#855)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Jonas Gunz <himself@jonasgunz.de>
Reviewed-on: vikunja/api#855
Reviewed-by: konrad <konrad@kola-entertainments.de>
Co-authored-by: kompetenzbolzen <himself@jonasgunz.de>
Co-committed-by: kompetenzbolzen <himself@jonasgunz.de>
2021-05-08 14:54:55 +00:00
kolaente 9dc72c5c98
Use golang's tzdata package to handle time zones
continuous-integration/drone/push Build is passing Details
2021-05-07 12:18:21 +02:00
kolaente e4db9dfe6c
Cleanup old docs themes submodule
continuous-integration/drone/push Build is passing Details
2021-04-22 11:33:15 +02:00
kolaente 967270b2c1
Fix docs
continuous-integration/drone/push Build is passing Details
2021-04-11 18:38:06 +02:00
konrad b3c604fd2f Add link share password authentication (#831)
continuous-integration/drone/push Build is passing Details
Reviewed-on: vikunja/api#831
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-04-11 13:17:50 +00:00
konrad d1b87d2705 Add a "done" option to kanban buckets (#821)
continuous-integration/drone/push Build is passing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#821
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-03-24 20:16:35 +00:00
kolaente 3999580fe6
Add basic auth for metrics endpoint
continuous-integration/drone/push Build is passing Details
2021-02-28 11:29:53 +01:00
konrad 2178166ece Add crud endpoints for notifications (#801)
continuous-integration/drone/push Build is passing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#801
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-21 14:50:34 +00:00
kolaente 9cff4e33ca
Fix docs
continuous-integration/drone/push Build is passing Details
2021-02-14 20:37:18 +01:00
konrad e7875ecb3b Subscriptions and notifications for namespaces, tasks and lists (#786)
continuous-integration/drone/push Build is failing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#786
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-14 19:18:14 +00:00
konrad 015ca310e9 Add notifications package for easy sending of notifications (#779)
continuous-integration/drone/push Build is passing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#779
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-07 21:05:09 +00:00
konrad 0ab9ce9ec4 Add events (#777)
continuous-integration/drone/push Build is passing Details
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#777
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-02 22:48:37 +00:00
konrad b2e4fde63a Add email reminders (#743)
continuous-integration/drone/push Build is passing Details
Fix tests

Expose email reminder setting through jwt

Set reminders on by default

Fix lint

Make user email configurable

Expose email reminder setting through /info

Don't try to send any reminders if none were found

More spacing for buttons

Fix db time format

Enable reminders by default

Make emails look more like the frontend

Add config to disable it

Add sending emaisl

Add getting all task users and reminding them

Add getting the next reminder in a cron

Move task reminder to separate file

Add cron

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#743
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-12-18 23:21:17 +00:00
konrad b0d4902406 Make sure all int64 db fields are using bigint when actually storing the data (#741)
continuous-integration/drone/push Build was killed Details
Fix lint

Fix migration query for postgres

Fix migration statements

Add migration to make all int(11) fields bigint by default

Make all int(11) fields bigint by default

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#741
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-12-18 16:51:22 +00:00
kolaente 5281ca548b
Fix docs about caldav tasks.org
continuous-integration/drone/push Build is failing Details
2020-12-18 12:48:42 +01:00
konrad f5b5204776 Add Microsoft Todo migration (#737)
continuous-integration/drone/push Build is passing Details
Add more logs

Fix lint

Generate docs

Add swagger docs

Add microsoft todo parsing logic

go mod tidy

Add basic test structure

Add more fields to tasks

rename microsoft todo package

Add getting microsoft todo data

Add structs and helper methods

Add microsoft todo config and routes

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#737
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-12-18 11:12:05 +00:00
konrad 9f3d898150 Add trello migration (#734)
continuous-integration/drone/push Build is passing Details
Fix tests for background images

Generate docs

Fix lint

Do the swag

Add more logging

Remove the default bucket if it was empty

Add launch.json

Make importing backgrounds work

Add comment

Fix getting task attachments

Fix getting trello token

Add trello migration routes and status

Add support for converting checklists

Add test for attachments

Add the actual conversion

Add Trello conversion test

Add migration function stubs

Add basic trello migration structure

Add trello migration config

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#734
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-12-17 13:44:04 +00:00
konrad 2b5c9ae7a8 Authentication with OpenID Connect providers (#713)
continuous-integration/drone/push Build is passing Details
Add config docs

Lint

Move provider-related stuff to separate file

Refactor getting auth providers

Fix tests

Fix user tests

Fix openid tests

Add swagger docs

Fix lint

Fix lint issues

Fix checking if the user already exists

Make sure to create a new namespace for new users

Docs

Add tests for openid

Remove unnessecary err check

Consistently return nil users if creating a new user failed

Move sending confirmation email to separate function

Better variable names

Move checks to separate functions

Refactor creating user into seperate file

Fix creating new local users

Test creating new users from different issuers

Generate a random username right away if no preferred username has been given

Add todo

Cache openid providers

Add getting int clientids

Fix migration

Move creating tokens to auth package

Add getting or creating a third party user

Add parsing claims

Add retreiving auth tokens

Add token callback from openid package

Add check for provider key

Add routes

Start adding openid auth handler

Add config for openid auth

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#713
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-11-21 16:38:58 +00:00
freaktechnik dcefc18b98 Add app support info for DAV (#692)
continuous-integration/drone/push Build is passing Details
Add app support info for DAV

Reviewed-on: vikunja/api#692
Co-Authored-By: freaktechnik <martin@humanoids.be>
Co-Committed-By: freaktechnik <martin@humanoids.be>
2020-10-19 12:17:08 +00:00
konrad 618353bf95 Use nfpm to build deb, rpm and apk packages (#689)
continuous-integration/drone/push Build is failing Details
Cleanup

Update docs for deb

Add building os packages to drone

Add apk packages

Replace version and binlocation strings in nfpm config

Make nfpm config replacable

Fix nfpm config

Add nfpm config

go mod tidy

Add nfpm mage target

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#689
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-10-18 11:41:27 +00:00
konrad 1b21339bf8 Generate config docs from sample config (#684)
continuous-integration/drone/push Build is passing Details
Add docs todo to PR template

Clarify docs

Fix parsing of descriptions and multi-level values

Add method to write out the file

Only render default value for non-top-level values

Remove comment headings from yaml comments

Add printing config

Add basic parsing of sample config with comments

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#684
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-10-17 08:07:39 +00:00
konrad d56a611be7 Key-Value Storages (#674)
continuous-integration/drone/push Build is passing Details
Fix lint

Add docs for keyvalue config options

Use keyvalue store to cache unsplash photo results

Cleanup

Use keyvalue store for upload avatar

Use keyvalue store for initials avatar

Fix initializing metrics

Use keyvalue for metrics

Add IncryBy and DecrBy methods to increase or decrease a value

Fix lint

Return custom error if a key does not exist

Init keyvalue storage

Follow the keyvalue storage setting for things like cache and other

Add docs

Add configuration of the storage backend

Add redis keyvalue storage implementation

Add doc comments

Add methods to use storage through the package itself

Add memory implementation for keyvalue store

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#674
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-10-10 16:53:59 +00:00
kolaente bf5d8af3f6
Fix docs index links
continuous-integration/drone/push Build is passing Details
2020-10-10 12:12:54 +02:00
konrad 0fb2edf051 Saved filters (#655)
continuous-integration/drone/push Build is passing Details
Fix updating saved filters

Fix filter not loadable because of missing param declaration

Add fancy special cases for postgres exists in db

Add special case for postgrs json

Add read one test

Add rights tests

Fix lint

Fixed getting a single saved filter from db

Add tests for the usual crud methods

Add test stubs and TODOs

Add test for converting saved filter ids to list ids and vice versa

Add test fixture for saved filters and fix existing tests

Fix exposed json variables of filters

Fix creating saved filters table for tests

Add getting saved filters as pseudo namespace

Cleanup

Refactor getting all namespaces to use a map for easier handling of pseudo namespaces

Add custom erros for saved filters

Swagger docs

Fix lint

Add routes for saved filters

Add alias for mage build

Add method to get a saved filter from the lists endpoint

Add getting tasks from a saved filter

Add create, update, delete, read one methods

Add rights methods for saved filters

Fix docs minLength

Add saved filters column

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#655
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-09-26 21:02:17 +00:00
konrad 14d706c91e Kanban bucket limits (#652)
continuous-integration/drone/push Build is passing Details
Fix integration tests

Generate swagger docs

Add test for moving a task between buckets

Add check for bucket limit when updating a task

Add fixture to ensure a bucket with a high limit will never exceed the limit

Refactor bucket limit check into seperate function

Add test for creating and fix

Fix unexported field

Add error in case a task was added to a bucket which has its limit already exceeded

Add migration to add new task field

Add limit field to buckets

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#652
2020-09-04 14:37:56 +00:00
kolaente 05e237560d
Add mage command to create a new migration
continuous-integration/drone/push Build is failing Details
2020-09-04 10:15:33 +02:00
kolaente 58dfbe13ed
Add FreeBSD guide to installation docs
continuous-integration/drone/push Build is failing Details
2020-09-03 17:44:44 +02:00
kolaente 1a4eef1056
Add toc to docs
continuous-integration/drone/push Build is failing Details
2020-09-03 17:34:44 +02:00
kolaente 8da7db3e26
Cleanup references to make
continuous-integration/drone/push Build is failing Details
2020-09-03 17:18:41 +02:00
konrad d359130bcf Switch to mage (#651)
continuous-integration/drone/push Build is failing Details
Add comment about magefile compile

Switch make to mage commands in drone

Fix misspell

Update docs

Add general release command

Add reprepro command

Make sure the filename contains the proper version

Add deb package building

Add zip command

Preserve file permissions when copying files

Fix release:os-package

Make sure to not create checksums of directories

Cleanup

Only compress what upx is able to compress

Add check command

Add release:os-package command

Add copy command

Add comments

Add compress step

Move releasing binaries to a more general function and add ones of linux + darwin

Add release:windows command

Add release:dir command

Add namespaces for commands

Reorder

Add command to run all checks at once

Add goconst-check

Add gosec-check

Add static-check

Add gocyclo-check

Add ineffasign-check

Add misspell-check

Add command to check for swagger docs regeneration

Add comments

Add command to generate swagger docs

Reorder

Add check for installing golint before running it

Add fmt check command

Add fmt command

Use runAndStreamOutput everywhere

Add aliases and comments

Add todo

Reorder

Add test coverage command

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#651
2020-09-03 15:13:19 +00:00
kolaente d88551e99d
Add dav proxy directions to example proxy configurations
continuous-integration/drone/push Build is passing Details
Signed-off-by: kolaente <k@knt.li>
2020-08-20 14:08:35 +02:00
kolaente 28fd0e91ee
Mention client_max_body_size in nginx proxy settings
continuous-integration/drone/push Build is passing Details
2020-08-17 22:15:48 +02:00
konrad 16dbcfda7e Manage users via cli (#632)
continuous-integration/drone/push Build is failing Details
Add users cli commands to docs

Fix checking for changing username or user email

Add user status change command

Make sure only one user exists with a particular email when updating

Add password reset

Add user id to help

Remove user delete (too many possible side effects, postponed until later)

Make sure to fail on any errors

Fail if changing the username would result in duplicate users

Add user update command

Add user create command

Add command stubs for all commands

Render users in a beautiful table

Started adding user list command

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#632
2020-08-13 15:34:02 +00:00
konrad dfb7730b63 More avatar providers (#622)
continuous-integration/drone/push Build is passing Details
Don't fail if the last avatar file does not exist when deleting it

Fix lint

Remove old global avatar setting and update docs

Generate docs

Invalidate the avatar cache when uploading a new one

Add debug logs

Add caching for upload avatars

Add cache locks

Fix encoding

Resize the uploaded image to a max of 1024 pixels

Remove the old uploaded avatar if one already exists

Add mimetype check for images

Set avatar provider to upload when uploading an avatar

Add upload avatar provider

Make font size smaller to let the initials still look good in smaller sizes

Add debug log

Add cache and resizing of initials avatars

Make font size depend on avatar size

Add drawing initials avatar

Add initials provider

Make the initials avatar provider the default

Add routes

Add user avatar settings handler methods

Add user avatar provider field

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#622
2020-08-02 17:16:58 +00:00
kolaente 41cf73a473
Add option to configure legal urls
continuous-integration/drone/push Build is passing Details
2020-07-18 18:53:56 +02:00
kolaente 092aae3260
Add config option to force ssl connections to connect with the mailer
continuous-integration/drone/push Build is passing Details
2020-07-14 17:30:39 +02:00
kolaente 3d709e3bb7
Update docs with testmail command + reorder
continuous-integration/drone/push Build was killed Details
2020-07-14 09:34:32 +02:00
kolaente 96f366f5e7
Add docs about using vikunja with utf-8 characters
continuous-integration/drone/push Build is passing Details
2020-07-06 21:53:26 +02:00
kolaente 9fa7e30a0a
update theme
continuous-integration/drone/push Build is passing Details
2020-07-05 15:25:25 +02:00
kolaente 53cfa99912
Remove vendored dependencies
continuous-integration/drone/push Build is passing Details
2020-06-28 14:00:10 +02:00
konrad 08205008e7 Migrate all timestamps to real iso dates (#594)
continuous-integration/drone/push Build is passing Details
Fix query param name

Add option to include null results when filtering

Always set db time to gmt

Fix null filter

Fix timezone setting for todoist parsing

Fix timezone setting for wunderlist parsing

Fix import

Fix caldav reminder parsing

Use timezone from config

Add error and test for invalid filter values

Fix integration tests

Remove task collection date hack

Fix task filter

Fix lint

Fix tests and fixtures for date timezone stuff

Properly set timezone

Change fixtures time zone to gmt

Set db timezone

Set created and updated timestamps for all fixtures

Fix lint

Fix test fixtures

Fix misspell

Fix test fixtures

Partially fix tests

Remove timeutil package

Remove adding _unix suffix hack

Remove _unix suffix

Move all timeutil.TimeStamp to time.Time

Remove all Unix suffixes in field names

Add better error messages when running migrations

Make sure to not migrate 0 unix timestamps to 1970 iso dates

Add migration script for sqlite

Add converting sqlite values

Convert 0 unix timestamps to null in postgres

Convert 0 to null in timestamps

Automatically rename _unix suffix

Add all tables and columns for migration

Fix sql migration query for mysql

Fail with an error if trying to use an unsupported dbms

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#594
2020-06-27 17:04:01 +00:00
kolaente c8605d6b3d
Enable upload backgrounds by default
continuous-integration/drone/push Build is failing Details
2020-06-23 22:53:23 +02:00
kolaente f2025c2658
Fix sqlite path in default config
continuous-integration/drone/push Build is passing Details
2020-06-22 23:13:41 +02:00
leggettc18 8b030135de Added section to full-docker-example.md for Caddy v2. (#595)
continuous-integration/drone/push Build is passing Details
Fixed one more leftover formatting oddity.

Fixed some leftovers from copy-paste.

Added section to full-docker-example.md for Caddy v2.

Co-authored-by: Christopher Leggett <chris@leggett.dev>
Reviewed-on: vikunja/api#595
Reviewed-by: konrad <konrad@kola-entertainments.de>
2020-06-22 04:48:00 +00:00
kolaente bfc4dd05ed
Add docs for restore
continuous-integration/drone/push Build is passing Details
2020-06-21 17:34:34 +02:00
kolaente cd812b4232
update theme 2020-06-21 17:32:38 +02:00
konrad fba333866d Add dump command (#592)
continuous-integration/drone/push Build is passing Details
Fix files location in dump

Fix gitignore

Add docs

Add dumps to gitignore

Move dump to seperate package

logging

Dump files

Dump version

Dump database

Dump config

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#592
2020-06-19 21:29:02 +00:00
konrad d02d413c5e Sentry integration (#591)
continuous-integration/drone/push Build is passing Details
Use sentry echo integration to send errors

Only capture errors not already handled by echo

Add sentry panic handler

Add sentry library

Add sentry init

Add sentry config

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#591
2020-06-19 18:47:15 +00:00
kolaente 3c5925c827
Add plausible to docs
continuous-integration/drone/push Build encountered an error Details
2020-06-18 18:33:30 +02:00
kolaente 980be0e4e0
update theme
continuous-integration/drone/push Build is passing Details
2020-06-12 23:37:47 +02:00
konrad a0ffe89056 List Background upload (#582)
continuous-integration/drone/push Build is passing Details
Add filesize check when uploading a new file

Fix error 500 if the uploaded background was not an unsplash one

Add upload background setting to info endpoint

Add config docs

Fix lint

Return list background type if it was uploaded

Add file upload

Add docs

Save uploaded backgrounds as file

Add background upload handler

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#582
2020-06-11 17:31:37 +00:00
kolaente dc036d44db
Update theme
continuous-integration/drone/push Build is passing Details
2020-05-30 17:00:52 +02:00
kolaente 5a04f1ecf4
Add option to disable totp for everyone
continuous-integration/drone/push Build is passing Details
2020-05-29 17:15:59 +02:00
konrad e5e30d0915 List Backgrounds (#568)
continuous-integration/drone/push Build is failing Details
Return the updated list when setting a list background

Add swagger docs for unsplash methods

Add unsplash info to search results

Fix misspell

Fix lint

Add rights check for setting and getting backgrounds

Show unsplash information when loading a single list

Make application id for pingbacks configurable

Remove old backgrounds when setting a new one

Return 404 if the list does not have a background

Implement getting list backgrounds

Implement actually setting a photo from unsplash as list background

go mod tidy

Add migration for background file id

Roughly implement setting a list background from unsplash

Implement saving a background

Add migration for unsplash photo table

Add unsplash search

Fix parsing page param

Fix parsing page param

Fix background config

Add unsplash wrapper library

Add enabled background providers to info endpoint

Add config options for backgrounds

Add unsplash background provider

Add routing handler for backgrounds

Add basic background provider interface

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#568
2020-05-26 20:07:55 +00:00
kolaente c37b776f7a
Add docker setup guide from start to finish
continuous-integration/drone/push Build is passing Details
2020-05-24 13:50:17 +02:00
konrad e89e6d47d4 Todoist Migration (#566)
continuous-integration/drone/push Build is passing Details
Add swagger docs + fix lint

Add parsing logic + fix fixtures

Fix test init

Add logging to creating labels and debug logs

Add creating labels when migrating

Finish test fixtures

Started adding fixtures for testing

Add method and test structures to convert todoist to vikunja

Add basic structure to migrate everything

Add all structs for todoist api

Add docs for config options

Add routes for todoist migrator

Add api token exchange

Add basic structure for todoist migration

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#566
2020-05-23 20:50:54 +00:00
kolaente 292c815000
Add restarting commands to all example docker compose files
continuous-integration/drone/push Build is passing Details
2020-05-23 19:34:44 +02:00
kolaente 4204af255c
Add ability to run the docker container with configurable user and group ids
continuous-integration/drone/push Build is passing Details
2020-05-22 21:18:11 +02:00
kolaente cb095d70df
Add explanation to docs about cors
continuous-integration/drone/push Build is passing Details
2020-05-12 11:10:07 +02:00
kolaente e43e601912
Add traefik 2 example configuration
continuous-integration/drone/push Build is passing Details
2020-05-11 22:02:15 +02:00
konrad 8ac158cdb4 Task Filter Fixes (#495)
continuous-integration/drone/push Build is passing Details
Fix gocyclo

Fix misspell

Error codes docs

Filter fixes

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#495
2020-05-09 15:48:56 +00:00
kolaente a30a358b73
Update theme
continuous-integration/drone/push Build is failing Details
2020-05-06 21:03:15 +02:00
kolaente 497499e221
Fix reference to reverse proxies in docs 2020-05-06 21:02:58 +02:00
kolaente 1fdc51078e
Add docs for changing frontend url
continuous-integration/drone/push Build is failing Details
2020-05-06 20:44:48 +02:00
konrad 231dc3913f Add real buckets for tasks which don't have one (#446)
continuous-integration/drone/push Build is passing Details
Add docs for error code

Add moving new tasks into the default bucket when none was provided

Add moving tasks in default bucket when deleting one

Fix tests again

Add test for removing a bucket

Fix tests

Prevent removing the last bucket

Remove the empty pseudo bucket

Add migration to create a new bucket for each list (and put all tasks in it

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#446
2020-04-25 20:32:02 +00:00
kolaente 86bdd1e386
Add community link
continuous-integration/drone/push Build is passing Details
2020-04-24 13:00:29 +02:00
kolaente 1bd8348be7
Add categories to error docs
continuous-integration/drone/push Build is passing Details
2020-04-19 14:33:51 +02:00
konrad ecdecdd94e Kanban (#393)
continuous-integration/drone/push Build is passing Details
Fix tests

Add error docs

Add swagger docs for bucket endpoints

Add integration tests

Fix tests

Fix err shadow

Make sure a bucket and a task belong to the same list when adding or updating a task

Add tests

Add getting users of a bucket

Fix log level when testing

Fix lint

Add migration for buckets

Cleanup/Comments/Reorganization

Add Kanban bucket handling

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#393
2020-04-19 07:27:28 +00:00
konrad 24904585a2 Add 2fa for authentification (#383)
continuous-integration/drone/push Build is passing Details
Fix user tests

Add swagger docs

Fix lint

Add totp check when logging in

Make totp enrollment work

Add migration for totp table

go mod vendor

Add routes for totp routes

Add route handler for totp routes

Add basic implementation to enroll a user in totp

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#383
2020-04-17 19:25:35 +00:00
kolaente e1ab2095fa
Update docs theme
continuous-integration/drone/push Build is passing Details
2020-04-16 23:31:36 +02:00
kolaente 0bfb3a4709
Add configuration options for log level
continuous-integration/drone/push Build is failing Details
2020-04-12 22:32:21 +02:00
konrad d28f005552 Update xorm to v1 (#323)
continuous-integration/drone/push Build is failing Details
Fix limit for databases other than sqlite

go mod tidy && go mod vendor

Remove unneeded break statements

Make everything work with the new xorm version

Fix xorm logging

Fix lint

Fix redis init

Fix using id field

Fix database init for testing

Change default database log level

Add xorm logger

Use const for postgres

go mod tidy

Merge branch 'master' into update/xorm

# Conflicts:
#	go.mod
#	go.sum
#	vendor/modules.txt

go mod vendor

Fix loading fixtures for postgres

Go mod vendor1

Update xorm to version 1

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#323
2020-04-12 17:29:24 +00:00
konrad 0ba121fdfb Task filters (#243)
continuous-integration/drone/push Build is passing Details
Fix not returning errors

Fix integration tests

Add more tests

Make task filtering actually work

Change tests

Fix using filter conditions

Fix test

Remove unused fields

Fix static check

Remove start and end date fields on task collection

Fix misspell

add filter logic when getting tasks

Add parsing filter query parameters into task filters

Start adding support for filters

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#243
2020-04-11 14:20:33 +00:00
konrad 5126330a10 Add support for archiving lists and namespaces (#152)
continuous-integration/drone/push Build is passing Details
Add query param to get all lists including archived ones

Add query param to get all namespaces including archived ones

Fix getting lists by namespace only not archived lists

Fix misspell

Fix lint

Merge branch 'master' into feature/archive-lists-namespaces

Add docs for error codes

Fix archive error codes

Don't let archived lists show up in general lists

Fix updating description

Fix updating lists with link shares

More comments

Fix un-archiving lists

Move check for archiving a list to canWrite Check

Add more tests

Add more checks

Add checks for namespaces and lists

Add namespace edit

Add tests

Add migrations and filter

Add basic tests

Add is archived property to lists and namespaces

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#152
2020-03-15 21:50:39 +00:00
konrad cdd068cdb6 Add empty avatar provider (#149)
continuous-integration/drone/push Build is passing Details
Fix lint

Add docs for avatar configuration

Add default avatar provider

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#149
2020-03-01 21:10:25 +00:00
konrad 584e3af237 Add proxying gravatar requests for user avatars (#148)
continuous-integration/drone/push Build is passing Details
Fix getting avatar based on email

Remove avatarUrl from user struct

Fix staticcheck

Add default avatar size

Add config option for caching avatars

go mod vendor

Add swagger docs

Add proxying gravatar requests for user avatars

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#148
2020-03-01 20:30:37 +00:00
konrad 1f039c4cda Task Comments (#138)
continuous-integration/drone/push Build is passing Details
Add swagger docs

Add integration tests

Add tests

Add task comment test fixtures

Add config option to enable/disable task comments

Add custom error if a task comment does not exist

Fix lint

Add getting author when getting a single comment

Fix getting comments/comments author

Add rights check to ReadAll

+ actually get the comment author

Add migration and table definitions

Add routes

Add ReadOne method

Add basic crud rights

Signed-off-by: kolaente <k@knt.li>

Implement basic crudable functions for task comments

Signed-off-by: kolaente <k@knt.li>

Start adding task comments

Signed-off-by: kolaente <k@knt.li>
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#138
2020-02-19 21:57:56 +00:00
kolaente f87bb6d8ef
Update theme
continuous-integration/drone/push Build is passing Details
2020-02-18 18:47:19 +01:00
kolaente 021a715aff
Fix frontend url for wunderlist migration in docs
continuous-integration/drone/push Build is passing Details
2020-02-17 19:52:26 +01:00
konrad e95a6eeb11 Explicitly disable wunderlist migration by default (#141)
continuous-integration/drone/push Build is passing Details
Fix wunderlist callback link in docs

Explicitly disable wunderlist migration by default

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#141
2020-02-17 17:29:17 +00:00
Dpvh f46e9cb64e Fixed typo in docker-compose example (#140)
continuous-integration/drone/push Build was killed Details
Reviewed-on: vikunja/api#140
Reviewed-by: konrad <konrad@kola-entertainments.de>
2020-02-17 16:47:55 +00:00
jtojnar ce5be947b4 Add postgres support (#135)
continuous-integration/drone/push Build is passing Details
Revert fixture fixes for postgres

Use postgres connection string with spaces instead of url

Fix label order

Make postgres tests in ci less verbose

Add sequence update script

Skip resets in postgres

Remove option to skip resets in postgres

Make postgres tests in ci verboseq

Update test fixtures database

Fix file tests on postgres

Add postgres options to sample config

Make sure tests init test fixtures before running the actual tests

Fix issues with IDs too big to fit in an int

Fix duplicate auto incremented IDs

Refactor / Fix team tests

Refactor team member tests

Fix team member create

Fix label test

Fix getting labels

Fix test fixtures for postgresql

Fix connection string params

Disable ssl mode on postgres integration tests

Disable ssl mode on postgres tests

Use sprintf to create the connection string for postgresql

fixup! Add postgres support

Add postgres support

Added generate as a make dependency for make build

Clarify docs on building

Co-authored-by: kolaente <k@knt.li>
Co-authored-by: Jan Tojnar <jtojnar@gmail.com>
Reviewed-on: vikunja/api#135
2020-02-16 21:42:04 +00:00
kolaente 7e42724439
Added generate as a make dependency for make build
continuous-integration/drone/push Build is passing Details
Clarify docs on building

Signed-off-by: kolaente <k@knt.li>
2020-02-15 11:35:24 +01:00
konrad db2d868eed Return iso dates for everything date related from the api (#130)
continuous-integration/drone/push Build is passing Details
Remove traces of unix timestamp

Revert renaming reminder table column

Fix staticcheck

Remove unused table call

Add migration for renaming reminders table

Fix issues with using TimeStamp

Fix lint

Updated all created / updated fields to use TimeStamps

Add comments

Convert all created / updated fields to datetime

Add time util package

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#130
2020-02-08 12:48:49 +00:00
konrad fc65052ba0 Add config options for task attachments (#125)
continuous-integration/drone/push Build was killed Details
Add config options for task attachments

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#125
2020-01-26 19:10:31 +00:00
konrad b2b1546a8f Add config options for cors handling (#124)
continuous-integration/drone/push Build was killed Details
Add config options for cors handling

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#124
2020-01-26 19:09:54 +00:00
konrad 7e9446ea07 Refactor User and DB handling (#123)
continuous-integration/drone/push Build is passing Details
fix copyright date

Add more user tests

More user tests

More user tests

Start refactoring user tests

Docs

Fix lint

Fix db fixtures init in tests

Fix models test

Fix loading fixtures

Fix ineffasign

Fix lint

Fix integration tests

Fix init of test engine creation

Fix user related tests

Better handling of creating test enging

Moved all fixtures to db package

Moved all fixtures to db package

Moved user related stuff to seperate package

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#123
2020-01-26 17:08:06 +00:00