mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-08 13:20:57 +00:00
racebord url creation in adminconsole fixed
This commit is contained in:
1 parent
14df3e4e48
commit
3fec3d770b
13 files changed
+75
-76
No files matched your search
+2
-2
@@ -23,7 +23,7 @@ import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.leaderboard.LeaderboardEntryPoint;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPanel;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveOwnSettings;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceTimesInfoDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceboardDataDTO;
|
||||
import com.sap.sse.gwt.client.ErrorReporter;
|
||||
@@ -131,7 +131,7 @@ public class AutoPlayController implements RaceTimesInfoProviderListener, Leader
|
||||
|
||||
playerView.clearContent();
|
||||
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveSettings> raceboardSettings = settings
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> raceboardSettings = settings
|
||||
.findSettingsByComponentId(autoplayLiveCycle.getRaceboardLifecycle().getComponentId());
|
||||
|
||||
RaceBoardPanel raceboardPerspective = new RaceBoardPanel(null, null,
|
||||
|
||||
+2
-2
@@ -41,7 +41,7 @@ import com.sap.sailing.gwt.ui.client.EntryPointLinkFactory;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.refresh.ErrorAndBusyClientFactory;
|
||||
import com.sap.sailing.gwt.ui.client.shared.racemap.RaceMapSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveOwnSettings;
|
||||
import com.sap.sse.gwt.client.player.Timer;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayModes;
|
||||
|
||||
@@ -178,7 +178,7 @@ public abstract class AbstractEventActivity<PLACE extends AbstractEventPlace> ex
|
||||
// TODO this must only be forwarded if there is a logged-on user
|
||||
// linkParams.put(RaceBoardViewConfiguration.PARAM_CAN_REPLAY_DURING_LIVE_RACES, "true");
|
||||
linkParams.put(RaceMapSettings.PARAM_SHOW_MAPCONTROLS, "true");
|
||||
linkParams.put(RaceBoardPerspectiveSettings.PARAM_VIEW_SHOW_NAVIGATION_PANEL, "true");
|
||||
linkParams.put(RaceBoardPerspectiveOwnSettings.PARAM_VIEW_SHOW_NAVIGATION_PANEL, "true");
|
||||
linkParams.put("regattaName", regattaName);
|
||||
return linkParams;
|
||||
}
|
||||
|
||||
+8
@@ -1,9 +1,12 @@
|
||||
package com.sap.sailing.gwt.settings.client;
|
||||
|
||||
import com.sap.sailing.gwt.settings.client.raceboard.RaceboardContextSettings;
|
||||
import com.sap.sailing.gwt.settings.client.regattaoverview.RegattaOverviewBaseSettings;
|
||||
import com.sap.sailing.gwt.settings.client.regattaoverview.RegattaRaceStatesSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveOwnSettings;
|
||||
import com.sap.sse.gwt.client.shared.components.LinkWithSettingsGenerator;
|
||||
import com.sap.sse.gwt.client.shared.perspective.IgnoreLocalSettings;
|
||||
import com.sap.sse.gwt.client.shared.perspective.PerspectiveCompositeSettings;
|
||||
import com.sap.sse.gwt.settings.AbstractEntryPointWithSettingsLinkFactory;
|
||||
|
||||
public class EntryPointWithSettingsLinkFactory extends AbstractEntryPointWithSettingsLinkFactory {
|
||||
@@ -18,4 +21,9 @@ public class EntryPointWithSettingsLinkFactory extends AbstractEntryPointWithSet
|
||||
new IgnoreLocalSettings(true)).createUrl(regattaRaceStatesSettings);
|
||||
}
|
||||
|
||||
public static String createRaceBoardLink(RaceboardContextSettings ctx,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> settings) {
|
||||
return new LinkWithSettingsGenerator<>("/gwt/RaceBoard.html", ctx).createUrl(settings);
|
||||
}
|
||||
|
||||
}
|
||||
+2
-2
@@ -44,7 +44,7 @@ import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.controls.FlushableCellTable;
|
||||
import com.sap.sailing.gwt.ui.client.shared.controls.SelectionCheckboxColumn;
|
||||
import com.sap.sailing.gwt.ui.leaderboard.ScoringSchemeTypeFormatter;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveOwnSettings;
|
||||
import com.sap.sailing.gwt.ui.shared.LeaderboardGroupDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.StrippedLeaderboardDTO;
|
||||
@@ -506,7 +506,7 @@ public class LeaderboardGroupConfigPanel extends AbstractRegattaPanel implements
|
||||
public SafeHtml getValue(LeaderboardGroupDTO group) {
|
||||
String debugParam = Window.Location.getParameter("gwt.codesvr");
|
||||
String link = URLEncoder.encode("/gwt/Spectator.html?leaderboardGroupName=" + group.getName()
|
||||
+ "&showRaceDetails=true&"+RaceBoardPerspectiveSettings.PARAM_CAN_REPLAY_DURING_LIVE_RACES+"=true"
|
||||
+ "&showRaceDetails=true&"+RaceBoardPerspectiveOwnSettings.PARAM_CAN_REPLAY_DURING_LIVE_RACES+"=true"
|
||||
+ (debugParam != null && !debugParam.isEmpty() ? "&gwt.codesvr=" + debugParam : ""));
|
||||
return ANCHORTEMPLATE.cell(link, group.getName());
|
||||
}
|
||||
|
||||
+4
-4
@@ -93,10 +93,10 @@ public class RaceMapSettings extends AbstractGenericSerializableSettings {
|
||||
}
|
||||
|
||||
public RaceMapSettings(RaceMapZoomSettings zoomSettings, RaceMapHelpLinesSettings helpLinesSettings,
|
||||
boolean transparentHoverlines, int hoverlineStrokeWeight, long tailLengthInMilliseconds, boolean windUp,
|
||||
Distance buoyZoneRadius, boolean showOnlySelectedCompetitors, boolean showSelectedCompetitorsInfo,
|
||||
boolean showWindStreamletColors, boolean showWindStreamletOverlay, boolean showSimulationOverlay,
|
||||
boolean showMapControls, Collection<ManeuverType> maneuverTypesToShow, boolean showDouglasPeuckerPoints) {
|
||||
Boolean transparentHoverlines, Integer hoverlineStrokeWeight, Long tailLengthInMilliseconds, Boolean windUp,
|
||||
Distance buoyZoneRadius, Boolean showOnlySelectedCompetitors, Boolean showSelectedCompetitorsInfo,
|
||||
Boolean showWindStreamletColors, Boolean showWindStreamletOverlay, Boolean showSimulationOverlay,
|
||||
Boolean showMapControls, Collection<ManeuverType> maneuverTypesToShow, Boolean showDouglasPeuckerPoints) {
|
||||
this.zoomSettings.init(zoomSettings);
|
||||
this.helpLinesSettings.init(helpLinesSettings);
|
||||
this.transparentHoverlines.setValue(transparentHoverlines);
|
||||
|
||||
+2
-2
@@ -86,7 +86,7 @@ public class EmbeddedMapAndWindChartEntryPoint extends AbstractSailingEntryPoint
|
||||
}
|
||||
|
||||
// read optional parameters
|
||||
final RaceBoardPerspectiveSettings raceboardPerspectiveSettings = RaceBoardPerspectiveSettings
|
||||
final RaceBoardPerspectiveOwnSettings raceboardPerspectiveSettings = RaceBoardPerspectiveOwnSettings
|
||||
.readSettingsFromURL(/* defaultForViewShowLeaderboard */ true, /* defaultForViewShowWindchart */ true,
|
||||
/* defaultForViewShowCompetitorsChart */ false, /* defaultForViewCompetitorFilter */ null,
|
||||
/* defaultForCanReplayDuringLiveRaces */ false);
|
||||
@@ -154,7 +154,7 @@ public class EmbeddedMapAndWindChartEntryPoint extends AbstractSailingEntryPoint
|
||||
}
|
||||
|
||||
private void createEmbeddedMap(final RegattaAndRaceIdentifier selectedRaceIdentifier, Map<CompetitorDTO, BoatDTO> competitorBoats,
|
||||
final RaceBoardPerspectiveSettings raceboardPerspectiveSettings, final RaceMapSettings raceMapSettings,
|
||||
final RaceBoardPerspectiveOwnSettings raceboardPerspectiveSettings, final RaceMapSettings raceMapSettings,
|
||||
final boolean showCompetitors, final boolean play) {
|
||||
final StringBuilder title = new StringBuilder(regattaLikeName);
|
||||
title.append('/');
|
||||
|
||||
+6
-6
@@ -73,9 +73,9 @@ public class RaceBoardEntryPoint extends AbstractSailingEntryPoint {
|
||||
componentContextGlobalDefinition += "." + raceBoardContextSettings.getMode().toString();
|
||||
}
|
||||
RaceBoardPerspectiveLifecycle lifeCycle = new RaceBoardPerspectiveLifecycle(null, StringMessages.INSTANCE);
|
||||
ComponentContextWithSettingsStorage<PerspectiveCompositeSettings<RaceBoardPerspectiveSettings>> context = new ComponentContextWithSettingsStorage<PerspectiveCompositeSettings<RaceBoardPerspectiveSettings>>(
|
||||
ComponentContextWithSettingsStorage<PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings>> context = new ComponentContextWithSettingsStorage<PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings>>(
|
||||
lifeCycle,
|
||||
new UserSettingsStorageManager<PerspectiveCompositeSettings<RaceBoardPerspectiveSettings>>(
|
||||
new UserSettingsStorageManager<PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings>>(
|
||||
getUserService(), componentContextGlobalDefinition + "." + lifeCycle.getComponentId(),
|
||||
UserSettingsStorageManager.buildContextDefinitionId(raceBoardContextSettings.getRegattaName(),
|
||||
raceBoardContextSettings.getRaceName(), raceBoardContextSettings.getLeaderboardName(),
|
||||
@@ -115,9 +115,9 @@ public class RaceBoardEntryPoint extends AbstractSailingEntryPoint {
|
||||
return;
|
||||
}
|
||||
|
||||
context.initInitialSettings(new DefaultOnSettingsLoadedCallback<PerspectiveCompositeSettings<RaceBoardPerspectiveSettings>>() {
|
||||
context.initInitialSettings(new DefaultOnSettingsLoadedCallback<PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings>>() {
|
||||
@Override
|
||||
public void onSuccess(PerspectiveCompositeSettings<RaceBoardPerspectiveSettings> initialSettings) {
|
||||
public void onSuccess(PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> initialSettings) {
|
||||
final RaceBoardPanel raceBoardPanel = createPerspectivePage(null, context, initialSettings,
|
||||
raceboardData, showChartMarkEditMediaButtonsAndVideo, lifeCycle);
|
||||
if (finalMode != null) {
|
||||
@@ -149,8 +149,8 @@ public class RaceBoardEntryPoint extends AbstractSailingEntryPoint {
|
||||
}
|
||||
|
||||
private RaceBoardPanel createPerspectivePage(Component<?> parent,
|
||||
ComponentContextWithSettingsStorage<PerspectiveCompositeSettings<RaceBoardPerspectiveSettings>> context,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveSettings> settings, RaceboardDataDTO raceboardData,
|
||||
ComponentContextWithSettingsStorage<PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings>> context,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> settings, RaceboardDataDTO raceboardData,
|
||||
boolean showChartMarkEditMediaButtonsAndVideo, RaceBoardPerspectiveLifecycle raceLifeCycle) {
|
||||
selectedRace = raceboardData.getRace();
|
||||
Window.setTitle(selectedRace.getName());
|
||||
|
||||
+6
-6
@@ -113,7 +113,7 @@ import com.sap.sse.security.ui.client.UserService;
|
||||
*
|
||||
*/
|
||||
public class RaceBoardPanel
|
||||
extends AbstractPerspectiveComposite<RaceBoardPerspectiveLifecycle, RaceBoardPerspectiveSettings>
|
||||
extends AbstractPerspectiveComposite<RaceBoardPerspectiveLifecycle, RaceBoardPerspectiveOwnSettings>
|
||||
implements LeaderboardUpdateListener, PopupPositionProvider, RequiresResize
|
||||
{
|
||||
private final SailingServiceAsync sailingService;
|
||||
@@ -177,9 +177,9 @@ public class RaceBoardPanel
|
||||
* aligns its right border with that of the chart. Otherwise those components will be hidden.
|
||||
*/
|
||||
public RaceBoardPanel(Component<?> parent,
|
||||
ComponentContext<PerspectiveCompositeSettings<RaceBoardPerspectiveSettings>> context,
|
||||
ComponentContext<PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings>> context,
|
||||
RaceBoardPerspectiveLifecycle lifecycle,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveSettings> settings,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> settings,
|
||||
SailingServiceAsync sailingService, MediaServiceAsync mediaService, UserService userService,
|
||||
AsyncActionsExecutor asyncActionsExecutor, Map<CompetitorDTO, BoatDTO> competitorsAndTheirBoats,
|
||||
Timer timer, RegattaAndRaceIdentifier selectedRaceIdentifier, String leaderboardName,
|
||||
@@ -367,7 +367,7 @@ public class RaceBoardPanel
|
||||
* the charts are created.
|
||||
*/
|
||||
private void createOneScreenView(RaceBoardPerspectiveLifecycle lifecycle,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveSettings> settings, String leaderboardName,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> settings, String leaderboardName,
|
||||
String leaderboardGroupName, UUID event,
|
||||
FlowPanel mainPanel, boolean isScreenLargeEnoughToInitiallyDisplayLeaderboard, RaceMap raceMap,
|
||||
UserService userService, boolean showChartMarkEditMediaButtonsAndVideo) {
|
||||
@@ -472,7 +472,7 @@ public class RaceBoardPanel
|
||||
}
|
||||
|
||||
private LeaderboardPanel createLeaderboardPanel(RaceBoardPerspectiveLifecycle lifecycle,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveSettings> settings, String leaderboardName,
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> settings, String leaderboardName,
|
||||
String leaderboardGroupName,
|
||||
CompetitorFilterPanel competitorSearchTextBox, boolean isScreenLargeEnoughToInitiallyDisplayLeaderboard) {
|
||||
LeaderboardPanelLifecycle leaderboardPanelLifecycle = getPerspectiveLifecycle().getLeaderboardPanelLifecycle();
|
||||
@@ -718,7 +718,7 @@ public class RaceBoardPanel
|
||||
}
|
||||
|
||||
@Override
|
||||
public SettingsDialogComponent<RaceBoardPerspectiveSettings> getPerspectiveOwnSettingsDialogComponent() {
|
||||
public SettingsDialogComponent<RaceBoardPerspectiveOwnSettings> getPerspectiveOwnSettingsDialogComponent() {
|
||||
return new RaceBoardPerspectiveSettingsDialogComponent(getPerspectiveSettings(), stringMessages);
|
||||
}
|
||||
|
||||
|
||||
+6
-6
@@ -12,7 +12,7 @@ import com.sap.sse.gwt.client.shared.components.SettingsDialogComponent;
|
||||
import com.sap.sse.gwt.client.shared.perspective.AbstractPerspectiveLifecycle;
|
||||
|
||||
|
||||
public class RaceBoardPerspectiveLifecycle extends AbstractPerspectiveLifecycle<RaceBoardPerspectiveSettings> {
|
||||
public class RaceBoardPerspectiveLifecycle extends AbstractPerspectiveLifecycle<RaceBoardPerspectiveOwnSettings> {
|
||||
|
||||
private final StringMessages stringMessages;
|
||||
private final RaceMapLifecycle raceMapLifecycle;
|
||||
@@ -45,12 +45,12 @@ public class RaceBoardPerspectiveLifecycle extends AbstractPerspectiveLifecycle<
|
||||
}
|
||||
|
||||
@Override
|
||||
public RaceBoardPerspectiveSettings createPerspectiveOwnDefaultSettings() {
|
||||
return new RaceBoardPerspectiveSettings();
|
||||
public RaceBoardPerspectiveOwnSettings createPerspectiveOwnDefaultSettings() {
|
||||
return new RaceBoardPerspectiveOwnSettings();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SettingsDialogComponent<RaceBoardPerspectiveSettings> getPerspectiveOwnSettingsDialogComponent(RaceBoardPerspectiveSettings perspectiveSettings) {
|
||||
public SettingsDialogComponent<RaceBoardPerspectiveOwnSettings> getPerspectiveOwnSettingsDialogComponent(RaceBoardPerspectiveOwnSettings perspectiveSettings) {
|
||||
return new RaceBoardPerspectiveSettingsDialogComponent(perspectiveSettings, stringMessages);
|
||||
}
|
||||
|
||||
@@ -94,12 +94,12 @@ public class RaceBoardPerspectiveLifecycle extends AbstractPerspectiveLifecycle<
|
||||
}
|
||||
|
||||
@Override
|
||||
protected RaceBoardPerspectiveSettings extractOwnGlobalSettings(RaceBoardPerspectiveSettings settings) {
|
||||
protected RaceBoardPerspectiveOwnSettings extractOwnGlobalSettings(RaceBoardPerspectiveOwnSettings settings) {
|
||||
return createPerspectiveOwnDefaultSettings();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected RaceBoardPerspectiveSettings extractOwnContextSettings(RaceBoardPerspectiveSettings settings) {
|
||||
protected RaceBoardPerspectiveOwnSettings extractOwnContextSettings(RaceBoardPerspectiveOwnSettings settings) {
|
||||
return createPerspectiveOwnDefaultSettings();
|
||||
}
|
||||
}
|
||||
+6
-6
@@ -13,7 +13,7 @@ import com.sap.sse.gwt.shared.GwtHttpRequestUtils;
|
||||
* @author Frank
|
||||
*
|
||||
*/
|
||||
public class RaceBoardPerspectiveSettings extends AbstractGenericSerializableSettings {
|
||||
public class RaceBoardPerspectiveOwnSettings extends AbstractGenericSerializableSettings {
|
||||
|
||||
private static final long serialVersionUID = 5471954179434008459L;
|
||||
|
||||
@@ -35,7 +35,7 @@ public class RaceBoardPerspectiveSettings extends AbstractGenericSerializableSet
|
||||
public static final String PARAM_CAN_REPLAY_DURING_LIVE_RACES = "canReplayDuringLiveRaces";
|
||||
public static final String PARAM_TIME_AFTER_RACE_START_AS_HOURS_COLON_MILLIS_COLON_SECONDS = "t";
|
||||
|
||||
public RaceBoardPerspectiveSettings() {
|
||||
public RaceBoardPerspectiveOwnSettings() {
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -48,8 +48,8 @@ public class RaceBoardPerspectiveSettings extends AbstractGenericSerializableSet
|
||||
this.initialDurationAfterRaceStartInReplay = new DurationSetting("initialDurationAfterRaceStartInReplay", this, null);
|
||||
}
|
||||
|
||||
public RaceBoardPerspectiveSettings(String activeCompetitorsFilterSetName, boolean showLeaderboard,
|
||||
boolean showWindChart, boolean showCompetitorsChart, boolean canReplayDuringLiveRaces,
|
||||
public RaceBoardPerspectiveOwnSettings(String activeCompetitorsFilterSetName, Boolean showLeaderboard,
|
||||
Boolean showWindChart, Boolean showCompetitorsChart, Boolean canReplayDuringLiveRaces,
|
||||
Duration initialDurationAfterRaceStartInReplay) {
|
||||
this.activeCompetitorsFilterSetName.setValue(activeCompetitorsFilterSetName);
|
||||
this.showLeaderboard.setValue(showLeaderboard);
|
||||
@@ -79,7 +79,7 @@ public class RaceBoardPerspectiveSettings extends AbstractGenericSerializableSet
|
||||
return canReplayDuringLiveRaces.getValue();
|
||||
}
|
||||
|
||||
public static RaceBoardPerspectiveSettings readSettingsFromURL(boolean defaultForViewShowLeaderboard,
|
||||
public static RaceBoardPerspectiveOwnSettings readSettingsFromURL(boolean defaultForViewShowLeaderboard,
|
||||
boolean defaultForViewShowWindchart, boolean defaultForViewShowCompetitorsChart,
|
||||
String defaultForViewCompetitorFilter, boolean defaultForCanReplayDuringLiveRaces) {
|
||||
final boolean showLeaderboard = GwtHttpRequestUtils.getBooleanParameter(PARAM_VIEW_SHOW_LEADERBOARD, defaultForViewShowLeaderboard /* default */);
|
||||
@@ -89,7 +89,7 @@ public class RaceBoardPerspectiveSettings extends AbstractGenericSerializableSet
|
||||
final boolean canReplayWhileLiveIsPossible = GwtHttpRequestUtils.getBooleanParameter(PARAM_CAN_REPLAY_DURING_LIVE_RACES, defaultForCanReplayDuringLiveRaces /* default */);
|
||||
final Duration initialDurationAfterRaceStartInReplay = parseDuration(GwtHttpRequestUtils.getStringParameter(
|
||||
PARAM_TIME_AFTER_RACE_START_AS_HOURS_COLON_MILLIS_COLON_SECONDS, null /* default */));
|
||||
return new RaceBoardPerspectiveSettings(activeCompetitorsFilterSetName, showLeaderboard, showWindChart,
|
||||
return new RaceBoardPerspectiveOwnSettings(activeCompetitorsFilterSetName, showLeaderboard, showWindChart,
|
||||
showCompetitorsChart, canReplayWhileLiveIsPossible, initialDurationAfterRaceStartInReplay);
|
||||
}
|
||||
|
||||
+8
-8
@@ -9,15 +9,15 @@ import com.sap.sse.gwt.client.dialog.DataEntryDialog;
|
||||
import com.sap.sse.gwt.client.dialog.DataEntryDialog.Validator;
|
||||
import com.sap.sse.gwt.client.shared.components.SettingsDialogComponent;
|
||||
|
||||
public class RaceBoardPerspectiveSettingsDialogComponent implements SettingsDialogComponent<RaceBoardPerspectiveSettings> {
|
||||
public class RaceBoardPerspectiveSettingsDialogComponent implements SettingsDialogComponent<RaceBoardPerspectiveOwnSettings> {
|
||||
private CheckBox showLeaderboardCheckBox;
|
||||
private CheckBox showWindChartCheckBox;
|
||||
private CheckBox showCompetitorsChartCheckBox;
|
||||
|
||||
private final StringMessages stringMessages;
|
||||
private final RaceBoardPerspectiveSettings initialSettings;
|
||||
private final RaceBoardPerspectiveOwnSettings initialSettings;
|
||||
|
||||
public RaceBoardPerspectiveSettingsDialogComponent(RaceBoardPerspectiveSettings settings, StringMessages stringMessages) {
|
||||
public RaceBoardPerspectiveSettingsDialogComponent(RaceBoardPerspectiveOwnSettings settings, StringMessages stringMessages) {
|
||||
this.initialSettings = settings;
|
||||
this.stringMessages = stringMessages;
|
||||
}
|
||||
@@ -42,18 +42,18 @@ public class RaceBoardPerspectiveSettingsDialogComponent implements SettingsDial
|
||||
}
|
||||
|
||||
@Override
|
||||
public RaceBoardPerspectiveSettings getResult() {
|
||||
RaceBoardPerspectiveSettings result = new RaceBoardPerspectiveSettings(initialSettings.getActiveCompetitorsFilterSetName(),
|
||||
public RaceBoardPerspectiveOwnSettings getResult() {
|
||||
RaceBoardPerspectiveOwnSettings result = new RaceBoardPerspectiveOwnSettings(initialSettings.getActiveCompetitorsFilterSetName(),
|
||||
showLeaderboardCheckBox.getValue(), showWindChartCheckBox.getValue(), showCompetitorsChartCheckBox.getValue(),
|
||||
initialSettings.isCanReplayDuringLiveRaces(), initialSettings.getInitialDurationAfterRaceStartInReplay());
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Validator<RaceBoardPerspectiveSettings> getValidator() {
|
||||
return new Validator<RaceBoardPerspectiveSettings>() {
|
||||
public Validator<RaceBoardPerspectiveOwnSettings> getValidator() {
|
||||
return new Validator<RaceBoardPerspectiveOwnSettings>() {
|
||||
@Override
|
||||
public String getErrorMessage(RaceBoardPerspectiveSettings valueToValidate) {
|
||||
public String getErrorMessage(RaceBoardPerspectiveOwnSettings valueToValidate) {
|
||||
String errorMessage = null;
|
||||
return errorMessage;
|
||||
}
|
||||
|
||||
+20
-27
@@ -31,24 +31,29 @@ import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.common.dto.FleetDTO;
|
||||
import com.sap.sailing.domain.common.dto.RaceColumnDTO;
|
||||
import com.sap.sailing.domain.common.dto.RaceDTO;
|
||||
import com.sap.sailing.gwt.settings.client.EntryPointWithSettingsLinkFactory;
|
||||
import com.sap.sailing.gwt.settings.client.raceboard.RaceboardContextSettings;
|
||||
import com.sap.sailing.gwt.ui.adminconsole.LeaderboardConfigPanel.AnchorCell;
|
||||
import com.sap.sailing.gwt.ui.client.EntryPointLinkFactory;
|
||||
import com.sap.sailing.gwt.ui.client.HasWelcomeWidget;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.panels.WelcomeWidget;
|
||||
import com.sap.sailing.gwt.ui.client.shared.racemap.RaceMapLifecycle;
|
||||
import com.sap.sailing.gwt.ui.client.shared.racemap.RaceMapSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveOwnSettings;
|
||||
import com.sap.sailing.gwt.ui.shared.LeaderboardGroupDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.SeriesDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.StrippedLeaderboardDTO;
|
||||
import com.sap.sse.common.Color;
|
||||
import com.sap.sse.common.Util;
|
||||
import com.sap.sse.common.settings.Settings;
|
||||
import com.sap.sse.gwt.client.ErrorReporter;
|
||||
import com.sap.sse.gwt.client.celltable.BaseCelltable;
|
||||
import com.sap.sse.gwt.client.player.Timer;
|
||||
import com.sap.sse.gwt.client.player.Timer.PlayModes;
|
||||
import com.sap.sse.gwt.client.shared.perspective.PerspectiveCompositeSettings;
|
||||
|
||||
public class LeaderboardGroupPanel extends SimplePanel implements HasWelcomeWidget {
|
||||
|
||||
@@ -97,7 +102,6 @@ public class LeaderboardGroupPanel extends SimplePanel implements HasWelcomeWidg
|
||||
private final ErrorReporter errorReporter;
|
||||
private LeaderboardGroupDTO leaderboardGroup;
|
||||
private Map<String, RegattaDTO> regattasByName;
|
||||
private final String root;
|
||||
private final String viewMode;
|
||||
|
||||
private VerticalPanel mainPanel;
|
||||
@@ -106,13 +110,11 @@ public class LeaderboardGroupPanel extends SimplePanel implements HasWelcomeWidg
|
||||
private final boolean showRaceDetails;
|
||||
private final boolean canReplayDuringLiveRaces;
|
||||
private final boolean showMapControls;
|
||||
private final boolean showNavigationPanel;
|
||||
private final Timer timerForClientServerOffset;
|
||||
|
||||
public LeaderboardGroupPanel(SailingServiceAsync sailingService, StringMessages stringConstants,
|
||||
ErrorReporter errorReporter, final String groupName, String root, String viewMode, boolean embedded,
|
||||
boolean showRaceDetails, boolean canReplayDuringLiveRaces, boolean showMapControls,
|
||||
boolean showNavigationPanel) {
|
||||
boolean showRaceDetails, boolean canReplayDuringLiveRaces, boolean showMapControls) {
|
||||
super();
|
||||
this.isEmbedded = embedded;
|
||||
this.showRaceDetails = showRaceDetails;
|
||||
@@ -121,8 +123,6 @@ public class LeaderboardGroupPanel extends SimplePanel implements HasWelcomeWidg
|
||||
this.sailingService = sailingService;
|
||||
this.stringMessages = stringConstants;
|
||||
this.errorReporter = errorReporter;
|
||||
this.showNavigationPanel = showNavigationPanel;
|
||||
this.root = (root == null || root.length() == 0) ? "leaderboardGroupPanel" : root;
|
||||
this.viewMode = viewMode;
|
||||
setWidth("95%");
|
||||
regattasByName = new HashMap<String, RegattaDTO>();
|
||||
@@ -405,7 +405,19 @@ public class LeaderboardGroupPanel extends SimplePanel implements HasWelcomeWidg
|
||||
private void renderRaceLink(String leaderboardName, RaceDTO race, boolean isLive, String raceColumnName, SafeHtmlBuilder b) {
|
||||
if (race != null) {
|
||||
RegattaAndRaceIdentifier raceIdentifier = race.getRaceIdentifier();
|
||||
String link = EntryPointLinkFactory.createRaceBoardLink(createRaceBoardLinkParameters(leaderboardName, raceIdentifier));
|
||||
|
||||
RaceboardContextSettings raceboardContext = new RaceboardContextSettings(raceIdentifier.getRegattaName(),
|
||||
raceIdentifier.getRaceName(), leaderboardName, leaderboardGroup.getName(), null, viewMode);
|
||||
RaceBoardPerspectiveOwnSettings perspectiveOwnSettings = new RaceBoardPerspectiveOwnSettings(null, null,
|
||||
null, null, canReplayDuringLiveRaces, null);
|
||||
HashMap<String, Settings> innerSettings = new HashMap<>();
|
||||
innerSettings.put(RaceMapLifecycle.ID,
|
||||
new RaceMapSettings(null, null, null, null, null, null, null, null, null, null, null, null,
|
||||
showMapControls, null, null));
|
||||
PerspectiveCompositeSettings<RaceBoardPerspectiveOwnSettings> settings = new PerspectiveCompositeSettings<>(
|
||||
perspectiveOwnSettings, innerSettings);
|
||||
|
||||
String link = EntryPointWithSettingsLinkFactory.createRaceBoardLink(raceboardContext, settings);
|
||||
if (isLive) {
|
||||
b.append(getAnchor(link, raceColumnName, STYLE_LIVE_RACE));
|
||||
} else if (race.trackedRace.hasGPSData && race.trackedRace.hasWindData) {
|
||||
@@ -418,25 +430,6 @@ public class LeaderboardGroupPanel extends SimplePanel implements HasWelcomeWidg
|
||||
}
|
||||
}
|
||||
|
||||
private Map<String, String> createRaceBoardLinkParameters(String leaderboardName,
|
||||
RegattaAndRaceIdentifier raceIdentifier) {
|
||||
Map<String, String> linkParams = new HashMap<String, String>();
|
||||
linkParams.put("leaderboardName", leaderboardName);
|
||||
linkParams.put("raceName", raceIdentifier.getRaceName());
|
||||
if (canReplayDuringLiveRaces) {
|
||||
linkParams.put(RaceBoardPerspectiveSettings.PARAM_CAN_REPLAY_DURING_LIVE_RACES, "true");
|
||||
}
|
||||
linkParams.put(RaceMapSettings.PARAM_SHOW_MAPCONTROLS, Boolean.toString(showMapControls));
|
||||
linkParams.put(RaceBoardPerspectiveSettings.PARAM_VIEW_SHOW_NAVIGATION_PANEL,
|
||||
Boolean.toString(showNavigationPanel));
|
||||
linkParams.put("regattaName", raceIdentifier.getRegattaName());
|
||||
linkParams.put("leaderboardGroupName", leaderboardGroup.getName());
|
||||
if (viewMode != null && !viewMode.isEmpty()) {
|
||||
linkParams.put("viewMode", viewMode);
|
||||
}
|
||||
return linkParams;
|
||||
}
|
||||
|
||||
private SafeHtml getAnchor(String link, String linkText, String style) {
|
||||
if (isEmbedded) {
|
||||
return ANCHORTEMPLATE.anchorWithTarget(link, linkText, style, "_blank");
|
||||
|
||||
+3
-5
@@ -15,7 +15,7 @@ import com.sap.sailing.gwt.ui.client.AbstractSailingEntryPoint;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaRefresher;
|
||||
import com.sap.sailing.gwt.ui.client.shared.panels.SimpleWelcomeWidget;
|
||||
import com.sap.sailing.gwt.ui.client.shared.racemap.RaceMapSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveSettings;
|
||||
import com.sap.sailing.gwt.ui.raceboard.RaceBoardPerspectiveOwnSettings;
|
||||
import com.sap.sailing.gwt.ui.shared.LeaderboardGroupDTO;
|
||||
import com.sap.sse.gwt.shared.GwtHttpRequestUtils;
|
||||
|
||||
@@ -33,11 +33,9 @@ public class SpectatorEntryPoint extends AbstractSailingEntryPoint implements Re
|
||||
String groupParamValue = Window.Location.getParameter("leaderboardGroupName");
|
||||
String viewModeParamValue = Window.Location.getParameter("viewMode");
|
||||
final boolean canReplayDuringLiveRaces = GwtHttpRequestUtils.getBooleanParameter(
|
||||
RaceBoardPerspectiveSettings.PARAM_CAN_REPLAY_DURING_LIVE_RACES, /* defaultValue */ false);
|
||||
RaceBoardPerspectiveOwnSettings.PARAM_CAN_REPLAY_DURING_LIVE_RACES, /* defaultValue */ false);
|
||||
final boolean showMapControls = GwtHttpRequestUtils.getBooleanParameter(
|
||||
RaceMapSettings.PARAM_SHOW_MAPCONTROLS, /* defaultValue */ true);
|
||||
final boolean showNavigationPanel = GwtHttpRequestUtils.getBooleanParameter(
|
||||
RaceBoardPerspectiveSettings.PARAM_VIEW_SHOW_NAVIGATION_PANEL, true /* default */);
|
||||
boolean showRaceDetails = Window.Location.getParameter("showRaceDetails") != null
|
||||
&& Window.Location.getParameter("showRaceDetails").equalsIgnoreCase("true");
|
||||
final String groupName;
|
||||
@@ -77,7 +75,7 @@ public class SpectatorEntryPoint extends AbstractSailingEntryPoint implements Re
|
||||
} else {
|
||||
LeaderboardGroupPanel groupPanel = new LeaderboardGroupPanel(sailingService, getStringMessages(), this,
|
||||
groupName, root, viewModeParamValue, embedded, showRaceDetails, canReplayDuringLiveRaces,
|
||||
showMapControls, showNavigationPanel);
|
||||
showMapControls);
|
||||
groupAndFeedbackPanel.add(groupPanel);
|
||||
if (!embedded) {
|
||||
groupPanel.setWelcomeWidget(new SimpleWelcomeWidget(getStringMessages().welcomeToSailingAnalytics(),
|
||||
|
||||
Reference in new issue
Block a user