Commit Graph

152 Commits

Author SHA1 Message Date
spiral
1918c56937
feat: upgrade to .NET 6, refactor everything 2021-11-26 21:10:56 -05:00
spiral
a4a5f5c17a
feat: move PKMessage JSON to PluralKit.Core 2021-11-26 14:23:57 -05:00
spiral
b8e2ebd470
Merge branch 'feat/webhooks' into main 2021-11-25 17:15:42 -05:00
spiral
bc7e0df872
feat(webhooks): SUCCESSFUL_IMPORT event, better behaviour when creating entities 2021-11-25 15:33:02 -05:00
spiral
9c95ca2ed9
fix: temporarily disable last message query in member_list 2021-11-21 09:03:47 -05:00
spiral
7b9d2a4e5e
feat(webhooks): add all events except group member events 2021-11-19 11:37:50 -05:00
spiral
71aec0d419
feat(webhooks): init, add service/models, add JSON to patch objects 2021-11-02 06:08:17 -04:00
spiral
44ccf01f93
feat: with_members query string on /systems/:ref/members endpoint 2021-11-01 00:12:11 -04:00
spiral
f44f83c809 Merge branch 'feat/apiv2' into main 2021-10-30 18:18:08 -04:00
spiral
c7126840ed
refactor(apiv2): rewrite group member endpoints to be cleaner 2021-10-30 18:16:18 -04:00
multiusersystem
ffe23829db fixed schema version 2021-10-19 18:18:08 -04:00
spiral
2bf1617737
feat(apiv2): reorganize controllers, add stats to meta endpoint 2021-10-15 07:08:41 -04:00
spiral
8fe688e4aa Merge branch 'main' into feat/apiv2 2021-10-15 06:32:50 -04:00
spiral
3bc451eb4b
feat: move scheduled tasks to separate project 2021-10-15 06:27:38 -04:00
spiral
f602f22a3d
feat(apiv2): guild endpoints 2021-10-13 01:02:34 -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
2e89310129
fix(import): add AddAccount to tx 2021-10-06 20:24:29 -04:00
spiral
502265973c
fix: explicitly return * in Patch queries
This is needed because the API takes the object from the database query to return to the user
2021-10-03 12:02:26 -04:00
spiral
92e45a07ff
refactor: add SqlKata for SQL generation, move connection handling into ModelRepository 2021-09-29 21:51:38 -04:00
spiral
dbe040f852
feat(apiv2): database changes 2021-09-26 23:18:17 -04:00
spiral
fb4aaad19f
lint 2021-09-26 22:50:08 -04:00
spiral
0517c76abf
feat: delete command messages with pk;msg -delete 2021-09-26 22:49:43 -04:00
BeautifulPixel
7d60b3e7cf
Add switch editing functionality 2021-09-26 20:08:38 -04:00
spiral
bc2c198a82
group import/export 2021-09-21 21:42:41 -04:00
spiral
a2bf70b395
feat: don't try to match other systems' members in switch / group add commands 2021-09-13 03:14:59 -04:00
Ske
9bbe9df16d Clean up a few database pool uses 2021-09-03 22:20:07 +02: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
Ske
83212b4bb2 Don't override maximum pool size from connection string 2021-08-24 11:22:41 +02:00
Ske
4c17ee3d89 Fix proxying in channels without message history + reduce proxy latency 2021-08-08 21:56:24 +02:00
Ske
ffe7400539 Fix system tags defaulting to off on servers with no per-guild settings 2021-08-08 15:28:21 +02:00
spiral
34a1470d1f
fix shard fetch order 2021-08-03 18:57:10 -04:00
spiral
9d4006b056
Add server-specific system tag 2021-08-02 17:22:06 -04:00
spiral
e144571904
Add banner (large) image 2021-08-02 13:46:12 -04:00
spiral
3d2435eb2e
move database utils to Database/Utils, create DatabaseMigrator 2021-08-01 11:13:32 -04:00
Ske
ae82bb4168 Updates to Elastic logging 2021-06-10 14:21:05 +02:00
Ske
ae9ed0f4ee Store stard status in the database 2021-06-10 12:52:47 +02:00
Ske
8b948bcfbb Fix inconsistent order when pulling autoproxy members
Signed-off-by: Ske <voltasalt@gmail.com>
2021-06-09 12:26:15 +02:00
Ske
dbde8c07ad Fix a few more compiler warnings
Signed-off-by: Ske <voltasalt@gmail.com>
2021-05-07 10:56:15 +02:00
Astrid
411cbdcd58
Merge pull request #316 from spiralw/feat/checkpatch
API patch improvements
2021-05-07 10:39:22 +02:00
Ske
3d624b39e4 Add message editing command
Signed-off-by: Ske <voltasalt@gmail.com>
2021-05-03 12:33:30 +02:00
spiral
517abf7ff1
feat: show member color in reply embed 2021-05-01 19:20:00 +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
Spectralitree
7010becd32 Add group front percentages (fixing Git history)
Signed-off-by: Ske <voltasalt@gmail.com>
2021-04-06 12:58:50 +02:00
Spectralitree
e7cfd85bd5 I messed up the branches oops 2021-03-28 12:15:21 +02:00
Spectralitree
3603d52e9e Add group and system colors 2021-03-28 12:02:41 +02:00
Spectralitree
9d80b7b141 Add group front percentages
Also add a title to the system frontpercent embed, and tweak the footer
2021-02-09 23:36:43 +01:00
Ske
db4e41a232 Convert autoproxy timeout to use seconds 2020-12-08 12:57:17 +01:00
Astrid
77d63c2838
Merge branch 'main' into feat/ap 2020-12-08 12:25:01 +01:00
spiral
115017980e
Add pk;member group 2020-11-22 19:57:01 -05:00
spiral
8e5fb6520b Add configurable autoproxy latch timeout 2020-11-22 09:42:40 -05:00
spiral
37294b68da Add disabling autoproxy per-account 2020-11-22 09:42:40 -05:00
spiral
41247c68a6 Add disabling front/latch autoproxy per-member 2020-11-22 09:42:40 -05:00
spiral
71461b3163
Add looking up group by displayname; document this 2020-11-14 10:42:51 -05:00
Ske
81cd5496d5 Refactor command message deletion 2020-10-23 12:18:28 +02:00
Astrid
9976789467
Merge branch 'main' into feature/public-reminder 2020-10-23 11:13:50 +02:00
spiral
9da023e97a
change command message timeout to 2 hours 2020-10-19 03:57:43 -05:00
dev-kittens
a5f7bacb3e
Add member is public reminder message on member creation (if system has private members) 2020-10-19 03:50:51 -05:00
spiral
ece7a523ba
whoops 2020-10-18 01:06:20 -05:00
dev-kittens
56bb5e975f
Add handling command reactions
and, uhh, rename invoker_id to author_id
2020-10-18 00:59:36 -05:00
dev-kittens
05cc30279a
- Add storing bot response messages in postgres
- Add scheduled task to clean up said store
2020-10-18 00:18:52 -05:00
Ske
9282d5e9fb Add some more resiliency to DB errors 2020-10-14 23:35:10 +02:00
Ske
5b262fdc7b Fix typo in DB migration >.> 2020-10-09 12:21:07 +02:00
Ske
1fda6ec919 Add per-system member/group limit override 2020-10-09 12:18:29 +02:00
Ske
18ac9f882d Add in-app connection string settings 2020-09-09 22:21:46 +02:00
Ske
c7612df37e Major database refactor (again) 2020-08-29 13:46:27 +02:00
Ske
001aff6298 Restrict member count in group list to public members 2020-08-26 01:50:24 +02:00
Ske
87619a728e Update group migration date 2020-08-25 19:17:16 +02:00
Ske
8688f4d0bf Merge branch 'main' into feature/groups 2020-08-21 18:31:49 +02:00
Ske
10c01da39b Couple more slight tweaks :) 2020-08-21 17:08:49 +02:00
Ske
1bb5d203df Various additional tweaks/additions to groups 2020-08-20 21:43:17 +02:00
Ske
9e251352c7 Various fixes and improvements 2020-08-16 12:10:54 +02:00
Ske
a0fc9d3826 Move some extension methods into their respective class files 2020-08-05 20:24:51 +02:00
Ske
9d5be07f0c Add group icon and privacy to the database schema 2020-07-28 19:17:01 +02:00
Ske
8a28d836c7 Add group member list command 2020-07-28 19:17:00 +02:00
Ske
253ae43c7f Add super basic group model/command 2020-07-28 19:17:00 +02:00
Ske
467b95b1b1 Refactor and simplify member list code 2020-07-07 20:57:22 +02:00
Ske
ae4e8f97d0 Add member avatar privacy 2020-06-20 16:00:50 +02:00
Ske
dd9cc3ef0c Respect description privacy when searching members 2020-06-18 17:33:37 +02:00
Ske
dd2690c3f4 Get rid of compiler warning 2020-06-17 22:39:54 +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
21f8caf006 Update type signature of MessageContext rows 2020-06-15 12:54:22 +02:00
Ske
5aa55359b3 Always return a row from message_context even with both system and guild is undefined (closes #183) 2020-06-15 12:54:00 +02:00
Ske
b9cbd241de Migrate to type-safe model ID structs 2020-06-14 21:37:04 +02:00
Ske
0f041c2e3c Add unit test project and some early tests 2020-06-14 18:56:53 +02:00
Ske
c780781184 Remove unused imports 2020-06-13 23:12:44 +02:00
Ske
6d06474d26 Refactor sort/filter code once again
Now we handle sorting on the bot side, but still filter in the database
2020-06-13 21:49:31 +02:00
Ske
f1b28b7fb6 Move schema migration stuff to Database 2020-06-13 19:54:16 +02:00
Ske
90ac186183 Extract Database to interface 2020-06-13 19:36:43 +02:00
Ske
c875c8af9f Various small fixes, setting guild config now works 2020-06-13 19:15:50 +02:00
Ske
37b99f9521 Wrap DbTransaction too 2020-06-13 18:49:05 +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
292676b694 Optimize last message search in member list view 2020-06-13 02:45:06 +02:00
Ske
d246c9bf33 Change HID function types to char(5) as in DB 2020-06-13 01:54:29 +02:00
Ske
920c8cff01 Optimize message count migration 2020-06-13 01:25:12 +02:00
Ske
8ac2f1e4b8 Move hid generation to the database. Closes #157. 2020-06-13 00:43:48 +02:00
Ske
c39c51426f Remove setters for function models 2020-06-13 00:42:25 +02:00
Ske
729930a562 Move system tag/icon from ProxyMember to MessageContent 2020-06-12 23:30:10 +02:00
Ske
2a39489c4d Move proxy name/avatar logic to the bot itself 2020-06-12 23:24:36 +02:00