mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-17 01:31:01 +00:00
fixed search result navigation
This commit is contained in:
1 parent
4454aabea1
commit
182afb0fdc
4 files changed
+24
-24
No files matched your search
-5
@@ -26,9 +26,4 @@ public interface PlaceNavigator {
|
||||
PlaceNavigation<EventPlace> getRegattaNavigation(String eventUuidAsString, String leaderboardIdAsNameString, String baseUrl, boolean isOnRemoteServer);
|
||||
PlaceNavigation<LeaderboardPlace> getLeaderboardNavigation(String eventUuidAsString, String leaderboardIdAsNameString, String baseUrl, boolean isOnRemoteServer);
|
||||
PlaceNavigation<SearchResultPlace> getSearchResultNavigation(String searchQuery);
|
||||
|
||||
// void goToEvent(String eventUuidAsString, String baseUrl, boolean isOnRemoteServer);
|
||||
// void goToRegattaOfEvent(String eventUuidAsString, String leaderboardIdAsNameString, String baseUrl, boolean isOnRemoteServer);
|
||||
// void goToLeaderboard(String eventUuidAsString, String leaderboardIdAsNameString, String baseUrl, boolean isOnRemoteServer);
|
||||
// void goToSearchResult(String searchQuery);
|
||||
}
|
||||
+10
-9
@@ -32,17 +32,21 @@ public class CompactEventHeader extends Composite {
|
||||
|
||||
private final EventDTO event;
|
||||
private final PlaceNavigator placeNavigator;
|
||||
private final String leaderboardName;
|
||||
private final PlaceNavigation<EventPlace> regattaNavigation;
|
||||
|
||||
public CompactEventHeader(EventDTO event, String leaderboardName, PlaceNavigator placeNavigator) {
|
||||
this.event = event;
|
||||
this.leaderboardName = leaderboardName;
|
||||
this.placeNavigator = placeNavigator;
|
||||
|
||||
EventHeaderResources.INSTANCE.css().ensureInjected();
|
||||
StyleInjector.injectAtEnd("@media (min-width: 50em) { "+EventHeaderResources.INSTANCE.largeCss().getText()+"}");
|
||||
|
||||
initWidget(uiBinder.createAndBindUi(this));
|
||||
|
||||
regattaNavigation = placeNavigator.getRegattaNavigation(event.id.toString(), leaderboardName, event.getBaseURL(), event.isOnRemoteServer());
|
||||
regattaLink.setHref(regattaNavigation.getTargetUrl());
|
||||
regattaLink2.setHref(regattaNavigation.getTargetUrl());
|
||||
|
||||
updateUI();
|
||||
}
|
||||
|
||||
@@ -80,17 +84,14 @@ public class CompactEventHeader extends Composite {
|
||||
|
||||
@UiHandler("regattaLink")
|
||||
void gotoRegattaClicked(ClickEvent event) {
|
||||
showRegattaOfEvent();
|
||||
placeNavigator.goToPlace(regattaNavigation);
|
||||
event.preventDefault();
|
||||
}
|
||||
|
||||
@UiHandler("regattaLink2")
|
||||
void gotoRegatta2Clicked(ClickEvent event) {
|
||||
showRegattaOfEvent();
|
||||
placeNavigator.goToPlace(regattaNavigation);
|
||||
event.preventDefault();
|
||||
}
|
||||
|
||||
private void showRegattaOfEvent() {
|
||||
PlaceNavigation<EventPlace> regattaNavigation = placeNavigator.getRegattaNavigation(event.id.toString(), leaderboardName, event.getBaseURL(), event.isOnRemoteServer());
|
||||
placeNavigator.goToPlace(regattaNavigation);
|
||||
}
|
||||
|
||||
}
|
||||
+12
-8
@@ -29,22 +29,28 @@ public class SearchResultItem extends Composite {
|
||||
@UiField Anchor eventOverviewLink;
|
||||
|
||||
private final PlaceNavigator placeNavigator;
|
||||
private LeaderboardSearchResultDTO searchResult;
|
||||
private final PlaceNavigation<EventPlace> regattaNavigation;
|
||||
private final PlaceNavigation<EventPlace> eventNavigation;
|
||||
|
||||
public SearchResultItem(PlaceNavigator navigator, LeaderboardSearchResultDTO searchResult) {
|
||||
this.placeNavigator = navigator;
|
||||
this.searchResult = searchResult;
|
||||
|
||||
SearchResultResources.INSTANCE.css().ensureInjected();
|
||||
initWidget(uiBinder.createAndBindUi(this));
|
||||
|
||||
|
||||
EventBaseDTO event = searchResult.getEvent();
|
||||
regattaNavigation = placeNavigator.getRegattaNavigation(event.id.toString(), searchResult.getLeaderboardName(), searchResult.getBaseURL(), searchResult.isOnRemoteServer());
|
||||
eventNavigation = placeNavigator.getEventNavigation(event.id.toString(), searchResult.getBaseURL(), searchResult.isOnRemoteServer());
|
||||
|
||||
String headlineLink = searchResult.getLeaderboardDisplayName();
|
||||
if(headlineLink == null) {
|
||||
headlineLink = searchResult.getRegattaName() != null ? searchResult.getRegattaName() : searchResult.getLeaderboardName();
|
||||
}
|
||||
|
||||
regattaLink.setHref(regattaNavigation.getTargetUrl());
|
||||
regattaLink.setText(headlineLink);
|
||||
// resultRegattaDetails.setInnerText("I have no idea yet what to show here...");
|
||||
eventOverviewLink.setHref(eventNavigation.getTargetUrl());
|
||||
eventOverviewLink.setText(searchResult.getEvent().getName());
|
||||
resultEventVenue.setInnerText(searchResult.getEvent().venue.getName());
|
||||
if(searchResult.getEvent().startDate != null) {
|
||||
@@ -56,15 +62,13 @@ public class SearchResultItem extends Composite {
|
||||
|
||||
@UiHandler("regattaLink")
|
||||
public void goToRegatta(ClickEvent e) {
|
||||
EventBaseDTO event = searchResult.getEvent();
|
||||
PlaceNavigation<EventPlace> regattaNavigation = placeNavigator.getRegattaNavigation(event.id.toString(),
|
||||
searchResult.getLeaderboardName(), searchResult.getBaseURL(), searchResult.isOnRemoteServer());
|
||||
placeNavigator.goToPlace(regattaNavigation);
|
||||
e.preventDefault();
|
||||
}
|
||||
|
||||
@UiHandler("eventOverviewLink")
|
||||
public void goToEventPlace(ClickEvent e) {
|
||||
EventBaseDTO event = searchResult.getEvent();
|
||||
placeNavigator.getEventNavigation(event.id.toString(), searchResult.getBaseURL(), searchResult.isOnRemoteServer());
|
||||
placeNavigator.goToPlace(eventNavigation);
|
||||
e.preventDefault();
|
||||
}
|
||||
}
|
||||
+2
-2
@@ -7,12 +7,12 @@
|
||||
<ui:with field="local_res" type="com.sap.sailing.gwt.home.client.shared.searchresult.SearchResultResources" />
|
||||
<g:HTMLPanel>
|
||||
<div class="{local_res.css.searchresult_content_item}">
|
||||
<g:Anchor ui:field="regattaLink" styleName="{local_res.css.searchresult_content_item_headline}" href="javascript:;" />
|
||||
<g:Anchor ui:field="regattaLink" styleName="{local_res.css.searchresult_content_item_headline}" />
|
||||
<div class="{local_res.css.searchresult_content_item_description}"><span ui:field="resultRegattaDetails" />
|
||||
<!-- <a href="http://" class="{local_res.css.searchresult_content_item_description_morelink}">More</a>-->
|
||||
</div>
|
||||
<div class="{local_res.css.searchresult_content_item_footer}">
|
||||
<g:Anchor ui:field="eventOverviewLink" styleName="{local_res.css.searchresult_content_item_footer_link}" href="javascript:;" />
|
||||
<g:Anchor ui:field="eventOverviewLink" styleName="{local_res.css.searchresult_content_item_footer_link}" />
|
||||
<span class="{local_res.css.searchresult_content_item_footer_separator}">|</span><span ui:field="resultEventVenue" />
|
||||
<span class="{local_res.css.searchresult_content_item_footer_separator}">|</span><span ui:field="resultEventDate" />
|
||||
</div>
|
||||
|
||||
Reference in new issue
Block a user