summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2014-06-14 16:21:05 +0100
committerKHobbits <rob@khobbits.co.uk>2014-06-14 16:21:05 +0100
commit4d16fe338db5d31f46fcda87e5cc31897ef242fb (patch)
tree669900ed5197a6f10b78c3d4f1da19bcd2a86272
parent463f66d07636af641fe28665d786a62d75bf5ac3 (diff)
downloadEssentials-4d16fe338db5d31f46fcda87e5cc31897ef242fb.tar
Essentials-4d16fe338db5d31f46fcda87e5cc31897ef242fb.tar.gz
Essentials-4d16fe338db5d31f46fcda87e5cc31897ef242fb.tar.lz
Essentials-4d16fe338db5d31f46fcda87e5cc31897ef242fb.tar.xz
Essentials-4d16fe338db5d31f46fcda87e5cc31897ef242fb.zip
Add optional {2} in 'tempBanned' TL key, for reason.
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandtempban.java4
-rw-r--r--Essentials/src/com/earth2me/essentials/utils/DateUtil.java8
2 files changed, 9 insertions, 3 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtempban.java b/Essentials/src/com/earth2me/essentials/commands/Commandtempban.java
index 5310e0c55..2ec7d9962 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandtempban.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandtempban.java
@@ -44,7 +44,7 @@ public class Commandtempban extends EssentialsCommand
}
final String time = getFinalArg(args, 1);
final long banTimestamp = DateUtil.parseDateDiff(time, true);
-
+ final String stringDregs = DateUtil.removeTimePattern(time);
final long maxBanLength = ess.getSettings().getMaxTempban() * 1000;
if (maxBanLength > 0 && ((banTimestamp - GregorianCalendar.getInstance().getTimeInMillis()) > maxBanLength)
&& sender.isPlayer() && !(ess.getUser(sender.getPlayer()).isAuthorized("essentials.tempban.unlimited")))
@@ -54,7 +54,7 @@ public class Commandtempban extends EssentialsCommand
}
final String senderName = sender.isPlayer() ? sender.getPlayer().getDisplayName() : Console.NAME;
- final String banReason = tl("tempBanned", DateUtil.formatDateDiff(banTimestamp), senderName);
+ final String banReason = tl("tempBanned", DateUtil.formatDateDiff(banTimestamp), senderName, stringDregs);
user.setBanReason(banReason);
user.setBanTimeout(banTimestamp);
user.getBase().setBanned(true);
diff --git a/Essentials/src/com/earth2me/essentials/utils/DateUtil.java b/Essentials/src/com/earth2me/essentials/utils/DateUtil.java
index 911e81705..804a1cda6 100644
--- a/Essentials/src/com/earth2me/essentials/utils/DateUtil.java
+++ b/Essentials/src/com/earth2me/essentials/utils/DateUtil.java
@@ -9,9 +9,15 @@ import java.util.regex.Pattern;
public class DateUtil
{
+ private static Pattern timePattern = Pattern.compile("(?:([0-9]+)\\s*y[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*mo[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*w[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*d[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*h[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*m[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*(?:s[a-z]*)?)?", Pattern.CASE_INSENSITIVE);
+
+ public static String removeTimePattern(String input)
+ {
+ return timePattern.matcher(input).replaceAll("").trim();
+ }
+
public static long parseDateDiff(String time, boolean future) throws Exception
{
- Pattern timePattern = Pattern.compile("(?:([0-9]+)\\s*y[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*mo[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*w[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*d[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*h[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*m[a-z]*[,\\s]*)?" + "(?:([0-9]+)\\s*(?:s[a-z]*)?)?", Pattern.CASE_INSENSITIVE);
Matcher m = timePattern.matcher(time);
int years = 0;
int months = 0;