Skip to content

Commit 10a1d88

Browse files
committed
Fix placeholder date formatting
1 parent e16b7ff commit 10a1d88

3 files changed

Lines changed: 10 additions & 5 deletions

File tree

realty-common/src/main/java/io/github/md5sha256/realty/database/RealtyLogicImpl.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,16 @@ public class RealtyLogicImpl {
4747

4848
private final Database database;
4949
private final Function<UUID, String> nameResolver;
50+
private final Function<LocalDateTime, String> dateFormatter;
5051
// TODO: load from configuration
5152
private long offerPaymentDurationSeconds = 86400;
5253

53-
public RealtyLogicImpl(@NotNull Database database, @NotNull Function<UUID, String> nameResolver) {
54+
public RealtyLogicImpl(@NotNull Database database,
55+
@NotNull Function<UUID, String> nameResolver,
56+
@NotNull Function<LocalDateTime, String> dateFormatter) {
5457
this.database = database;
5558
this.nameResolver = nameResolver;
59+
this.dateFormatter = dateFormatter;
5660
}
5761

5862
public void setOfferPaymentDurationSeconds(long offerPaymentDurationSeconds) {
@@ -863,8 +867,8 @@ public record RegionInfo(
863867
placeholders.put("tenant", lease.tenantId() != null ? nameResolver.apply(lease.tenantId()) : "");
864868
placeholders.put("price", CurrencyFormatter.format(lease.price()));
865869
placeholders.put("duration", DurationFormatter.format(Duration.ofSeconds(lease.durationSeconds())));
866-
placeholders.put("start_date", lease.startDate().toString());
867-
placeholders.put("end_date", lease.endDate() != null ? lease.endDate().toString() : "N/A");
870+
placeholders.put("start_date", dateFormatter.apply(lease.startDate()));
871+
placeholders.put("end_date", lease.endDate() != null ? dateFormatter.apply(lease.endDate()) : "N/A");
868872
if (lease.maxExtensions() != null) {
869873
placeholders.put("extensions", lease.currentMaxExtensions() + "/" + lease.maxExtensions());
870874
} else {

realty-common/src/test/java/io/github/md5sha256/realty/database/AbstractDatabaseTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ static void initDatabase() throws IOException, SQLException {
4747
String url = jdbcUrl.substring("jdbc:".length());
4848
DatabaseSettings settings = new DatabaseSettings(url, CONTAINER.getUsername(), CONTAINER.getPassword());
4949
database = new MariaDatabase(settings, Logger.getLogger("test"));
50-
logic = new RealtyLogicImpl(database, UUID::toString);
50+
logic = new RealtyLogicImpl(database, UUID::toString, java.time.LocalDateTime::toString);
5151
}
5252

5353
private static String truncateUrl;

realty-paper/src/main/java/io/github/md5sha256/realty/Realty.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
import io.github.md5sha256.realty.settings.RegionProfileSettings;
5353
import io.github.md5sha256.realty.settings.Settings;
5454
import io.github.md5sha256.realty.util.ComponentSerializer;
55+
import io.github.md5sha256.realty.util.DateFormatter;
5556
import io.github.md5sha256.realty.util.EssentialsNotificationService;
5657
import io.github.md5sha256.realty.util.EssentialsSafeBlockPredicate;
5758
import io.github.md5sha256.realty.util.ExecutorState;
@@ -184,7 +185,7 @@ public void onEnable() {
184185
this.logic = new RealtyLogicImpl(mariaDatabase, uuid -> {
185186
OfflinePlayer player = Bukkit.getOfflinePlayer(uuid);
186187
return player.getName() != null ? player.getName() : uuid.toString();
187-
});
188+
}, dateTime -> DateFormatter.format(this.settings.get(), dateTime));
188189
var economyProvider = getServer().getServicesManager().getRegistration(Economy.class);
189190
if (economyProvider == null) {
190191
getLogger().severe("Economy not found, plugin will now disable!");

0 commit comments

Comments
 (0)