mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-10 22:30:56 +00:00
fixing bug 1971 by passing on Timer object constructed based on URL parameters to [Meta]LeaderboardViewer
This commit is contained in:
1 parent
5cc535c4b9
commit
b7b6ba443b
3 files changed
+21
-26
No files matched your search
+11
-9
@@ -37,6 +37,7 @@ import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
|
||||
import com.sap.sse.gwt.client.dialog.DataEntryDialog;
|
||||
import com.sap.sse.gwt.client.player.Timer;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayModes;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayStates;
|
||||
import com.sap.sse.gwt.server.GwtHttpRequestUtils;
|
||||
|
||||
|
||||
@@ -154,33 +155,34 @@ public class LeaderboardEntryPoint extends AbstractEntryPoint {
|
||||
ScrollPanel contentScrollPanel = new ScrollPanel();
|
||||
long delayBetweenAutoAdvancesInMilliseconds = 3000l;
|
||||
final RaceIdentifier preselectedRace = getPreselectedRace(Window.Location.getParameterMap());
|
||||
Timer timer = new Timer(PlayModes.Replay, delayBetweenAutoAdvancesInMilliseconds);
|
||||
// make a single live request as the default but don't continue to play by default
|
||||
Timer timer = new Timer(PlayModes.Live, PlayStates.Paused, delayBetweenAutoAdvancesInMilliseconds);
|
||||
final LeaderboardSettings leaderboardSettings = createLeaderboardSettingsFromURLParameters(Window.Location.getParameterMap());
|
||||
if (leaderboardSettings.getDelayBetweenAutoAdvancesInMilliseconds() != null) {
|
||||
timer.setPlayMode(PlayModes.Live); // the leaderboard, viewed via the entry point, always goes "live"
|
||||
}
|
||||
timer.setPlayMode(PlayModes.Live); // the leaderboard, viewed via the entry point, goes "live" and "playing" if an auto-refresh
|
||||
} // interval has been specified
|
||||
boolean autoExpandLastRaceColumn = GwtHttpRequestUtils.getBooleanParameter(PARAM_AUTO_EXPAND_LAST_RACE_COLUMN, false);
|
||||
boolean showCharts = GwtHttpRequestUtils.getBooleanParameter(PARAM_SHOW_CHARTS, false);
|
||||
boolean showOverallLeaderboard = GwtHttpRequestUtils.getBooleanParameter(PARAM_SHOW_OVERALL_LEADERBOARD, false);
|
||||
boolean showSeriesLeaderboards = GwtHttpRequestUtils.getBooleanParameter(PARAM_SHOW_SERIES_LEADERBOARDS, false);
|
||||
String chartDetailParam = GwtHttpRequestUtils.getStringParameter(PARAM_CHART_DETAIL, null);
|
||||
DetailType chartDetailType;
|
||||
if(chartDetailParam != null && (DetailType.REGATTA_RANK.name().equals(chartDetailParam) || DetailType.OVERALL_RANK.name().equals(chartDetailParam) ||
|
||||
if (chartDetailParam != null && (DetailType.REGATTA_RANK.name().equals(chartDetailParam) || DetailType.OVERALL_RANK.name().equals(chartDetailParam) ||
|
||||
DetailType.REGATTA_TOTAL_POINTS.name().equals(chartDetailParam))) {
|
||||
chartDetailType = DetailType.valueOf(chartDetailParam);
|
||||
} else {
|
||||
chartDetailType = leaderboardType.isMetaLeaderboard() ? DetailType.OVERALL_RANK : DetailType.REGATTA_RANK;
|
||||
}
|
||||
|
||||
Widget leaderboardViewer;
|
||||
final Widget leaderboardViewer;
|
||||
if (leaderboardType.isMetaLeaderboard()) {
|
||||
leaderboardViewer = new MetaLeaderboardViewer(sailingService, new AsyncActionsExecutor(),
|
||||
leaderboardSettings, null, preselectedRace, leaderboardGroupName, leaderboardName, this, stringMessages, userAgent,
|
||||
showRaceDetails, hideToolbar, autoExpandLastRaceColumn, showCharts, chartDetailType, showSeriesLeaderboards);
|
||||
timer, leaderboardSettings, null, preselectedRace, leaderboardGroupName, leaderboardName, this, stringMessages,
|
||||
userAgent, showRaceDetails, hideToolbar, autoExpandLastRaceColumn, showCharts, chartDetailType, showSeriesLeaderboards);
|
||||
} else {
|
||||
leaderboardViewer = new LeaderboardViewer(sailingService, new AsyncActionsExecutor(),
|
||||
leaderboardSettings, preselectedRace, leaderboardGroupName, leaderboardName, this, stringMessages, userAgent,
|
||||
showRaceDetails, hideToolbar, autoExpandLastRaceColumn, showCharts, chartDetailType, showOverallLeaderboard);
|
||||
timer, leaderboardSettings, preselectedRace, leaderboardGroupName, leaderboardName, this, stringMessages,
|
||||
userAgent, showRaceDetails, hideToolbar, autoExpandLastRaceColumn, showCharts, chartDetailType, showOverallLeaderboard);
|
||||
}
|
||||
contentScrollPanel.setWidget(leaderboardViewer);
|
||||
mainPanel.add(contentScrollPanel);
|
||||
|
||||
+5
-8
@@ -15,8 +15,6 @@ import com.sap.sailing.gwt.ui.client.shared.charts.MultiCompetitorLeaderboardCha
|
||||
import com.sap.sse.gwt.client.async.AsyncActionsExecutor;
|
||||
import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
|
||||
import com.sap.sse.gwt.client.player.Timer;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayModes;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayStates;
|
||||
import com.sap.sse.gwt.client.useragent.UserAgentDetails;
|
||||
|
||||
/**
|
||||
@@ -31,13 +29,12 @@ public class LeaderboardViewer extends AbstractLeaderboardViewer {
|
||||
private LeaderboardPanel overallLeaderboardPanel;
|
||||
|
||||
public LeaderboardViewer(final SailingServiceAsync sailingService, final AsyncActionsExecutor asyncActionsExecutor,
|
||||
final LeaderboardSettings leaderboardSettings, final RaceIdentifier preselectedRace, final String leaderboardGroupName,
|
||||
String leaderboardName, final ErrorReporter errorReporter, final StringMessages stringMessages,
|
||||
final UserAgentDetails userAgent, boolean showRaceDetails, boolean hideToolbar, boolean autoExpandLastRaceColumn,
|
||||
boolean showCharts, DetailType chartDetailType, boolean showOverallLeaderboard) {
|
||||
final Timer timer, final LeaderboardSettings leaderboardSettings, final RaceIdentifier preselectedRace,
|
||||
final String leaderboardGroupName, String leaderboardName, final ErrorReporter errorReporter,
|
||||
final StringMessages stringMessages, final UserAgentDetails userAgent, boolean showRaceDetails, boolean hideToolbar,
|
||||
boolean autoExpandLastRaceColumn, boolean showCharts, DetailType chartDetailType, boolean showOverallLeaderboard) {
|
||||
super(new CompetitorSelectionModel(/* hasMultiSelection */true), asyncActionsExecutor,
|
||||
// perform the first request as live request but don't auto-play
|
||||
new Timer(PlayModes.Live, PlayStates.Paused, /* delayBetweenAutoAdvancesInMilliseconds */ 3000l), stringMessages, hideToolbar);
|
||||
timer, stringMessages, hideToolbar);
|
||||
|
||||
final FlowPanel mainPanel = createViewerPanel();
|
||||
setWidget(mainPanel);
|
||||
|
||||
+5
-9
@@ -12,8 +12,6 @@ import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.charts.MultiCompetitorLeaderboardChart;
|
||||
import com.sap.sse.gwt.client.async.AsyncActionsExecutor;
|
||||
import com.sap.sse.gwt.client.player.Timer;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayModes;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayStates;
|
||||
import com.sap.sse.gwt.client.useragent.UserAgentDetails;
|
||||
|
||||
/**
|
||||
@@ -28,13 +26,11 @@ public class MetaLeaderboardViewer extends AbstractLeaderboardViewer {
|
||||
private final MultiCompetitorLeaderboardChart multiCompetitorChart;
|
||||
|
||||
public MetaLeaderboardViewer(SailingServiceAsync sailingService, AsyncActionsExecutor asyncActionsExecutor,
|
||||
LeaderboardSettings leaderboardSettings, String preselectedLeaderboardName, RaceIdentifier preselectedRace, String leaderboardGroupName,
|
||||
String metaLeaderboardName, ErrorReporter errorReporter, StringMessages stringMessages,
|
||||
UserAgentDetails userAgent, boolean showRaceDetails, boolean hideToolbar, boolean autoExpandLastRaceColumn,
|
||||
boolean showCharts, DetailType chartDetailType, boolean showSeriesLeaderboards) {
|
||||
super(new CompetitorSelectionModel(/* hasMultiSelection */true), asyncActionsExecutor,
|
||||
// perform the first request as live request but don't auto-play
|
||||
new Timer(PlayModes.Live, PlayStates.Paused, /*delayBetweenAutoAdvancesInMilliseconds*/ 3000l), stringMessages, hideToolbar);
|
||||
Timer timer, LeaderboardSettings leaderboardSettings, String preselectedLeaderboardName, RaceIdentifier preselectedRace,
|
||||
String leaderboardGroupName, String metaLeaderboardName, ErrorReporter errorReporter,
|
||||
StringMessages stringMessages, UserAgentDetails userAgent, boolean showRaceDetails, boolean hideToolbar,
|
||||
boolean autoExpandLastRaceColumn, boolean showCharts, DetailType chartDetailType, boolean showSeriesLeaderboards) {
|
||||
super(new CompetitorSelectionModel(/* hasMultiSelection */true), asyncActionsExecutor, timer, stringMessages, hideToolbar);
|
||||
FlowPanel mainPanel = createViewerPanel();
|
||||
setWidget(mainPanel);
|
||||
final Label overallStandingsLabel = new Label(stringMessages.overallStandings());
|
||||
|
||||
Reference in new issue
Block a user