added "embedded" parameter to the Spectator entry point

This commit is contained in:
Axel Uhl committed 2012-06-16 09:00:54 +02:00
1 parent d14448b2c0
commit 1cc409f92e
2 files changed
+37 -25

No files matched your search

@@ -41,6 +41,9 @@ public class LeaderboardGroupPanel extends FormPanel implements HasWelcomeWidget
interface AnchorTemplates extends SafeHtmlTemplates {
@SafeHtmlTemplates.Template("<a class=\"{2}\" href=\"{0}\">{1}</a>")
SafeHtml anchor(String url, String displayName, String styleClass);
@SafeHtmlTemplates.Template("<a target=\"{3}\" class=\"{2}\" href=\"{0}\">{1}</a>")
SafeHtml anchorWithTarget(String url, String displayName, String styleClass, String target);
}
interface TextWithClassTemplate extends SafeHtmlTemplates {
@@ -53,29 +56,27 @@ public class LeaderboardGroupPanel extends FormPanel implements HasWelcomeWidget
private static final int MAX_COLUMNS_IN_ROW = 10;
private static final String STYLE_NAME_PREFIX = "leaderboardGroupPanel-";
private SailingServiceAsync sailingService;
private StringMessages stringConstants;
private ErrorReporter errorReporter;
private final SailingServiceAsync sailingService;
private final StringMessages stringConstants;
private final ErrorReporter errorReporter;
private LeaderboardGroupDTO group;
private String root;
private String viewMode;
private final String root;
private final String viewMode;
private FlowPanel mainPanel;
private Widget welcomeWidget = null;
private boolean allLeaderboardNamesStartWithGroupName = false;
private final boolean embedded;
public LeaderboardGroupPanel(SailingServiceAsync sailingService, StringMessages stringConstants,
ErrorReporter errorReporter, final String groupName, String root, String viewMode) {
ErrorReporter errorReporter, final String groupName, String root, String viewMode, boolean embedded) {
super();
this.embedded = embedded;
this.sailingService = sailingService;
this.stringConstants = stringConstants;
this.errorReporter = errorReporter;
this.root = root;
this.root = (root == null || root.length() == 0) ? "leaderboardGroupPanel" : root;
this.viewMode = viewMode;
if (this.root == null || this.root.length() == 0) {
this.root = "leaderboardGroupPanel";
}
mainPanel = new FlowPanel();
add(mainPanel);
loadGroup(groupName);
@@ -87,7 +88,6 @@ public class LeaderboardGroupPanel extends FormPanel implements HasWelcomeWidget
public void onSuccess(LeaderboardGroupDTO group) {
if (group != null) {
LeaderboardGroupPanel.this.group = group;
if(group.leaderboards.size() > 1) {
allLeaderboardNamesStartWithGroupName = true;
String groupName = group.name;
@@ -98,7 +98,6 @@ public class LeaderboardGroupPanel extends FormPanel implements HasWelcomeWidget
}
}
}
buildGUI();
} else {
errorReporter.reportError(stringConstants.noLeaderboardGroupWithNameFound(groupName));
@@ -163,7 +162,6 @@ public class LeaderboardGroupPanel extends FormPanel implements HasWelcomeWidget
for (int i = 0; i < maxRacesNum; i++) {
tableData.add(i);
}
leaderboardsTable.setRowData(tableData);
mainPanel.add(leaderboardsTable);
} else {
@@ -186,7 +184,12 @@ public class LeaderboardGroupPanel extends FormPanel implements HasWelcomeWidget
String link = URLFactory.INSTANCE.encode("/gwt/Leaderboard.html?name=" + leaderboard.name
+ "&leaderboardGroupName=" + group.name + "&root=" + root
+ (debugParam != null && !debugParam.isEmpty() ? "&gwt.codesvr=" + debugParam : ""));
return ANCHORTEMPLATE.anchor(link, stringConstants.overview(), STYLE_NAME_PREFIX + "ActiveLeaderboard");
if (embedded) {
return ANCHORTEMPLATE.anchor(link, stringConstants.overview(), STYLE_NAME_PREFIX + "ActiveLeaderboard");
} else {
return ANCHORTEMPLATE.anchorWithTarget(link, stringConstants.overview(), STYLE_NAME_PREFIX + "ActiveLeaderboard",
/* target */ "_blank");
}
}
};
@@ -222,11 +225,17 @@ public class LeaderboardGroupPanel extends FormPanel implements HasWelcomeWidget
if (race.getRaceColumnName().equals(stringConstants.overview())) {
String link = URLFactory.INSTANCE.encode("/gwt/Leaderboard.html?name=" + leaderboard.name
+ "&leaderboardGroupName=" + group.name + "&root=" + root);
if(debugParam != null && !debugParam.isEmpty())
if (debugParam != null && !debugParam.isEmpty()) {
link += "&gwt.codesvr=" + debugParam;
if(viewMode != null && !viewMode.isEmpty())
}
if (viewMode != null && !viewMode.isEmpty()) {
link += "&viewMode=" + viewMode;
b.append(ANCHORTEMPLATE.anchor(link, raceColumnDisplayName, STYLE_NAME_PREFIX + "ActiveLeaderboard"));
}
if (embedded) {
b.append(ANCHORTEMPLATE.anchorWithTarget(link, raceColumnDisplayName, STYLE_NAME_PREFIX + "ActiveLeaderboard", "_blank"));
} else {
b.append(ANCHORTEMPLATE.anchor(link, raceColumnDisplayName, STYLE_NAME_PREFIX + "ActiveLeaderboard"));
}
} else {
final Iterable<FleetDTO> fleets = race.getFleets();
boolean singleFleet = Util.size(fleets) < 2;
@@ -48,19 +48,22 @@ public class SpectatorEntryPoint extends AbstractEntryPoint implements RegattaRe
RootPanel rootPanel = RootPanel.get();
FlowPanel groupAndFeedbackPanel = new FlowPanel();
LogoAndTitlePanel logoAndTitlePanel = new LogoAndTitlePanel(groupName != null ? groupName
: stringMessages.overview(), stringMessages);
logoAndTitlePanel.addStyleName("LogoAndTitlePanel");
rootPanel.add(logoAndTitlePanel);
boolean embedded = Window.Location.getParameter("embedded") != null
&& Window.Location.getParameter("embedded").equalsIgnoreCase("true");
if (!embedded) {
LogoAndTitlePanel logoAndTitlePanel = new LogoAndTitlePanel(groupName != null ? groupName
: stringMessages.overview(), stringMessages);
logoAndTitlePanel.addStyleName("LogoAndTitlePanel");
rootPanel.add(logoAndTitlePanel);
}
if (groupName == null) {
FlowPanel groupOverviewPanel = new FlowPanel();
groupOverviewPanel.addStyleName("contentOuterPanel");
groupOverviewPanel.add(new LeaderboardGroupOverviewPanel(sailingService, this, stringMessages));
rootPanel.add(groupOverviewPanel);
} else {
LeaderboardGroupPanel groupPanel = new LeaderboardGroupPanel(sailingService, stringMessages, this, groupName, root, viewModeParamValue);
LeaderboardGroupPanel groupPanel = new LeaderboardGroupPanel(sailingService, stringMessages, this,
groupName, root, viewModeParamValue, embedded);
groupPanel.getElement().getStyle().setFloat(Style.Float.LEFT);
groupPanel.setWelcomeWidget(new SimpleWelcomeWidget( stringMessages.welcomeToSailingAnalytics(), stringMessages.welcomeToSailingAnalyticsBody()));
SimplePanel feedbackPanel = new SimplePanel();