[New] Added 'Today' and 'Yesterday' to locale

Affected issues: #734
This commit is contained in:
Rsl1122 2018-10-23 13:26:34 +03:00
parent 6cd77fd7fd
commit cff7fffe92
20 changed files with 62 additions and 23 deletions

View File

@ -8,7 +8,9 @@ package com.djrapitops.plan.system.locale.lang;
public enum GenericLang implements Lang { public enum GenericLang implements Lang {
YES("Positive", "Yes"), YES("Positive", "Yes"),
NO("Negative", "No"), NO("Negative", "No"),
UNKNOWN("Unknown", "Unknown"); UNKNOWN("Unknown", "Unknown"),
TODAY("Today", "'Today'"),
YESTERDAY("Yesterday", "'Yesterday'");
private final String identifier; private final String identifier;
private final String defaultValue; private final String defaultValue;

View File

@ -1,6 +1,7 @@
package com.djrapitops.plan.utilities.formatting; package com.djrapitops.plan.utilities.formatting;
import com.djrapitops.plan.data.store.objects.DateHolder; import com.djrapitops.plan.data.store.objects.DateHolder;
import com.djrapitops.plan.system.locale.Locale;
import com.djrapitops.plan.system.settings.config.PlanConfig; import com.djrapitops.plan.system.settings.config.PlanConfig;
import com.djrapitops.plan.utilities.formatting.time.*; import com.djrapitops.plan.utilities.formatting.time.*;
@ -33,12 +34,12 @@ public class Formatters {
private final PercentageFormatter percentageFormatter; private final PercentageFormatter percentageFormatter;
@Inject @Inject
public Formatters(PlanConfig config) { public Formatters(PlanConfig config, Locale locale) {
yearLongFormatter = new YearFormatter(config); yearLongFormatter = new YearFormatter(config, locale);
dayLongFormatter = new DayFormatter(config); dayLongFormatter = new DayFormatter(config, locale);
clockLongFormatter = new ClockFormatter(config); clockLongFormatter = new ClockFormatter(config, locale);
secondLongFormatter = new SecondFormatter(config); secondLongFormatter = new SecondFormatter(config, locale);
iso8601NoClockLongFormatter = new ISO8601NoClockFormatter(config); iso8601NoClockLongFormatter = new ISO8601NoClockFormatter(config, locale);
yearFormatter = new DateHolderFormatter(yearLongFormatter); yearFormatter = new DateHolderFormatter(yearLongFormatter);
dayFormatter = new DateHolderFormatter(dayLongFormatter); dayFormatter = new DateHolderFormatter(dayLongFormatter);

View File

@ -1,8 +1,10 @@
package com.djrapitops.plan.utilities.formatting.time; package com.djrapitops.plan.utilities.formatting.time;
import com.djrapitops.plan.system.locale.Locale;
import com.djrapitops.plan.system.settings.Settings; import com.djrapitops.plan.system.settings.Settings;
import com.djrapitops.plan.system.settings.config.PlanConfig; import com.djrapitops.plan.system.settings.config.PlanConfig;
/** /**
* Formatter for a timestamp that only includes a clock. * Formatter for a timestamp that only includes a clock.
* *
@ -10,8 +12,8 @@ import com.djrapitops.plan.system.settings.config.PlanConfig;
*/ */
public class ClockFormatter extends DateFormatter { public class ClockFormatter extends DateFormatter {
public ClockFormatter(PlanConfig config) { public ClockFormatter(PlanConfig config, Locale locale) {
super(config); super(config, locale);
} }
@Override @Override

View File

@ -1,11 +1,12 @@
package com.djrapitops.plan.utilities.formatting.time; package com.djrapitops.plan.utilities.formatting.time;
import com.djrapitops.plan.system.locale.Locale;
import com.djrapitops.plan.system.locale.lang.GenericLang;
import com.djrapitops.plan.system.settings.Settings; import com.djrapitops.plan.system.settings.Settings;
import com.djrapitops.plan.system.settings.config.PlanConfig; import com.djrapitops.plan.system.settings.config.PlanConfig;
import com.djrapitops.plan.utilities.formatting.Formatter; import com.djrapitops.plan.utilities.formatting.Formatter;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Locale;
import java.util.TimeZone; import java.util.TimeZone;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@ -17,9 +18,11 @@ import java.util.concurrent.TimeUnit;
public abstract class DateFormatter implements Formatter<Long> { public abstract class DateFormatter implements Formatter<Long> {
protected final PlanConfig config; protected final PlanConfig config;
protected final Locale locale;
public DateFormatter(PlanConfig config) { public DateFormatter(PlanConfig config, Locale locale) {
this.config = config; this.config = config;
this.locale = locale;
} }
@Override @Override
@ -28,7 +31,9 @@ public abstract class DateFormatter implements Formatter<Long> {
protected String format(long epochMs, String format) { protected String format(long epochMs, String format) {
boolean useServerTime = config.isTrue(Settings.USE_SERVER_TIME); boolean useServerTime = config.isTrue(Settings.USE_SERVER_TIME);
String locale = config.getString(Settings.LOCALE); String locale = config.getString(Settings.LOCALE);
Locale usedLocale = locale.equalsIgnoreCase("default") ? Locale.ENGLISH : Locale.forLanguageTag(locale); java.util.Locale usedLocale = locale.equalsIgnoreCase("default")
? java.util.Locale.ENGLISH
: java.util.Locale.forLanguageTag(locale);
SimpleDateFormat dateFormat = new SimpleDateFormat(format, usedLocale); SimpleDateFormat dateFormat = new SimpleDateFormat(format, usedLocale);
TimeZone timeZone = useServerTime ? TimeZone.getDefault() : TimeZone.getTimeZone("GMT"); TimeZone timeZone = useServerTime ? TimeZone.getDefault() : TimeZone.getTimeZone("GMT");
dateFormat.setTimeZone(timeZone); dateFormat.setTimeZone(timeZone);
@ -44,9 +49,9 @@ public abstract class DateFormatter implements Formatter<Long> {
long fromStartOfDay = now % TimeUnit.DAYS.toMillis(1L); long fromStartOfDay = now % TimeUnit.DAYS.toMillis(1L);
if (epochMs > now - fromStartOfDay) { if (epochMs > now - fromStartOfDay) {
format = format.replace(pattern, "'Today'"); format = format.replace(pattern, locale.getString(GenericLang.TODAY));
} else if (epochMs > now - TimeUnit.DAYS.toMillis(1L) - fromStartOfDay) { } else if (epochMs > now - TimeUnit.DAYS.toMillis(1L) - fromStartOfDay) {
format = format.replace(pattern, "'Yesterday'"); format = format.replace(pattern, locale.getString(GenericLang.YESTERDAY));
} else if (epochMs > now - TimeUnit.DAYS.toMillis(5L)) { } else if (epochMs > now - TimeUnit.DAYS.toMillis(5L)) {
format = format.replace(pattern, "EEEE"); format = format.replace(pattern, "EEEE");
} }

View File

@ -1,5 +1,6 @@
package com.djrapitops.plan.utilities.formatting.time; package com.djrapitops.plan.utilities.formatting.time;
import com.djrapitops.plan.system.locale.Locale;
import com.djrapitops.plan.system.settings.Settings; import com.djrapitops.plan.system.settings.Settings;
import com.djrapitops.plan.system.settings.config.PlanConfig; import com.djrapitops.plan.system.settings.config.PlanConfig;
@ -10,8 +11,8 @@ import com.djrapitops.plan.system.settings.config.PlanConfig;
*/ */
public class DayFormatter extends DateFormatter { public class DayFormatter extends DateFormatter {
public DayFormatter(PlanConfig config) { public DayFormatter(PlanConfig config, Locale locale) {
super(config); super(config, locale);
} }
@Override @Override

View File

@ -1,5 +1,6 @@
package com.djrapitops.plan.utilities.formatting.time; package com.djrapitops.plan.utilities.formatting.time;
import com.djrapitops.plan.system.locale.Locale;
import com.djrapitops.plan.system.settings.config.PlanConfig; import com.djrapitops.plan.system.settings.config.PlanConfig;
/** /**
@ -9,8 +10,8 @@ import com.djrapitops.plan.system.settings.config.PlanConfig;
*/ */
public class ISO8601NoClockFormatter extends DateFormatter { public class ISO8601NoClockFormatter extends DateFormatter {
public ISO8601NoClockFormatter(PlanConfig config) { public ISO8601NoClockFormatter(PlanConfig config, Locale locale) {
super(config); super(config, locale);
} }
@Override @Override

View File

@ -1,8 +1,10 @@
package com.djrapitops.plan.utilities.formatting.time; package com.djrapitops.plan.utilities.formatting.time;
import com.djrapitops.plan.system.locale.Locale;
import com.djrapitops.plan.system.settings.Settings; import com.djrapitops.plan.system.settings.Settings;
import com.djrapitops.plan.system.settings.config.PlanConfig; import com.djrapitops.plan.system.settings.config.PlanConfig;
/** /**
* Formatter for timestamp which includes seconds as the smallest entry. * Formatter for timestamp which includes seconds as the smallest entry.
* *
@ -10,8 +12,8 @@ import com.djrapitops.plan.system.settings.config.PlanConfig;
*/ */
public class SecondFormatter extends DateFormatter { public class SecondFormatter extends DateFormatter {
public SecondFormatter(PlanConfig config) { public SecondFormatter(PlanConfig config, Locale locale) {
super(config); super(config, locale);
} }
@Override @Override

View File

@ -1,5 +1,6 @@
package com.djrapitops.plan.utilities.formatting.time; package com.djrapitops.plan.utilities.formatting.time;
import com.djrapitops.plan.system.locale.Locale;
import com.djrapitops.plan.system.settings.Settings; import com.djrapitops.plan.system.settings.Settings;
import com.djrapitops.plan.system.settings.config.PlanConfig; import com.djrapitops.plan.system.settings.config.PlanConfig;
@ -10,8 +11,8 @@ import com.djrapitops.plan.system.settings.config.PlanConfig;
*/ */
public class YearFormatter extends DateFormatter { public class YearFormatter extends DateFormatter {
public YearFormatter(PlanConfig config) { public YearFormatter(PlanConfig config, Locale locale) {
super(config); super(config, locale);
} }
@Override @Override

View File

@ -313,3 +313,5 @@ WebServer - Notify no Cert file || 网页服务器:未找到
WebServer FAIL - Port Bind || 未成功初始化网页服务器。端口(${0})是否被占用? WebServer FAIL - Port Bind || 未成功初始化网页服务器。端口(${0})是否被占用?
WebServer FAIL - SSL Context || 网页服务器SSL 环境初始化失败。 WebServer FAIL - SSL Context || 网页服务器SSL 环境初始化失败。
WebServer FAIL - Store Load || 网页服务器SSL 证书载入失败。 WebServer FAIL - Store Load || 网页服务器SSL 证书载入失败。
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Zertifikat KeyStor
WebServer FAIL - Port Bind || WebServer wurde nicht erfolgreich initalisiert. Ist der Port (${0}) schon benutzt? WebServer FAIL - Port Bind || WebServer wurde nicht erfolgreich initalisiert. Ist der Port (${0}) schon benutzt?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialisierung fehlgeschlagen. WebServer FAIL - SSL Context || WebServer: SSL Context Initialisierung fehlgeschlagen.
WebServer FAIL - Store Load || WebServer: SSL Zertifikat konnte nicht geladen werden. WebServer FAIL - Store Load || WebServer: SSL Zertifikat konnte nicht geladen werden.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -311,3 +311,5 @@ WebServer - Notify no Cert file || Web Palvelin: Sertifikaatti A
WebServer FAIL - Port Bind || Web Palvelin ei käynnistynyt. Onko portti (${0}) käytössä? WebServer FAIL - Port Bind || Web Palvelin ei käynnistynyt. Onko portti (${0}) käytössä?
WebServer FAIL - SSL Context || Web Palvelin: SSL Kontekstin käynnistys ei onnistunut. WebServer FAIL - SSL Context || Web Palvelin: SSL Kontekstin käynnistys ei onnistunut.
WebServer FAIL - Store Load || Web Palvelin: SSL Sertifikaatin lataus ei onnistunut. WebServer FAIL - Store Load || Web Palvelin: SSL Sertifikaatin lataus ei onnistunut.
Yesterday || 'Eilen'
Today || 'Tänään'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'

View File

@ -312,3 +312,5 @@ WebServer - Notify no Cert file || WebServer: Certificate KeySto
WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use? WebServer FAIL - Port Bind || WebServer was not initialized successfully. Is the port (${0}) in use?
WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed. WebServer FAIL - SSL Context || WebServer: SSL Context Initialization Failed.
WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed. WebServer FAIL - Store Load || WebServer: SSL Certificate loading Failed.
Yesterday || 'Yesterday'
Today || 'Today'