mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-20 03:00:00 +00:00
Show start time instead of start date for planned races in competition
format
This commit is contained in:
1 parent
c255e7d6c4
commit
cd391ccb47
1 file changed
+22
-4
+22
-4
@@ -1,14 +1,24 @@
|
||||
package com.sap.sailing.gwt.home.shared.partials.regattacompetition;
|
||||
|
||||
import static com.google.gwt.i18n.client.DateTimeFormat.getFormat;
|
||||
import static com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat.HOUR24_MINUTE;
|
||||
import static com.sap.sailing.gwt.ui.common.client.DateAndTimeFormatterUtil.weekdayMonthAbbrDayDateFormatter;
|
||||
import static com.sap.sse.common.impl.MillisecondsTimePoint.now;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import com.google.gwt.dom.client.AnchorElement;
|
||||
import com.google.gwt.dom.client.Element;
|
||||
import com.google.gwt.text.client.DateTimeFormatRenderer;
|
||||
import com.google.gwt.user.client.ui.UIObject;
|
||||
import com.sap.sailing.gwt.home.communication.race.SimpleRaceMetadataDTO;
|
||||
import com.sap.sailing.gwt.home.communication.race.SimpleRaceMetadataDTO.RaceTrackingState;
|
||||
import com.sap.sailing.gwt.home.communication.race.SimpleRaceMetadataDTO.RaceViewState;
|
||||
import com.sap.sailing.gwt.home.shared.partials.regattacompetition.RegattaCompetitionView.RegattaCompetitionRaceView;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.common.client.DateAndTimeFormatterUtil;
|
||||
import com.sap.sse.common.Duration;
|
||||
import com.sap.sse.common.TimePoint;
|
||||
import com.sap.sse.common.impl.MillisecondsTimePoint;
|
||||
|
||||
public abstract class AbstractRegattaCompetitionFleetRace extends UIObject implements RegattaCompetitionRaceView {
|
||||
|
||||
@@ -23,9 +33,7 @@ public abstract class AbstractRegattaCompetitionFleetRace extends UIObject imple
|
||||
}
|
||||
setupRaceState(race.getTrackingState(), race.getViewState());
|
||||
getRaceNameUiElement().setInnerText(race.getRaceName());
|
||||
if (race.getStart() != null) {
|
||||
getRaceDateUiElement().setInnerText(DateAndTimeFormatterUtil.weekdayMonthAbbrDayDateFormatter.render(race.getStart()));
|
||||
}
|
||||
setupRaceStart(race.getStart());
|
||||
setElement(anchorUiElement);
|
||||
}
|
||||
|
||||
@@ -44,6 +52,16 @@ public abstract class AbstractRegattaCompetitionFleetRace extends UIObject imple
|
||||
}
|
||||
setStyleName(anchorUiElement, getRaceUntrackedStyleName(), isUntrackedRace);
|
||||
}
|
||||
|
||||
private final DateTimeFormatRenderer defaultTimeFormatter = new DateTimeFormatRenderer(getFormat(HOUR24_MINUTE));
|
||||
private void setupRaceStart(Date startDate) {
|
||||
if (startDate != null) {
|
||||
TimePoint range = now().plus(Duration.ONE_HOUR.times(16)), start = new MillisecondsTimePoint(startDate);
|
||||
boolean showTime = start.after(now()) && start.before(range);
|
||||
DateTimeFormatRenderer renderer = showTime ? defaultTimeFormatter : weekdayMonthAbbrDayDateFormatter;
|
||||
getRaceDateUiElement().setInnerText(renderer.render(startDate));
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract AnchorElement getMainUiElement();
|
||||
|
||||
|
||||
Reference in new issue
Block a user