Commit Graph

339 Commits

Author SHA1 Message Date
316ac0558b
Fix task updated timestamp not being updated in the response after updating a task 2020-10-25 12:59:28 +01:00
699d3d6060 Add Golangci Lint (#676)
Increase golangci timeout

Fix installing golangci-lint in ci

Remove mage targets replaced by golangci

Run golint in ci

Add goheader linter

Enable & fix more linters

Fix lint issues

Add mage target to automagically fix issues found by golangci

golangci-lint run --fix

Add golangci config

Add golangci mage target

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#676
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-10-11 20:10:03 +00:00
b3d09cd2d4
Fix loading list background information for uploaded backgrounds
Signed-off-by: kolaente <k@knt.li>
2020-09-28 20:53:17 +02:00
64d125afd9 Testing improvements (#666)
Change method names to avoid doubling db

Assert team test exists

Assert team member test exists

Assert task test exists

Assert task relation test exists

Assert task comment test exists

Better tests for team namespaces

Assert exists in namespace users tests

Assert exists in namespace tests

Assert exists in user list tests

Assert exists in list tests

Better team list tests

Assert label tests exist in db

Assert label task tests exist in db

Assert label task tests exist in db

Assert kanban tests exist in db

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#666
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-09-27 15:45:17 +00:00
0fb2edf051 Saved filters (#655)
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
6bdddd462a Favorite lists (#654)
Add tests

Remove the favorites pseudo namespace if there are no lists or tasks favorited

Regenerate swagger docs

Fix favorite lists not being updated because of nonexisting users (the favorite list does not have one)

Make the pseudo favorites list always favorited

Add favorited lists to the favorites pseudo namespace

Add favorite field to list

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#654
2020-09-06 14:20:16 +00:00
e5559137dd Favorite tasks (#653)
Fixed namespace tests

Add test for favorite tasks

Fix favorite tasks not being updated

Fix integration tests

Fix lint

Return a pseudo namespace and list for favorites

Make sure users can only see their favorites

Add condition show tasks from the favorites list

Regenerate swagger docs

Add favorite field to task

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#653
2020-09-05 20:16:02 +00:00
ecf09e17a8
Only check if a bucket limit is exceeded when moving a task between buckets 2020-09-04 22:01:33 +02:00
14d706c91e Kanban bucket limits (#652)
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
a58b932743
Work around tasks with attachments not being duplicated 2020-08-16 23:44:16 +02:00
d192c36c39
Add better tests for namespaces 2020-08-15 22:16:36 +02:00
4a70c81b33
Make sure to require admin rights when modifying list/namespace users to be consistent with teams
Signed-off-by: kolaente <k@knt.li>
2020-08-12 18:20:47 +02:00
bd8c1c3bb7 Return rights when reading a single item (#626)
Fix lint

Update docs

Fix loading all rights (list & namespace)

Add tests

Update web framework

Make tests run again

Update all calls to CanRead methods

Update task attachment & task comment & task rights to return the max right

Update team rights to return the max right

Update namespace rights to return the max right

Update list rights to return the max right

Update link share rights to return the max right

Update label rights to return the max right

Update web dependency

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#626
2020-08-10 12:11:43 +00:00
6a82d4e2af
Fix updating team admin status 2020-08-05 17:28:11 +02:00
11722bf029
Add update route to toggle team member admin status 2020-08-05 17:21:17 +02:00
dfb7730b63 More avatar providers (#622)
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
e4539ef232 Use db sessions for task-related things (#621)
Use db sessions for task-related things

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#621
2020-08-01 16:54:38 +00:00
9acba7d3f0
Fix duplicating a list with background 2020-07-17 14:16:59 +02:00
2d567bfe0f
Make sure lists which would have a duplicate identifier can still be duplicated
+ debug logging for duplicating lists
2020-07-17 13:26:49 +02:00
4db06ba9a1 Fix creating lists with non ascii characters (#607)
Fix test name

Fix migrating lists with non utf-8 characters in their name

Fix creating lists with non utf-8 characters

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#607
2020-07-07 07:48:12 +00:00
f57b7e989f
Fix updating the index when moving a task 2020-07-01 16:54:18 +02:00
556ccd68c1
Set the list identifier when creating a new task 2020-07-01 11:17:18 +02:00
1181039249 Duplicate Lists (#603)
Fix buckets not being duplicated correctly

Fix list id param not working

Add api endpoint

Add swagger docs

Add comment about test

Make duplicating actually work

Add copying link shares

Add copying list backgrounds

Add copying task relations

Add copying task comments

Add copying assignees

Add copying task task label relations

Add copying task attachments

Add duplicating tasks

Add basic struct and methods

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#603
2020-06-30 20:53:14 +00:00
3b2289c8fa
Fix swagger docs 2020-06-28 16:25:46 +02:00
2820d92ab3
Expose namespace id when querying lists 2020-06-27 23:00:15 +02:00
08205008e7 Migrate all timestamps to real iso dates (#594)
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
912abb3a10
Fix namespace title not being updated 2020-06-26 00:03:28 +02:00
525a547500
Remove min length for labels, lists, namespaces, tasks and teams 2020-06-17 18:52:23 +02:00
ca4d5000ed
Add list background information when getting all lists 2020-06-16 18:57:08 +02:00
24c1098736
Fix resetting list, label & namespace colors 2020-06-15 11:32:07 +02:00
47d7e713af Repeat tasks after completion (#587)
Fix integration tests

Add updating start and end date from current date

Add updating reminders from current date

Add updating reminders from current date

Add updating due date from current date

Add updating flag

Add tests

Add field to repeat a task after current date

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#587
2020-06-14 11:04:38 +00:00
ab1d58959f Ensure task dates are in the future if a task has a repeating interval (#586)
Ensure task dates are in the future if a task has a repeating interval

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#586
2020-06-13 21:32:31 +00:00
a0ffe89056 List Background upload (#582)
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
a525787ab7
Update and fix staticcheck 2020-05-29 22:15:21 +02:00
e5e30d0915 List Backgrounds (#568)
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
98ef052967
Don't return all tasks when a user has no lists 2020-05-19 17:22:10 +02:00
8a01b20e1e
Fix setting a list identifier to empty 2020-05-16 13:13:11 +02:00
5a86f44fc3
Generate a random list identifier based on the list title 2020-05-16 12:58:37 +02:00
fe43173b6c Ensure consistent naming of title fields (#528)
Remove task text and namespace name in migration

Fix lint

Add migration for namespace title

Fix renaming namespace name to title

Rename namespace name field to title

Drop text column at the end of the migration

Add migration for task text to title

Rename task text to title

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#528
2020-05-16 10:17:44 +00:00
587ce92dc9 Improve getting all namespaces performance (#526)
Improve getting all namespaces performance

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#526
2020-05-15 15:10:22 +00:00
8758fb6ac5 Fix case-insensitive task search for postgresql (#524)
"Fix" gocyclo

Fix case-insensitive task search for postgresql

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#524
2020-05-15 14:12:20 +00:00
92e5e2db6a
Make the _unix suffix optional when sorting tasks 2020-05-15 16:07:36 +02:00
4137d4aed2
Fix creating new things with a link share auth 2020-05-12 15:51:48 +02:00
55cd40d175
Fix team rights not updating for namespace rights 2020-05-11 18:39:30 +02:00
8ac158cdb4 Task Filter Fixes (#495)
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
18f6e31b54
Fix parsing array style comparators by query param 2020-05-09 15:08:58 +02:00
563fe16bd4
Add checking and logging when trying to put a task into a nonexisting bucket 2020-05-07 10:20:10 +02:00
fd3ccd6130 Fix total label count when getting all labels (#477)
Fix total label count when getting all labels

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#477
2020-05-03 21:28:36 +00:00
a97ce76f1f
Fix bucket ID being reset with no need to do so 2020-05-03 22:25:48 +02:00
83cf6e191c
Fix not moving its bucket when moving a task between lists 2020-05-03 21:33:59 +02:00
f0ac6e89be
Remove setting task bucket to 0 2020-05-03 21:24:28 +02:00
fa28ddc2f7
Fix pagination count for task collection 2020-04-27 19:28:19 +02:00
56dbb564ea
Fix link share creation & creating admin link shares without admin rights 2020-04-27 12:51:09 +02:00
5606f987fa
Add creating a new first bucket when creating a new list 2020-04-26 15:51:59 +02:00
f0cb3b5e36
Fix removing the last bucket 2020-04-26 00:57:47 +02:00
231dc3913f Add real buckets for tasks which don't have one (#446)
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
e433289832 Task Position (#412)
Fix misspell

Fix sorting tasks with null values

Fix sorting by priority for postgres

Merge branch 'master' into feature/position

Add community link

Update golang.org/x/crypto commit hash to 44a6062 (#429)

Update golang.org/x/crypto commit hash to 44a6062

Reviewed-on: vikunja/api#429

Update module lib/pq to v1.4.0 (#428)

Update module lib/pq to v1.4.0

Reviewed-on: vikunja/api#428

Fix updating position

Add ordering tasks in buckets by position

Make task sort by string

Merge branch 'master' into feature/position

Update golang.org/x/crypto commit hash to 3c4aac8 (#419)

Update golang.org/x/crypto commit hash to 3c4aac8

Reviewed-on: vikunja/api#419

Merge branch 'master' into feature/position

Fix moving tasks back into the empty (ID: 0) bucket

Add adding a default position when creating new tasks

Update golang.org/x/crypto commit hash to a76a400 (#411)

Update golang.org/x/crypto commit hash to a76a400

Reviewed-on: vikunja/api#411

Remove unused code

Fix tests

Add migration for position attribute

Add position attribute

Co-authored-by: kolaente <k@knt.li>
Co-authored-by: renovate <renovatebot@kolaente.de>
Reviewed-on: vikunja/api#412
2020-04-24 15:23:03 +00:00
68ab6d2e75
Fix moving tasks back into the empty (ID: 0) bucket 2020-04-20 23:08:38 +02:00
59037e4eee
Fix moving tasks in buckets 2020-04-20 18:08:20 +02:00
ecdecdd94e Kanban (#393)
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
28ec44c91f Add moving tasks between lists (#389)
Fix misspell

Add moving tasks between lists

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#389
2020-04-18 12:35:37 +00:00
5832991c4d
Fix tests after renaming json fields to snake_case 2020-04-13 23:27:55 +02:00
fb8ac92abf
Change all json fields to snake_case 2020-04-12 22:48:46 +02:00
d28f005552 Update xorm to v1 (#323)
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
0ba121fdfb Task filters (#243)
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
7b619bd084 Colors for lists and namespaces (#155)
Add Hex Color properties migration

Add Hex Color properties

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#155
2020-03-22 21:09:32 +00:00
35f05cbbec
Show lists as archived if their namespace is archived
Signed-off-by: kolaente <k@knt.li>
2020-03-22 21:39:57 +01:00
0a1887d6e7
Fix archiving namespaces
Signed-off-by: kolaente <k@knt.li>
2020-03-22 19:02:53 +01:00
c6d22bb1f8
Fix updating lists with an identifier
Signed-off-by: kolaente <k@knt.li>
2020-03-22 18:45:10 +01:00
6132863f4a
Fix getting archived lists and namespaces
Signed-off-by: kolaente <k@knt.li>
2020-03-22 18:24:54 +01:00
26ffd2fd22
Fix getting one namespace
Signed-off-by: kolaente <k@knt.li>
2020-03-21 13:55:42 +01:00
5126330a10 Add support for archiving lists and namespaces (#152)
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
584e3af237 Add proxying gravatar requests for user avatars (#148)
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
88bf8f3df0 Fix updating dates when marking a task as done (#145)
Fix lint

Fix reminders not being updated

Fix updating dates when marking a task as done

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#145
2020-02-26 21:09:45 +00:00
c551706b52
Make sure the author is returned when creating a new comment 2020-02-25 21:18:42 +01:00
1f039c4cda Task Comments (#138)
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
ce5be947b4 Add postgres support (#135)
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
caf91d1904 Update xorm to use the new import path (#133)
Fix ineffassign

Fix getting all labels including the ones not associated to a task

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

Fix logging sql queries

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

Start fixing getting all labels

Update xormigrate

Update xorm to use the new import path

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#133
2020-02-14 16:34:25 +00:00
d84a160054
Remove double user field 2020-02-08 22:12:06 +01:00
db2d868eed Return iso dates for everything date related from the api (#130)
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
1f99238019
Update copyright header 2020-02-07 17:27:45 +01:00
f603b41d99 Better efficency for loading teams (#128)
Fix staticcheck

Better performance for getting teams on a namespace

Better performance for getting teams on a list

Fix lint

Fix swagger

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

Make loading a single full team more efficent

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

Make loading teams more efficent

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

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#128
2020-01-27 17:28:17 +00:00
7e9446ea07 Refactor User and DB handling (#123)
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
1d2cdf0fb8 Fix owner field being null for user shared namespaces (#119) 2020-01-09 19:24:08 +00:00
a0c5e4e985 Update copyright year (#118) 2020-01-09 17:33:22 +00:00
7cdc997191 Fix new tasks not getting a new task index (#116) 2019-12-08 15:10:34 +00:00
720df3cbed Add task identifier (#115) 2019-12-07 22:28:45 +00:00
10ab8ef4d9
Fix task collection tests 2019-12-07 17:21:37 +01:00
d483fe8beb
Fix passing sort_by and order_by as query path arrays 2019-12-07 16:57:19 +01:00
1555f04bd2
Fix sorting tasks by bool values
There was a bug where it would return all tasks with a true value before the ones with a false value. This is the exact opposite of what the db does, leading to wrongly sorted values
2019-12-07 16:56:18 +01:00
d8399e374c Sort Order for tasks (#110) 2019-12-07 14:30:51 +00:00
e890001ee1 Consistent copyright text in file headers (#112) 2019-12-04 19:39:56 +00:00
7e4deab8f7 Task collection improvements (#109) 2019-12-01 13:38:11 +00:00
d96831fe3a Endpoint to get tasks on a list (#108) 2019-11-29 22:59:20 +00:00
37efd5cb49
Fixed removing reminders 2019-11-24 16:13:16 +01:00
dcec9511dc
Fixed a bug where deleting an attachment would cause a nil panic 2019-11-19 23:07:48 +01:00
c203d73b33
Fixed a bug where adding assignees or reminders via an update would re-create them and not respect already inserted ones, leaving a lot of garbage 2019-11-03 23:08:26 +01:00
9be5ab248c Add endpoint to get a single task (#106) 2019-11-02 20:33:18 +00:00
8948a5f219 Improve pagination (#105) 2019-10-23 21:11:40 +00:00
82f11c4ec2
Fixed not getting all labels when retrieving a list with all tasks 2019-10-20 17:56:53 +02:00
eb279fdba3
Refactored getting task IDs for labels 2019-10-20 17:55:54 +02:00
854fde1e4c
Fixed panic when using link share and metrics 2019-10-19 22:34:33 +02:00
b81cd6128a
Fixed error when setting max file size on 32-Bit systems 2019-10-18 17:30:25 +02:00
2169464983 Task Attachments (#104) 2019-10-16 20:52:29 +00:00
8fe33fd616 Task Relations (#103) 2019-09-25 18:44:41 +00:00
1272255975 Added percent done to tasks (#102) 2019-09-21 10:52:10 +00:00
2f267f3f68 Moved teams_{namespace|list}_* to {namespace|list}_teams_* for better consistency (#101) 2019-09-20 16:39:02 +00:00
8d5a2685c4 Fixed labels being displayed multiple times if they were associated with more than one task (#99) 2019-09-20 15:52:09 +00:00
fdd1624121 Small link share fixes (#96) 2019-09-07 13:19:23 +00:00
1d98e4cabe
Fixed metrics on/off setting 2019-09-01 18:39:03 +02:00
8d57923a7d Sharing of lists via public links (#94) 2019-08-31 20:56:41 +00:00
66cdd79666 Refactor ListTask to Task (#92) 2019-08-14 20:19:04 +00:00
be14634e1e GetUser now returns a pointer (#93) 2019-08-14 19:59:31 +00:00
208eb4e68c
Fixed swaggerdocs of description fields 2019-07-21 23:57:19 +02:00
48826a6ed7 Logger refactoring (#90) 2019-07-20 18:12:10 +00:00
ef0e7c9769 Use longtext instead of varchar(1000) on description fields (#88) 2019-07-18 19:56:34 +00:00
12eaddc8ee Added http endpoint to list all users on a list (#87) 2019-07-18 16:38:21 +00:00
b63928850a Simplify structure by having less files (#86) 2019-07-16 14:15:40 +00:00
1f1a079fd3 Better config handling with constants (#83) 2019-07-06 20:12:26 +00:00
f1d21ea52b
Use the auth methods to get IDs to avoid unneeded casts 2019-06-28 10:21:48 +02:00
9bc09ebbe5
Fixed user sharing not working 2019-06-04 19:45:09 +02:00
7acf318b28 Fixed duedate spelling issue (#79) 2019-05-31 08:10:56 +00:00
f638fae4fd Add the md5-hashed user email to user objects for use with gravatar (#78) 2019-05-31 07:24:59 +00:00
85d08e5697 Fixed check if the user really exists before updating/deleting its rights (#77) 2019-05-25 10:16:55 +00:00
50d1f29125 Use the username instead of a user when adding a user to a team or giving it rights (#76) 2019-05-25 09:47:16 +00:00
24ce940885 Put reminders in an extra table (#75) 2019-05-25 07:33:57 +00:00
7107d030fc Better caldav support (#73) 2019-05-22 17:48:48 +00:00
3d7fd9ca20
Updated libraries 2019-05-07 21:42:24 +02:00
2b160b73c3 Fix tests (#72) 2019-04-30 18:36:39 +00:00
24704bd4ed
Added color field to tasks 2019-04-30 11:26:37 +02:00
ed671baf8f
Fixed listID not being returned in tasks 2019-04-23 21:53:37 +02:00
6bab8fb769
Updated and re-enabled statickcheck 2019-04-23 10:34:06 +02:00
konrad
3872d1d8a7 Integration tests (#71) 2019-04-21 18:18:17 +00:00
93dbaea303
Fixed priority not updating when set to 0 2019-04-05 12:40:40 +02:00
87873e53c5 Fix rights checks (#70) 2019-04-01 19:48:48 +00:00
19faee0102 Hide a users email everywhere (#69) 2019-04-01 18:19:55 +00:00
be5a17e993 DB Migrations (#67) 2019-03-29 17:54:35 +00:00
8d78e473f5 Added cli for general usage of Vikunja (#66) 2019-03-24 17:15:44 +00:00
5525ee0328 Refactored canRead method to get the list before checking the right (#65) 2019-03-24 13:17:36 +00:00
47352d3ed4 Let rights methods return errors (#64) 2019-03-24 12:35:50 +00:00
1dc14d5ddf
Fixed labels not being queried correctly on tasks 2019-03-22 22:03:41 +01:00
c42e22f352
Fixed bulk update label tasks 2019-03-21 19:26:04 +01:00
72e64f7203
Fixed swagger docs for bulk label tasks 2019-03-21 18:42:21 +01:00
25999d9b69
Fixed swagger docs for task labels 2019-03-21 07:40:56 +01:00
eb4d38b5b8 Fixed rights check on lists and namespaces (#62) 2019-03-08 21:31:37 +00:00
1b84292332 Fix lint errs (#59) 2019-02-18 19:32:41 +00:00
15ef6deabc Use query params to sort tasks instead of url params (#61) 2019-02-18 18:06:15 +00:00
9e635ea54e Improve logging handling (#57) 2019-01-25 11:40:54 +00:00
75431e1ca5 Rights performance improvements for lists and namespaces (#54) 2019-01-21 22:08:04 +00:00
19218b28a2 Refactor {List|Namespace}{User|Team} to not expose unneded values via json (#52) 2019-01-14 22:32:56 +00:00
17fefae8bb Simplify list rights check (#50) 2019-01-14 21:49:50 +00:00
318920fe29 Improve label handling (#48) 2019-01-09 23:08:12 +00:00
364a172876 Assignees optimizations (#47) 2019-01-08 19:13:07 +00:00
607dbd6ae8 API Docs improvements (#46) 2019-01-03 22:22:06 +00:00
6b40df50d3 Add labels to tasks (#45) 2018-12-31 01:18:41 +00:00
d39007baa0 Task assignees (#44) 2018-12-29 14:29:50 +00:00
3814b8a504 Add bulk edit for tasks (#42) 2018-12-28 21:49:46 +00:00
36eb580c8a
Updated swagger docs 2018-12-25 21:45:26 +01:00
ce0bff8d9c
Fixed a bug where updating a list would update it with the same values it had before 2018-12-25 15:30:11 +01:00
5a93475be9 Get tasks between a date range (#41) 2018-12-22 18:06:14 +00:00
784b890f70 Start end end dates for tasks (#40) 2018-12-22 15:45:16 +00:00
cbc5995ad3 Various user fixes (#38) 2018-12-19 21:05:25 +00:00
3e4f7fb2f4 Fix sorting of tasks in lists (#37) 2018-12-19 19:14:48 +00:00
97febdb397 Tests can now use config files (#36) 2018-12-18 16:01:46 +00:00
777d63dff1 More unit tests (#34) 2018-12-16 13:21:32 +00:00
7b439cc568
Properly init tables for redis 2018-12-14 17:45:31 +01:00
e047673c6b Add prometheus endpoint for getting metrics (#33) 2018-12-12 22:50:35 +00:00
0c1d786ade Exlicitly get the pseudonamespace with all shared lists (#32) 2018-12-04 10:16:42 +00:00
cc6b35e314 Priorites for tasks (#31) 2018-12-02 00:49:30 +00:00
6c5885747b Subtasks (#28) 2018-12-01 02:00:57 +00:00
007d8ec375 Fixed generation of swagger docs (#29) 2018-12-01 01:59:17 +00:00
ce2cae9430 Move the crudhandler to own repo (#27) 2018-11-30 23:26:56 +00:00
06fc9f7886 Repeating tasks (#25) 2018-11-26 20:24:00 +00:00
3f44e3b83e Change License to GPLv3 (#26) 2018-11-26 20:17:33 +00:00
b73786f7fe Make validation less verbose (#24) 2018-11-25 21:38:50 +00:00
d51ed8defd make validation less verbose (#23) 2018-11-24 12:44:40 +00:00
fded3c23d0 Multiple Reminders (#22) 2018-11-21 15:03:47 +00:00
af0ce5bb96 Added Shared lists overview in namespaces (#21) 2018-11-19 11:37:59 +00:00
0c112a0ca3 Fixed Validation being to verbose (#20) 2018-11-17 00:12:26 +00:00
0c544fe355 Added validation for structs (#19) 2018-11-16 23:17:37 +00:00
373bbd2202 Migrate to new swagger docs generation (#18) 2018-11-12 15:46:35 +00:00
d3de658882 Implemented search for everything (#17) 2018-11-09 17:33:06 +00:00
d232836423 Added pagination (#16) 2018-11-09 10:30:17 +00:00
d03fca801b CalDAV support (#15) 2018-11-03 15:05:45 +00:00
31a4a1dd00 Added a route to get all tasks sorted desc by their due dates (#14) 2018-11-02 16:59:49 +00:00
9e539b8c40 Fix checking for an email verification token (#10) 2018-11-01 22:59:20 +00:00
9a5eb577b8 Fix not checking for user credentials upon login (#9) 2018-11-01 22:51:05 +00:00
4713023a97 Prevent login from inactive (aka non-verified) users (#8) 2018-11-01 22:47:41 +00:00
301a4eedda New structure (#7) 2018-10-31 12:42:38 +00:00