Commit Graph

3862 Commits

Author SHA1 Message Date
Risto Lahtela
f8706355da
Update gradle.yml 2019-11-15 09:42:07 +02:00
Risto Lahtela
d6d7ce2c2f
Update gradle.yml 2019-11-15 09:41:34 +02:00
Risto Lahtela
20848d10ff
Update gradle.yml 2019-11-15 09:36:06 +02:00
Risto Lahtela
737606b922
Create gradle.yml 2019-11-15 09:33:47 +02:00
Rsl1122
c8a97ebca8 Fixed improper replacement
PlayerPageExporter was exporting player json file to player%3Duuid.json
but browser parsed that to be file player=uuid.json, leading to the
player page not loading the value

This was because copy-pasting the PageExporter from Server page missed
server= being replaced, while player= was supposed to be replaced.

Fixed by changing server= to player=

Affects issues:
- Fixed #1223
2019-11-14 19:03:05 +02:00
Rsl1122
eda40a4ade Fixed player page not displaying value errors
Function to display errors in player-values.js was missing
2019-11-14 18:52:42 +02:00
Rsl1122
852ffb81e6 Changed Player data export path
Previous path did not match the path used in player.html, leading to
the path not being replaced in the exported files.

Now the new path should be replaced into the files, allowing people to
view exported player.html data.

Affects issues:
- Fixed #1223
2019-11-12 19:43:22 +02:00
Rsl1122
85401b37f2 DiscordSRV Extension Update by Vankka
Affects issues:
- Fixed #1221
2019-11-12 19:38:07 +02:00
dependabot-preview[bot]
07f593ae2d Bump com.github.johnrengelman.shadow from 5.1.0 to 5.2.0 in /Plan
Bumps com.github.johnrengelman.shadow from 5.1.0 to 5.2.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-11 06:50:08 +00:00
Risto Lahtela
6ab0a5d521
Update versions.txt 2019-11-10 11:11:00 +02:00
Rsl1122
0ccf7678c4 Fixed some new code smells
- Files.isDirectory call apparently slow
- Unused private method removed in WorldPie
- Replaced OptionalAssert with Assertions.assertEquals
2019-11-10 10:20:55 +02:00
Rsl1122
32ccc6ac7f Minimize Registerdate on networks
On networks register date is not available so plan_users register date
was set as the first login date Plan sees the player. This lead to
confusion when Plan was installed and old players were counted as
new players by Plan since it had not seen them before.

Code was changed to reduce confusion by updating the register date
in plan_users to smallest possible value if register date exists on a
bukkit server.
2019-11-10 09:51:16 +02:00
Risto Lahtela
717181eca9
Plan config dir can now be a symlink - by Combustible (#1217)
* Allow Plan config dir to be a symlink (#1208)

Signed-off-by: Byron Marohn <combustible@live.com>

* Added Combustible as a contributor
2019-11-10 09:38:10 +02:00
Rsl1122
113ca21343 Changed a query using wrong table
Activity index grouping query for /network page was using plan_user_info
instead of plan_users.

This lead to duplication of users if a player had played on multiple
servers.

Affects issues:
- Fixed #1216
2019-11-09 17:57:10 +02:00
Rsl1122
1b2342fe11 Changed redirection of root page
Changed Redirects
From / -> "/server/" to /server/ServerName
From  /server/Unexisting -> "/server/" to "/server/ServerName"

Affects issues:
- Close 1210
2019-11-09 17:52:29 +02:00
Rsl1122
f17470ee6c Changed auth check order
Fixes an issue where authentication is not required but is present
anyway, leading to WebAuthFailException when trying to get
web user for authentication headers coming from a reverse-proxy.

Affects issues:
- #1215
2019-11-08 12:13:15 +02:00
Rsl1122
cafcb61cf5 Added average ping to sessions on /player page
- This might increase memory usage when viewing player page by a little
- This might increase time it takes to get player page json
- 'avg_ping' is not always present for a session

Affects issues:
- Close #864
2019-11-07 13:41:53 +02:00
Rsl1122
4bcf2141d9 Implemented median first session length
Affects issues:
- Close #1211
2019-11-07 13:01:23 +02:00
Rsl1122
f641c44bf2 Added ACTIVE_SESSION to Player placeholders
Playtime was not being updated live for the player placeholders because
the Active session was not added in the PlayerContainer before
calculations.

- Added the active session (if present) to the placeholders
- Updated session state when it is fetched from the cache (world time)

Affects issues:
- Close #1209
2019-11-07 12:55:57 +02:00
Rsl1122
97094a9e03 Added warning about 0.0.0.0 as address
Affects issues:
- Fixed #1214
2019-11-05 12:20:17 +02:00
dependabot-preview[bot]
0bb383acd9 Bump slf4jVersion from 1.7.28 to 1.7.29 in /Plan
Bumps `slf4jVersion` from 1.7.28 to 1.7.29.

Updates `slf4j-nop` from 1.7.28 to 1.7.29
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](https://github.com/qos-ch/slf4j/commits)

Updates `slf4j-api` from 1.7.28 to 1.7.29
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](https://github.com/qos-ch/slf4j/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-04 13:26:58 +00:00
Risto Lahtela
f5a1d441fd
Update CONTRIBUTING.md 2019-11-03 13:46:13 +02:00
Rsl1122
1511162f5b Fixed a bunch of IntelliJ inspections
- Fixed possible null issues with NicknameCache
- Removed bunch of unused code, such as:
  - Point reduction algorithm implementations
  - HighCharts data String parsing methods
  - Unused Mutators
  - Unused AnalysisKeys
  - Leftovers from ConnectionSystem (Response codes)
  - Unused queries (Leftovers from Server box and Players table queries)
  - rendering.html.icon.Icons
- Made bunch of fields final

Note that old deprecated API classes do not have signature changes.
2019-11-02 16:28:43 +02:00
Rsl1122
2970b6590e Retry on Deadlock to Transaction
Recommended behavior for MySQL deadlock is to retry the transaction.

Added code that performs 3 attempts with recursion if deadlocks occur.

Affects issues:
- Fixed #1212
2019-11-02 12:36:59 +02:00
Rsl1122
8749d12128 Rewrote RemoveDuplicateUserInfoTransaction
NOT IN has a long execution time and leads to lock time being large.

Modified the transaction to select the duplicates and then remove them

Affects issues:
- Possibly fixed #1212
2019-11-02 11:35:04 +02:00
Risto Lahtela
1790095b82
Create FUNDING.yml 2019-10-30 16:43:37 +02:00
Rsl1122
f061d40079 Italian Locale (IT) by Malachiel 2019-10-27 12:11:02 +02:00
Rsl1122
a8ed36b051 Made redirection subdirectory friendly
Redirection from the root page / was pointed towards address like
/server leading to reverse-proxies using subdirectories to misbehave

Fixed by changing all known redirections:
- / now uses relative redirects
- /server/wrong_name now redirects to [Configured address]/server
  Configured address takes Alternative IP settings into account.

Affects issues:
- Fixed #1207
2019-10-27 11:55:25 +02:00
Risto Lahtela
d0b2559598
Update versions.txt 2019-10-25 16:43:08 +03:00
Rsl1122
e67f7193ef Fixed network page#tab-servers using month data
This caused some loading issues when network had a lot of servers
2019-10-25 15:37:17 +03:00
Rsl1122
f4ff03bbc9 Limited some extension query ID results to 1
MySQL is very strict about subquery size in insert, so duplicate rows
would cause issues in next inserts (Duplicates can occur if two servers
do the same work at the same time)
2019-10-25 15:30:36 +03:00
Rsl1122
641cd24077 Added missing license header 2019-10-25 15:25:52 +03:00
Rsl1122
83293804a5 Fixed UUID parsing from String for JSON requests
Due to the way Optional#orElse works, the part inside orElse was run
even when the UUID could be parsed from the given String, leading to
unnecessary work as well as errors in the player UUID query
(That uses names and doesn't look at uuids like the server query)

Fixed by splitting the two execution branches

Affects issues:
- Fixed #1200 (Manually tested)
2019-10-25 15:12:01 +03:00
Rsl1122
64f26f1df6 Fixed NPE when player has no 'favorite server'
Favorite server is determined by playtime and if player has no sessions
the player's favorite server will be null, leading to NPE while parsing
JSON.

Added Optional to the source of the null value
2019-10-25 15:08:40 +03:00
Rsl1122
e5a233ae0e Made google relocation rules more specific
Affects issues:
- Fixed #1196 (Manually tested)
2019-10-25 14:39:55 +03:00
Rsl1122
0a2bb0d203 Player time placeholder changes
- Fixed time amount formatting
- Added player_server_ placeholders for all _time placeholders
2019-10-25 13:26:35 +03:00
dependabot-preview[bot]
bf9043ab20 Bump dagger from 2.25 to 2.25.2 in /Plan
Bumps [dagger](https://github.com/google/dagger) from 2.25 to 2.25.2.
- [Release notes](https://github.com/google/dagger/releases)
- [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/dagger/compare/dagger-2.25...dagger-2.25.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-24 05:53:57 +00:00
dependabot-preview[bot]
a771c980b1 Bump dagger-compiler from 2.24 to 2.25.2 in /Plan
Bumps [dagger-compiler](https://github.com/google/dagger) from 2.24 to 2.25.2.
- [Release notes](https://github.com/google/dagger/releases)
- [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/dagger/compare/dagger-2.24...dagger-2.25.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-24 05:30:06 +00:00
dependabot-preview[bot]
70b0a80e65 Bump dagger from 2.24 to 2.25 in /Plan
Bumps [dagger](https://github.com/google/dagger) from 2.24 to 2.25.
- [Release notes](https://github.com/google/dagger/releases)
- [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/dagger/compare/dagger-2.24...dagger-2.25)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-23 15:09:47 +00:00
Risto Lahtela
52b425360d
Update README.md 2019-10-22 10:26:12 +03:00
Risto Lahtela
44b7e25bb5
Update README.md 2019-10-20 15:09:41 +03:00
Risto Lahtela
9909507360
Update versions.txt 2019-10-19 14:40:11 +03:00
Rsl1122
d20427ca5e Fixed some warnings reported by tools 2019-10-19 14:17:58 +03:00
Rsl1122
194bbe9850 Tests against Activity index calculation mismatch 2019-10-19 14:09:29 +03:00
Rsl1122
d17a962505 Prevented unregistered player export
Error was reported on Discord that exporting on join sometimes
caused a BadRequestException

A check was added to prevent exporting non-registered players.
2019-10-19 13:56:04 +03:00
Rsl1122
2c714fe4e9 Improved Webserver Exception handling
- BindException printed a stacktrace on console.
- Bungee threw EnableException with Webserver disabled

- Now writes a easy to read error about bind error
- No longer mandates webserver to start on Bungee (Export possible).

Affects issues:
- Invalidate / Close #1184
2019-10-19 13:38:31 +03:00
Rsl1122
50a0e3ccdd Changed export open options
FlatIcon_circle.png is truncated to 0 bytes on second write.

Added WRITE Open option to the FileOutputStream

Affected issues:
- Possibly fixed #1194
2019-10-19 13:18:15 +03:00
Rsl1122
e41b270f1b Fix recursive replacement in NetworkPageExporter
A replacer could replace same String multiple times and produce
../../../../server/ instead of intended ../server/

Changed method call from replace to replaceOnce
A single instance of server/ exists in the file.

Affected issues:
- Possibly fixed #1195
2019-10-19 13:07:07 +03:00
Rsl1122
d07c83e111 Increased JSON request timeout
Some JSON requests were timing out with slow internet speeds.

Request timeout increased: 20s -> 45s

Affects issues:
- Close #1185
2019-10-19 12:52:21 +03:00
Rsl1122
c46eac3121 Fixed 3 H2 SQL Errors
Three different SQL queries were causing errors on a H2 database.

Found causes:
- [42001-199] Extra parentheses around subquery: '... FROM (subquery)'
- [HY004 not found] H2 performs query type checks at compile time and
  thus parametized  variables inside SELECT need to be implicitly cast
  to a type

Fixes:
- Removed extra parentheses around 2 queries
- Added a cast to CHAR to a query

Affects issues:
- Fixed #1183
2019-10-19 12:46:32 +03:00