Commit Graph

169 Commits

Author SHA1 Message Date
Salanto
d68fb66759 Executive Order 14042 : Implement IPRange Ban 2021-11-14 13:27:55 +01:00
Salanto
2c96e2683f Add optional color configuration 2021-09-20 21:09:28 +02:00
Salanto
18281ae401 Implement clearcm command 2021-09-19 17:00:14 +02:00
Salanto
db0bd77299 Apply change suggestions
Alternative title : Literally unreadable 2
2021-09-18 17:30:38 +02:00
Salanto
983a2365fb Update helpfile for all commands.
+ Document cmdCharSelect
2021-09-16 23:16:58 +02:00
Salanto
970b0975b4 Add command to retrieve help information
+ Rename old help that displays available commands to commands
+ Layout basic helpfile
2021-09-15 20:27:05 +02:00
Salanto
fb4c3481d2 Implement help information loader 2021-09-15 00:44:00 +02:00
Salanto
df237bbe3a Improve error handling and messaging to user 2021-09-13 18:13:48 +02:00
Salanto
00da956ec8 Add ACL check so moderators can toggle jukebox 2021-09-12 23:49:20 +02:00
Salanto
8bdfe1e045 Ensure that no stale songs are in the jukebox queue when its disabled
Housekeeping and fix /currentmusic not returning a song
2021-09-12 23:20:09 +02:00
Salanto
f9dcaa2aa5 Implement a basic and functional jukebox implementation 2021-09-12 22:32:10 +02:00
Salanto
5115b97721 Implement JSON musiclist file loading 2021-09-12 13:46:18 +02:00
Salanto
fa1907fbff Update slot decalarations and implementation to enforced naming sheme 2021-09-12 12:28:40 +02:00
Salanto
f523fc6ec0 AOClient madness 2021-09-11 19:46:40 +02:00
Salanto
318d12eb7d Rename AOClient member variables
Cleanup a lot of of the variables naming inside area.cpp
2021-09-11 17:33:46 +02:00
Salanto
b22a83658a Cleanup Logger 2021-09-10 23:56:57 +02:00
Salanto
4ac4dfdcc7 Cleanup variable naming modern advertiser 2021-09-10 23:40:27 +02:00
Salanto
a4e8442657 Cleanup some variable naming
+ move file reading operations into ConfigManager
2021-09-10 23:33:37 +02:00
Salanto
fec1722697 Overload flush method and un-stupid the switch case 2021-09-10 20:38:27 +02:00
Salanto
f24d16eb68 Remove old log definitions from area_data.h
Apparently I completely forgot about those.
2021-09-10 18:39:02 +02:00
Salanto
8ad57633ae Implement simple area sorted logs 2021-09-10 15:59:10 +02:00
Salanto
61a2aa4f09 Remove SQL logger implementation
Out of scope for this PR which primary aim is to refactor the current logger to be area independant
2021-08-25 16:42:10 +02:00
Salanto
0cfaf25f66 Fix Webhook Buffer, Fix QStringLiteral Arg missing 2021-08-25 06:34:46 +02:00
Salanto
70a63dd8b3 emit most log slots from AOClient
- Still need to figure out how login handles it
2021-08-25 05:34:16 +02:00
Salanto
bc5ec9fa9d Add hwid to logconnectionattempt 2021-08-25 03:29:16 +02:00
Salanto
16fd57e591 Hookup new clients to logger, test logger construction and log writing to buffer 2021-08-25 02:33:19 +02:00
Salanto
eda0a2f690 Implement client signals, add deconstructor + initial construction test 2021-08-25 01:49:44 +02:00
Salanto
86a7d0a3aa Log modcalls, add case for modcall logger writing 2021-08-25 00:18:46 +02:00
Salanto
4d20facc33 Add basic constructor 2021-08-24 23:43:35 +02:00
Salanto
055ef2e6a4 Implement log message creation 2021-08-24 23:25:39 +02:00
Salanto
f2a4f2d3e3 Add slot definitions, fix small oversight in QQueue oopsie 2021-08-24 19:17:37 +02:00
Salanto
f8fd854f3f Reconsider approach to transport log information 2021-08-24 16:17:25 +02:00
Salanto
5af2be130d Supress compiler warning on unimplemented methods
+ Expose struct trough member variable
+ Try to enforce consistent naming
2021-08-24 15:44:45 +02:00
Salanto
58a751afb0 Resolve compile error 2021-08-24 15:44:45 +02:00
Salanto
f31d474def Document u_logger.h 2021-08-24 15:44:45 +02:00
Salanto
685a66e8f4 Add more log datatypes, define slots for log processing and area buffer 2021-08-24 15:44:45 +02:00
Salanto
5b3e420214 Add executing code and cleanup header
+ Correct path mistake in Modcall writer
2021-08-24 15:44:45 +02:00
Salanto
a836d2f500 Add basic implementation of SQL Writer and Modcall writer 2021-08-24 15:44:45 +02:00
Salanto
e512897651 Add Full log writer 2021-08-24 15:44:45 +02:00
Salanto
860af5af82 Setup basic strcuture
Welcome to the ride. You may witness me slowly loosing my sanity on this.
2021-08-24 15:44:45 +02:00
Rosemary Witchaven
624fe41e12
Fix or suppress compiler warnings (#158)
* purge warnings

* indentation change

* unused macros for notice cmd

* cleanup clazy/clang-tidy diagnostics
2021-08-23 19:07:22 -05:00
Salanto
20a9112a21 Fix Embed Construction Order 2021-08-19 23:01:12 +02:00
Rosemary Witchaven
ce660b56de
Merge pull request #188 from AttorneyOnline/device-not-open
Fix QIODevice::read (QTcpSocket) device not open error
2021-08-19 15:11:57 -05:00
Salanto
5f3d42d999 Remove unusued nullpointer 2021-08-19 21:48:33 +02:00
Salanto
2efb6edee8 Privatize Discord + use Signals better
None of this is called outside of Discord, so there's no point on having it public.

Bonus note on the slots :
But if you close your eyes,
Does it almost feel like
Nothing changed at all?
2021-08-19 21:46:05 +02:00
in1tiate
637a6170e9 wait for connection before reading first data 2021-08-18 20:47:10 -05:00
Salanto
f4038d4678 Cleanup Discord class and fix reload error 2021-08-12 22:55:27 +02:00
Salanto
931365d1bd Resolve compile error 2021-08-12 22:03:42 +02:00
Salanto
9148e522aa Make webhook reloadable 2021-08-12 21:44:53 +02:00
Salanto
51ca518aeb Add QElapsedTimer to track server uptime
Had no better place to put it without making it needlessly complicated.
2021-08-12 21:33:13 +02:00
Salanto
893b3f6cb1 Document ban webhook signal 2021-08-12 20:43:03 +02:00
Salanto
f604e9c8de Split discord configuration into different file
The current config.ini is both long and full of text.
This reduces readability and combines essential configuration with non-essential configuration.
Splitting optional features like Discord into its own config helps the readability issue by not beating the users to death with information.
2021-08-11 23:52:53 +02:00
Salanto
4550128d63 Merge branch 'master' into AliveHook 2021-08-11 13:06:36 +02:00
Salanto
9d55d3ea9e Inherit tr method from QObject 2021-08-11 08:52:01 +02:00
Salanto
aaccf8e605 Implement Uptime Webhook
This commit implements a functional uptime webhook which posts a message to the config defined webhook URL. The interval is configurable, but not updatable.
2021-08-11 07:56:08 +02:00
Rose Witchaven
ec45370a71
Merge pull request #180 from t-h-i-s-u-s-e-r-n-a-m-e-i-s-c-a-n-c-e-r/patch-1
Add a check for file writability to the DB to confuse users slightly less.
2021-08-10 16:59:08 -05:00
Salanto
058b5cef63 Update ban webhook to utilize different url
+ Update sample config
+ Clarify webhook urls in the config and configmanager.
2021-08-10 22:16:09 +02:00
Rose Witchaven
d7d5984631
Merge pull request #177 from AttorneyOnline/pay-attention
Add /notice, for moderators to be heard above the noise
2021-08-10 09:19:07 -05:00
in1tiate
c6b0c5f6de move notice functionality to helper function 2021-08-10 00:28:36 -05:00
cancer
a624fd502a do it with qt 2021-08-08 21:12:03 +03:00
t-h-i-s-u-s-e-r-n-a-m-e-i-s-c-a-n-c-e-r
23b5962e2a
defined 2021-08-08 08:04:02 +02:00
t-h-i-s-u-s-e-r-n-a-m-e-i-s-c-a-n-c-e-r
a18ecfd633
add access() 2021-08-08 07:48:32 +02:00
Salanto
401f98b23e Set the background in area data.
Currently, Akashi does not save the changed background in the area, meaning clients will default to the configs background.

This commit addresses the issue by saving the new background in the area data, meaning it is persistent between people moving in and out of the area.
2021-08-07 22:21:53 +02:00
in1tiate
7b1845aa8d add global version of/notice 2021-08-04 06:12:25 -05:00
in1tiate
e60f18554b add notice box command for moderators to get attention quickly 2021-08-04 05:30:22 -05:00
scatterflower
af353b942e
Merge pull request #164 from Salanto/Ban-Webhook
Implement ban webhook
2021-08-02 16:53:15 -05:00
scatterflower
97e0d633d7
Merge pull request #172 from Salanto/log_shownames
Add showname to IC logs
2021-08-02 16:52:51 -05:00
Salanto
9e824e1256 Implement Webhook for Ban Information
Co-Authored-By: Rose Witchaven <32779090+in1tiate@users.noreply.github.com>
2021-08-02 23:49:37 +02:00
Salanto
2f92ca99f4 Correct configuration update oversight during config reload for the modern advertiser
Corrects oversight that causes ports to be reloaded in case they change in the config. Since Akashi cannot change its port mid-operation, that information needs to be excluded during a reload.
2021-08-02 00:38:31 +02:00
Salanto
7f0ff0f2e6 Add showname to the IC logs
This is a bit hacky, but eh, I've commited worse crimes against AO.
2021-08-01 17:00:01 +02:00
scatterflowr
de89d156ec Revert "Make /mods only useable by moderators"
This reverts commit 3f5e12b77f.
2021-07-29 00:48:08 -05:00
scatterflower
78f3e1d3d1 Fix WebSocket proxy not gluing segmented TCP packets back together 2021-07-27 17:44:26 -05:00
scatterflower
5e52fe9858
Merge pull request #149 from AttorneyOnline/mods-changes
Make /mods only useable by moderators
2021-07-27 06:54:56 -05:00
scatterflower
16d6c8a983
Merge pull request #148 from AttorneyOnline/fixes
Fix evidence and config issues
2021-07-12 15:29:54 -05:00
scatterflower
5b99fc4e16
Merge pull request #151 from Pyraqq/testimony-check
Prevent testimony messages containing "<" and ">".
2021-07-12 15:27:57 -05:00
Salanto
13cd901cfc Use struct to transport config
+ Fix debug message on success
2021-07-11 20:15:04 +02:00
Salanto
910560ec13 Some more adjustment on documentation 2021-07-10 17:00:35 +02:00
Salanto
e109c6b4df Fix documentation and weird formatting 2021-07-10 16:58:15 +02:00
Salanto
8994ba2626 Implement new advertiser
I want to die.
2021-07-08 23:18:49 +02:00
Pyraqq
6071a6242e Make QString a const. 2021-07-08 21:02:44 +02:00
Pyraqq
2a229541ef Prevent testimony messages containing "<" and ">". 2021-07-08 17:54:27 +02:00
MangosArentLiterature
3f5e12b77f Make /mods only useable by moderators 2021-07-02 23:45:40 -05:00
MangosArentLiterature
d728a9e676 Fix evidence and config issues
- Load auth and log values in uppercase.
- Move evidencemod to an enum class.
- Fix LE packet being incorrectly encoded.
2021-06-24 11:09:39 -05:00
scatterflower
a90dfd2005
Merge pull request #138 from AttorneyOnline/remote-bans
Allow banning clients not connected to the server
2021-06-21 22:25:27 -05:00
MangosArentLiterature
ef3103a87f Replace all std::pair with QPair 2021-06-21 22:14:37 -05:00
MangosArentLiterature
1e20ab0ae6 Merge branch 'master' into remote-bans 2021-06-21 22:07:30 -05:00
scatterflower
2885bddc30
Merge pull request #143 from AttorneyOnline/discord-refactor
Discord webhook refactor
2021-06-21 22:07:20 -05:00
MangosArentLiterature
6e2a3a0fca Fix crash relating to ConfigManager changes 2021-06-21 22:05:59 -05:00
MangosArentLiterature
5d63ce7a2a Merge branch 'master' into discord-refactor 2021-06-21 21:52:24 -05:00
scatterflower
78a644e592
Merge pull request #137 from AttorneyOnline/ignore-bglist
Add the ability to ignore the BG list per area
2021-06-21 21:50:26 -05:00
scatterflower
4f4b64e662
Merge pull request #140 from AttorneyOnline/fix-logging
Log commands and OOC messages separately
2021-06-21 21:46:29 -05:00
scatterflower
86e8d4dd7b
Merge pull request #141 from AttorneyOnline/fix-ban-crash
Fix crash with /ban
2021-06-21 21:45:53 -05:00
MangosArentLiterature
0e6efb18c0 Use QSettings instead of settings struct
As it turns out, I am not intelligent.
2021-06-19 23:05:33 -05:00
MangosArentLiterature
c4db245bec Rewrite ConfigManager and server configs
- Rewrites ConfigManager
- Adds DataTypes
- Changes "auth" and "logging" to use new AuthType and LogType types.
- ConfigManager now handles all config loading
- Remove AreaData and Server config.ini and command config loading.
2021-06-18 18:06:32 -05:00
MangosArentLiterature
4f7d5cd045 Discord webhook refactor
Completely refactors the Discord class, breaking it up into separate functions and slots, removing circular dependencies, and replacing most pointers with const references.
2021-06-17 19:21:37 -05:00
MangosArentLiterature
da7aa12b90 Fix crash with /ban
Sets /ban to require 3 arguments instead of 2
2021-06-14 11:24:18 -05:00
MangosArentLiterature
c7a1bc3ec9 fix documentation part 2 2021-06-12 12:15:20 -05:00
MangosArentLiterature
bfe5c8c733 fix documentation
def. didn't forget to do this
2021-06-12 12:13:26 -05:00
MangosArentLiterature
8416232ff9 Log commands and OOC messages separately
Now every OOC message won't be treated as if it were a command, only commands will be sent to the command logger.
Also, much needed .gitignore update
2021-06-12 12:05:47 -05:00
MangosArentLiterature
a561d3eb47 Mirror isIPBanned() changes to isHDIDBanned()
this also removes getBanReason and getBanDuration as they are now no longer needed

also minor clean up this websocket ip ban or whatever
2021-06-09 23:32:55 -05:00