diff --git a/Plan/src/main/java/com/djrapitops/plan/command/PlanCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/PlanCommand.java index fbf2b4b8c..b64543c45 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/PlanCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/PlanCommand.java @@ -42,10 +42,10 @@ public class PlanCommand extends TreeCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"/plan - Main Command", - tCol+" Used to access all SubCommands & help", - sCol+" /plan - List subcommands", - sCol+" /plan ? - in depth help" + mCol + "/plan - Main Command", + tCol + " Used to access all SubCommands & help", + sCol + " /plan - List subcommands", + sCol + " /plan ? - in depth help" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/AnalyzeCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/AnalyzeCommand.java index 80a0d742b..cee8923ba 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/AnalyzeCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/AnalyzeCommand.java @@ -50,10 +50,10 @@ public class AnalyzeCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Analysis Command", - tCol+" Used to Refresh analysis cache & Access the result page", - sCol+" /plan status can be used to check status of analysis while it is running.", - sCol+" Aliases: analyze, analyse, analysis, a" + mCol + "Analysis Command", + tCol + " Used to Refresh analysis cache & Access the result page", + sCol + " /plan status can be used to check status of analysis while it is running.", + sCol + " Aliases: analyze, analyse, analysis, a" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/InspectCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/InspectCommand.java index 5ee812514..63369a6f6 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/InspectCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/InspectCommand.java @@ -56,10 +56,10 @@ public class InspectCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Inspect command", - tCol+" Used to get a link to User's inspect page.", - sCol+" Own inspect page can be accessed with /plan inspect", - sCol+" Alias: /plan " + mCol + "Inspect command", + tCol + " Used to get a link to User's inspect page.", + sCol + " Own inspect page can be accessed with /plan inspect", + sCol + " Alias: /plan " }; } @@ -153,4 +153,4 @@ public class InspectCommand extends SubCommand { sender.sendMessage(Phrase.CMD_FOOTER + ""); } -} +} \ No newline at end of file diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/ListCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/ListCommand.java index 06cb62242..6743a4105 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/ListCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/ListCommand.java @@ -47,10 +47,10 @@ public class ListCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"List command", - tCol+" Used to get a link to players page.", - sCol+" Players page contains links to all cached inspect pages.", - sCol+" Alias: /plan pl" + mCol + "List command", + tCol + " Used to get a link to players page.", + sCol + " Players page contains links to all cached inspect pages.", + sCol + " Alias: /plan pl" }; } @@ -68,7 +68,7 @@ public class ListCommand extends SubCommand { // Link String url = HtmlUtils.getServerAnalysisUrlWithProtocol().replace("server", "players"); - String message = Phrase.CMD_LINK + ""; + String message = Phrase.CMD_LINK.toString(); boolean console = !CommandUtils.isPlayer(sender); if (console) { sender.sendMessage(message + url); @@ -76,6 +76,6 @@ public class ListCommand extends SubCommand { sender.sendMessage(message); sender.sendLink(" ", Phrase.CMD_CLICK_ME.toString(), url); } - sender.sendMessage(Phrase.CMD_FOOTER + ""); + sender.sendMessage(Phrase.CMD_FOOTER.toString()); } } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/ManageCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/ManageCommand.java index 61d424170..c013af116 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/ManageCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/ManageCommand.java @@ -39,11 +39,11 @@ public class ManageCommand extends TreeCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Manage command", - tCol+" Used to Manage Database of the plugin.", - sCol+" Alias: /plan m", - sCol+" /plan m - List subcommands", - sCol+" /plan m ? - in depth help" + mCol + "Manage command", + tCol + " Used to Manage Database of the plugin.", + sCol + " Alias: /plan m", + sCol + " /plan m - List subcommands", + sCol + " /plan m ? - in depth help" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickAnalyzeCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickAnalyzeCommand.java index acbe0109c..269ce49e0 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickAnalyzeCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickAnalyzeCommand.java @@ -51,10 +51,10 @@ public class QuickAnalyzeCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Quick Analysis command", - tCol+" Used to get in game info about analysis.", - sCol+" Has less info than full Analysis web page.", - sCol+" Aliases: qanalyze, ganalyse, qanalysis, qa" + mCol + "Quick Analysis command", + tCol + " Used to get in game info about analysis.", + sCol + " Has less info than full Analysis web page.", + sCol + " Aliases: qanalyze, ganalyse, qanalysis, qa" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickInspectCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickInspectCommand.java index 685da9517..5aaf20712 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickInspectCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/QuickInspectCommand.java @@ -56,10 +56,10 @@ public class QuickInspectCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Quick Inspect command", - tCol+" Used to get some inspect info in game.", - sCol+" Has less info than full Inspect web page.", - sCol+" Alias: /plan qi" + mCol + "Quick Inspect command", + tCol + " Used to get some inspect info in game.", + sCol + " Has less info than full Inspect web page.", + sCol + " Alias: /plan qi" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/RegisterCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/RegisterCommand.java index 50b090409..475a41525 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/RegisterCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/RegisterCommand.java @@ -49,10 +49,10 @@ public class RegisterCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Web Register command", - tCol+" Used to register a new user for the webserver.", - sCol+" Registering a user for another player requires "+Permissions.MANAGE_WEB.getPerm()+" permission.", - sCol+" Passwords are hashed with PBKDF2 (64,000 iterations of SHA1) using a cryptographically-random salt." + mCol + "Web Register command", + tCol + " Used to register a new user for the webserver.", + sCol + " Registering a user for another player requires " + Permissions.MANAGE_WEB.getPerm() + " permission.", + sCol + " Passwords are hashed with PBKDF2 (64,000 iterations of SHA1) using a cryptographically-random salt." }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/SearchCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/SearchCommand.java index e0f55a04e..34e9464a8 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/SearchCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/SearchCommand.java @@ -47,9 +47,9 @@ public class SearchCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Search command", - tCol+" Used to get a list of Player names that match the given argument.", - sCol+" Example: /plan search 123 - Finds all users with 123 in their name." + mCol + "Search command", + tCol + " Used to get a list of Player names that match the given argument.", + sCol + " Example: /plan search 123 - Finds all users with 123 in their name." }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/WebUserCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/WebUserCommand.java index a555ac659..1f367123b 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/WebUserCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/WebUserCommand.java @@ -35,13 +35,13 @@ public class WebUserCommand extends TreeCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Web User Manage command", - tCol+" Used to manage web users of the plugin", - sCol+" Users have a permission level:", - tCol+" 0 - Access to all pages", - tCol+" 1 - Access to /players & all inspect pages", - tCol+" 2 - Access to own inspect page", - sCol+" Alias: /plan web" + mCol + "Web User Manage command", + tCol + " Used to manage web users of the plugin", + sCol + " Users have a permission level:", + tCol + " 0 - Access to all pages", + tCol + " 1 - Access to /players & all inspect pages", + tCol + " 2 - Access to own inspect page", + sCol + " Alias: /plan web" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageClearCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageClearCommand.java index 3aeffddde..9afe1fc72 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageClearCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageClearCommand.java @@ -47,10 +47,10 @@ public class ManageClearCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Manage Clear command", - tCol+" Used to delete ALL data in the active database.", - sCol+" Plugin should be reloaded after successful clear.", - sCol+" Alias: /plan pl" + mCol + "Manage Clear command", + tCol + " Used to delete ALL data in the active database.", + sCol + " Plugin should be reloaded after successful clear.", + sCol + " Alias: /plan pl" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageHotswapCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageHotswapCommand.java index e89b1a06f..83f949061 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageHotswapCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageHotswapCommand.java @@ -47,9 +47,9 @@ public class ManageHotswapCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Manage Hotswap command", - tCol+" Used to change database in use on the fly.", - sCol+" Does not change database if connection fails" + mCol + "Manage Hotswap command", + tCol + " Used to change database in use on the fly.", + sCol + " Does not change database if connection fails" }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageImportCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageImportCommand.java index 08367a022..4388243a6 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageImportCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageImportCommand.java @@ -54,10 +54,10 @@ public class ManageImportCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Manage Import command", - tCol+" Used to import data from other sources", - sCol+" Analysis will be disabled during import.", - sCol+" If a lot of users are not in the database, saving may take a long time." + mCol + "Manage Import command", + tCol + " Used to import data from other sources", + sCol + " Analysis will be disabled during import.", + sCol + " If a lot of users are not in the database, saving may take a long time." }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageRemoveCommand.java b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageRemoveCommand.java index c8ec111f4..fdfe830c3 100644 --- a/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageRemoveCommand.java +++ b/Plan/src/main/java/com/djrapitops/plan/command/commands/manage/ManageRemoveCommand.java @@ -50,8 +50,8 @@ public class ManageRemoveCommand extends SubCommand { String tCol = colorScheme.getTertiaryColor(); String[] help = new String[]{ - mCol +"Manage Remove command", - tCol+" Used to Remove user's data from the active database." + mCol + "Manage Remove command", + tCol + " Used to Remove user's data from the active database." }; } diff --git a/Plan/src/main/java/com/djrapitops/plan/data/analysis/GeolocationPart.java b/Plan/src/main/java/com/djrapitops/plan/data/analysis/GeolocationPart.java index df2187fbd..39ac9ebcd 100644 --- a/Plan/src/main/java/com/djrapitops/plan/data/analysis/GeolocationPart.java +++ b/Plan/src/main/java/com/djrapitops/plan/data/analysis/GeolocationPart.java @@ -75,5 +75,4 @@ public class GeolocationPart extends RawData { public void addGeoloc(String country) { geoLocations.computeIfPresent(country, (computedCountry, amount) -> amount + 1); } - } diff --git a/Plan/src/main/java/com/djrapitops/plan/data/analysis/TPSPart.java b/Plan/src/main/java/com/djrapitops/plan/data/analysis/TPSPart.java index 6ff51f986..0ac3a92f3 100644 --- a/Plan/src/main/java/com/djrapitops/plan/data/analysis/TPSPart.java +++ b/Plan/src/main/java/com/djrapitops/plan/data/analysis/TPSPart.java @@ -3,6 +3,7 @@ package main.java.com.djrapitops.plan.data.analysis; import com.djrapitops.plugin.api.TimeAmount; import main.java.com.djrapitops.plan.data.TPS; import main.java.com.djrapitops.plan.ui.html.graphs.CPUGraphCreator; +import main.java.com.djrapitops.plan.ui.html.graphs.RamGraphCreator; import main.java.com.djrapitops.plan.ui.html.graphs.TPSGraphCreator; import main.java.com.djrapitops.plan.utilities.FormatUtils; import main.java.com.djrapitops.plan.utilities.MiscUtils; @@ -42,8 +43,8 @@ public class TPSPart extends RawData { String tpsScatterWeek = TPSGraphCreator.buildScatterDataStringTPS(week, TimeAmount.WEEK.ms()); String cpuScatterDay = CPUGraphCreator.buildScatterDataString(day, TimeAmount.DAY.ms()); String cpuScatterWeek = CPUGraphCreator.buildScatterDataString(week, TimeAmount.WEEK.ms()); - String ramScatterDay = CPUGraphCreator.buildScatterDataString(day, TimeAmount.DAY.ms()); - String ramScatterWeek = CPUGraphCreator.buildScatterDataString(week, TimeAmount.WEEK.ms()); + String ramScatterDay = RamGraphCreator.buildScatterDataString(day, TimeAmount.DAY.ms()); + String ramScatterWeek = RamGraphCreator.buildScatterDataString(week, TimeAmount.WEEK.ms()); addValue("tpsscatterday", tpsScatterDay); addValue("tpsscatterweek", tpsScatterWeek); @@ -55,7 +56,7 @@ public class TPSPart extends RawData { addValue("ramscatterweek", ramScatterWeek); Runtime runtime = Runtime.getRuntime(); - addValue("maxram", (runtime.maxMemory() / (1024L * 1024L))); + addValue("maxram", runtime.maxMemory() / 1000000); double averageTPSWeek = MathUtils.averageDouble(week.stream().map(TPS::getTps)); double averageTPSDay = MathUtils.averageDouble(day.stream().map(TPS::getTps)); diff --git a/Plan/src/main/java/com/djrapitops/plan/data/listeners/TPSCountTimer.java b/Plan/src/main/java/com/djrapitops/plan/data/listeners/TPSCountTimer.java index edc65d4e7..34a9645f8 100644 --- a/Plan/src/main/java/com/djrapitops/plan/data/listeners/TPSCountTimer.java +++ b/Plan/src/main/java/com/djrapitops/plan/data/listeners/TPSCountTimer.java @@ -76,7 +76,7 @@ public class TPSCountTimer extends AbsRunnable { Runtime runtime = Runtime.getRuntime(); long totalMemory = runtime.totalMemory(); - long usedMemory = (totalMemory - runtime.freeMemory()) / (1024L * 1024L); + long usedMemory = (totalMemory - runtime.freeMemory()) / 1000000; int playersOnline = plugin.getServer().getOnlinePlayers().size(); int loadedChunks = getLoadedChunks(); @@ -114,7 +114,7 @@ public class TPSCountTimer extends AbsRunnable { diff -= twentySeconds; } - double tpsN = twentySeconds / diff; + double tpsN = MathUtils.round(twentySeconds / diff); return new TPS(now, tpsN, playersOnline, cpuUsage, usedMemory, entityCount, chunksLoaded); } diff --git a/Plan/src/main/java/com/djrapitops/plan/utilities/analysis/MathUtils.java b/Plan/src/main/java/com/djrapitops/plan/utilities/analysis/MathUtils.java index 340da0c70..0bf418da4 100644 --- a/Plan/src/main/java/com/djrapitops/plan/utilities/analysis/MathUtils.java +++ b/Plan/src/main/java/com/djrapitops/plan/utilities/analysis/MathUtils.java @@ -179,6 +179,11 @@ public class MathUtils { * @return The rounded number */ public static double round(double number) { - return Double.valueOf(decimalFormat.format(number)); + String formattedNumber = decimalFormat.format(number); + if (formattedNumber.length() > 4) { + formattedNumber = formattedNumber.substring(0, 3); //Fix for unknown reasons for not-rounding + } + + return Double.valueOf(formattedNumber); } } diff --git a/Plan/src/main/resources/analysis.html b/Plan/src/main/resources/analysis.html index b60fbf39d..e06d86df0 100644 --- a/Plan/src/main/resources/analysis.html +++ b/Plan/src/main/resources/analysis.html @@ -9,274 +9,274 @@ @@ -841,50 +841,50 @@ @@ -929,896 +929,896 @@ - - - - - - - - + + + + + + + + - \ No newline at end of file + \ No newline at end of file diff --git a/Plan/src/main/resources/player.html b/Plan/src/main/resources/player.html index 0e4edc5c7..8a270334c 100644 --- a/Plan/src/main/resources/player.html +++ b/Plan/src/main/resources/player.html @@ -7,313 +7,313 @@ @@ -714,46 +714,46 @@ var ctxweek = document.getElementById("playerChartWeek"); var dataweek = { datasets: [{ - label: "Online", - fill: true, - lineTension: 0.1, - backgroundColor: "#%playersgraphfill%", - borderColor: "#%playersgraphcolor%", - borderCapStyle: 'butt', - borderDash: [], - borderDashOffset: 0.0, - borderJoinStyle: 'miter', - pointBorderColor: "#%playersgraphcolor%", - pointBackgroundColor: "#fff", - pointBorderWidth: 1, - pointHoverRadius: 5, - pointHoverBackgroundColor: "#%playersgraphcolor%", - pointHoverBorderColor: "#8fabc6", - pointHoverBorderWidth: 2, - pointRadius: 1, - pointHitRadius: 10, - spanGaps: false, - data: %dataweek% , + label: "Online", + fill: true, + lineTension: 0.1, + backgroundColor: "#%playersgraphfill%", + borderColor: "#%playersgraphcolor%", + borderCapStyle: 'butt', + borderDash: [], + borderDashOffset: 0.0, + borderJoinStyle: 'miter', + pointBorderColor: "#%playersgraphcolor%", + pointBackgroundColor: "#fff", + pointBorderWidth: 1, + pointHoverRadius: 5, + pointHoverBackgroundColor: "#%playersgraphcolor%", + pointHoverBorderColor: "#8fabc6", + pointHoverBorderWidth: 2, + pointRadius: 1, + pointHitRadius: 10, + spanGaps: false, + data: %dataweek% , }]}; var playersChartWeek = new Chart(ctxweek, { - type: 'scatter', - data: dataweek, - options: { - tooltips: { - callbacks: { - label: function(tooltipItems, data) { - var newDate = new Date(); - newDate.setTime(tooltipItems.xLabel); - dateString = newDate.toUTCString(); - return dateString +': '+ tooltipItems.yLabel+ ' Players'; - } - } - }, - scales: { - yAxes: [{ - display: true, - ticks: { - callback: function(value, index, values) { + type: 'scatter', + data: dataweek, + options: { + tooltips: { + callbacks: { + label: function(tooltipItems, data) { + var newDate = new Date(); + newDate.setTime(tooltipItems.xLabel); + dateString = newDate.toUTCString(); + return dateString +': '+ tooltipItems.yLabel+ ' Players'; + } + } + }, + scales: { + yAxes: [{ + display: true, + ticks: { + callback: function(value, index, values) { switch (value) { case 0: return '0'; @@ -763,17 +763,17 @@ return ''; }; }, - suggestedMax: %graphmaxplayers%, - suggestedMin: 0 - } - }], - xAxes: [{ - type: 'linear', - display: false - }] - } - } - }); + suggestedMax: %graphmaxplayers%, + suggestedMin: 0 + } + }], + xAxes: [{ + type: 'linear', + display: false + }] + } + } + }); var ctxpunch = document.getElementById("punchcard"); var datapunch = { datasets: [ diff --git a/Plan/src/test/java/main/java/com/djrapitops/plan/utilities/analysis/MathUtilsTest.java b/Plan/src/test/java/main/java/com/djrapitops/plan/utilities/analysis/MathUtilsTest.java index 90e6fa7a5..1b2a7e947 100644 --- a/Plan/src/test/java/main/java/com/djrapitops/plan/utilities/analysis/MathUtilsTest.java +++ b/Plan/src/test/java/main/java/com/djrapitops/plan/utilities/analysis/MathUtilsTest.java @@ -154,5 +154,4 @@ public class MathUtilsTest { double result = MathUtils.sumDouble(l.stream()); assertTrue(result + "/" + exp, exp == result); } - }