Commit Graph

83 Commits

Author SHA1 Message Date
spiral
b4b83f2c94
fix(api): have correct behaviour for 'before' param 2021-11-17 09:52:58 -05:00
spiral
b273b49533
fix: throw SystemNotFound in SystemGet instead of 404ing 2021-11-07 13:56:15 -05:00
spiral
e1a5310a3a
fix: check member/group limits before creating 2021-11-03 02:42:37 -04:00
spiral
44ccf01f93
feat: with_members query string on /systems/:ref/members endpoint 2021-11-01 00:12:11 -04:00
spiral
c7126840ed
refactor(apiv2): rewrite group member endpoints to be cleaner 2021-10-30 18:16:18 -04:00
spiral
8e0e393f52
feat(apiv2): docs fixes 2021-10-22 17:54:47 -04:00
spiral
2bf1617737
feat(apiv2): reorganize controllers, add stats to meta endpoint 2021-10-15 07:08:41 -04:00
spiral
611fc65a99
fix(apiv2): don't erroneously expose helper methods as endpoints
asp.net why
2021-10-15 04:29:04 -04:00
spiral
e367ed6808
feat(apiv2): post/patch endpoints 2021-10-14 09:35:20 -04:00
spiral
fd49e7e4ea
refactor(apiv2): rename APIErrors to Errors, move IsUserError to helper method 2021-10-13 09:08:17 -04:00
spiral
431f7e8931
fix(apiv2): correctly parse timestamp in SwitchPatch 2021-10-13 08:59:42 -04:00
spiral
098d804344
feat(apiv2): better model validation error UX 2021-10-13 08:37:34 -04:00
spiral
5add31c77e
feat(apiv2): switch endpoints 2021-10-13 05:29:33 -04:00
spiral
f602f22a3d
feat(apiv2): guild endpoints 2021-10-13 01:02:34 -04:00
spiral
a20276f6e6
feat(apiv2): group member endpoints 2021-10-12 08:33:31 -04:00
spiral
2d72fd6aa1
fix(apiv2): don't ISE on invalid entity references 2021-10-12 08:10:20 -04:00
spiral
0aefafb62d
feat(apiv2): delete endpoints 2021-10-12 06:41:38 -04:00
spiral
c164fad2ac
fix(apiv2): correctly apply privacy settings on switch get 2021-10-12 06:18:54 -04:00
spiral
e2a56a198f
feat(apiv2): GET endpoints except guilds
- ResolveT methods in ControllerBase
- ContextFor methods in ControllerBase
2021-10-12 05:17:54 -04:00
spiral
57722e035b
feat(apiv2): group stubs, authentication middleware, /systems/:id endpoint 2021-10-01 21:50:01 -04:00
spiral
8a88b23021
feat(apiv2): stubs 2021-09-29 22:30:20 -04:00
spiral
92e45a07ff
refactor: add SqlKata for SQL generation, move connection handling into ModelRepository 2021-09-29 21:51:38 -04:00
spiral
ac2671452d
run dotnet format 2021-08-27 11:03:47 -04:00
spiral
4b944e2b20
feat: refactor external input handling code
- refactor import/export code
- make import/export use the same JSON parsing as API
- make Patch.AssertIsValid actually useful
2021-08-25 21:43:31 -04:00
spiral
11bd66e8d8
refactor: move JsonModelExt to PluralKit.Core (in individual model/patch files) 2021-08-08 16:10:53 -04:00
spiral
e144571904
Add banner (large) image 2021-08-02 13:46:12 -04:00
spiral
1cb4bc9287
Expose git version in 'pk;stats' and '/v1/meta' 2021-08-01 15:22:23 -04:00
spiral
dcc15dc847
Move mediaproxy URL rewriting to ProxyService
This shows full size avatars in API / cards.

Also, rewrite URLs currently stored with media.discordapp.net "back" to
cdn.discordapp.com before sending them to users.
2021-08-01 12:51:54 -04:00
spiral
b82dad2b9f
api: correctly parse 'null' privacy as public 2021-07-06 18:07:17 -04:00
spiral
deedb61d41
Add /v1/meta endpoint (shows shard state) 2021-06-21 09:19:47 -04:00
spiral
7f3f81a111
Update error string 2021-04-21 23:09:45 +01:00
spiral
b34ed5c4c0
API patch improvements
- add PatchObject.CheckIsValid
- use transaction when creating member, as to not create a member if the
patch is invalid
- return edited system in `PATCH /s` endpoint
2021-04-21 22:57:19 +01:00
Ske
1fda6ec919 Add per-system member/group limit override 2020-10-09 12:18:29 +02:00
Ske
c7612df37e Major database refactor (again) 2020-08-29 13:46:27 +02:00
Ske
45775f2e8e Remove unversioned API endpoints 2020-07-28 19:59:28 +02:00
Grey Himmel
0d2777c1d1
Return new member after member PATCH (#191) 2020-07-05 12:54:51 +02:00
Ske
467ce78522 Retire more IDataStore methods 2020-06-29 14:54:11 +02:00
Ske
9c1efc7886 Move system updates to the same patch system as members 2020-06-29 14:39:19 +02:00
Ske
c5697b33e2 Finally retire the PKMember setters! 2020-06-29 14:15:30 +02:00
Ske
281b669391 Refactor member updates to use a patch object 2020-06-29 13:57:48 +02:00
Ske
d3cf382e3b Migrate to date/time format extension methods 2020-06-21 16:05:04 +02:00
Ske
dcffbef805 Migrate to more privacy helper extensions 2020-06-21 15:51:08 +02:00
Ske
ae4e8f97d0 Add member avatar privacy 2020-06-20 16:00:50 +02:00
Ske
56eae82b0a Move most references to PKMember.Name to go through helper extepsions for privacy 2020-06-18 17:08:36 +02:00
Ske
e92700f339 Comment out color privacy stuff for now (revisit later?) 2020-06-17 21:51:40 +02:00
BeeFox-sys
721a4502bb
Feature/granular member privacy (#174)
* Some reasons this needs to exist for it to run on my machine? I don't think it would hurt to have it in other machines so

* Add options to member model

* Add Privacy to member embed

* Added member privacy display list

* Update database settings

* apparetnly this is nolonger needed?

* Fix sql call

* Fix more sql errors

* Added in settings control

* Add all subject to system privacy

* Basic API Privacy

* Name privacy in logs

* update todo

* remove CheckReadMemberPermission

* Added name privacy to log embed

* update todo

* Update todo

* Update api to handle privacy

* update todo

* Update systemlist full to respect privacy (as well as system list)

* include colour as option for member privacy subject

* move todo file (why was it there?)

* Update TODO.md

* Update TODO.md

* Update TODO.md

* Deleted to create pr

* Update command usage and add to the command tree

* Make api respect created privacy

* Add editing privacy through the api

* Fix pronoun privacy field in api

* Fix info leak of display name in api

* deprecate privacy field in api

* Deprecate privacy diffrently

* Update API

* Update documentation

* Update documentation

* Remove comment in yml

* Update userguide

* Update migration (fix typo in 5.sql too)

* Sanatize names

* some full stops

* Fix after merge

* update migration

* update schema version

* update edit command

* update privacy filter

* fix a dumb mistake

* clarify on what name privacy does

* make it easier on someone else

* Update docs

* Comment out unused code

* Add aliases for `member privacy all public` and `member privacy all private`
2020-06-17 21:31:39 +02:00
Ske
627f544ee8 Migrate API to ASP.NET Core Auth services + refactor 2020-06-16 01:15:59 +02:00
Ske
90ac186183 Extract Database to interface 2020-06-13 19:36:43 +02:00
Ske
e176ccbab5 Several more database-y refactors
- DbConnectionFactory renamed to "Database", will now be the primary entry point for DB stuff
- Created IPKConnection interface mostly containing async extensions to IDbConnection, use this going forward
- Reworked the Connection/Command wrappers (that have performance/logging extensions)
- Probably more stuff that I forgot???
2020-06-13 18:31:20 +02:00
Ske
c4c3eaf954 Integrate ApiVersioning library for ASP.NET 2020-05-07 04:40:08 +02:00