Commit Graph

70 Commits

Author SHA1 Message Date
NovaFox161
e5dbe75960 Alter TIME_ISSUED col to be bigint instead of mediumtext
Don't know why it was medium text in the first place, but this is now
fixed and resolved
2020-04-09 00:15:37 -05:00
NovaFox161
6118224318 exclude netty from d4j stores redis because of possible version mismatch 2020-04-07 23:13:24 -05:00
NovaFox161
5c0c1e514d Convert all database calls to being reactive
This commit introduces the r2dbc api for all database handling to make
it fully reactive so future updates to make the bot fully reactive.
While most calls to the database are still blocking, this does use a
reactive driver for it so further work down the line will be able to use
the database reactively without much additional work.

These changes have not been tested, and will need to be tested
thoroughly as database use is the backbone for the bot's persistence
data scheme.
2020-04-07 22:18:43 -05:00
NovaFox161
f504696229 Convert several other data classes to be immutable 2020-04-05 20:23:14 -05:00
NovaFox161
ec9d8adbbd Create WebPartialGuild for partial guild data object
Use a partial guild object instead of a full guild object when partial
is all we need so null values are not floating around.
2020-04-04 16:51:15 -05:00
NovaFox161
60dd9c0a62 Convert several data classes to be immutable 2020-04-03 17:22:59 -05:00
NovaFox161
5bac8a4c51 Dannie - Parallelize Mono/Database Calls to Improve Response Times 2020-04-03 16:40:52 -05:00
NovaFox161
c369710e50 Debugging guild get endpoint taking too long to execute
Add some more debug statements to see where execution is still slowing
down. So far its at about 4-5 seconds, the goal is to get it near 1 sec.
max
2020-04-03 15:00:46 -05:00
NovaFox161
524db88f6c Debugging guild get endpoint taking too long to execute
Optimize WebGuild conversion so that it will hopefully take less than
the current ~4 seconds to execute
2020-04-02 23:28:12 -05:00
NovaFox161
20eef0e115 Debugging guild get endpoint taking too long to execute
Rewrote a whole ton of the permissions checking so that it should run
faster. Hopefully this helps speed up the guild get endpoint
significantly
2020-04-01 20:55:22 -05:00
NovaFox161
ad0168de98 Debugging guild get endpoint taking too long to execute
This should optimize numerous things including discal role permission
check
2020-04-01 02:20:50 -05:00
NovaFox161
23fad39ae6 Debugging guild get endpoint taking too long to execute
Attempt to make channel aggregating and bot nickname retrieving faster
2020-04-01 00:59:35 -05:00
NovaFox161
e3093f8c8d Add exact timestamp to logging webhooks for clearer info
Added the timestamp to the webhooks used for logging so that staff can
know easily when the message was pushed to the webhook, rather than just
when discord received it in the event of several messages within a few
seconds, as discord only shows down to the minute
2020-04-01 00:38:41 -05:00
NovaFox161
f510b5fb40 Debugging guild get endpoint taking too long to execute cont
still trying to make getting roles faster as this seems to be one of the
slowdowns.
2020-04-01 00:27:46 -05:00
NovaFox161
3fd18850af Debugging guild get endpoint taking too long to execute
Attempting to speed up part of this by rewriting how roles are converted
2020-03-31 23:27:44 -05:00
NovaFox161
036596f552 Debugging guild get endpoint taking too long to execute
We have narrowed down where the slowdown starts and ends, however there
is still a lot of things happening between there, so therefore we are
checking what parts of those sections of the code are causing issues.
2020-03-31 22:55:35 -05:00
NovaFox161
a5bd7cb444 Corrected wrongly configured repo deployment
Messed out how to deploy to repos in the poms as I forgot how to do it,
this issue is now fixed and it will correctly go through the deploy goal
while only actually deploying core to the repos.
2020-03-30 01:57:41 -05:00
NovaFox161
7729329a0b retool API to handle snowflake IDs as strings instead of longs
This is because they become out of range of JS's `number` type and cause
problems. So, by handling them as strings, and only strings withing the
API, this solves the issue and we should not run into precision issues
anymore.
2020-03-30 01:50:18 -05:00
NovaFox161
e7295031b0 Add support for changing language in dashboard 2020-03-28 19:11:12 -05:00
NovaFox161
d427908d3b Change revision to 3.1.0-SNAPSHOT and add distro management
This changes the revision number to be correct, as well as add
distribution management for discal core as this is the main API the bot
uses for object handling and utilities
2020-03-28 14:45:07 -05:00
NovaFox161
1a0b1c1d01 Add showing guild shard on dashboard
This commit adds showing the shard index that the guild is expected to
be on.
2020-03-28 14:00:58 -05:00
NovaFox161
33d5169bbb Sometimes I'm really dumb and duplicate a line of code 2020-03-11 18:21:19 -05:00
NovaFox161
0941d19a87 Did a dumb and didn't actually make web guild convert settings secure 2020-03-11 17:59:16 -05:00
NovaFox161
1b4ef13ac7 Fix up some handling of guild data transfer
- make sure that secure data is not sent to 3rd parties
- correct the permissions checker
- dashboard guild page should now load correctly
2020-03-11 17:51:55 -05:00
NovaFox161
d0b4181434 Use revision tag to handle project versioning in poms 2020-03-09 14:19:37 -05:00
NovaFox161
2d22b9a5e6 Fix event list month endpoint using int instead of long
In the process of this, also optimized a few database queries
2020-03-08 18:11:43 -05:00
NovaFox161
e8d013a709 Get Typescript working on web + some extras
This commit gets typescript compiling to browser-safe javascript using webpack.
Also fix some issues regarding handling status endpoints, missed debug and error reports, and cleaning some other things up.

Last change involves getting maven to automatically compile typescript and styles for the website without needing to do it in cli before the package
2020-03-07 21:24:11 -06:00
NovaFox161
0fed1716ea Fix endpoint registration for spring
Apparently you can't have 2 classes named the same thing because of how it registers beans.
2020-03-05 15:29:00 -06:00
NovaFox161
164a939c8f Make some massive changes to how the website is built and fix several issues
This commit changes a lot of things, the major changes are as follows:
- removed all old web files from server module
- Switched to using Typescript for development of the frontend
- fixed /events/list/list endpoint duplication
- Compile all TS code into a single JS file
- Add automatic gulp building/cleaning on maven steps
- Add object parity in TS for OOP handling
- All relevant API calls have own TS file for request eliminating duplicated code
- Add read-only API key support for embed pages (so that a temp key can be generated for anonymous users without write permissions)
- Fixed several typos and small issues
2020-03-03 14:16:40 -06:00
NovaFox161
4977ade3e1 Complete documentation on API and clean up API code
Completely finished the doc pages on the API,
as well as refined some of the code in the API endpoints
so that everything is nice and standardized,
as well as comprehensive.
2019-12-09 17:45:53 -06:00
NovaFox161
775ccdfe6e Huge progress on the API. Push for other computer
Not done yet.
2019-12-06 22:22:31 -06:00
NovaFox161
020fd2d511 Finish status page rewrite. 2019-11-04 01:11:49 -06:00
NovaFox161
6e700a23a9 Finish up the home/landing page 2019-10-17 20:25:13 -05:00
NovaFox161
71b9aac9dd Continuing work on the website rewrite
Add back everything that was accidentally removed, fix up some stuff, and make it bootable. Next up is getting the theming corrected and adding the rest of the public pages before working on the dashboard.
2019-10-16 13:57:25 -05:00
NovaFox161
d3eb0b3640 This should fix the time display issues (not tested) 2019-08-06 12:43:48 -05:00
NovaFox161
48632af129 Add FlywayDB for database migrations. 2019-06-23 02:26:03 -05:00
NovaFox161
bbded8449d Fix logback turbo filter. 2019-06-20 14:45:59 -05:00
NovaFox161
6c5d772096 A shit ton of changes to small things. 2019-06-17 14:38:56 -05:00
NovaFox161
5c3a34c459 Clean up some logger issues and mislabeled titles. 2019-06-13 22:47:40 -05:00
NovaFox161
721ff87c4a Working on fixing time display offset bug. 2019-06-13 22:01:28 -05:00
NovaFox161
ef6bd649ff Fix some logging stuff 2019-06-13 13:39:38 -05:00
NovaFox161
6900ae7a8d Handle some additional settings. 2019-06-12 11:36:34 -05:00
NovaFox161
66d29b904c Add cache purging. 2019-06-12 11:02:18 -05:00
NovaFox161
bf0208c08c Use Redis pub/sub and HTTP requests for communication. 2019-06-12 10:55:47 -05:00
NovaFox161
299481b43f Fix bug where Categories were being seen as channels. 2019-06-08 22:18:24 -05:00
NovaFox161
cd80d43902 Update some deps. Support MySQL Master/Slave Replication 2019-06-06 14:07:39 -05:00
NovaFox161
8fb91cc364 Add webhooks for logging and such. Needs testing. 2019-04-08 16:06:43 -05:00
NovaFox161
fc2ec9a162 Use d4j v3.0.1, add redis stores (not working yet). 2019-04-02 20:45:58 -05:00
NovaFox161
27cc0a5737 Update all of out deps. Move to Spring 2.
Thymeleaf 3.0.11.RELEASE
Spring 2.1.3.RELEASE
Spring Security 5.1.4.RELEASE
Google api client 1.28.0
Google calendar API v3-rev371-1.25.0
Google oauth client 1.28.0
mysql connector 8.0.15
json 20180813
commons logging 1.2
okhttp 3.14.0
logback-classic 1.13.0-alpha4

Website also now uses redis for session store instead of hash_map
2019-03-23 22:25:12 -05:00
NovaFox161
0e1241a4fa Should help with some mem issues. 2019-03-21 12:41:06 -05:00