Commit Graph

2138 Commits

Author SHA1 Message Date
Aurora Lahtela
24a8c75b67 Add support for configuring the plugin using environment variables.
Examples:
- Plugin.ServerName -> PLAN_PLUGIN_SERVERNAME
- Database.MySQL.Password -> PLAN_DATABASE_MYSQL_PASSWORD

Affects issues:
- Close #1353
- #1991
2024-04-21 20:35:41 +03:00
Sniper_TVmc
132fa2f919
Update locale_FR.yml (#3578) 2024-04-21 09:25:28 +03:00
jhqwqmc
590e0445cb
Update locale CN by jhqwqmc (#3567) 2024-04-20 10:04:24 +03:00
Aurora Lahtela
74ae2dcf40 Fix server allowlist bounces not being exported 2024-04-07 11:18:38 +03:00
Aurora Lahtela
f40e1498c1
3268/redesign join address visualization (#3558)
- Join address pie removed
- Join address group mechanism added
  - User can select multiple addresses for each group
  - User can rename each group to their liking
  - The groups are stored in preferences so that user doesn't need to add them back every time
- Use the join address group mechanism for time series of Join Addresses
- Use the join address group mechanism for Player Retention
- Small improvement to retention graph: Show multiple labels
- Small improvement to site clock: Can now hover to show actual date

Affected issues:
- Close #3268
2024-04-07 11:13:18 +03:00
Aurora Lahtela
8c36f318c7 Prevent duplicate key exception from being thrown entirely
Affects issues:
- Fixed #3543
2024-03-30 10:11:15 +02:00
Aurora Lahtela
49269d3aab Attempt to fix duplicate key issue in UpdateWebPermissionsPatch
Affects issues:
- #3543
2024-03-30 09:48:19 +02:00
Aurora Lahtela
6d9494d680
Add mcmdev as contributor
For this contribution https://github.com/plan-player-analytics/Extension-LibertyBans/pull/9
2024-03-21 21:28:17 +02:00
jhqwqmc
bd8d92b45c
Update locale_CN.yml (#3516) 2024-03-17 20:15:14 +02:00
Aurora Lahtela
4fb67d7ba7 Update French Locale (FR) by Sniper_TVmc 2024-03-14 20:44:50 +02:00
Aurora Lahtela
20b8ab9baa Add 'Edit Query' button to Query Results
This allows easier editing of existing query results
2024-03-14 20:17:08 +02:00
Aurora Lahtela
7463d4e440 Fix exception related to CONCAT on SQLite in Extension boolean storage
Affects issues:
- Fixed #3514
2024-03-11 20:52:41 +02:00
Aurora Lahtela
9fa1a94301 Fix join address not appearing in /plan ingame
Affects issues:
- Fixed #3513
2024-03-11 20:30:31 +02:00
jhqwqmc
30532acf46
Update locale_CN.yml (#3512) 2024-03-11 20:18:30 +02:00
Aurora Lahtela
8116063e62
Whitelist bounce gathering (#3511)
* Store bounced whitelist logins

* Add allowlist bounce endpoint

* Restore locale file indent from master branch

* Add UI for allowlist

* Update locale

* Fix sonar detected bug and implement database tests

Affects issues:
- Close #2233
2024-03-10 10:25:42 +02:00
Aurora Lahtela
7299e10064 Fix InstalledPluginGatheringTask running on server thread 2024-03-09 21:15:43 +02:00
Aurora Lahtela
de9f9ec5b4
Sonar fixes (#3510)
* Remove deprecated code

- RemoveUnsatisfiedConditionalPlayerResultsTransaction.java
- RemoveUnsatisfiedConditionalServerResultsTransaction.java

* Fix apache compress deprecations

- Use org.apache.commons.io.IOUtils instead of org.apache.commons.compress.utils.IOUtils
- Use TarArchiveInputStream#getNextEntry instead of getNextTarEntry

* Rename variable in BukkitPingCounter

* Extract ApiServices from PlanSystem
2024-03-09 14:43:41 +02:00
Aurora Lahtela
670ef2aff3 Fix exception when storing Extension boolean values with MySQL
Query was using reserved keyword 'stored' as a table alias

Changed it to use 'indb' as the alias

Affects issues:
- Fixed #3508
2024-03-09 10:51:53 +02:00
Aurora Lahtela
9c43287f60 Add Join Address to /plan ingame and placeholders
Adds a %plan_player_join_address% placeholder

Affects issues:
- Close #3463
2024-03-09 10:44:33 +02:00
Aurora Lahtela
70e3f394ba Change player ping graph data format
HighCharts error 12 was occurring due to too many data points

This commit changes player ping graph data to be served in format expected by turbo-mode so that it renders.

Affects issues:
- Fixed #3498
2024-03-05 20:10:20 +02:00
Aurora Lahtela
701866cc6a Don't try to delete conditional providers if there's nothing to delete 2024-03-02 09:14:27 +02:00
Aurora Lahtela
7368eccbbd Optimize unsatisfied extension conditional value cleanup
Extensions support @Conditional value where a boolean provider determines if other values should exist.
Unsatisfied values were being removed during database cleanup task.
The cleanup transaction was very slow and could hang the server if it was performed near shutdown.

The cleanup is now performed on boolean value change (individual value for one player)
instead of with large cleanup transaction (all values and all players).

Affects issues:
- #3436
2024-03-02 08:53:38 +02:00
Aurora Lahtela
6ed23f0c0b Download GeoLite2 Country database from playeranalytics.net
Affects issues:
- Fixed #3452
2024-02-28 11:47:16 +02:00
Aurora Lahtela
4042980379 Fix build issue 2024-02-28 10:10:35 +02:00
Aurora Lahtela
092533d0b7 Change order of guards to allow IP blocklisted requests to be rate-limited 2024-02-28 10:09:21 +02:00
Aurora Lahtela
ab94ab9125 Rate limit against simple DDoS
Affects issues:
- Close #1846
- Close #3486
2024-02-28 10:02:26 +02:00
Aurora Lahtela
b50fa10e12 Reduce DDoS impact of access log transactions
Made Plan skip access logging if transaction queue is larger than 500 transactions
Reduced amount of objects held by access log transaction by serializing request properties to objects before passing to transaction.

Affects issues:
- #3486
2024-02-27 10:11:45 +02:00
Aurora Lahtela
b867bcebdb Don't save sessions on server shutdown if database already closed
Affects issues:
- #3436
2024-02-17 09:19:38 +02:00
Aurora Lahtela
bede36957b Fix ShutdownSaveTest 2024-02-17 09:11:37 +02:00
Aurora Lahtela
2daf3943b7 Make call-site for SQLite JVM wait more accurate
Affects issues:
- #3436
2024-02-17 09:06:45 +02:00
Aurora Lahtela
e041e193fc Close transaction queue after connection wait on SQLite
Affects issues:
- #3436
2024-02-11 15:47:39 +02:00
Aurora Lahtela
bf3bdb599d Log connection waiting sites without dev mode 2024-02-04 10:05:48 +02:00
Aurora Lahtela
5ddbd52d37 Log connection holding call sites in dev-mode 2024-02-03 10:17:31 +02:00
Aurora Lahtela
4615c6b6b0 Optimize unsatisfied condition removal for players with user_id join
The query was joining based on UUID which can be slow since it's a string.
2024-02-03 09:13:00 +02:00
甜力怕
bda96726f8
Update locale_CN.yml by liuzhen932 (#3437) 2024-01-28 09:05:07 +02:00
Aurora Lahtela
a8decff8e8 Make Ping Table use DataTablesTable
Also fixed issue where server ping table never loaded
2024-01-27 21:02:04 +02:00
Aurora Lahtela
3ad5d577d4 Make Query view affect ping data retrieved
All ping data was being used to create average.

This allows comparing ping over time
2024-01-27 14:01:14 +02:00
Aurora Lahtela
7494902e46 Add regular_players and network_regular_players placeholders
Affects issues:
- Close #3425
2024-01-27 13:38:06 +02:00
Aurora Lahtela
01ce503c77 Add network session placeholders
Affects issues:
- Close #2267
2024-01-27 13:35:03 +02:00
dependabot[bot]
512defb3f8
Bump org.seleniumhq.selenium:selenium-java from 4.12.1 to 4.17.0 in /Plan (#3434)
* Bump org.seleniumhq.selenium:selenium-java in /Plan

Bumps [org.seleniumhq.selenium:selenium-java](https://github.com/SeleniumHQ/selenium) from 4.12.1 to 4.17.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.17.0)

---
updated-dependencies:
- dependency-name: org.seleniumhq.selenium:selenium-java
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Use new headless setup method

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Aurora Lahtela <24460436+AuroraLS3@users.noreply.github.com>
2024-01-27 09:49:50 +02:00
Aurora Lahtela
8356a0d52e Test and fix top_ placeholders
Affects issues:
- Fixed #3369
2024-01-21 20:08:46 +02:00
Aurora Lahtela
c8d0cc91b6 Fixed react bundle getting exported when export is disabled
Caused by missing checks before react export.

Affects issues:
- #3384
2024-01-21 19:33:24 +02:00
Aurora Lahtela
ae85f39871 Stop JSON cache mismatch when UUID is missing
The check for {identifier}- meant that lookup for "PLAYERS_ONLINE-"
would also match "PLAYERS_ONLINE-{uuid}-" since start is the same

Fixed this by changing identifiers to PLAYERS_ONLINE_{uuid}-{timestamp}

Affects issues:
- Fixed #3404
2024-01-21 19:21:41 +02:00
Aurora Lahtela
9e08794ddd Update locale files 2024-01-21 10:04:17 +02:00
Aurora Lahtela
34a731b70a Add CSV export to all DataTables
Affects issues:
- Close #3413
2024-01-21 10:02:39 +02:00
Aurora Lahtela
8e94d26ff3 Format Server/Network Overview values in the frontend 2024-01-20 11:34:20 +02:00
Jeroen Bollen
fa1ec4f4f6
Fabric 1.20.4 (#3366) 2024-01-07 11:39:06 +02:00
Aurora Lahtela
bc4aef8b2b Add some missing javadocs to not generate warnings 2024-01-06 18:01:50 +02:00
Aurora Lahtela
bc424f062f
3236/vite migration (#3354)
* Migrate to Vite
* Remove asset-manifest.json which vite doesn't generate
* Fix tree-shaking removing Export URL if-blocks from services
* Implement address correction for the vite bundle
* Fixed issue with single proxy online graph 403 without page.server.overview.players.online.graph

Affects issues:
- Close #3236
2023-12-10 09:29:01 +02:00
jhqwqmc
26854c37cc
Update locale_CN.yml (#3345) 2023-12-06 11:42:06 +02:00