aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/CookieWarning.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/CookieWarning.java')
-rw-r--r--src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/CookieWarning.java44
1 files changed, 30 insertions, 14 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/CookieWarning.java b/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/CookieWarning.java
index fede9bdf..ab8c5e57 100644
--- a/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/CookieWarning.java
+++ b/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/CookieWarning.java
@@ -74,22 +74,38 @@ public class CookieWarning {
return;
}
if (timeLine != null) {
- String[] digits = timeLine.split(" ");
+ String[] digits = timeLine.replaceAll("(\u00a7.)", "").split(" ");
int minutes = 0;
try {
- for (String digit : digits) {
- if (digit.endsWith("y")) {
- digit = digit.substring(0, digit.length() - 1);
- minutes += Integer.parseInt(digit) * 525600;
- } else if (digit.endsWith("d")) {
- digit = digit.substring(0, digit.length() - 1);
- minutes += Integer.parseInt(digit) * 1440;
- } else if (digit.endsWith("h")) {
- digit = digit.substring(0, digit.length() - 1);
- minutes += Integer.parseInt(digit) * 60;
- } else if (digit.endsWith("m")) {
- digit = digit.substring(0, digit.length() - 1);
- minutes += Integer.parseInt(digit);
+ for (int i = 0; i < digits.length; i++) {
+ if (i % 2 == 1) continue;
+
+ String number = digits[i];
+ String unit = digits[i + 1];
+ long val = Integer.parseInt(number);
+ switch (unit) {
+ case "Years":
+ case "Year":
+ minutes += val * 525600;
+ break;
+ case "Months":
+ case "Month":
+ minutes += val * 43200;
+ break;
+ case "Days":
+ case "Day":
+ minutes += val * 1440;
+ break;
+ case "Hours":
+ case "Hour":
+ case "h":
+ minutes += val * 60;
+ break;
+ case "Minutes":
+ case "Minute":
+ case "m":
+ minutes += val;
+ break;
} // ignore seconds
}
} catch (NumberFormatException e) {