From 6db045e614e11de93946995ad6ef55505283395c Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 25 Nov 2015 11:04:37 +0100 Subject: [PATCH 001/367] Bug 3386: Showing (Top N) in the mini leaderboard header if not all competitors are shown --- .../event/minileaderboard/GetMiniLeaderboardDTO.java | 11 ++++++++++- .../desktop/partials/standings/StandingsList.java | 10 +++++++++- .../partials/minileaderboard/MinileaderboardBox.java | 11 ++++++++++- .../sailing/gwt/home/server/LeaderboardContext.java | 1 + .../com/sap/sailing/gwt/ui/client/StringMessages.java | 1 + .../sailing/gwt/ui/client/StringMessages.properties | 3 ++- .../gwt/ui/client/StringMessages_de.properties | 3 ++- .../gwt/ui/client/StringMessages_ru.properties | 3 ++- .../gwt/ui/client/StringMessages_zh.properties | 3 ++- 9 files changed, 39 insertions(+), 7 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/communication/event/minileaderboard/GetMiniLeaderboardDTO.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/communication/event/minileaderboard/GetMiniLeaderboardDTO.java index 626355a8ac9..51fa7d27c40 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/communication/event/minileaderboard/GetMiniLeaderboardDTO.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/communication/event/minileaderboard/GetMiniLeaderboardDTO.java @@ -11,6 +11,7 @@ public class GetMiniLeaderboardDTO implements DTO { private String scoreCorrectionText; private Date lastScoreUpdate; private boolean live; + private int totalCompetitorCount; public GetMiniLeaderboardDTO() { } @@ -46,7 +47,15 @@ public class GetMiniLeaderboardDTO implements DTO { public void setLive(boolean live) { this.live = live; } - + + public int getTotalCompetitorCount() { + return totalCompetitorCount; + } + + public void setTotalCompetitorCount(int totalCompetitorCount) { + this.totalCompetitorCount = totalCompetitorCount; + } + public boolean hasDifferentRaceCounts() { HashSet uniqueRaceCounts = new HashSet<>(); for (MiniLeaderboardItemDTO item : items) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/standings/StandingsList.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/standings/StandingsList.java index 280d0970f5e..3c200ad6302 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/standings/StandingsList.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/standings/StandingsList.java @@ -33,12 +33,14 @@ public class StandingsList extends Widget implements RefreshableWidget headerNavigation) { + this.finished = finished; StandingsResources.INSTANCE.css().ensureInjected(); setElement(uiBinder.createAndBindUi(this)); setVisible(false); - headerTitleUi.setInnerText(finished ? i18n.results() : i18n.latestRegattaStandings()); if(headerNavigation == null) { headerArrowUi.removeFromParent(); } else { @@ -48,6 +50,12 @@ public class StandingsList extends Widget implements RefreshableWidget 0 && data.getTotalCompetitorCount() > itemCount) { + headerText += " (" + i18n.topN(itemCount) + ")"; + } + headerTitleUi.setInnerText(headerText); itemContainerUi.removeAllChildren(); scoreInformationUi.removeAllChildren(); getElement().getStyle().clearDisplay(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/minileaderboard/MinileaderboardBox.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/minileaderboard/MinileaderboardBox.java index 9d40f184d26..7a2a3efcdf9 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/minileaderboard/MinileaderboardBox.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/minileaderboard/MinileaderboardBox.java @@ -30,10 +30,12 @@ public class MinileaderboardBox extends Composite implements RefreshableWidget 0 && data.getTotalCompetitorCount() > itemCount) { + headerText += " (" + StringMessages.INSTANCE.topN(itemCount) + ")"; + } + headerUi.setSectionTitle(headerText); + itemContainerUi.clearContent(); if(data.getItems().isEmpty()) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/server/LeaderboardContext.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/server/LeaderboardContext.java index d2a2f7654b5..78b9396b81e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/server/LeaderboardContext.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/server/LeaderboardContext.java @@ -101,6 +101,7 @@ public class LeaderboardContext { result.addItem(new MiniLeaderboardItemDTO(new SimpleCompetitorDTO(competitor), rank, row.totalPoints, raceCount)); if (limit > 0 && rank >= limit) break; } + result.setTotalCompetitorCount(leaderboardDTO.competitors.size()); return new ResultWithTTL<>(Duration.ONE_MINUTE.times(isLive ? 1 : 2), result); } catch (Exception e) { logger.log(Level.SEVERE, "Error loading leaderboard", e); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java index 5c82ce097aa..ab11d53a019 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java @@ -1444,4 +1444,5 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages, c String requiresValidRegatta(); String couldNotObtainRace(String regattaLikeName, String raceColumnName, String fleetName, String technicalErrorMessage); String errorTryingToCreateEmbeddedMap(String message); + String topN(int n); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties index 7c9b921b440..8344172ed11 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties @@ -1410,4 +1410,5 @@ selectALeaderboardGroup=Select a leaderboard group... pleaseSelect=Please select requiresValidRegatta=This page requires a valid regatta, race column and fleet name to identify the race to show. couldNotObtainRace=Could not obtain a race with name {1} for fleet {2} for a regatta with name {0}: {3} -errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} \ No newline at end of file +errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} +topN=Top {0} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties index 189a589b9f1..c7ea78e78a3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties @@ -1401,4 +1401,5 @@ selectALeaderboardGroup=Bitte eine Ranglisten-Gruppe auswählen... pleaseSelect=Bitte auswählen requiresValidRegatta=Diese Seite benötigt eine gültige Regatta, Rennspalte und einen gültigen Gruppennamen um die anzuzeigende Wettfahrt zu identifizieren. couldNotObtainRace=Wettfahrt namens {1} für Gruppe {2} in einer Regatta names {0} konnte nicht gefunden werden: {3} -errorTryingToCreateEmbeddedMap=Fehler beim Erstellen der eingebetteten Karte: {0} \ No newline at end of file +errorTryingToCreateEmbeddedMap=Fehler beim Erstellen der eingebetteten Karte: {0} +topN=Top {0} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties index c1a452bacc9..f8741f6f0e6 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties @@ -1340,4 +1340,5 @@ selectALeaderboardGroup=Select a leaderboard group... pleaseSelect=Please select requiresValidRegatta=This page requires a valid regatta, race column and fleet name to identify the race to show. couldNotObtainRace=Could not obtain a race with name {1} for fleet {2} for a regatta with name {0}: {3} -errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} \ No newline at end of file +errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} +topN=Top {0} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties index c8aa38e7f9c..b0e4088f095 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties @@ -1355,4 +1355,5 @@ selectALeaderboardGroup=Select a leaderboard group... pleaseSelect=Please select requiresValidRegatta=This page requires a valid regatta, race column and fleet name to identify the race to show. couldNotObtainRace=Could not obtain a race with name {1} for fleet {2} for a regatta with name {0}: {3} -errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} \ No newline at end of file +errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} +topN=Top {0} From 8fe2d1ccf3ec0c5a1a1c45b522a4bdde6d77b988 Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Thu, 26 Nov 2015 17:42:43 +0100 Subject: [PATCH 002/367] Moved theme to gwt.ui --- .../META-INF/MANIFEST.MF | 1 - .../sailing/gwt/common/SourceCommon.gwt.xml | 1 + .../component/celltable/CleanCellTable.css | 0 .../celltable/CleanCellTableResources.java | 2 +- .../StyledHeaderOrFooterBuilder.java | 2 +- .../theme}/component/imagegallery/Image.java | 2 +- .../component/imagegallery/Image.ui.xml | 4 +- .../imagegallery/ImageDescriptor.java | 2 +- .../component/imagegallery/ImageGallery.gss | 0 .../component/imagegallery/ImageGallery.java | 2 +- .../imagegallery/ImageGallery.ui.xml | 4 +- .../imagegallery/ImageGalleryData.java | 2 +- .../imagegallery/ImageGalleryResources.java | 2 +- .../loadingindicator/LoadingIndicator.gss | 0 .../loadingindicator/LoadingIndicator.java | 2 +- .../loadingindicator/LoadingIndicator.ui.xml | 4 +- .../LoadingIndicatorResources.java | 2 +- .../theme}/component/sapfooter/SAPFooter.gss | 0 .../theme}/component/sapfooter/SAPFooter.java | 2 +- .../component/sapfooter/SAPFooter.ui.xml | 47 ++ .../sapfooter/SAPFooterResources.java | 4 +- .../theme}/component/sapheader/SAPHeader.gss | 0 .../theme}/component/sapheader/SAPHeader.java | 4 +- .../component/sapheader/SAPHeader.ui.xml | 8 +- .../sapheader/SAPHeaderResources.java | 2 +- .../component/sapheader/logo-small@2x.png | Bin .../component/sapheader2/SAPHeader2.gss | 0 .../component/sapheader2/SAPHeader2.java | 2 +- .../component/sapheader2/SAPHeader2.ui.xml | 8 +- .../sapheader2/SAPHeaderResources.java | 2 +- .../component/sapheader2/logo-small@2x.png | Bin .../videogallery/VideoDescriptor.java | 2 +- .../component/videogallery/VideoGallery.gss | 0 .../component/videogallery/VideoGallery.java | 2 +- .../videogallery/VideoGallery.ui.xml | 14 + .../videogallery/VideoGalleryData.java | 2 +- .../videogallery/VideoGalleryResources.java | 2 +- .../common/theme}/util/FullscreenUtil.java | 2 +- .../com/sap/sailing/gwt/home/Home.gwt.xml | 2 +- .../partials/racelist/AbstractRaceList.java | 4 +- .../regattaoverview/RegattaOverview.gwt.xml | 7 +- .../client/RegattaOverviewEntryPoint.java | 8 +- .../client/RegattaOverviewPanel.java | 4 +- .../leaderboardedit/LeaderboardEditPage.java | 2 +- .../sailing/gwt/ui/LeaderboardEditing.gwt.xml | 4 +- java/com.sap.sse.gwt.theme/.classpath | 9 - java/com.sap.sse.gwt.theme/.gitignore | 6 - java/com.sap.sse.gwt.theme/.project | 39 -- .../com.google.gwt.eclipse.core.prefs | 2 - .../META-INF/MANIFEST.MF | 23 - java/com.sap.sse.gwt.theme/SSETheme.css | 3 - java/com.sap.sse.gwt.theme/SSETheme.html | 54 -- .../SSETheme_GWT sdm.launch | 27 - .../com.sap.sse.gwt.theme/SSETheme_GWT.launch | 26 - java/com.sap.sse.gwt.theme/WEB-INF/.gitignore | 2 - .../WEB-INF/classes/.dummy | 0 java/com.sap.sse.gwt.theme/WEB-INF/web.xml | 25 - java/com.sap.sse.gwt.theme/build.properties | 9 - java/com.sap.sse.gwt.theme/pom.xml | 105 ---- .../com/sap/sse/gwt/theme/SSETheme.gwt.xml | 11 - .../sap/sse/gwt/theme/SSEThemeLibrary.gwt.xml | 15 - .../sse/gwt/theme/client/ThemeEntryPoint.java | 20 - .../component/sapfooter/SAPFooter.ui.xml | 33 -- .../videogallery/VideoGallery.ui.xml | 10 - .../client/resources/ThemeResources.java | 163 ------ .../client/resources/i18n/TextMessages.java | 17 - .../resources/i18n/TextMessages.properties | 6 - .../resources/i18n/TextMessages_de.properties | 7 - .../sse/gwt/theme/client/resources/main.gss | 536 ------------------ .../sse/gwt/theme/client/resources/media.gss | 453 --------------- .../client/showcase/ComponentShowCase.java | 53 -- .../client/showcase/ComponentShowCase.ui.xml | 29 - .../gwt/theme/client/showcase/MainPage.java | 30 - .../gwt/theme/client/showcase/MainPage.ui.xml | 42 -- .../gwt/theme/client/showcase/Section.java | 50 -- .../gwt/theme/client/showcase/Section.ui.xml | 6 - .../client/showcase/ShowCaseResources.java | 31 - .../showcase/ShowcaseStackLayoutPanel.java | 27 - .../components/ImageGalleryShowcase.java | 37 -- .../components/ImageGalleryShowcase.ui.xml | 20 - .../components/LoadingIndicatorShowcase.java | 23 - .../LoadingIndicatorShowcase.ui.xml | 20 - .../components/SAPFooterShowcase.java | 25 - .../components/SAPFooterShowcase.ui.xml | 20 - .../components/SAPHeaderShowcase.java | 25 - .../components/SAPHeaderShowcase.ui.xml | 20 - .../components/VideoGalleryShowcase.java | 26 - .../components/VideoGalleryShowcase.ui.xml | 20 - .../gwt/theme/client/showcase/showcase.gss | 78 --- .../AbstractStyleguideComposite.java | 13 - .../styleguide/TypefaceStyleguide.java | 19 - .../styleguide/TypefaceStyleguide.ui.xml | 44 -- 92 files changed, 118 insertions(+), 2307 deletions(-) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/celltable/CleanCellTable.css (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/celltable/CleanCellTableResources.java (89%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/celltable/StyledHeaderOrFooterBuilder.java (99%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/Image.java (93%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/Image.ui.xml (63%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/ImageDescriptor.java (97%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/ImageGallery.gss (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/ImageGallery.java (95%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/ImageGallery.ui.xml (63%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/ImageGalleryData.java (92%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/imagegallery/ImageGalleryResources.java (87%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/loadingindicator/LoadingIndicator.gss (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/loadingindicator/LoadingIndicator.java (89%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/loadingindicator/LoadingIndicator.ui.xml (58%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/loadingindicator/LoadingIndicatorResources.java (87%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapfooter/SAPFooter.gss (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapfooter/SAPFooter.java (97%) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.ui.xml rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapfooter/SAPFooterResources.java (81%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader/SAPHeader.gss (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader/SAPHeader.java (93%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader/SAPHeader.ui.xml (76%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader/SAPHeaderResources.java (92%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader/logo-small@2x.png (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader2/SAPHeader2.gss (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader2/SAPHeader2.java (94%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader2/SAPHeader2.ui.xml (73%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader2/SAPHeaderResources.java (92%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/sapheader2/logo-small@2x.png (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/videogallery/VideoDescriptor.java (97%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/videogallery/VideoGallery.gss (100%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/videogallery/VideoGallery.java (94%) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.ui.xml rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/videogallery/VideoGalleryData.java (92%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/component/videogallery/VideoGalleryResources.java (87%) rename java/{com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client => com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme}/util/FullscreenUtil.java (94%) delete mode 100644 java/com.sap.sse.gwt.theme/.classpath delete mode 100644 java/com.sap.sse.gwt.theme/.gitignore delete mode 100644 java/com.sap.sse.gwt.theme/.project delete mode 100644 java/com.sap.sse.gwt.theme/.settings/com.google.gwt.eclipse.core.prefs delete mode 100644 java/com.sap.sse.gwt.theme/META-INF/MANIFEST.MF delete mode 100644 java/com.sap.sse.gwt.theme/SSETheme.css delete mode 100644 java/com.sap.sse.gwt.theme/SSETheme.html delete mode 100644 java/com.sap.sse.gwt.theme/SSETheme_GWT sdm.launch delete mode 100644 java/com.sap.sse.gwt.theme/SSETheme_GWT.launch delete mode 100644 java/com.sap.sse.gwt.theme/WEB-INF/.gitignore delete mode 100755 java/com.sap.sse.gwt.theme/WEB-INF/classes/.dummy delete mode 100644 java/com.sap.sse.gwt.theme/WEB-INF/web.xml delete mode 100644 java/com.sap.sse.gwt.theme/build.properties delete mode 100644 java/com.sap.sse.gwt.theme/pom.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSETheme.gwt.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSEThemeLibrary.gwt.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/ThemeEntryPoint.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/ThemeResources.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.properties delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages_de.properties delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/main.gss delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/media.gss delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowCaseResources.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowcaseStackLayoutPanel.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.ui.xml delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/showcase.gss delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/AbstractStyleguideComposite.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.java delete mode 100644 java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/META-INF/MANIFEST.MF b/java/com.sap.sailing.gwt.ui/META-INF/MANIFEST.MF index 5eeb8e17321..58fd71023f7 100644 --- a/java/com.sap.sailing.gwt.ui/META-INF/MANIFEST.MF +++ b/java/com.sap.sailing.gwt.ui/META-INF/MANIFEST.MF @@ -47,7 +47,6 @@ Require-Bundle: com.sap.sailing.domain, com.sap.sse.security.common, com.sap.sse.filestorage, org.apache.shiro.core;bundle-version="1.2.2", - com.sap.sse.gwt.theme, com.sap.sailing.news, com.sap.sailing.polars.datamining.shared, com.sap.sailing.polars.datamining, diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/SourceCommon.gwt.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/SourceCommon.gwt.xml index 18dcacc8ba8..957e0708aca 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/SourceCommon.gwt.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/SourceCommon.gwt.xml @@ -5,6 +5,7 @@ + diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/CleanCellTable.css b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/CleanCellTable.css similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/CleanCellTable.css rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/CleanCellTable.css diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/CleanCellTableResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/CleanCellTableResources.java similarity index 89% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/CleanCellTableResources.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/CleanCellTableResources.java index 6479d5c9e1d..99e5313c3f1 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/CleanCellTableResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/CleanCellTableResources.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.celltable; +package com.sap.sailing.gwt.common.theme.component.celltable; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/StyledHeaderOrFooterBuilder.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/StyledHeaderOrFooterBuilder.java similarity index 99% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/StyledHeaderOrFooterBuilder.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/StyledHeaderOrFooterBuilder.java index ddbfb3fb253..9bc2937ad2a 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/celltable/StyledHeaderOrFooterBuilder.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/celltable/StyledHeaderOrFooterBuilder.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.celltable; +package com.sap.sailing.gwt.common.theme.component.celltable; import com.google.gwt.cell.client.Cell.Context; import com.google.gwt.dom.builder.shared.TableCellBuilder; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/Image.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/Image.java similarity index 93% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/Image.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/Image.java index 6c9040b5958..e56f312e13a 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/Image.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/Image.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.imagegallery; +package com.sap.sailing.gwt.common.theme.component.imagegallery; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/Image.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/Image.ui.xml similarity index 63% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/Image.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/Image.ui.xml index db187784f7e..03c905c2a93 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/Image.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/Image.ui.xml @@ -1,8 +1,8 @@ - - + +
diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageDescriptor.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageDescriptor.java similarity index 97% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageDescriptor.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageDescriptor.java index 9bf7c5058df..fdd0f4c0d83 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageDescriptor.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageDescriptor.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.imagegallery; +package com.sap.sailing.gwt.common.theme.component.imagegallery; import java.util.Date; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.gss similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.gss diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.java similarity index 95% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.java index 8e3bf8d43d0..5b33a7d7982 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.imagegallery; +package com.sap.sailing.gwt.common.theme.component.imagegallery; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.ui.xml similarity index 63% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.ui.xml index b62f743827f..41e8f10894f 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGallery.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGallery.ui.xml @@ -1,8 +1,8 @@ - - + +
diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGalleryData.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGalleryData.java similarity index 92% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGalleryData.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGalleryData.java index c0b2618ecf6..6d95f941b78 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGalleryData.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGalleryData.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.imagegallery; +package com.sap.sailing.gwt.common.theme.component.imagegallery; import java.util.ArrayList; import java.util.List; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGalleryResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGalleryResources.java similarity index 87% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGalleryResources.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGalleryResources.java index b51de3ceda3..b4e3a49fc6e 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/imagegallery/ImageGalleryResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/imagegallery/ImageGalleryResources.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.imagegallery; +package com.sap.sailing.gwt.common.theme.component.imagegallery; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.gss similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.gss diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.java similarity index 89% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.java index f385113684f..8ec072a61b5 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.loadingindicator; +package com.sap.sailing.gwt.common.theme.component.loadingindicator; import com.google.gwt.core.client.GWT; import com.google.gwt.uibinder.client.UiBinder; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.ui.xml similarity index 58% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.ui.xml index 2e51dbe3527..80a2381694b 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicator.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicator.ui.xml @@ -1,8 +1,8 @@ - - + + Loading... diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicatorResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicatorResources.java similarity index 87% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicatorResources.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicatorResources.java index 4e3672bb46c..974303e64f4 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/loadingindicator/LoadingIndicatorResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/loadingindicator/LoadingIndicatorResources.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.loadingindicator; +package com.sap.sailing.gwt.common.theme.component.loadingindicator; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.gss similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.gss diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.java similarity index 97% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.java index 88fc59bed9c..2eb17b06120 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.sapfooter; +package com.sap.sailing.gwt.common.theme.component.sapfooter; import java.util.HashMap; import java.util.Map; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.ui.xml new file mode 100644 index 00000000000..b3aadc99bb2 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooter.ui.xml @@ -0,0 +1,47 @@ + + + + + + + + + + \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooterResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooterResources.java similarity index 81% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooterResources.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooterResources.java index 0009fba40a4..68f9a4a0459 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooterResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapfooter/SAPFooterResources.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.sapfooter; +package com.sap.sailing.gwt.common.theme.component.sapfooter; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; @@ -7,7 +7,7 @@ import com.google.gwt.resources.client.CssResource; public interface SAPFooterResources extends ClientBundle { public static final SAPFooterResources INSTANCE = GWT.create(SAPFooterResources.class); - @Source("com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.gss") + @Source("SAPFooter.gss") LocalCss css(); public interface LocalCss extends CssResource { diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.gss similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.gss diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.java similarity index 93% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.java index 83e30aaa36f..fec03a28200 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.sapheader; +package com.sap.sailing.gwt.common.theme.component.sapheader; import com.google.gwt.core.client.GWT; import com.google.gwt.core.client.Scheduler; @@ -12,7 +12,7 @@ import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; -import com.sap.sse.gwt.theme.client.util.FullscreenUtil; +import com.sap.sailing.gwt.common.theme.util.FullscreenUtil; public class SAPHeader extends Composite { private static SAPHeaderUiBinder uiBinder = GWT.create(SAPHeaderUiBinder.class); diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.ui.xml similarity index 76% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.ui.xml index 1138ddaf708..8038ddb91ce 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeader.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeader.ui.xml @@ -1,8 +1,12 @@ - - + + +
diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeaderResources.java similarity index 92% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeaderResources.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeaderResources.java index dbc04cc3d51..46a02ba21ba 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/SAPHeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/SAPHeaderResources.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.sapheader; +package com.sap.sailing.gwt.common.theme.component.sapheader; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/logo-small@2x.png b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/logo-small@2x.png similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader/logo-small@2x.png rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader/logo-small@2x.png diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.gss similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.gss diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.java similarity index 94% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.java index 86ae1450f35..e7eb7073db6 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.sapheader2; +package com.sap.sailing.gwt.common.theme.component.sapheader2; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.ui.xml similarity index 73% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.ui.xml index 4a3f28cb85b..fda78514b90 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeader2.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeader2.ui.xml @@ -1,8 +1,12 @@ - - + + +
diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeaderResources.java similarity index 92% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeaderResources.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeaderResources.java index 2c3ebc3744c..28b6f5945b7 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/SAPHeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/SAPHeaderResources.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.sapheader2; +package com.sap.sailing.gwt.common.theme.component.sapheader2; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/logo-small@2x.png b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/logo-small@2x.png similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapheader2/logo-small@2x.png rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/sapheader2/logo-small@2x.png diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoDescriptor.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoDescriptor.java similarity index 97% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoDescriptor.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoDescriptor.java index 5b7c5c197f0..7fc38369f17 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoDescriptor.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoDescriptor.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.videogallery; +package com.sap.sailing.gwt.common.theme.component.videogallery; import java.util.Date; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.gss similarity index 100% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.gss diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.java similarity index 94% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.java index 8aab0398680..aef4331a35e 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.videogallery; +package com.sap.sailing.gwt.common.theme.component.videogallery; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.ui.xml new file mode 100644 index 00000000000..2e3e7024591 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGallery.ui.xml @@ -0,0 +1,14 @@ + + + + + + + Video gallery... +
+
+
diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGalleryData.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGalleryData.java similarity index 92% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGalleryData.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGalleryData.java index 44b67c4a3c3..28e4e8106e3 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGalleryData.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGalleryData.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.videogallery; +package com.sap.sailing.gwt.common.theme.component.videogallery; import java.util.ArrayList; import java.util.List; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGalleryResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGalleryResources.java similarity index 87% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGalleryResources.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGalleryResources.java index 3bc08cc64e2..2bea511ecd9 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGalleryResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/component/videogallery/VideoGalleryResources.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.component.videogallery; +package com.sap.sailing.gwt.common.theme.component.videogallery; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/util/FullscreenUtil.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/util/FullscreenUtil.java similarity index 94% rename from java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/util/FullscreenUtil.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/util/FullscreenUtil.java index 27ff25bebd3..3022cc4d804 100644 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/util/FullscreenUtil.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/theme/util/FullscreenUtil.java @@ -1,4 +1,4 @@ -package com.sap.sse.gwt.theme.client.util; +package com.sap.sailing.gwt.common.theme.util; /** * A utility class to set the browser to fullscreen mode diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/Home.gwt.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/Home.gwt.xml index 4110f0aa78a..98b8c03c9a5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/Home.gwt.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/Home.gwt.xml @@ -6,7 +6,7 @@ - + diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java index 5f410c7aaa7..4663fa1ecb7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java @@ -15,6 +15,8 @@ import com.google.gwt.user.cellview.client.RowStyles; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.SimplePanel; import com.sap.sailing.domain.common.InvertibleComparator; +import com.sap.sailing.gwt.common.theme.component.celltable.CleanCellTableResources; +import com.sap.sailing.gwt.common.theme.component.celltable.StyledHeaderOrFooterBuilder; import com.sap.sailing.gwt.home.communication.event.SimpleCompetitorDTO; import com.sap.sailing.gwt.home.communication.race.RaceMetadataDTO; import com.sap.sailing.gwt.home.communication.race.SimpleRaceMetadataDTO; @@ -25,8 +27,6 @@ import com.sap.sailing.gwt.home.desktop.places.event.EventView; import com.sap.sailing.gwt.home.shared.partials.filter.FilterValueChangeHandler; import com.sap.sailing.gwt.ui.leaderboard.SortedCellTable; import com.sap.sse.common.filter.Filter; -import com.sap.sse.gwt.theme.client.component.celltable.CleanCellTableResources; -import com.sap.sse.gwt.theme.client.component.celltable.StyledHeaderOrFooterBuilder; public abstract class AbstractRaceList> extends Composite implements FilterValueChangeHandler { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/RegattaOverview.gwt.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/RegattaOverview.gwt.xml index a0874ca05d1..7bde5630361 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/RegattaOverview.gwt.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/RegattaOverview.gwt.xml @@ -5,7 +5,7 @@ - + @@ -33,8 +33,6 @@ - - @@ -42,7 +40,8 @@ - + + \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewEntryPoint.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewEntryPoint.java index d392a59ee35..bc7014f825e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewEntryPoint.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewEntryPoint.java @@ -14,12 +14,12 @@ import com.google.gwt.user.client.ui.Label; import com.google.gwt.user.client.ui.Panel; import com.google.gwt.user.client.ui.RootLayoutPanel; import com.google.gwt.user.client.ui.ScrollPanel; +import com.sap.sailing.gwt.common.client.SharedResources; +import com.sap.sailing.gwt.common.theme.component.sapheader2.SAPHeader2; import com.sap.sailing.gwt.regattaoverview.client.RegattaRaceStatesComponent.EntryHandler; import com.sap.sailing.gwt.ui.client.AbstractSailingEntryPoint; import com.sap.sailing.gwt.ui.shared.RegattaOverviewEntryDTO; import com.sap.sse.gwt.client.URLEncoder; -import com.sap.sse.gwt.theme.client.component.sapheader2.SAPHeader2; -import com.sap.sse.gwt.theme.client.resources.ThemeResources; public class RegattaOverviewEntryPoint extends AbstractSailingEntryPoint { @@ -43,8 +43,8 @@ public class RegattaOverviewEntryPoint extends AbstractSailingEntryPoint { public void doOnModuleLoad() { super.doOnModuleLoad(); - ThemeResources.INSTANCE.mediaCss().ensureInjected(); - ThemeResources.INSTANCE.mainCss().ensureInjected(); + SharedResources.INSTANCE.mediaCss().ensureInjected(); + SharedResources.INSTANCE.mainCss().ensureInjected(); RegattaOverviewResources.INSTANCE.css().ensureInjected(); RootLayoutPanel rootPanel = RootLayoutPanel.get(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewPanel.java index 4d4de5230a4..94bf146d970 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewPanel.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/regattaoverview/client/RegattaOverviewPanel.java @@ -19,6 +19,7 @@ import com.google.gwt.user.client.ui.FlowPanel; import com.google.gwt.user.client.ui.SimplePanel; import com.google.gwt.user.client.ui.TabPanel; import com.google.gwt.user.client.ui.VerticalPanel; +import com.sap.sailing.gwt.common.client.SharedResources; import com.sap.sailing.gwt.regattaoverview.client.RegattaRaceStatesComponent.EntryHandler; import com.sap.sailing.gwt.ui.client.CompetitorSelectionModel; import com.sap.sailing.gwt.ui.client.SailingServiceAsync; @@ -38,7 +39,6 @@ import com.sap.sse.gwt.client.player.Timer.PlayModes; import com.sap.sse.gwt.client.player.Timer.PlayStates; import com.sap.sse.gwt.client.shared.components.SettingsDialog; import com.sap.sse.gwt.client.useragent.UserAgentDetails; -import com.sap.sse.gwt.theme.client.resources.ThemeResources; public class RegattaOverviewPanel extends SimplePanel { @@ -69,7 +69,7 @@ public class RegattaOverviewPanel extends SimplePanel { private final FlowPanel repeatedInfoLabel = new FlowPanel(); private final RegattaOverviewResources.LocalCss style = RegattaOverviewResources.INSTANCE.css(); - private final ThemeResources RES = ThemeResources.INSTANCE; + private final SharedResources RES = SharedResources.INSTANCE; public void setEntryClickedHandler(EntryHandler handler) { regattaRaceStatesComponent.setEntryClickedHandler(handler); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/LeaderboardEditPage.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/LeaderboardEditPage.java index 107ef193a9d..917aec4b79d 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/LeaderboardEditPage.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/LeaderboardEditPage.java @@ -10,10 +10,10 @@ import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.Label; import com.google.gwt.user.client.ui.RootPanel; import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.common.theme.component.sapheader2.SAPHeader2; import com.sap.sailing.gwt.ui.client.AbstractSailingEntryPoint; import com.sap.sse.gwt.client.async.AsyncActionsExecutor; import com.sap.sse.gwt.client.async.MarkedAsyncCallback; -import com.sap.sse.gwt.theme.client.component.sapheader2.SAPHeader2; public class LeaderboardEditPage extends AbstractSailingEntryPoint { @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml index e5fa3ab571a..aa4fbfd3adb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml @@ -9,7 +9,6 @@ - @@ -45,4 +44,7 @@ + + + diff --git a/java/com.sap.sse.gwt.theme/.classpath b/java/com.sap.sse.gwt.theme/.classpath deleted file mode 100644 index ed8957173cc..00000000000 --- a/java/com.sap.sse.gwt.theme/.classpath +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/java/com.sap.sse.gwt.theme/.gitignore b/java/com.sap.sse.gwt.theme/.gitignore deleted file mode 100644 index 62f0b377a8a..00000000000 --- a/java/com.sap.sse.gwt.theme/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -/bin -/.gwt -/.generated -/gwt-unitCache -/extras -/com.sap.sse.gwt.theme.* diff --git a/java/com.sap.sse.gwt.theme/.project b/java/com.sap.sse.gwt.theme/.project deleted file mode 100644 index 8e679e93a05..00000000000 --- a/java/com.sap.sse.gwt.theme/.project +++ /dev/null @@ -1,39 +0,0 @@ - - - com.sap.sse.gwt.theme - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - com.google.gdt.eclipse.core.webAppProjectValidator - - - - - com.google.gwt.eclipse.core.gwtProjectValidator - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - com.google.gwt.eclipse.core.gwtNature - - diff --git a/java/com.sap.sse.gwt.theme/.settings/com.google.gwt.eclipse.core.prefs b/java/com.sap.sse.gwt.theme/.settings/com.google.gwt.eclipse.core.prefs deleted file mode 100644 index e992774d99b..00000000000 --- a/java/com.sap.sse.gwt.theme/.settings/com.google.gwt.eclipse.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -gwtCompileSettings=PGd3dC1jb21waWxlLXNldHRpbmdzPjxsb2ctbGV2ZWw+SU5GTzwvbG9nLWxldmVsPjxvdXRwdXQtc3R5bGU+T0JGVVNDQVRFRDwvb3V0cHV0LXN0eWxlPjxleHRyYS1hcmdzPjwhW0NEQVRBWy13YXIgLiAtbG9jYWxXb3JrZXJzIDMgLXN0cmljdCAtbG9nTGV2ZWwgSU5GT11dPjwvZXh0cmEtYXJncz48dm0tYXJncz48IVtDREFUQVstWG14NTEybV1dPjwvdm0tYXJncz48ZW50cnktcG9pbnQtbW9kdWxlPmNvbS5zYXAuc3NlLmd3dC50aGVtZS5TU0VUaGVtZTwvZW50cnktcG9pbnQtbW9kdWxlPjwvZ3d0LWNvbXBpbGUtc2V0dGluZ3M+ diff --git a/java/com.sap.sse.gwt.theme/META-INF/MANIFEST.MF b/java/com.sap.sse.gwt.theme/META-INF/MANIFEST.MF deleted file mode 100644 index a041989d2fa..00000000000 --- a/java/com.sap.sse.gwt.theme/META-INF/MANIFEST.MF +++ /dev/null @@ -1,23 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: SSE Base Theme -Bundle-SymbolicName: com.sap.sse.gwt.theme -Bundle-Version: 1.0.0.qualifier -Bundle-Vendor: SAP -Bundle-RequiredExecutionEnvironment: JavaSE-1.7 -Bundle-ActivationPolicy: lazy -Bundle-ClassPath: WEB-INF/classes/ -Import-Package: org.osgi.framework;version="1.7.0", - javax.servlet;version="3.1.0", - javax.servlet.descriptor;version="3.1.0", - javax.servlet.http;version="3.1.0" -Require-Bundle: com.google.gwt.osgi;bundle-version="2.7.0", - com.sap.sse.common -Web-ContextPath: /theme -Export-Package: com.sap.sse.gwt.theme.client, - com.sap.sse.gwt.theme.client.component.celltable, - com.sap.sse.gwt.theme.client.component.imagegallery, - com.sap.sse.gwt.theme.client.component.videogallery, - com.sap.sse.gwt.theme.client.component.sapheader, - com.sap.sse.gwt.theme.client.component.sapheader2, - com.sap.sse.gwt.theme.client.resources diff --git a/java/com.sap.sse.gwt.theme/SSETheme.css b/java/com.sap.sse.gwt.theme/SSETheme.css deleted file mode 100644 index 9a49fb97ef1..00000000000 --- a/java/com.sap.sse.gwt.theme/SSETheme.css +++ /dev/null @@ -1,3 +0,0 @@ -.mainPanel { - -} \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/SSETheme.html b/java/com.sap.sse.gwt.theme/SSETheme.html deleted file mode 100644 index cb45c7aad46..00000000000 --- a/java/com.sap.sse.gwt.theme/SSETheme.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - SAP Sports Engine Theme - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/com.sap.sse.gwt.theme/SSETheme_GWT sdm.launch b/java/com.sap.sse.gwt.theme/SSETheme_GWT sdm.launch deleted file mode 100644 index 71c80a9b61b..00000000000 --- a/java/com.sap.sse.gwt.theme/SSETheme_GWT sdm.launch +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/com.sap.sse.gwt.theme/SSETheme_GWT.launch b/java/com.sap.sse.gwt.theme/SSETheme_GWT.launch deleted file mode 100644 index 099018ea63b..00000000000 --- a/java/com.sap.sse.gwt.theme/SSETheme_GWT.launch +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/com.sap.sse.gwt.theme/WEB-INF/.gitignore b/java/com.sap.sse.gwt.theme/WEB-INF/.gitignore deleted file mode 100644 index 46b0c4dbcf4..00000000000 --- a/java/com.sap.sse.gwt.theme/WEB-INF/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -deploy -classes diff --git a/java/com.sap.sse.gwt.theme/WEB-INF/classes/.dummy b/java/com.sap.sse.gwt.theme/WEB-INF/classes/.dummy deleted file mode 100755 index e69de29bb2d..00000000000 diff --git a/java/com.sap.sse.gwt.theme/WEB-INF/web.xml b/java/com.sap.sse.gwt.theme/WEB-INF/web.xml deleted file mode 100644 index af72bde0bba..00000000000 --- a/java/com.sap.sse.gwt.theme/WEB-INF/web.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - default - org.eclipse.jetty.servlet.DefaultServlet - - - dirAllowed - false - - - useFileMappedBuffer - false - - - - - SSETheme.html - - diff --git a/java/com.sap.sse.gwt.theme/build.properties b/java/com.sap.sse.gwt.theme/build.properties deleted file mode 100644 index 41365161d8b..00000000000 --- a/java/com.sap.sse.gwt.theme/build.properties +++ /dev/null @@ -1,9 +0,0 @@ -source.WEB-INF/classes/ = src/main/java -output.WEB-INF/classes/ = bin -bin.includes = META-INF/,\ - WEB-INF/classes/,\ - WEB-INF/web.xml,\ - com.sap.sse.gwt.theme.SSETheme/,\ - SSETheme.css,\ - SSETheme.html -output.. = WEB-INF/classes/ diff --git a/java/com.sap.sse.gwt.theme/pom.xml b/java/com.sap.sse.gwt.theme/pom.xml deleted file mode 100644 index eb3460c70c9..00000000000 --- a/java/com.sap.sse.gwt.theme/pom.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - 4.0.0 - - root - com.sap.sailing - 1.0.0-SNAPSHOT - - com.sap.sse.gwt.theme - eclipse-plugin - - - javax.validation - validation-api - 1.0.0.GA - - - javax.validation - validation-api - 1.0.0.GA - sources - - - com.sap.sailing - com.sap.sse.common - 1.0.0-SNAPSHOT - sources - - - com.sap.sailing - com.sap.sse.gwt - 1.0.0-SNAPSHOT - sources - - - - - - org.eclipse.tycho - tycho-source-plugin - ${tycho-version} - - - plugin-source - generate-sources - - plugin-source - - - - - - org.codehaus.mojo - gwt-maven-plugin - ${gwt.version} - - - - - -Dgwt.persistentunitcache=false - - - com.sap.sse.gwt.theme.SSETheme - - ${basedir}/.generated - 7 - ${basedir} - - - compile - - - - - - - - - - debug.no-gwt-compile - - - - org.codehaus.mojo - gwt-maven-plugin - ${gwt.version} - - - - - - - - help - - - - - - - - - diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSETheme.gwt.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSETheme.gwt.xml deleted file mode 100644 index c9b9c14df57..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSETheme.gwt.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSEThemeLibrary.gwt.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSEThemeLibrary.gwt.xml deleted file mode 100644 index c31b8596c19..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/SSEThemeLibrary.gwt.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/ThemeEntryPoint.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/ThemeEntryPoint.java deleted file mode 100644 index 99665fc24e3..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/ThemeEntryPoint.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.sap.sse.gwt.theme.client; - -import com.google.gwt.core.client.EntryPoint; -import com.google.gwt.user.client.ui.RootLayoutPanel; -import com.sap.sse.gwt.theme.client.resources.ThemeResources; -import com.sap.sse.gwt.theme.client.showcase.MainPage; - -/** - * Entry point classes define onModuleLoad(). - */ -public class ThemeEntryPoint implements EntryPoint { - - @Override - public void onModuleLoad() { - ThemeResources.INSTANCE.mediaCss().ensureInjected(); - ThemeResources.INSTANCE.mainCss().ensureInjected(); - - RootLayoutPanel.get().add(new MainPage()); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.ui.xml deleted file mode 100644 index e91510e8856..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/sapfooter/SAPFooter.ui.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.ui.xml deleted file mode 100644 index 064a1b9d848..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/component/videogallery/VideoGallery.ui.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - Video gallery... -
-
-
diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/ThemeResources.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/ThemeResources.java deleted file mode 100644 index 9bfa24c514e..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/ThemeResources.java +++ /dev/null @@ -1,163 +0,0 @@ -package com.sap.sse.gwt.theme.client.resources; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.resources.client.ClientBundle; -import com.google.gwt.resources.client.CssResource; - -public interface ThemeResources extends ClientBundle { - public static final ThemeResources INSTANCE = GWT.create(ThemeResources.class); - - @Source("main.gss") - MainCss mainCss(); - - @Source("media.gss") - MediaCss mediaCss(); - - public interface MainCss extends CssResource{ - String mobile(); - String desktop(); - String wrapper(); - String navbar(); - String navbar_button(); - String navbar_buttonhidden(); - String navbar_buttonactive(); - String button(); - String buttontextonly(); - String buttonsmall(); - String buttonstrong(); - String buttoninactive(); - String buttonprimary(); - String buttonred(); - String buttonrefresh(); - String buttonarrowdown(); - String buttonsearch(); - String buttonarrowrightwhite(); - String label(); - String labellarge(); - String morelink(); - String dummy(); - String mainsection(); - String mainsection_header(); - String mainsection_header_title(); - String mainsection_navigation(); - String lightbox(); - String lightbox_overlay(); - String lightbox_content(); - String lightbox_close(); - String spacer(); - String spacersmall(); - String spacermediumsmall(); - String spacermedium(); - String spacermediumbig(); - String spacerbig(); - String spacermargin(); - String spacermargintopsmall(); - String spacermargintopmediumsmall(); - String spacermargintopmedium(); - String spacermargintopmediumbig(); - String spacermargintopbig(); - String spacermarginbottomsmall(); - String spacermarginbottommediumsmall(); - String spacermarginbottommedium(); - String spacermarginbottommediumbig(); - String spacermarginbottombig(); - String spacermarginonlyonsmall(); - String spacermarginonlyonlarge(); - String stickyheader(); - String slideto(); - String slidetonav(); - String slidetoactive(); - String fleetcorner(); - } - - public interface MediaCss extends CssResource{ - String grid(); - String stackenblochen(); - String column(); - String columns(); - String small1(); - String small2(); - String small3(); - String small4(); - String small5(); - String small6(); - String small7(); - String small8(); - String small9(); - String small10(); - String small11(); - String small12(); - String smalloffset0(); - String smalloffset1(); - String smalloffset2(); - String smalloffset3(); - String smalloffset4(); - String smalloffset5(); - String smalloffset6(); - String smalloffset7(); - String smalloffset8(); - String smalloffset9(); - String smalloffset10(); - String smalloffset11(); - String showonsmall(); - String hideonsmall(); - String showonmedium(); - String hideonmedium(); - String showonlarge(); - String hideonlarge(); - String smallcentered(); - String smalluncentered(); - String medium1(); - String medium2(); - String medium3(); - String medium4(); - String medium5(); - String medium6(); - String medium7(); - String medium8(); - String medium9(); - String medium10(); - String medium11(); - String medium12(); - String mediumoffset0(); - String mediumoffset1(); - String mediumoffset2(); - String mediumoffset3(); - String mediumoffset4(); - String mediumoffset5(); - String mediumoffset6(); - String mediumoffset7(); - String mediumoffset8(); - String mediumoffset9(); - String mediumoffset10(); - String mediumoffset11(); - String mediumcentered(); - String mediumuncentered(); - String large1(); - String large2(); - String large3(); - String large4(); - String large5(); - String large6(); - String large7(); - String large8(); - String large9(); - String large10(); - String large11(); - String large12(); - String largeoffset0(); - String largeoffset1(); - String largeoffset2(); - String largeoffset3(); - String largeoffset4(); - String largeoffset5(); - String largeoffset6(); - String largeoffset7(); - String largeoffset8(); - String largeoffset9(); - String largeoffset10(); - String largeoffset11(); - String largecentered(); - String largeuncentered(); - } -} \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.java deleted file mode 100644 index 32cf93c7b04..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.sap.sse.gwt.theme.client.resources.i18n; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.i18n.client.Messages; - -public interface TextMessages extends Messages { - public static final TextMessages INSTANCE = GWT.create(TextMessages.class); - - String chooseALanguage(); - - String footerCopyright(); - String footerLanguage(); - String footerLegal(); - String footerPrivacy(); - String footerFeedback(); - -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.properties b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.properties deleted file mode 100644 index 6023dfcaaff..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages.properties +++ /dev/null @@ -1,6 +0,0 @@ -chooseALanguage = Choose a language -footerCopyright = \u00A9 2015 SAP Sailing Analytics -footerFeedback = Feedback -footerLanguage = SAP Sailing offered in -footerLegal = Legal Disclosure -footerPrivacy = Privacy diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages_de.properties b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages_de.properties deleted file mode 100644 index 7c8f1aa4446..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/i18n/TextMessages_de.properties +++ /dev/null @@ -1,7 +0,0 @@ -chooseALanguage = W\u00E4hle eine Sprache -footerCopyright = \u00A9 2015 SAP Sailing Analytics -footerFeedback = Feedback -footerLanguage = SAP Sailing in -footerLegal = Impressum -footerPrivacy = Datenschutz - diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/main.gss b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/main.gss deleted file mode 100644 index ef74f7a328f..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/main.gss +++ /dev/null @@ -1,536 +0,0 @@ -/** - * The main styling styles - */ -*, -*:before, -*:after { - -moz-box-sizing: border-box; - box-sizing: border-box; -} -html, -body { - height: 100%; - font-family: 'Open Sans', sans-serif; - font-size: 93.75%; - line-height: 1.333; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -ms-content-zooming: none; -} -figure { - margin: 0; -} -a { - text-decoration: none; - color: #008fcc; -} -a:hover { - text-decoration: underline; -} -a img { - vertical-align: bottom; -} -hr { - font-size: 1rem; - margin: 0; - height: 1px; - border: none; - border-top: 1px solid #ebebeb; -} -h1 { - font-size: 2.133333333333333em; -} -h2 { - font-size: 1.466666666666667em; - font-weight: bold; - color: #008fcc; - margin-top: 0.7em; - margin-bottom: 0.7em; -} -h3 { - font-size: 1.2em; - font-weight: bold; - margin: 0 0 0.5em; -} -h4 { - font-size: 1em; - font-weight: bold; - color: #008fcc; -} -h5 { - font-size: 0.866666666666667em; - font-weight: 600; - color: #008fcc; -} -figure img { - display: block; -} -figcaption { - margin-top: 1.333333333333333em; -} -.wrapper { - font-size: 1rem; - position: relative; - min-height: 100%; - padding-bottom: 5em; -} -.mobile .wrapper { - padding-bottom: 11.333333333333334em; -} -.navbar { - font-size: 1rem; -} -.navbar_button { - font-size: 1.2em; - display: inline-block; - font-weight: 600; - color: #666; - border: 1px solid #dedede; - padding: 0.833333333333333em 0.944444444444444em; - background-color: #ebebeb; - -webkit-transition: background-color 0.2s, border-color 0.2s; - -moz-transition: background-color 0.2s, border-color 0.2s; - transition: background-color 0.2s, border-color 0.2s; - text-decoration: none; - margin-right: 0.555555555555556em; -} -.desktop .navbar_button { - border-top-left-radius: 0.277777777777778em; - border-top-right-radius: 0.277777777777778em; -} -.navbar_buttonhidden { - display: block; -} -.navbar_button:hover { - background-color: #dedede; - outline: none; - text-decoration: none; -} -.navbar_buttonactive { - color: #333; - background-color: #fff; - border-bottom: 1px solid #fff; -} -.navbar_buttonactive:hover { - background-color: #dedede; - border-bottom: 1px solid #dedede; -} -.button { - font-size: 1rem; - display: inline-block; - font-weight: 600; - color: #fff; - border: none; - padding: 0.666666666666667em 2em; - border-radius: 0.2em; - background-color: #efaa00; - -webkit-transition: background-color 0.2s; - -moz-transition: background-color 0.2s; - transition: background-color 0.2s; - text-decoration: none; -} -.button:hover { - background-color: #d79900; - outline: none; - text-decoration: none; -} -.buttontextonly { - color: #333; - background: none; - -webkit-transition: none; - -moz-transition: none; - transition: none; - font-weight: normal; -} -.buttonsmall { - visibility: inherit; -} -.buttonstrong { - font-size: 0.933333333333333rem; - font-weight: 700; - text-transform: uppercase; - padding: 0.714285714285714em 1.071428571428571em; -} -.desktop .buttonstrong { - border-radius: 0.214285714285714em; -} -.buttoninactive { - background-color: #ebebeb; - pointer-events: none; -} -.buttoninactive:hover { - background-color: #ebebeb; -} -.buttonprimary { - background-color: #008fcc; -} -.buttonprimary:hover { - background-color: #0081b8; -} -.buttonred { - background-color: #e94a1b; -} -.buttonred:hover { - background-color: #d54115; -} -.buttonrefresh { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAppJREFUeNrsl09o03AUx9MEi0rXSuhE66wMKoO5YlXYUc966NF5sB4UOoUdFXYdDnYaCj2VFobCpoeo61xZKQrCGIjt2jlxQ0vr0vWwTdYmzZImTZrnwSbUSbemW4tIHuTy4/d4n9/393t/YgAA5F82gw6oA+qAOqAO+J8DFt+etBrPee6gpp4e7ITLhRgwtEItLcnMyqqYI4iOG2T2QAEAoKmPnraYhbTfD3uZLIlCJhigZzqtzcZpyomJOvsqXG59N49USCalfDwmSxxbu15hSZJ5d+VyWwCLYbtd5rc2Vah8PMYuuN0UgaHKHorAUHbB7a4wqZQqprC9XZxzOFoOSBEYWiYnJwEAhJTPVwv21zN4feyokPL51MNQy5+pV0Zjy6+YIjCUW/R6G91fXnv+TIHkEg/utwywtPzooRYwVckQjstlqgAAIP6cn28JYOnL8HCzKgAAImSCASWztWS1ZjgVMjk0pAWQi9+7q/gy7/v7G/VD96uTTPRCL3q8u1vaiESUNWkjEsHMTicTOe/Yt5DPnj5VSgx6MYvrkrJmtHs8pcSglwl32Q6tUO98uHZVVe+3Gg378qtjY7tvgP/+9MmhvkE6hOMgSyIAQDUrNb1BfmX0sVY4zVlczUCQRYahQziuGfLryIgWOM2A7CfPbUWFcvbli4b9Pg7cbEsvpggMlQrJpAIpZIIB+o3JtNf+qmLAfxsfb08vnnM4antxZSeTrteLpXw8pvZifmuzOHvG1r5phiXJPycrjpXy8VitwuohuNw6E3X2tW3cAgCEnum0Cmm/X8nseib8mJigpy3mZuMceKJmwl22I2cHbmEW10XU3NuLIAhSKSwm5FKWFLNTUx3XM2v6P4kOqAPqgDqgDqgD1rVfAwAVWx4m+SNozQAAAABJRU5ErkJggg=="); -} -.buttonrefresh, -.buttonarrowdown { - background-repeat: no-repeat; - background-position: left top; - background-size: cover; - width: 2.333333333333333em; - height: 0; - padding: 2.333333333333333em 0 0 0; - border: 0; - overflow: hidden; - white-space: nowrap; -} -.buttonsearch { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NTg0MEE1MTVFN0UxMUU0QkNGMTk0Q0UzOUEwNUNFMyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NTg0MEE1MjVFN0UxMUU0QkNGMTk0Q0UzOUEwNUNFMyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjY1ODQwQTRGNUU3RTExRTRCQ0YxOTRDRTM5QTA1Q0UzIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY1ODQwQTUwNUU3RTExRTRCQ0YxOTRDRTM5QTA1Q0UzIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+tERf2gAAArFJREFUeNrMmE1kXFEUx28SwjAMjxCGIQwhzCoMQysVugqlhJBVyCqLbELpqtmEUFJddZFNFhVSpd20uqgw1VIhixgSIqREYiKRSExkhNTruZzhOO5999737m3m8DdzZt6773fP/Trn9cRxLBysD/QUNAaKQEP4eQI6xc/voN/Cl0lAC1VBG6Cr2M6aoHegkmX7WpkuKIPW4/R2B1oBRSEAJ0G3BoAz0DaoZbjuGEfBG+CS5kG7oFegiua+MYxYU3Gv7OyUD0AV3CFo2qHhHGhBM2efZQGcUjT4ER+YZg7JRbLF2msljEAiYFkx515nXYXYuS+s3QNQvyvghiJywpPyoAZr/4ULYFXRw5xHQKkh3HY6dmGz/fTifv2S7d+LoLbwa39Ab4gvT6BZm5MkYj3b9Rw5qojN84ZNBB+B+gnzexHOLvGs7lgFVEy6oQNI7asIax+YP2oCLBP/BrQXGHCH+RUT4ADxZcr0NzDgEfMLJsA88dsivN0wP2cCvCZ+/j8ARsw/NwGeEr+IWXNIK7kC7hNfbje1wIA1xQaeCPiL/TYRGHCSzfkfppMkx/K2Q9tMI2X6dU+e9dPmJGmzzVNWanOBorfE5viqbVWnyjSKnqNXY9E7thkp6qywlGvLY8pVVNQpc64Ja4S9ovbJA2QJMyRqm2lrkqoi7W9kKMBrmgpvPEtVN60pGZdBBYeorRnePAxnqYufa4rxFg677MQoSdlL6MtS8xtbDJkgk/6s4J7ow+qgCcVwGyFtC/CLlGBNtlpHXCFtJ3sBQesWUPe4Smc0+5wTZI/j+0GBCa488Acx+xkk7waP8Gw15ZUjoE28lybLT1jyIkTACs4kq0g+JKAV5EMDGiHTzMEQNgyqK+bk424B1EF+7hXdY/u4immNJLopgh2TLxLe4vf5fwIMADtbDGrkqxb2AAAAAElFTkSuQmCC"); - background-color: transparent; - background-size: contain; - background-position: center center; - background-repeat: no-repeat; - width: 1.333333333333333em; - height: 1.333333333333333em; - padding: 0; -} -.buttonsearch:hover { - background-color: transparent; - outline: none; - text-decoration: none; -} -.buttonarrowdown { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALFJREFUeNrs1TEOgjAUxnFx5iDscgPvwXkYuYdXwBPgAYwrsxPGIAPPvKQkxLQO5UE0+X9J06Ff0186tImI7H45CUCAAAECBAgQIMA1s1+y+dkUpUXna/QGY0Z/q0QztCcJddyauG7UOdHA8XWXKT7khNO47rbArj5kIeQnTrubA0NIS9xioA9piTMB+pBWODPgHGmJ02H6UD/OeaZzerxc+eoAAgQIECBAgAD/AvgWYACm/8hEADYaXwAAAABJRU5ErkJggg=="); - width: 2.666666666666667em; - padding: 2.733333333333333em 0 0 0; -} -.buttonarrowrightwhite:after { - content: ''; - display: inline-block; - margin-left: 0.666666666666667em; - width: 0.466666666666667em; - height: 0.8em; - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAMCAYAAACulacQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAFtJREFUeNpi+P///wEgPgzEokDMgIxBxMn/EHAVXQGIkIBKYCiAqUJXIIEsiVUBA5ojRJEUnGFiwAR/ofQvXLpQjMXpILxeOY8rEEAOegfER4DYAYhfI7sMIMAAiXvwy2upI1UAAAAASUVORK5CYII="); - background-size: contain; - background-repeat: no-repeat; -} -.label { - display: inline-block; - font-size: 0.8rem; - font-weight: 600; - color: #fff; - padding: 1px 0.666666666666667em; - position: relative; - margin-left: 0.833333333333333em; - height: 1.666666666666667em; - line-height: 1.666666666666667em; -} -.mobile .label { - font-size: 0.666666666666667rem; - margin-left: 1em; - height: 1.6em; - line-height: 1.6em; -} -.label:before { - content: ''; - position: absolute; - top: 0; - left: -0.833333333333333em; - width: 0; - height: 0; - border-top: 0.833333333333333em solid transparent; - border-bottom: 0.833333333333333em solid transparent; - border-right: 0.833333333333333em solid transparent; -} -.mobile .label:before { - left: -0.8em; - border-top: 0.8em solid transparent; - border-bottom: 0.8em solid transparent; - border-right: 0.8em solid transparent; -} -.labellarge { - height: 2em; - line-height: 1.75em; - margin-left: 1em; -} -.mobile .labellarge { - height: 2.4em; - line-height: 2.1em; - margin-left: 1.2em; -} -.labellarge:before { - left: -1em; - border-top-width: 1em; - border-bottom-width: 1em; - border-right-width: 1em; -} -.mobile .labellarge:before { - left: -1.2em; - border-top-width: 1.2em; - border-bottom-width: 1.2em; - border-right-width: 1.2em; -} -.label[data-labeltype='live'] { - background-color: #e94a1b; - vertical-align: middle; - margin-top: -0.416666666666667em; -} -.label[data-labeltype='live']:before { - border-right-color: #e94a1b; -} -.label[data-labeltype='finished'] { - background-color: #8ab54e; - vertical-align: middle; - margin-top: -0.416666666666667em; -} -.label[data-labeltype='finished']:before { - border-right-color: #8ab54e; -} -.label[data-labeltype='next'] { - background-color: #efaa00; - vertical-align: middle; - margin-top: -0.416666666666667em; -} -.label[data-labeltype='next']:before { - border-right-color: #efaa00; -} -.label[data-labeltype='progress'] { - background-color: #efaa00; - vertical-align: middle; - margin-top: -0.416666666666667em; -} -.label[data-labeltype='progress']:before { - border-right-color: #efaa00; -} -.label[data-labeltype='upcoming'] { - color: #f6f9fc; - background-color: #666; - vertical-align: middle; - margin-top: -0.416666666666667em; -} -.label[data-labeltype='upcoming']:before { - border-right-color: #666; -} -.label[data-labeltype='new'], -.label[data-labeltype='updated'] { - background-color: #efaa00; - text-transform: uppercase; - vertical-align: middle; -} -.label[data-labeltype='new']:before, -.label[data-labeltype='updated']:before { - border-right-color: #efaa00; -} -.label[data-labeltype='ess'] { - background-color: #a71724; -} -.label[data-labeltype='ess']:before { - border-right-color: #a71724; -} -.label[data-labeltype='worldcup'] { - background-color: #c79242; -} -.label[data-labeltype='worldcup']:before { - border-right-color: #c79242; -} -.label[data-labeltype='bundesliga'] { - background-color: #005fa7; -} -.label[data-labeltype='bundesliga']:before { - border-right-color: #005fa7; -} -.morelink { - color: #008fcc; - text-transform: uppercase; - text-align: center; - font-size: 0.933333333333333em; - font-weight: 700; - padding: 1.866666666666667em; - display: block; - text-decoration: none; -} -.morelink:hover { - text-decoration: underline; -} -.dummy { - font-size: 1rem; - min-height: 25em; - position: relative; -} -.dummy:after { - content: 'Dummy content'; - position: absolute; - top: 50%; - left: 50%; - font-weight: 700; - font-size: 6em; - color: #f7f7f7; - text-shadow: 1px 1px 0 #eee, 2px 2px 0 #eee, 3px 3px 0 #eee, 4px 4px 0 #eee, 5px 5px 0 #eee, 6px 6px 0 #eee, 7px 7px 0 #eee; - -webkit-transform: translate(-50%, -50%); - -moz-transform: translate(-50%, -50%); - -ms-transform: translate(-50%, -50%); - transform: translate(-50%, -50%); -} -.mainsection { - padding: 5.333333333333333em 0; -} -.mobile .mainsection { - padding-top: 5.333333333333333em; - padding-bottom: 5.333333333333333em; -} -.mainsection_header { - text-align: center; - margin-bottom: 4em; -} -.mainsection_header p { - margin-top: 0; - font-size: 1.2em; -} -.mainsection_header_title { - margin: 0 0 0.5em; - font-size: 2.4em; - color: #008fcc; - text-align: center; -} -.mainsection_navigation { - text-align: center; -} -.lightbox { - font-size: 1rem; -} -.lightbox_overlay { - display: none; - font-size: 1rem; - background: rgba(0,0,0,0.75); - width: 100%; - height: 100%; - position: fixed; - left: 0; - top: 0; - z-index: 10; - -webkit-transition: opacity 0.3s ease; - -moz-transition: opacity 0.3s ease; - transition: opacity 0.3s ease; -} -.lightbox_content { - position: absolute; - top: 50%; - left: 50%; - -webkit-transform: translate(-50%, -50%); - -moz-transform: translate(-50%, -50%); - -ms-transform: translate(-50%, -50%); - transform: translate(-50%, -50%); - max-width: 90%; - max-height: 90%; - overflow: hidden; -} -.lightbox_close { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHVJREFUeNqsk4EJACEIReWawY2bMLh5LME7JNQEE4So/x9pCUTUVvaVuBKSieJpIAuOkYSgaDn6t/EmIdrMHtQHJ4g2/5pd4EFM8w7whK7ZAliQEZWWaVbY3AeqcbuEUhMj4fEZ8XTV6CNlzC7kyjCVxnkKMABEXRUAnXsRRQAAAABJRU5ErkJggg=="); - background-repeat: no-repeat; - background-position: center center; - width: 1.333333333333333em; - height: 0; - padding-top: 1.333333333333333em; - position: absolute; - top: 1.333333333333333em; - right: 1.333333333333333em; - cursor: pointer; - z-index: 2; -} -.spacer { - width: 100%; - border: 0; - margin: 0; - padding: 0; - display: block; -} -.spacersmall { - height: 1em; -} -.spacermediumsmall { - height: 1.333333333333333em; -} -.spacermedium { - height: 2em; -} -.spacermediumbig { - height: 4em; -} -.spacerbig { - height: 5.333333333333333em; -} -.spacermargin { - font-size: inherit; -} -.spacermargintopsmall { - margin-top: 1em; -} -.spacermargintopmediumsmall { - margin-top: 1.333333333333333em; -} -.spacermargintopmedium { - margin-top: 2em; -} -.spacermargintopmediumbig { - margin-top: 4em; -} -.spacermargintopbig { - margin-top: 5.333333333333333em; -} -.spacermarginbottomsmall { - margin-bottom: 1em; -} -.spacermarginbottommediumsmall { - margin-bottom: 1.333333333333333em; -} -.spacermarginbottommedium { - margin-bottom: 2em; -} -.spacermarginbottommediumbig { - margin-bottom: 4em; -} -.spacermarginbottombig { - margin-bottom: 5.333333333333333em; -} -@media (min-width: 720px) { - .spacermarginonlyonsmall { - margin: 0; - } -} -@media (max-width: 720px) { - .spacermarginonlyonlarge { - margin: 0; - } -} -.stickyheader { - background: inherit; -} -.slideto { - background: inherit; - border-bottom: 0.266666666666667em solid transparent; -} -.slidetonav { - background: inherit; -} -.slidetoactive { - border-bottom-color: #efaa00; - text-decoration: none; - color: #dedede; -} -.slidetoactive:hover { - border-bottom-color: #d79900; -} -.fleetcorner { - position: absolute; - top: 0.333333333333333em; - left: 0.333333333333333em; - width: 0; - height: 0; - border-style: solid; - border-width: 1em 1em 0 0; - color: transparent; -} \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/media.gss b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/media.gss deleted file mode 100644 index 52ee764a59c..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/resources/media.gss +++ /dev/null @@ -1,453 +0,0 @@ -/** - * The grid styles - */ -.grid, -.stackenblochen { - display: block; -/* width: 100%; */ -/* max-width: 80rem; */ - min-width: 720px; - list-style: none; - margin: 0 auto; - margin-left: 5rem; - margin-right: 5rem; - zoom: 1; -} -.grid:before, -.stackenblochen:before, -.grid:after, -.stackenblochen:after { - content: ""; - display: table; -} -.grid:after, -.stackenblochen:after { - clear: both; -} -.grid *, -.stackenblochen * { - -moz-box-sizing: border-box; - box-sizing: border-box; -} -.grid .grid, -.stackenblochen .grid, -.grid .stackenblochen, -.stackenblochen .stackenblochen { - width: auto; - max-width: none; - margin-left: -1rem; - margin-right: -1rem; -} -.column, -.columns { - float: left; - padding: 0 1rem; - position: relative; - width: 100%; -} -.column img, -.columns img { - max-width: 100%; - height: auto; - ms-interpolation-mode: bicubic; -} -.small1 { - width: 8.3333333333333%; -} -.small2 { - width: 16.6666666666667%; -} -.small3 { - width: 25%; -} -.small4 { - width: 33.3333333333333%; -} -.small5 { - width: 41.6666666666667%; -} -.small6 { - width: 50%; -} -.small7 { - width: 58.3333333333333%; -} -.small8 { - width: 66.6666666666667%; -} -.small9 { - width: 75%; -} -.small10 { - width: 83.3333333333333%; -} -.small11 { - width: 91.6666666666667%; -} -.small12 { - width: 100%; -} -.smalloffset0 { - margin-left: 0% !important; -} -.smalloffset1 { - margin-left: 8.3333333333333% !important; -} -.smalloffset2 { - margin-left: 16.6666666666667% !important; -} -.smalloffset3 { - margin-left: 25% !important; -} -.smalloffset4 { - margin-left: 33.3333333333333% !important; -} -.smalloffset5 { - margin-left: 41.6666666666667% !important; -} -.smalloffset6 { - margin-left: 50% !important; -} -.smalloffset7 { - margin-left: 58.3333333333333% !important; -} -.smalloffset8 { - margin-left: 66.6666666666667% !important; -} -.smalloffset9 { - margin-left: 75% !important; -} -.smalloffset10 { - margin-left: 83.3333333333333% !important; -} -.smalloffset11 { - margin-left: 91.6666666666667% !important; -} -.showonsmall { - display: inherit !important; -} -.hideonsmall { - display: none !important; -} -table.showonsmall { - display: table !important; -} -tr.showonsmall { - display: table-row !important; -} -td.showonsmall, -th.showonsmall { - display: table-cell !important; -} -.showonmedium { - display: none !important; -} -.hideonmedium { - display: inherit !important; -} -table.hideonmedium { - display: table !important; -} -tr.hideonmedium { - display: table-row !important; -} -td.hideonmedium, -th.hideonmedium { - display: table-cell !important; -} -.showonlarge { - display: none !important; -} -.hideonlarge { - display: inherit !important; -} -table.hideonlarge { - display: table !important; -} -tr.hideonlarge { - display: table-row !important; -} -td.hideonlarge, -th.hideonlarge { - display: table-cell !important; -} -.column.smallcentered, -.columns.smallcentered { - margin-left: auto; - margin-right: auto; - float: none; -} -.column.smalluncentered, -.columns.smalluncentered { - margin-left: 0; - margin-right: 0; - float: left !important; -} -@media (min-width: 45em) { - .medium1 { - width: 8.3333333333333%; - } - .medium2 { - width: 16.6666666666667%; - } - .medium3 { - width: 25%; - } - .medium4 { - width: 33.3333333333333%; - } - .medium5 { - width: 41.6666666666667%; - } - .medium6 { - width: 50%; - } - .medium7 { - width: 58.3333333333333%; - } - .medium8 { - width: 66.6666666666667%; - } - .medium9 { - width: 75%; - } - .medium10 { - width: 83.3333333333333%; - } - .medium11 { - width: 91.6666666666667%; - } - .medium12 { - width: 100%; - } - .mediumoffset0 { - margin-left: 0% !important; - } - .mediumoffset1 { - margin-left: 8.3333333333333% !important; - } - .mediumoffset2 { - margin-left: 16.6666666666667% !important; - } - .mediumoffset3 { - margin-left: 25% !important; - } - .mediumoffset4 { - margin-left: 33.3333333333333% !important; - } - .mediumoffset5 { - margin-left: 41.6666666666667% !important; - } - .mediumoffset6 { - margin-left: 50% !important; - } - .mediumoffset7 { - margin-left: 58.3333333333333% !important; - } - .mediumoffset8 { - margin-left: 66.6666666666667% !important; - } - .mediumoffset9 { - margin-left: 75% !important; - } - .mediumoffset10 { - margin-left: 83.3333333333333% !important; - } - .mediumoffset11 { - margin-left: 91.6666666666667% !important; - } - .showonsmall { - display: none !important; - } - .hideonsmall { - display: inherit !important; - } - table.hideonsmall { - display: table !important; - } - tr.hideonsmall { - display: table-row !important; - } - td.hideonsmall, - th.hideonsmall { - display: table-cell !important; - } - .showonmedium { - display: inherit !important; - } - .hideonmedium { - display: none !important; - } - table.showonmedium { - display: table !important; - } - tr.showonmedium { - display: table-row !important; - } - td.showonmedium, - th.showonmedium { - display: table-cell !important; - } - .showonlarge { - display: none !important; - } - .hideonlarge { - display: inherit !important; - } - table.hideonlarge { - display: table !important; - } - tr.hideonlarge { - display: table-row !important; - } - td.hideonlarge, - th.hideonlarge { - display: table-cell !important; - } - .column.mediumcentered, - .columns.mediumcentered { - margin-left: auto; - margin-right: auto; - float: none; - } - .column.mediumuncentered, - .columns.mediumuncentered { - margin-left: 0; - margin-right: 0; - float: left !important; - } -} -@media (min-width: 61em) { - .large1 { - width: 8.3333333333333%; - } - .large2 { - width: 16.6666666666667%; - } - .large3 { - width: 25%; - } - .large4 { - width: 33.3333333333333%; - } - .large5 { - width: 41.6666666666667%; - } - .large6 { - width: 50%; - } - .large7 { - width: 58.3333333333333%; - } - .large8 { - width: 66.6666666666667%; - } - .large9 { - width: 75%; - } - .large10 { - width: 83.3333333333333%; - } - .large11 { - width: 91.6666666666667%; - } - .large12 { - width: 100%; - } - .largeoffset0 { - margin-left: 0% !important; - } - .largeoffset1 { - margin-left: 8.3333333333333% !important; - } - .largeoffset2 { - margin-left: 16.6666666666667% !important; - } - .largeoffset3 { - margin-left: 25% !important; - } - .largeoffset4 { - margin-left: 33.3333333333333% !important; - } - .largeoffset5 { - margin-left: 41.6666666666667% !important; - } - .largeoffset6 { - margin-left: 50% !important; - } - .largeoffset7 { - margin-left: 58.3333333333333% !important; - } - .largeoffset8 { - margin-left: 66.6666666666667% !important; - } - .largeoffset9 { - margin-left: 75% !important; - } - .largeoffset10 { - margin-left: 83.3333333333333% !important; - } - .largeoffset11 { - margin-left: 91.6666666666667% !important; - } - .showonsmall { - display: none !important; - } - .hideonsmall { - display: inherit !important; - } - table.hideonsmall { - display: table !important; - } - tr.hideonsmall { - display: table-row !important; - } - td.hideonsmall, - th.hideonsmall { - display: table-cell !important; - } - .showonmedium { - display: none !important; - } - .hideonmedium { - display: inherit !important; - } - table.hideonmedium { - display: table !important; - } - tr.hideonmedium { - display: table-row !important; - } - td.hideonmedium, - th.hideonmedium { - display: table-cell !important; - } - .showonlarge { - display: inherit !important; - } - .hideonlarge { - display: none !important; - } - table.showonlarge { - display: table !important; - } - tr.showonlarge { - display: table-row !important; - } - td.showonlarge, - th.showonlarge { - display: table-cell !important; - } - .column.largecentered, - .columns.largecentered { - margin-left: auto; - margin-right: auto; - float: none; - } - .column.largeuncentered, - .columns.largeuncentered { - margin-left: 0; - margin-right: 0; - float: left !important; - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.java deleted file mode 100644 index bd6f890cc59..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.dom.client.DivElement; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiChild; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.SimplePanel; -import com.google.gwt.user.client.ui.Widget; - -public class ComponentShowCase extends Composite { - - private static ComponentShowCaseUiBinder uiBinder = GWT.create(ComponentShowCaseUiBinder.class); - - interface ComponentShowCaseUiBinder extends UiBinder { - } - - @UiField - DivElement componentNameUi; - - @UiField - SimplePanel componentDescriptionUi; - - @UiField - SimplePanel componentPanelUi; - - private String name; - - public ComponentShowCase() { - initWidget(uiBinder.createAndBindUi(this)); - } - - public void setName(String name) { - this.name = name; - componentNameUi.setInnerText(name); - } - - @UiChild - public void addDescription(Widget description) { - componentDescriptionUi.setWidget(description); - } - - @UiChild - public void addComponent(Widget w) { - componentPanelUi.setWidget(w); - } - - public String getName() { - return this.name; - } - -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.ui.xml deleted file mode 100644 index eeabbc8f25d..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ComponentShowCase.ui.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - .outerpanel { - margin: 20px; - } - .componentName { - font-size: 20px; - font-weight: bold; - magin-bottom: 10px; - - } - .componentDescription { - margin-bottom: 30px; - border-bottom: 3px solid black; - padding: 20px; - width: 100%; - - } - - -
- - - - -
-
\ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.java deleted file mode 100644 index 7ab3fd01d6c..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.dom.client.Style.Unit; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.SimplePanel; -import com.google.gwt.user.client.ui.Widget; - -public class MainPage extends Composite { - - private static MainPageUiBinder uiBinder = GWT.create(MainPageUiBinder.class); - - interface MainPageUiBinder extends UiBinder { - } - - @UiField(provided = true) - SimplePanel contentUi; - - @UiField(provided = true) - ShowcaseStackLayoutPanel stackLayoutPanelUi; - - public MainPage() { - contentUi = new SimplePanel(); - stackLayoutPanelUi = new ShowcaseStackLayoutPanel(Unit.EM); - stackLayoutPanelUi.setTarget(contentUi); - initWidget(uiBinder.createAndBindUi(this)); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.ui.xml deleted file mode 100644 index 3dedb3af0cd..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/MainPage.ui.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - Components - - - - - - - - - - - - - - - - - - - - Styleguide - - - - - - - - - - - - - \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.java deleted file mode 100644 index d6407623138..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.event.dom.client.ClickEvent; -import com.google.gwt.event.dom.client.ClickHandler; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiChild; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.AcceptsOneWidget; -import com.google.gwt.user.client.ui.Anchor; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.FlowPanel; -import com.google.gwt.user.client.ui.SimplePanel; -import com.google.gwt.user.client.ui.Widget; - -public class Section extends Composite { - private static ShowCaseSectionUiBinder uiBinder = GWT.create(ShowCaseSectionUiBinder.class); - - interface ShowCaseSectionUiBinder extends UiBinder { - } - - private AcceptsOneWidget target; - - @UiField - FlowPanel panelUi; - - public Section() { - initWidget(uiBinder.createAndBindUi(this)); - } - - public void setTargetContentArea(AcceptsOneWidget target) { - this.target = target; - } - - @UiChild - public void addItem(final Widget widget, String name) { - SimplePanel p = new SimplePanel(); - Anchor showCaseItem = new Anchor(name); - p.setWidget(showCaseItem); - showCaseItem.addClickHandler(new ClickHandler() { - - @Override - public void onClick(ClickEvent event) { - target.setWidget(widget); - } - }); - - panelUi.add(p); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.ui.xml deleted file mode 100644 index 7f8562acc98..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/Section.ui.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowCaseResources.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowCaseResources.java deleted file mode 100644 index 2147603cd48..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowCaseResources.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.resources.client.ClientBundle; -import com.google.gwt.resources.client.CssResource; - -public interface ShowCaseResources extends ClientBundle { - public static final ShowCaseResources INSTANCE = GWT.create(ShowCaseResources.class); - - @Source("showcase.gss") - ShowcaseCss css(); - - public interface ShowcaseCss extends CssResource{ - String showcaseHeader(); - String showcaseContent(); - String styleGuideHeader(); - String styleGuideContent(); - - String styleGuideRow(); - String styleGuideRowDescription(); - String styleGuideRowDescriptionTitle(); - String styleGuideRowContent(); - String styleGuideRowCode(); - String styleGuideRowDescription_codeLink(); - - // TODO: these style should come from the main.css - String styleGuideDetailsTypeface_semibold(); - String styleGuideDetailsTypeface_bold(); - String styleGuideDetailsTypeface_regular(); - } -} \ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowcaseStackLayoutPanel.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowcaseStackLayoutPanel.java deleted file mode 100644 index 4889e6aa5ec..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/ShowcaseStackLayoutPanel.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase; - -import com.google.gwt.dom.client.Style.Unit; -import com.google.gwt.user.client.ui.SimplePanel; -import com.google.gwt.user.client.ui.StackLayoutPanel; -import com.google.gwt.user.client.ui.Widget; - -public class ShowcaseStackLayoutPanel extends StackLayoutPanel { - private SimplePanel target; - - public ShowcaseStackLayoutPanel(Unit unit) { - super(unit); - } - - public void setTarget(SimplePanel target) { - this.target = target; - } - - @Override - public void add(Widget widget, String header, boolean asHtml, double headerSize) { - if (widget instanceof Section) { - Section section = (Section) widget; - section.setTargetContentArea(target); - } - super.add(widget, header, asHtml, headerSize); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.java deleted file mode 100644 index a190f499dd8..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase.components; - -import java.util.ArrayList; -import java.util.List; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Widget; -import com.sap.sse.gwt.theme.client.component.imagegallery.ImageDescriptor; -import com.sap.sse.gwt.theme.client.component.imagegallery.ImageGallery; -import com.sap.sse.gwt.theme.client.component.imagegallery.ImageGalleryData; - -public class ImageGalleryShowcase extends Composite { - - private static ImageGalleryShowcaseUiBinder uiBinder = GWT.create(ImageGalleryShowcaseUiBinder.class); - - interface ImageGalleryShowcaseUiBinder extends UiBinder { - } - - @UiField(provided=true) - ImageGallery imageGallery; - - public ImageGalleryShowcase() { - List images = new ArrayList(); - for(int i = 0; i < 10; i++) { - ImageDescriptor desc = new ImageDescriptor("http://dummyimage.com/300x300/000/fff"); - desc.setTitle("Image " + (i+1)); - images.add(desc); - } - - imageGallery = new ImageGallery(new ImageGalleryData("My image gallery", images)); - - initWidget(uiBinder.createAndBindUi(this)); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.ui.xml deleted file mode 100644 index 018e825f9e1..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/ImageGalleryShowcase.ui.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - An image gallery. -

Import: xmlns:sap="urn:import:com.sap.sse.gwt.theme.client.component.imagegallery"

-
-
- - - - - -
-
\ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.java deleted file mode 100644 index dcd61d485e6..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase.components; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Widget; -import com.sap.sse.gwt.theme.client.component.loadingindicator.LoadingIndicator; - -public class LoadingIndicatorShowcase extends Composite { - - private static LoadingIndicatorShowcaseUiBinder uiBinder = GWT.create(LoadingIndicatorShowcaseUiBinder.class); - - interface LoadingIndicatorShowcaseUiBinder extends UiBinder { - } - - @UiField - LoadingIndicator loadingIndicator; - - public LoadingIndicatorShowcase() { - initWidget(uiBinder.createAndBindUi(this)); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.ui.xml deleted file mode 100644 index ee194856838..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/LoadingIndicatorShowcase.ui.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - A Loading indicator. -

Import: xmlns:sap="urn:import:com.sap.sse.gwt.theme.client.component.loadingindicator"

-
-
- - - - - -
-
\ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.java deleted file mode 100644 index 7b570db82ce..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase.components; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Widget; -import com.sap.sse.gwt.theme.client.component.sapfooter.SAPFooter; - -public class SAPFooterShowcase extends Composite { - - private static SAPHeaderShowcaseUiBinder uiBinder = GWT.create(SAPHeaderShowcaseUiBinder.class); - - interface SAPHeaderShowcaseUiBinder extends UiBinder { - } - - @UiField(provided = true) - SAPFooter sapFooter; - - public SAPFooterShowcase() { - sapFooter = new SAPFooter(); - - initWidget(uiBinder.createAndBindUi(this)); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.ui.xml deleted file mode 100644 index 2b993681cc1..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPFooterShowcase.ui.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - A SAP footer. -

Import: xmlns:sap="urn:import:com.sap.sse.gwt.theme.client.component.sapfooter"

-
-
- - - - - -
-
\ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.java deleted file mode 100644 index aa07434270e..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase.components; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Widget; -import com.sap.sse.gwt.theme.client.component.sapheader.SAPHeader; - -public class SAPHeaderShowcase extends Composite { - - private static SAPHeaderShowcaseUiBinder uiBinder = GWT.create(SAPHeaderShowcaseUiBinder.class); - - interface SAPHeaderShowcaseUiBinder extends UiBinder { - } - - @UiField(provided = true) - SAPHeader sapHeader; - - public SAPHeaderShowcase() { - sapHeader = new SAPHeader("Sailing Analytics", "Demo page", false); - - initWidget(uiBinder.createAndBindUi(this)); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.ui.xml deleted file mode 100644 index ccf44dc116c..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/SAPHeaderShowcase.ui.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - A simple header with SAP logo and title. -

Import: xmlns:sap="urn:import:com.sap.sse.gwt.theme.client.component.sapheader"

-
-
- - - - - -
-
\ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.java deleted file mode 100644 index 43b98a8c425..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase.components; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Widget; -import com.sap.sse.gwt.theme.client.component.videogallery.VideoGallery; -import com.sap.sse.gwt.theme.client.component.videogallery.VideoGalleryData; - -public class VideoGalleryShowcase extends Composite { - - private static VideoGalleryShowcaseUiBinder uiBinder = GWT.create(VideoGalleryShowcaseUiBinder.class); - - interface VideoGalleryShowcaseUiBinder extends UiBinder { - } - - @UiField(provided=true) - VideoGallery videoGallery; - - public VideoGalleryShowcase() { - videoGallery = new VideoGallery(new VideoGalleryData("My video gallery")); - - initWidget(uiBinder.createAndBindUi(this)); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.ui.xml deleted file mode 100644 index cf7212aaced..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/components/VideoGalleryShowcase.ui.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - A video gallery. -

Import: xmlns:sap="urn:import:com.sap.sse.gwt.theme.client.component.videogallery"

-
-
- - - - - -
-
\ No newline at end of file diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/showcase.gss b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/showcase.gss deleted file mode 100644 index 1a9a5c4b88e..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/showcase.gss +++ /dev/null @@ -1,78 +0,0 @@ -.showcaseHeader { - width: 100%; - display: block; - margin: 5px; -} - -.showcaseContent { - width: 100%; - display: block; - margin: 5px; -} - -.styleGuideHeader { - width: 100%; - display: block; - margin: 5px; -} - -.styleGuideContent { - width: 100%; - display: block; - margin: 5px; -} - -.styleGuideRow { - clear: both; - margin-top: 50px; - overflow: hidden; -} - -.styleGuideRowDescription { - float: left; - font-weight: 700; -} - -.styleGuideRowDescriptionTitle { - float: left; -} - -.styleGuideRowContent { - float: left; -} - -.styleGuideRowCode { - background-color: #EEEEEE; - border: 1px solid #CCCCCC; - display: none; - float: left; - font-family: "Lucida Console",Monaco,"Courier New",Courier,monospace; - margin-top: 20px; - padding: 20px 10px; -} - -.styleGuideRowDescription_codeLink { - color: #999999; - display: none; - float: right; - font-family: monospace; - font-size: 12px; - font-weight: 400; - line-height: 23px; - margin-right: 25px; -} - -.styleGuideDetailsTypeface_semibold { - font-size: 22px; - font-weight: 600; -} - -.styleGuideDetailsTypeface_regular { - font-size: 22px; -} - -.styleGuideDetailsTypeface_bold { - font-size: 22px; - font-weight: 700; -} - diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/AbstractStyleguideComposite.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/AbstractStyleguideComposite.java deleted file mode 100644 index 45919a4a389..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/AbstractStyleguideComposite.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase.styleguide; - -import com.google.gwt.user.client.ui.Composite; -import com.sap.sse.gwt.theme.client.resources.ThemeResources; -import com.sap.sse.gwt.theme.client.showcase.ShowCaseResources; - -public class AbstractStyleguideComposite extends Composite { - public AbstractStyleguideComposite() { - ThemeResources.INSTANCE.mediaCss().ensureInjected(); - ThemeResources.INSTANCE.mainCss().ensureInjected(); - ShowCaseResources.INSTANCE.css().ensureInjected(); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.java b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.java deleted file mode 100644 index f6162d6643f..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.sap.sse.gwt.theme.client.showcase.styleguide; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.user.client.ui.Widget; - -public class TypefaceStyleguide extends AbstractStyleguideComposite { - - private static TypefaceStyleguideUiBinder uiBinder = GWT.create(TypefaceStyleguideUiBinder.class); - - interface TypefaceStyleguideUiBinder extends UiBinder { - } - - public TypefaceStyleguide() { - super(); - - initWidget(uiBinder.createAndBindUi(this)); - } -} diff --git a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.ui.xml b/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.ui.xml deleted file mode 100644 index 64479c7583c..00000000000 --- a/java/com.sap.sse.gwt.theme/src/main/java/com/sap/sse/gwt/theme/client/showcase/styleguide/TypefaceStyleguide.ui.xml +++ /dev/null @@ -1,44 +0,0 @@ - - - - - - - - Typeface styleguide - - - - -
-
-
-
REGULAR
- </> -
-
Grumpy wizards make toxic brew for the evil queen and jack.
-
Code und sooo
-
-
-
-
SEMIBOLD
- </> -
-
Grumpy wizards make toxic brew for the evil queen and jack.
-
Code und sooo
-
-
-
-
BOLD
- </> -
-
Grumpy wizards make toxic brew for the evil queen and jack.
-
Code und sooo
-
-
-
-
-
-
\ No newline at end of file From 329f19ea7a2254c4aa50c9677aa78cf37566f704 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 1 Dec 2015 15:58:35 +0100 Subject: [PATCH 003/367] Adjusted run configurations to no longer reference theme module --- .../SailingGWT sdm.launch | 157 +++++++++--------- java/com.sap.sailing.gwt.ui/SailingGWT.launch | 151 +++++++++-------- 2 files changed, 153 insertions(+), 155 deletions(-) mode change 100755 => 100644 java/com.sap.sailing.gwt.ui/SailingGWT.launch diff --git a/java/com.sap.sailing.gwt.ui/SailingGWT sdm.launch b/java/com.sap.sailing.gwt.ui/SailingGWT sdm.launch index af074b8e973..39b4e2d9b0d 100644 --- a/java/com.sap.sailing.gwt.ui/SailingGWT sdm.launch +++ b/java/com.sap.sailing.gwt.ui/SailingGWT sdm.launch @@ -1,79 +1,78 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/java/com.sap.sailing.gwt.ui/SailingGWT.launch b/java/com.sap.sailing.gwt.ui/SailingGWT.launch old mode 100755 new mode 100644 index 4f94e217a34..eae5568a9aa --- a/java/com.sap.sailing.gwt.ui/SailingGWT.launch +++ b/java/com.sap.sailing.gwt.ui/SailingGWT.launch @@ -1,76 +1,75 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 27eb75d58694681c998d2a6c9141a1573530ff01 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 1 Dec 2015 15:59:42 +0100 Subject: [PATCH 004/367] Moved main.gss and media.gss to SharedResources bundle class --- .../com/sap/sailing/gwt/common/client/SharedResources.java | 4 ++-- .../home => java/com/sap/sailing/gwt/common/client}/main.gss | 0 .../home => java/com/sap/sailing/gwt/common/client}/media.gss | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename java/com.sap.sailing.gwt.ui/src/main/{resources/com/sap/sailing/gwt/home => java/com/sap/sailing/gwt/common/client}/main.gss (100%) rename java/com.sap.sailing.gwt.ui/src/main/{resources/com/sap/sailing/gwt/home => java/com/sap/sailing/gwt/common/client}/media.gss (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java index 3430d1a0c71..72db668974a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java @@ -7,10 +7,10 @@ import com.google.gwt.resources.client.CssResource; public interface SharedResources extends ClientBundle { public static final SharedResources INSTANCE = GWT.create(SharedResources.class); - @Source("com/sap/sailing/gwt/home/main.gss") + @Source("main.gss") MainCss mainCss(); - @Source("com/sap/sailing/gwt/home/media.gss") + @Source("media.gss") MediaCss mediaCss(); public interface MainCss extends CssResource{ diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/main.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/main.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/media.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/media.gss similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/media.gss rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/media.gss From 739d321649f9b29467b52ee6d42e8528d1df3561 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 2 Dec 2015 09:40:25 +0100 Subject: [PATCH 005/367] Moved logo image to respective ClientBundle class --- .../client/shared/header/SAPHeaderResources.java | 2 +- .../client/shared/header}/logo-small@2x.png | Bin .../com/sap/sailing/gwt/home/images/logo.png | Bin 4920 -> 0 bytes .../com/sap/sailing/gwt/home/images/logo@2x.png | Bin 8020 -> 0 bytes 4 files changed, 1 insertion(+), 1 deletion(-) rename java/com.sap.sailing.gwt.ui/src/main/{resources/com/sap/sailing/gwt/home/images => java/com/sap/sailing/gwt/autoplay/client/shared/header}/logo-small@2x.png (100%) delete mode 100644 java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo.png delete mode 100644 java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo@2x.png diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/autoplay/client/shared/header/SAPHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/autoplay/client/shared/header/SAPHeaderResources.java index e283365c099..c36d56504b2 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/autoplay/client/shared/header/SAPHeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/autoplay/client/shared/header/SAPHeaderResources.java @@ -21,6 +21,6 @@ public interface SAPHeaderResources extends ClientBundle { String pagetitle(); } - @Source("com/sap/sailing/gwt/home/images/logo-small@2x.png") + @Source("logo-small@2x.png") ImageResource logo(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo-small@2x.png b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/autoplay/client/shared/header/logo-small@2x.png similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo-small@2x.png rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/autoplay/client/shared/header/logo-small@2x.png diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo.png b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo.png deleted file mode 100644 index 4aa0213d89617a07918d95753eb7ee009399b184..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4920 zcmbVQXEa=E+ZH7fLJ-j|k9_?T#DXjt_15T?|1 zka|m;IZb_1;tSx^g_o>tMK&WilYKE>SQ-r{f&&(ykH_4`nqo0d{+=CJRT>&PoD15D zY-MZ&b0pwpF~2afet064O+%x4&5ww2bi$gCFixV7ZDQ^rmCTd}E zE_wl8ShD~Vv}1sqqp}n5ni@dW4@Omh$C5DsKfJpK3FZd}{-qa2-TxAUfPlXsWH&hQ zZ>Ow`kpL}%7ZxBd3zl&ND?k7WaQfI$!_2&^ar0mI}KVPFX0p9@H} z=H=uJGezk9V~cu%194+y-3CFFm6btYCE9vXiN?nND)u1#lPGG+KzVDH!OZs&l_44k z=v8^Brj`~20@1#zsia8F-c?Oy2vkQ)TU-7&SKos~#&|elf7^AT+Wm(M`LA4!jmFzytouFwEsY zc%XwoC~9hJC_ojUkiQ~Vgy0sU%^|I;qNMbsYr zwf(pGsfT~Z2kSwd887N^Ox)}{qMR3%pz4Y*%1yo zLoe4Bx-ngh%$wC;-#D6?uy21fndxdIRfMlPHn&Zw9L+3a0Zz`M^Q>D=_++In!3$M} zSiW;(Yy|Y4q#nx@5Uvdi#^y}ghvQ8VgX;t#?8gUsPT?OENQl7%71p#O{=lts86577 z@+ZgJp?dxXmU!508zyy!{{9axO%N}EwgdFL1@xR}OWeJ)=5Tf&qqv+3Nn)vczWPfe z(NyNuGuk3@>D_ba_(Hp&V9C*&Uc#q|u8i`Jx?Bz}(zBZzKm71S!_vL@Ne``F*%jSY z(Xw`RltO1j;RV%K{`dJs>r580t?-hJ*qoIIbGHKNjhCBnu*+>i6Pv=3mV!)Eu@pk? z*~|7SQjFS{BC*|pOGHJr%@~frf;q~DMD;RH@~4`C zOAI{Ff+W7_$L=-yHF$mCAWiTZ1!pDK8!pbxHCq*ZNi%Ktt4d!^gy;hNo%`1_FMewB z*u;IG1V*SY}NJpz130co$4~w0JAB81zv5%rq+JadanMzjd z1!G&}V$;VZ20ucpQbkr`*I^OmJI`)0+QFK|yzWyhqLzhK#8~S(fwSCsd480ldsdR{ zZ*hoHnF!1yBC{$!@tkVjG-Z?66@BBObBCGIUe6BfzcOzv$~SX4=0UH|Z0jTiX^g6T z^sePjL7}Zulsoqm8Bu^Xt|cdXxuwWPhov+xBxkjGbMNK*uDgtRl>5+onvf~$FKt6d z6&ls&jrKI+T3$sx{+ieN(lR%(?+-jD7d!H>1a1&=tZ(?hBm6@x*{c945fjmE9V<1&aYRjpkX=26hu=k#y?4S9}MJROF^>{;w_Sda_2EQLaI$k|}WE+&5 z`2j;U{4I15SX>{RH@Xezx=uS8yKq_e_33X?LZCQdwrN-g#eC;jY2c#v!b91`crAXf zfV;J3q)aP|dBaknb4gtiiidOqT4J!4J4s`6d)X_^SvIlnTMKu7?3TY>ZNH#+@jd2F z@nmV`f~q9rt%RdE^@0h&Q<-4E{)d&A;E@3d#K7lw<7%=xi)Jke5sS<>*^jpJ6^?dq zF{&93hhh zpT_x@XlV`GZj2=AvX&02T{xS0KMdljPAT`fAok_-TyXp}CBMM#RdqRUrxsJSkCt`5s3$vDpvgqY7o2 zlq{ZoT({3-{H^4*xPd6G42Ljag$PFS%!jh^a^2sWb!P7T5U|y4Q|wtL70>|zc|H#; zUjDlFpq?W_BxTuFnhn>$5?hdeS~?VJ8BjHrdoSn17p6y=rH0o?Y)0n*qPadWW(%^t58**ycZuP$oA3_OZ+2L6O-jX~onPQgv>OueQi z)7jzi<}>ympd&F$SI_uAXI`f-5dI?ON-WPV|BGjmjiaCw`0KxSPkS7b5QZQ3p~| zdBG;FY$Uqx9M`+X*P)4L$EK4GRS$~uOAa^Wj6mB3M{eC>2j8c*_5DIKeb+}EacVQ| zkNBo{lU0rQmuegS+{~f(m)-FoF$Og8H57T1rDM!FkiLVS+9a_|U2CQHl$&uqf3}Zv zlS)XX^b!k)Zb=*bXx`Q>j$|0Qp0UgAJc{gUd}w*YHi0tQs3>T* z{p=O8#w*+V+Z**ES6@T!oIT~BTJAuO{?|(+CW$iTg(h`c$Iw*E%m;O79$ey`s5^l> zy;q4ydNW-$jMKnE8(q_h%T#Go!G;#r#|BBGejgs z%V$6+^>8}|#uc+S^w!~~BgGF17O4}`=k4NGCnO{svj#vHf%<(yx~kJ$O~RndZO0(N zrtjA$*rE#?J1fXZjD1t`?4tBV*re+>##K16CTwpUm~2Ein=>LOr28`FeHUs=l~p(E zIQleIUoME8?7FD%gXyE79;aOMY0T@QS(Ej@-7ZzKxYzyMw1d68P*vnsXO`)Uo`m~v z+mbBBDBED|9}`kz?ZTRDP#&!a4F+?ytt)6n#Q{msk`W7I*pHD-R)>zA%M0V{?N64i zEDdtY05r#+dp$pN)sFPmuEXQ9H_q5ka!2F*@S6?+ma3qQp2V@Q z2c9uu21S)w*r9#%|i05tCLEoU2S6(?Ee#x=>n#_ua6(0POqAmpVK)w>zM~yJk%7&vb?bB~%f&GEr0B+>7{|8F;jy2p z99nE7b#sx;bI9?<;Bi?7KJ5xR@%ox&9AoW3#vMvjZ$I0QB|dy4x9Nqy#u!yuZ&Jk4@O__`?jq=Bk(Byv;cxvcexV+ekfV( zUXqNi(3v~O4*^r`){-F`J%cm)>FB0ah z2m`U9Lw4nLijJZ>$@*{Hk`B1y>3ORpC0nmedEW`Dh=&iobg#Py`1UPpJJ z7@GPx4ELb#nFl z{As?`cL7=OHj|tuG6li@lRxVu`1sil_RJgmYU>k&+j_mf20u6s_Wffb_=4eG=OZpJs5o{7s?tQvH`GkR1z+9d_VfTA@bftcXrF4TiaJsXMOFH`D>=!b`2ScP@bmy4xly;T$%%Stc%hN z@B4vgZ*0>h_sPmJ%!6*>4Ds|)U-XET;n|{koqS3I)lmX#JBjv5W2xKK> z-8@(b7EBi<$%R`B5`FmTGP`Ye^yj`ydG`XE3apn*cW;$5jTI2C^KI6UzIHgsn=C7Z zx&y`)!juyn=CMYG4x97Nn;39|{U3Kuv{l*?^4@>CTXw#&Ds&(3QAR)y`}2RXbRJJp zRyV*JmpCka5O(u1ak42owUQnvR9)FSo)SH@k?y(~aPx`qLwp+V!>3gj*-#>7PeP!R y&?oqMYeQrwp~ENQ?`YO?DJ8t)^gn<7%hK02K~!np3i}^BUDUe( diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo@2x.png b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/logo@2x.png deleted file mode 100644 index c562ea857953b59a3920a8ff43b8e97d79724426..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8020 zcmV-aAFJSrP))tUb0RrPAiO~sas zZ7|KqKxj7R$aD-22+|3=!A{6YcEg@Ma+(QCvMX&i>}C^4tZbHSmYlP(!%3rCp~N=T z0s}69ExF0ItoGENq^DPA@4atE8ja@Z&Ag`ef5+EqZ)Wb?JM(|{`|p4ME8)4GLjdwX zAfz4=D|S}4$T#NvlA41+nB8zlvb>0W&8DUxq#QD*B>5p(vJn{(2n09~3i+uS2$O_w zLXv8!83+VISRsXEY6ZfikdbWTWF%2b5C{Y!Bm$8Ufk2o-ganxgiI5_QIU{n@5eNiQ zNQ9}NjEIZ~1VTiGM1(|05gEZoWJDkkNFfm>TNx1<5eS5+ghX>lgd{?y&~5^OV3v@` zWk*P+G9ot}fj}^?kcf~7$$&%w3#N)oe2fS>(c4r!Q*!zS^6u=B4-Fj=va1w*5RXa&4ZyjVRrASbl? zqTM7+YZ9jb1_FVQe1*h6=?k*|gN$^X63Q~{SeEO=>Nzef$#$S9&4xUe4QUQZ7*zh* zKEI4EUkGOhgZQ{NfP>wBoa_&vjs5KPD{{&XxNTt)iwB$>)7W|V^{t}cABssV<~nR) zB8x{=f)lCC2pkw@Uqu^-Mp;T?%~5GqP@c*ob(2XD9eD$9-lSj zB({>5d?)TbCrhY;z3szz?&KhzK0bi=7(sDYpNlCSvzHoX^*ooI@3zu(MikcT_l2dI zs6Wuht}B}(L#5dkX4tSG!=CVtxv_Zk`vFE&yiHy?J%ndj8@+LM2m#h7ZfCfCCOvXr z!dCXMJVLJ%fk22)Ax&V+27Dou9lBMw`VM&;Zcb>%#_DBoF?i@%;3!mmE; z$1{wae2gG$CgebfsfSOMXU0TE9IKhCx~#~BJ?z@)j_4|hw;M116htXzFk-%fwGA&@ zSo`c|b^Q6kK0MXr#Q-DX45w`pA0c_GOk_kL5E7%1LWYC?!Ql{YugJn+s>`XIjxQ6v9N)LLtRyZ(NcQ#~>g0EK^ClnF4`bjxIYUNtN(=Ub7%g zl&>(wTJw4rUOPRAbf!2ZDdqLr%0>%BMg#&OA+YgG4Py$Q%kTy9<@0m!)Qv?cB_ll! zb`7JwKLCfmj=JJwJ=UYNuB zECe|yo33{P%2rl|M<}SDKp-THkc7O@6fYyAFRaMM<7?-_K8Z8uokKx<_l+)L@P%73 z6uHQZK<=u@jN3GpW;<|wNjiMYxKDJwF=djG&XnO#*UZJYSLcOE$!xvjD`7H{h>QpX zLXs5Hpg)MpqBJ~y?c7PXHUGJ<8%>?VaN989NIk&Fs3gmQ4NEc;a@{-1vxK|Ov_hI9 z`2H1z`231246p%3YLpRyKp-SqA<5zSl2AwncX&OzW)3nZb&?!t?)KxS?{*`NdkdBN zMJn7~cU^Hh=APgFw8@&qg;EcZEpA@rj(Yly8HYl>u#ll#8)CC0)dc3 zg%lc{H`-W{i8YJTC%sbN-P3`tfdHKBd$oQ>1wk23rsO`iA}3+j&SjG9`jQL`GoqX5 z+9P$CLZmd8k@B}LEeNmYGEsL+g~*6NAS7KOiS$0Qh+^A(VP4!Pj5t!IX7Fl3gsx*pNg5%Kh4Pb!a`SAC7G$exk6+_ zAP|xcu^$p&RJyXzjmsCrX4p^l1@Pp-9_(%zz!`4C?Ba=%tB>2Sp-FTgmnn*_!g^>8bJ)4o;#&fb0-Y8B+Le1zGfsxwEIqsx1%!Z}e_?JEHVr`F6ric-B6ay&rSpl(|9=#{sx0rFX?WTjmB zo}*DIo)lDzUvrakt$KsMS8D3jtQ51y&Ln8t0h)gDO!Iru_h~9IrJf(5kT_q=iy`UA*t*i29E^J|HW+{_?{*fB3Q_2Z>uUd+#QpnV`9{wA9^7Z3OTBvV+)3Qs?m z5#80r8F-PY8N;ZV;B6q`iFdlND9eFIuAOJ;^f^pr6|?p{;Th(# zD@J8BE9Q(Um6vhT1fOYCUesj1tUHyuKq18~y1(-b>Q&13{BLy@j-5%^uH2&*o2Mxe zPt>QW#FTn|#5yECli`jbVd_Op)!b5%h28e`uVY`kyNn+ zjPb1Bzr1x3s#oTrZzzBv?hc6|ii;aV;k}a0eSXj%!n(3d%(IZzh~Hko;!ScwTEvKt z6JX>hyBHcyHg~VQOc&){2`4YuBO#Fr{M%vAu(C#XQWb|lIijfPbTzRqc6I>U) z%c&tn$4)m?TO=w%xNX#uKOLSQp^*4INv|&u(+LVQ9N2zWDgJvy304%k1u=0yy&OtT zrT}g@U6PE?oNvu8G<$sb<-1*$j#C=CZSNzag~sS??PW7!ryh1Hx0G zh7eA6565+)doRw%?!R4%Uoc|2rZiI|DD52#3S%A$B`#xtSbJ39#x-TuGJEen=EdW0 zw2wslnZ-Tl=fRHfTCId;YA~H40Wod+Av~}l%D@o8xK-&!g+@fvto(kp^1|*w^8EaK zq`FxlKu-#foi5N5PMwaFh>#}d*-JPa+~DybE*|w3FZksDeX9yYd8=gr&mZo^(;xNX zaEA}QOf~Uv>hNx-u@A#}s-Qd1%|)8S+GPDMMo0%*hwwftt1PUyTDK%igsGqC@sHh@ zFrGEB+GMfOh=rBX9P8_nhD7=xQ`eX+0SqcC4cv6mMvyLWno@#Xpsy@cHinlFd z>2ovc-Av@0ejcb9k>}bf4f@2&vzM^rw+-RXhq}>lqz~`44#LaGiEk?Bv=~Ss)*iVeY&Fq%4;Ww=K`Xqr2PS)~*{;vyjICvq2FwZ_>4B<%8DV2cC7yI{64lvsH?yU%)yZ52;j#M|eQP_7|hj|oFxqq(PMrOvfcNL||} zW}m%H%6TIV%xab6>rFm0(AAqCyF<9_xI${{8^-VUcPISq=cL04VC!`Y@ap}`@Z7yi z@r|qIVnLPzy@LTui9q?>)RiTfSXpE(qr}^%25{2j6YF_iI?`*|)Aq@gc|zG4yX|6B zNKx)J5R}Cxi4R^~gxoaiA^FW+KB2D2O=sw$@aPP{Ugd>~C5mpla%{ATb$;$-1Vvau zwQ{fJQB=gH2&3bjQQD|l`AnkgtVO*}#Y7^mWVS^z`@G&jkxWEhRXSH@GO$f4`BBu< zHXRw}D{U3+y((8eS7i$?j1BLr^Rw66&^ZuD+S|ZAbyt>U;)gdCWA~Sr<3~3am)KXKHp$u z-)Nwgj8s4}+aj5Lu6LVlGD+4RjoWk!#;+%;*Zkg!Vy!lCnbv9gU4K6P++MlnxXqe& zQroItd*6=mj&3}0fP`b6K78xB7Hqq7anj$6xtR`p{i-6|x4IC&c(VgP-g8#CnX-9S zQ;gq>n+qwP5AUYs*4%YGMEoy@d*HT*=VLtH0A4%ZkBUO`86NoDQS}9Rc=LE4((Ov! zMk2ngOC&!do*+|ugPLhDo(+O4xRP8a)-1`!y{qTo6Q!~3@zlin@l>}jyzRTJXH99g z%^5`^r1A-rK($h8F&gyHFu{nnN_pAzFS;5=zFlKHsxf(s4?T*})!)kwT^*|oMzGa7 zqq!dALx$^=HcM2H!6t)x>VNiVh;oyKwvDwdQqku-G}l$Rvh{ z2+m=X;!3Xisf!A5@q%M5cv!@Z6zpp*nNvk$$jg=N7nu&0xdotxP3x zr%Cg|&i+|$``{wt0%ei^DVOj1-SyP^k^XI3>O-6k2FTZCuj};#~cSKuA7#p4n zjIKFqi1Ko7kK$V5qeOLOd<~M5*&&(gDH8NS1*yopR%viuPlP^1gi(1i+9FkbULVD6 zS3Q9%Gf^nlkw#+-@0YeeyEN@&xLDVwpYY~(jJu8=dhR5?^xI~%_4`xyM(}Gtd}A?w za8n5*kvs=RXq+eG4r)ju zxcYmCZ*Ad_h>XlbU2~)^ioIJg2p$7tS8ZT8_bP^IlSWb1D!<=}>7PlUTxa}JfoSf! zNXEE21?`=RKCd?*Kkd)eNmfUCa&L(79vTeJS*x^>I$yiVz-2cIZoji#c0BoZ2i`o^ zhwofpjC)oUrtIl|@Y?wzD(+`{T9K3H5US*k^Yf8rF;VEgQv*0~WP#t-DZn9>^oWTG9_5oa7vJ_P1d{V2o^@iJCw2o<0H!|HO5hm zJj>S^&PL5=s}nS8pG`1|E-Odm-~f+-dZ`gD6aQ z;EoHdyXzW0>VbDKh}?Ah821_{sJD;xi}g^MF7qz3IhhXJxFQeR_MAnQd+N=@eE-E$ zc=u#~cko`K<&k9+XR zUwnvLe|8AJf3FMuzF< zZyfEnT(8@hQge#!%|ptf)2Shoo@4`tpS*GgIgDV(CTG_P_;bI^06-*^q{lPuk1cM z_C91~yNhS{cZqoyD{!-Wzu~+*CBwwz3M3xv@$fSz@WB5yjRb5^07F!0!@T*+(xj** z{babhMMdodFKMI6QGMk!Z?i^&d)2$7)GQ6PabC+P)O)?jqBoG`NotE!_PL%EHbwZG z8KTz?Dy%3P?YmQBaD0vOJm}}v)MsM*1bv|;tY%v*TR_-kSwybox^2P;e$dh{$Z6xx z4`J=2AK)LKI*PZC^(CY?zIN?Gl*F*TI?pn`m>tK%$Gt-Vk^P{D6}~=ah>;KvujU)z zb$YF5rnr069C7brzoALOi-$b8=_dzJ_d<(UxGS@C`S40wkzbM4l{Nd7##ho zbiJ|IsT;vYBDLv=%?1X4ucp1WEB6~u6rNEqgIS|%G`XJ)m6Yl}Z;sFgW)iP9>&RrM z@{C(?iEc4Cj~c$MM#|M{NN<~_FSlv>p-FjOYBXi9PIc8g;vM0OEy*3+ofj4$AGZ$R zgOmMuV$WGzx;P8ps9J>U&x_sVTvp(Y>A0F3im~~c`DpGKLK9PSr@DvX4~CGN?!b~c zX((rwVaVGX2>rbgg=wjsgDpR4qdi^Z^dbme~wU4Y@l0g|5%)3Au zF?I`SvoB_y0lC#_UaBfYUfDn0w@6SEg-(=UQ(ej572`GZZl7k01lOP=hhzjdOh%s@ zE!3?u`K;F(s1YmbP0eVbPmo#_p>4Kkj@zPpUMeTJw%C)&5!aqRI&jm@=P}%Ny9g@S zeWVw=nc;kJeKEdwTN$Jj&uQdkIB-d6mMDn?=dkL^xp@6ZZ_?_{$)Lk9p_C}izZU^F@U^kPQ!HfaU*C?23Bt9%U)qSomMlQFg9MyW%OrV_1zAvj0 zIm5Z?+S5n;sr!g+LgdWojhbU2&42LqPJ|Z&jsc%%;js$gZHHnvbYa69z;C{^0(UYa zK2yMn;kqBbk3W8GB`#QGE$7_R?{(t0d)txW8oREFdjNTAqJBn1-Gc#i^!d@o3J*`` zJ;2vt@pMDdNPmRMNNgd&*`5_yq%D+0m&rEucaoCMQ2E|A`nmAW`oAg1>3^?1ACEM& z*~WfO{H$D8InT&3Hr+XF%IDS3-I$Y-e&ZSACqSjfn8mUXupFbIxidM)AzB+WX@0Jl z;cbzsKHrP6`x#l;-8Ek~cu3Se!{UACWBh(dV-Qgxh1Vh3#kLgOCFiimMoM-m9M$&r z(Y_f)NQ(>8ux@#-*doFzK4|gc$=$8UGRVuP@(Iu7XJ^KmyA;Qy6B?V)mE3fRS5EO@ zrV~-6i8j(N+MMacoQgizySl6@K2L&(DBgRHS`Wi0JD$k&oT4PXWZ|Y-Sp6xv&7SgxR?q64Ko^vH73A@IZ?U5n?Zi^-dBZwkriN5K>J> z>LhfeIiwnl-z}C9AM|1N%`>@O$E6P9KXT%EVBI2A6s6^$JX-lKi!=pSa}B{Skt&oR1>5ubQ>J0+naYO5i0; zA*Il!vC-}s70IO&X^RR%bd+Q4JdFxI2&kXQH$E=xJHST#U%76fVItEx*-m`%ngyb? z_6&;%u#;UwXzTF{CB!o}@Hy)&W~dkBx^Uj2Osrz$Mi{S9b4G;8f*N60gUGA$ z8!;MfM`RQ`^r6w}F0FMl{l*=VI!c!yCg@i$&c;R)!3Xmh;qU_F(&J+hd|pTtYYHhG zO-CS19=P(^tQ7qSzJZ!2p=xx!hKw3#%Z-mJB=$AP6wX(xis5qD=#faaLJC<@NTiGs zgmjmk8X7IFgUC=a8aR{;2Ufw?U%j-yEBS;p!iyWs!D>u!KP%wl)zIB$Vjy9}Vn2B3g7YP^E1*O?Yb0x;5cd}y$&%WD^U%h+^2bnr@ zGG+3W^(8T#>)qyFoNOC}n{USu=T;h=n0<`kUizRDmn}`+`YN|W8rgwY16pT9AP{CZ zA?fEam{~`b+b(|nVT%{<9c#j)e>#Sx^D}VyIk~uSaW+<#WTArnoSWfV!JZF2c=ezMXS;oHF%sePK0FxV!&6=yX&tb91HXUstO!z&fP`!(&ZF`Ez|P6l znv{eMoFs)r-FBO{zBFeYVI@)`w#vWPrP7IbwEyXm-SQVCGq&q&?J2+ICL(C%xb{~YayL?95Ry+Vp^%EeBw z4v7`J${%5p=^7Fn@P+5%AHw^ihu$b2m}H_OGuJTjW8KxM2lVt1Oh>?kYr+{ zlq(~0(-8;+!Z=V`?^Kf!x#4A~zj@Kp>Dpnq)jg%7{Q9 z5KJf}in2>89+4&d6Ey>YKp>Dpnp84Ec;1LWAP@*<6cRuZDLG^$5g8E(1cD_(B0fqy z8A+s!2m}JbD!9weNzIT*Wkh5|AP@+#DI}nc6+bmaT;MwMF@z)P2m}Iw5Ci^SfB^sm Wm%*Yt_1?t*0000 Date: Wed, 2 Dec 2015 09:45:54 +0100 Subject: [PATCH 006/367] Moved default video preview image to SharedHomeResources --- .../home/shared/resources/SharedHomeResources.java | 11 +++++++++++ .../shared/resources}/default_video_preview.jpg | Bin 2 files changed, 11 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java rename java/com.sap.sailing.gwt.ui/src/main/{resources/com/sap/sailing/gwt/home/images => java/com/sap/sailing/gwt/home/shared/resources}/default_video_preview.jpg (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java new file mode 100644 index 00000000000..d3d5c281c46 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java @@ -0,0 +1,11 @@ +package com.sap.sailing.gwt.home.shared.resources; + +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.ImageResource; + +public interface SharedHomeResources extends ClientBundle { + + @Source("default_video_preview.jpg") + ImageResource defaultVideoPreviewImage(); + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_video_preview.jpg b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_video_preview.jpg similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_video_preview.jpg rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_video_preview.jpg From 9bceca739977c663142ed99237889d3f57e7bf66 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 2 Dec 2015 10:11:04 +0100 Subject: [PATCH 007/367] Moved default stage event teaser image to SharedHomeResources --- .../home/desktop/partials/stage/StageResources.java | 3 --- .../home/desktop/partials/stage/StageTeaser.java | 5 +++-- .../home/mobile/partials/stage/StageResources.java | 3 --- .../gwt/home/mobile/partials/stage/StageTeaser.java | 5 +++-- .../home/shared/partials/countdown/Countdown.java | 4 ++-- .../home/shared/resources/SharedHomeResources.java | 6 ++++++ .../resources}/default_stage_event_teaser.jpg | Bin 7 files changed, 14 insertions(+), 12 deletions(-) rename java/com.sap.sailing.gwt.ui/src/main/{resources/com/sap/sailing/gwt/home/images => java/com/sap/sailing/gwt/home/shared/resources}/default_stage_event_teaser.jpg (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageResources.java index c26b2cb0477..17e17c8126b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageResources.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.desktop.partials.stage; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; public interface StageResources extends ClientBundle { public static final StageResources INSTANCE = GWT.create(StageResources.class); @@ -40,6 +39,4 @@ public interface StageResources extends ClientBundle { String stage_progress_bar(); } - @Source("com/sap/sailing/gwt/home/images/default_stage_event_teaser.jpg") - ImageResource defaultStageEventTeaserImage(); } \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageTeaser.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageTeaser.java index cf93a4c1b02..da26028a8c7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageTeaser.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/stage/StageTeaser.java @@ -14,6 +14,7 @@ import com.google.gwt.user.client.ui.HTMLPanel; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.communication.start.EventStageDTO; import com.sap.sailing.gwt.home.shared.partials.countdowntimer.CountdownTimer; +import com.sap.sailing.gwt.home.shared.resources.SharedHomeResources; import com.sap.sse.common.TimePoint; import com.sap.sse.common.impl.MillisecondsTimePoint; import com.sap.sse.gwt.client.controls.carousel.LazyLoadable; @@ -35,8 +36,8 @@ public abstract class StageTeaser extends Composite implements LazyLoadable { @Override public void doInitializeLazyComponents() { - String stageImageUrl = event.getStageImageURL() != null ? event.getStageImageURL() : StageResources.INSTANCE - .defaultStageEventTeaserImage().getSafeUri().asString(); + String stageImageUrl = event.getStageImageURL() != null ? event.getStageImageURL() : + SharedHomeResources.INSTANCE.defaultStageEventTeaserImage().getSafeUri().asString(); String backgroundImage = "url(" + stageImageUrl + ")"; teaserImage.getStyle().setBackgroundImage(backgroundImage); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageResources.java index 144050c2ff9..6365a07c1fd 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageResources.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.mobile.partials.stage; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; public interface StageResources extends ClientBundle { public static final StageResources INSTANCE = GWT.create(StageResources.class); @@ -40,6 +39,4 @@ public interface StageResources extends ClientBundle { String stage_progress_bar(); } - @Source("com/sap/sailing/gwt/home/images/default_stage_event_teaser.jpg") - ImageResource defaultStageEventTeaserImage(); } \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageTeaser.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageTeaser.java index afe9cbddc29..ec15fd43f0b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageTeaser.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/stage/StageTeaser.java @@ -14,6 +14,7 @@ import com.google.gwt.user.client.ui.HTMLPanel; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.communication.event.EventLinkAndMetadataDTO; import com.sap.sailing.gwt.home.shared.partials.countdowntimer.CountdownTimer; +import com.sap.sailing.gwt.home.shared.resources.SharedHomeResources; import com.sap.sse.common.TimePoint; import com.sap.sse.common.impl.MillisecondsTimePoint; import com.sap.sse.gwt.client.controls.carousel.LazyLoadable; @@ -35,8 +36,8 @@ public abstract class StageTeaser extends Composite implements LazyLoadable { @Override public void doInitializeLazyComponents() { - String stageImageUrl = event.getThumbnailImageURL() != null ? event.getThumbnailImageURL() : StageResources.INSTANCE - .defaultStageEventTeaserImage().getSafeUri().asString(); + String stageImageUrl = event.getThumbnailImageURL() != null ? event.getThumbnailImageURL() : + SharedHomeResources.INSTANCE.defaultStageEventTeaserImage().getSafeUri().asString(); String backgroundImage = "url(" + stageImageUrl + ")"; teaserImage.getStyle().setBackgroundImage(backgroundImage); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/countdown/Countdown.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/countdown/Countdown.java index 1b320204199..b7e137a2df8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/countdown/Countdown.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/countdown/Countdown.java @@ -20,10 +20,10 @@ import com.sap.sailing.gwt.common.client.i18n.TextMessages; import com.sap.sailing.gwt.home.communication.event.eventoverview.EventOverviewRaceTickerStageDTO; import com.sap.sailing.gwt.home.communication.event.eventoverview.EventOverviewRegattaTickerStageDTO; import com.sap.sailing.gwt.home.communication.event.eventoverview.EventOverviewTickerStageDTO; -import com.sap.sailing.gwt.home.desktop.partials.stage.StageResources; import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; import com.sap.sailing.gwt.home.shared.partials.countdown.CountdownResources.LocalCss; import com.sap.sailing.gwt.home.shared.partials.countdowntimer.CountdownTimer; +import com.sap.sailing.gwt.home.shared.resources.SharedHomeResources; import com.sap.sailing.gwt.ui.client.StringMessages; public class Countdown extends Composite { @@ -52,7 +52,7 @@ public class Countdown extends Composite { } public void setData(EventOverviewTickerStageDTO data) { - String stageImageUrl = StageResources.INSTANCE.defaultStageEventTeaserImage().getSafeUri().asString(); + String stageImageUrl = SharedHomeResources.INSTANCE.defaultStageEventTeaserImage().getSafeUri().asString(); if(data.getStageImageUrl() != null) { stageImageUrl = data.getStageImageUrl(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java index d3d5c281c46..d68143b10e1 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java @@ -1,10 +1,16 @@ package com.sap.sailing.gwt.home.shared.resources; +import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.ImageResource; public interface SharedHomeResources extends ClientBundle { + public static final SharedHomeResources INSTANCE = GWT.create(SharedHomeResources.class); + + @Source("default_stage_event_teaser.jpg") + ImageResource defaultStageEventTeaserImage(); + @Source("default_video_preview.jpg") ImageResource defaultVideoPreviewImage(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_stage_event_teaser.jpg b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_stage_event_teaser.jpg similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_stage_event_teaser.jpg rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_stage_event_teaser.jpg From 5c205b158673609339e6d6829f011ffb449283ff Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 2 Dec 2015 10:17:46 +0100 Subject: [PATCH 008/367] Moved default event photo image to SharedHomeResources --- .../home/desktop/partials/event/EventTeaser.java | 3 ++- .../partials/event/EventTeaserResources.java | 3 --- .../recents/EventsOverviewRecentResources.java | 3 --- .../home/shared/resources/SharedHomeResources.java | 3 +++ .../home/shared/resources}/default_event_photo.jpg | Bin 5 files changed, 5 insertions(+), 7 deletions(-) rename java/com.sap.sailing.gwt.ui/src/main/{resources/com/sap/sailing/gwt/home/images => java/com/sap/sailing/gwt/home/shared/resources}/default_event_photo.jpg (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaser.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaser.java index bb3941732db..cc6e979d826 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaser.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaser.java @@ -18,6 +18,7 @@ import com.sap.sailing.gwt.home.communication.event.LabelType; import com.sap.sailing.gwt.home.communication.eventlist.EventListEventSeriesDTO; import com.sap.sailing.gwt.home.desktop.utils.LongNamesUtil; import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; +import com.sap.sailing.gwt.home.shared.resources.SharedHomeResources; import com.sap.sailing.gwt.home.shared.utils.EventDatesFormatterUtil; import com.sap.sailing.gwt.home.shared.utils.LabelTypeUtil; @@ -74,7 +75,7 @@ public class EventTeaser extends Composite { final StringBuilder thumbnailUrlBuilder = new StringBuilder("url('"); final String thumbnailImageUrl = event.getThumbnailImageURL(); if (thumbnailImageUrl == null || thumbnailImageUrl.isEmpty()) { - thumbnailUrlBuilder.append(EventTeaserResources.INSTANCE.defaultEventPhotoImage().getSafeUri().asString()); + thumbnailUrlBuilder.append(SharedHomeResources.INSTANCE.defaultEventPhotoImage().getSafeUri().asString()); } else { thumbnailUrlBuilder.append(UriUtils.fromString(thumbnailImageUrl).asString()); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaserResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaserResources.java index d3cb03df28f..c9e606cfc67 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaserResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/event/EventTeaserResources.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.desktop.partials.event; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; public interface EventTeaserResources extends ClientBundle { public static final EventTeaserResources INSTANCE = GWT.create(EventTeaserResources.class); @@ -27,6 +26,4 @@ public interface EventTeaserResources extends ClientBundle { String eventteaser_location(); } - @Source("com/sap/sailing/gwt/home/images/default_event_photo.jpg") - ImageResource defaultEventPhotoImage(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/recents/EventsOverviewRecentResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/recents/EventsOverviewRecentResources.java index 68448729b12..6e1a10a90d9 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/recents/EventsOverviewRecentResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/recents/EventsOverviewRecentResources.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.mobile.partials.recents; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; public interface EventsOverviewRecentResources extends ClientBundle { public static final EventsOverviewRecentResources INSTANCE = GWT.create(EventsOverviewRecentResources.class); @@ -49,6 +48,4 @@ public interface EventsOverviewRecentResources extends ClientBundle { String seriesInfo(); } - @Source("com/sap/sailing/gwt/home/images/default_event_photo.jpg") - ImageResource defaultEventPhotoImage(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java index d68143b10e1..1d71678333a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java @@ -8,6 +8,9 @@ public interface SharedHomeResources extends ClientBundle { public static final SharedHomeResources INSTANCE = GWT.create(SharedHomeResources.class); + @Source("default_event_photo.jpg") + ImageResource defaultEventPhotoImage(); + @Source("default_stage_event_teaser.jpg") ImageResource defaultStageEventTeaserImage(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_event_photo.jpg b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_event_photo.jpg similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_event_photo.jpg rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_event_photo.jpg From 89eeb8aa7f206083a89625a0e2b0703c8e2a68a6 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 2 Dec 2015 10:26:04 +0100 Subject: [PATCH 009/367] Moved default event logo image to SharedHomeResources --- .../partials/eventheader/EventHeaderResources.java | 4 ---- .../desktop/partials/seriesheader/SeriesHeader.java | 4 +++- .../seriesheader/SeriesHeaderResources.java | 4 ---- .../partials/sharing/SharingButtonsResources.java | 4 ---- .../home/shared/resources/SharedHomeResources.java | 3 +++ .../home/shared/resources}/default_event_logo.jpg | Bin .../sap/sailing/gwt/home/shared/utils/LogoUtil.java | 4 ++-- 7 files changed, 8 insertions(+), 15 deletions(-) rename java/com.sap.sailing.gwt.ui/src/main/{resources/com/sap/sailing/gwt/home/images => java/com/sap/sailing/gwt/home/shared/resources}/default_event_logo.jpg (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java index 325ece5637e..3d13cd73daa 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/eventheader/EventHeaderResources.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.desktop.partials.eventheader; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; public interface EventHeaderResources extends ClientBundle { public static final EventHeaderResources INSTANCE = GWT.create(EventHeaderResources.class); @@ -58,7 +57,4 @@ public interface EventHeaderResources extends ClientBundle { String navbar_buttonhidden(); } - @Source("com/sap/sailing/gwt/home/images/default_event_logo.jpg") - ImageResource defaultEventLogoImage(); - } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeader.java index 5bc96ce0841..87e26f33e75 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeader.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeader.java @@ -23,6 +23,7 @@ import com.sap.sailing.gwt.home.desktop.places.fakeseries.SeriesView; import com.sap.sailing.gwt.home.desktop.places.fakeseries.SeriesView.Presenter; import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; import com.sap.sailing.gwt.home.shared.places.event.EventDefaultPlace; +import com.sap.sailing.gwt.home.shared.resources.SharedHomeResources; import com.sap.sailing.gwt.home.shared.utils.LabelTypeUtil; import com.sap.sailing.gwt.ui.client.StringMessages; @@ -70,7 +71,8 @@ public class SeriesHeader extends Composite { } private void initFields() { - String logoUrl = series.getLogoImage() != null ? series.getLogoImage().getSourceRef() : SeriesHeaderResources.INSTANCE.defaultEventLogoImage().getSafeUri().asString(); + String logoUrl = series.getLogoImage() != null ? series.getLogoImage().getSourceRef() : + SharedHomeResources.INSTANCE.defaultEventLogoImage().getSafeUri().asString(); eventLogo.getStyle().setBackgroundImage("url(" + logoUrl + ")"); eventLogo.setTitle(series.getDisplayName()); eventName.setInnerText(series.getDisplayName()); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeaderResources.java index 3d9bc36905d..58e791e8773 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/seriesheader/SeriesHeaderResources.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.desktop.partials.seriesheader; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; public interface SeriesHeaderResources extends ClientBundle { public static final SeriesHeaderResources INSTANCE = GWT.create(SeriesHeaderResources.class); @@ -33,7 +32,4 @@ public interface SeriesHeaderResources extends ClientBundle { String navbar_button(); } - @Source("com/sap/sailing/gwt/home/images/default_event_logo.jpg") - ImageResource defaultEventLogoImage(); - } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/sharing/SharingButtonsResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/sharing/SharingButtonsResources.java index 9f546ad4e6b..280afd2fbec 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/sharing/SharingButtonsResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/sharing/SharingButtonsResources.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.desktop.partials.sharing; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; public interface SharingButtonsResources extends ClientBundle { public static final SharingButtonsResources INSTANCE = GWT.create(SharingButtonsResources.class); @@ -19,7 +18,4 @@ public interface SharingButtonsResources extends ClientBundle { String eventheader_sharing_itemfacebook(); } - @Source("com/sap/sailing/gwt/home/images/default_event_logo.jpg") - ImageResource defaultEventLogoImage(); - } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java index 1d71678333a..616a794284b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/SharedHomeResources.java @@ -8,6 +8,9 @@ public interface SharedHomeResources extends ClientBundle { public static final SharedHomeResources INSTANCE = GWT.create(SharedHomeResources.class); + @Source("default_event_logo.jpg") + ImageResource defaultEventLogoImage(); + @Source("default_event_photo.jpg") ImageResource defaultEventPhotoImage(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_event_logo.jpg b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_event_logo.jpg similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/images/default_event_logo.jpg rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/resources/default_event_logo.jpg diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/utils/LogoUtil.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/utils/LogoUtil.java index d640011d86c..8af83592426 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/utils/LogoUtil.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/utils/LogoUtil.java @@ -4,14 +4,14 @@ import com.google.gwt.dom.client.Element; import com.google.gwt.safehtml.shared.SafeUri; import com.sap.sailing.gwt.home.communication.event.HasLogo; import com.sap.sailing.gwt.home.communication.eventview.EventViewDTO; -import com.sap.sailing.gwt.home.desktop.partials.eventheader.EventHeaderResources; +import com.sap.sailing.gwt.home.shared.resources.SharedHomeResources; /** * Utility class to set logo url on UI elements using a default logo as fallback if no logo is provided. */ public abstract class LogoUtil { - private static final SafeUri DEFAULT_EVENT_LOGO = EventHeaderResources.INSTANCE.defaultEventLogoImage().getSafeUri(); + private static final SafeUri DEFAULT_EVENT_LOGO = SharedHomeResources.INSTANCE.defaultEventLogoImage().getSafeUri(); /** * Sets the logo provided by the given {@link EventViewDTO} (or default logo if null) as background From f3f00ee279d265d6ec18a9733400074882320809 Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 2 Dec 2015 16:07:45 +0100 Subject: [PATCH 010/367] Initial structure for imprint --- .../gwt/common/client/i18n/TextMessages.java | 2 ++ .../client/i18n/TextMessages.properties | 2 ++ .../client/i18n/TextMessages_de.properties | 2 ++ .../places/imprint/ImprintActivity.java | 17 ++++++++++++ .../places/imprint/ImprintActivityProxy.java | 23 ++++++++++++++++ .../shared/places/imprint/ImprintPlace.java | 26 +++++++++++++++++++ .../shared/places/imprint/ImprintView.java | 7 +++++ .../places/imprint/ImprintViewImpl.java | 22 ++++++++++++++++ .../places/imprint/ImprintViewImpl.ui.xml | 8 ++++++ 9 files changed, 109 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivityProxy.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintPlace.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintView.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.java index 52ebec1c989..620d42b0b8c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.java @@ -229,4 +229,6 @@ public interface TextMessages extends Messages { String strategySimulatorReadMore(); + String impressum(); + } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.properties index deb9bb5855e..1e63b9ef221 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages.properties @@ -221,3 +221,5 @@ strategySimulator=Strategy Simulator contentStrategySimulator=Choosing the right strategy can provide great competitive advantage during a race. The Strategy Simulator simplifies determining the best sailing strategy for various wind conditions and water currents. Since wind and current can be changed in the simulation right away, the robustness of a strategy can be easily evaluated even for uncertain weather conditions. strategySimulatorReadMore=Learn More + +impressum=Imprint diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages_de.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages_de.properties index 65b4c391adf..1d7471d30cd 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages_de.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/i18n/TextMessages_de.properties @@ -221,3 +221,5 @@ strategySimulator=Strategie-Simulator contentStrategySimulator=Während eines Rennens hängt viel von der Wahl der richtigen Strategie ab. Der Strategie-Simulator vereinfacht die Ermittlung der besten Segelstrategie für diverse Wind- und Strömungsbedingungen. Da Wind und Strömung sofort in der Simulation geändert werden können, lässt sich die Robustheit einer Strategie selbst für unsichere Wetterbedingungen problemlos bewerten. strategySimulatorReadMore=Mehr erfahren + +impressum=Impressum diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivity.java new file mode 100644 index 00000000000..c3a30a2a53a --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivity.java @@ -0,0 +1,17 @@ +package com.sap.sailing.gwt.home.shared.places.imprint; + +import com.google.gwt.activity.shared.AbstractActivity; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.ui.AcceptsOneWidget; + +public class ImprintActivity extends AbstractActivity { + + public ImprintActivity(ImprintPlace place) { + } + + @Override + public void start(AcceptsOneWidget panel, EventBus eventBus) { + panel.setWidget(new ImprintViewImpl()); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivityProxy.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivityProxy.java new file mode 100644 index 00000000000..ae796877c6d --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintActivityProxy.java @@ -0,0 +1,23 @@ +package com.sap.sailing.gwt.home.shared.places.imprint; + +import com.google.gwt.core.client.GWT; +import com.sap.sse.gwt.client.mvp.AbstractActivityProxy; + +public class ImprintActivityProxy extends AbstractActivityProxy { + + private final ImprintPlace place; + + public ImprintActivityProxy(ImprintPlace place) { + this.place = place; + } + + @Override + protected void startAsync() { + GWT.runAsync(new AbstractRunAsyncCallback() { + @Override + public void onSuccess() { + super.onSuccess(new ImprintActivity(place)); + } + }); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintPlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintPlace.java new file mode 100644 index 00000000000..1d332fad6c4 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintPlace.java @@ -0,0 +1,26 @@ +package com.sap.sailing.gwt.home.shared.places.imprint; + +import com.google.gwt.place.shared.PlaceTokenizer; +import com.sap.sailing.gwt.common.client.AbstractBasePlace; +import com.sap.sailing.gwt.common.client.i18n.TextMessages; +import com.sap.sailing.gwt.home.shared.app.HasLocationTitle; +import com.sap.sailing.gwt.home.shared.app.HasMobileVersion; + +public class ImprintPlace extends AbstractBasePlace implements HasLocationTitle, HasMobileVersion { + public static class Tokenizer implements PlaceTokenizer { + @Override + public String getToken(ImprintPlace place) { + return place.getParametersAsToken(); + } + + @Override + public ImprintPlace getPlace(String url) { + return new ImprintPlace(); + } + } + + @Override + public String getLocationTitle() { + return TextMessages.INSTANCE.impressum(); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintView.java new file mode 100644 index 00000000000..6ab61dd0cfc --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintView.java @@ -0,0 +1,7 @@ +package com.sap.sailing.gwt.home.shared.places.imprint; + +import com.google.gwt.user.client.ui.Widget; + +public interface ImprintView { + Widget asWidget(); +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.java new file mode 100644 index 00000000000..b27e6f89404 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.java @@ -0,0 +1,22 @@ +package com.sap.sailing.gwt.home.shared.places.imprint; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.client.shared.sponsoring.Sponsoring; + +public class ImprintViewImpl extends Composite implements ImprintView { + private static SponsoringPageViewUiBinder uiBinder = GWT.create(SponsoringPageViewUiBinder.class); + + interface SponsoringPageViewUiBinder extends UiBinder { + } + + @UiField Sponsoring sponsoring; + + public ImprintViewImpl() { + super(); + initWidget(uiBinder.createAndBindUi(this)); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.ui.xml new file mode 100644 index 00000000000..7b1f37f4eb8 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/imprint/ImprintViewImpl.ui.xml @@ -0,0 +1,8 @@ + + + + + + + From cbdb4afc01cb924055ecb91e60fc27333f601279 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 2 Dec 2015 16:16:48 +0100 Subject: [PATCH 011/367] Adjusted SAP Sailing Race Manager What new headline --- .../sap/sailing/gwt/home/solutions/RaceCommitteeAppNotes.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/solutions/RaceCommitteeAppNotes.html b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/solutions/RaceCommitteeAppNotes.html index 45dc36cf86d..51f83292f72 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/solutions/RaceCommitteeAppNotes.html +++ b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/solutions/RaceCommitteeAppNotes.html @@ -2,7 +2,7 @@
-

What's New - Race Committee App

+

What's New - SAP Sailing Race Manager

August 2015
From b81e707a91a2c59ff5b5558692741ae93341f2dc Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Mon, 7 Dec 2015 10:29:02 +0100 Subject: [PATCH 012/367] Removed references to com.sap.sse.gwt.theme project that was integrated into com.sap.sailing.gwt.ui --- java/com.sap.sailing.gwt.ui/pom.xml | 6 ------ java/pom.xml | 1 - 2 files changed, 7 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/pom.xml b/java/com.sap.sailing.gwt.ui/pom.xml index 47a3ef69008..5630532cf4c 100755 --- a/java/com.sap.sailing.gwt.ui/pom.xml +++ b/java/com.sap.sailing.gwt.ui/pom.xml @@ -68,12 +68,6 @@ 1.0.0-SNAPSHOT sources - - com.sap.sailing - com.sap.sse.gwt.theme - 1.0.0-SNAPSHOT - sources - com.sap.sailing com.sap.sse.gwt.adminconsole diff --git a/java/pom.xml b/java/pom.xml index fc283d0da09..86c447c4614 100755 --- a/java/pom.xml +++ b/java/pom.xml @@ -33,7 +33,6 @@ com.sap.sse.replication com.sap.sse.threadmanager com.sap.sse.filestorage - com.sap.sse.gwt.theme com.sap.sailing.domain.common com.sap.sailing.domain.shared.android com.sap.sailing.domain From 85398371e3ab21af7222dbd84c475ea2dbbe9e53 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 10:43:38 +0100 Subject: [PATCH 013/367] Added flyover popup for desktop user management contents --- .../shared/usermanagement/UserManagement.gss | 33 ++++++++++++ .../usermanagement/UserManagementFlyover.java | 52 +++++++++++++++++++ .../UserManagementFlyover.ui.xml | 12 +++++ .../UserManagementResources.java | 19 +++++++ 4 files changed, 116 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss new file mode 100644 index 00000000000..18e165dd7b2 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss @@ -0,0 +1,33 @@ +.flyover { + font-size: 1rem; + top: 4.666667em !important; + width: 100%; +} + +.flyover_content { + width: 24.8em; + float: right; + padding: 1.333333333333333em; + background-color: #fff; + border-radius: .2em; + box-shadow: 0 0 .533333333333333em rgba(0,0,0,.15); + border: 1px solid rgba(0,0,0,.1); +} + +.flyover_content:before { + content: ''; + width: 1.333333333333333em; + height: 1.333333333333333em; + display: block; + background-color: #fff; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); + margin: 0 1em 0 1.333333333333333em; + position: absolute; + top: -.666666666666667em; + right: 1.333333333333333em; + border-top: 1px solid rgba(0,0,0,.1); + border-left: 1px solid rgba(0,0,0,.1); +} \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java new file mode 100644 index 00000000000..d4d235b61b4 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java @@ -0,0 +1,52 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.Element; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.IsWidget; +import com.google.gwt.user.client.ui.PopupPanel; +import com.google.gwt.user.client.ui.SimplePanel; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementResources.LocalCss; + +public class UserManagementFlyover extends Composite implements AcceptsOneWidget { + + private static final LocalCss LOCAL_CSS = UserManagementResources.INSTANCE.css(); + + interface UserManagementFlyoverUiBinder extends UiBinder { + } + + private static UserManagementFlyoverUiBinder uiBinder = GWT.create(UserManagementFlyoverUiBinder.class); + + private final PopupPanel popupPanel = new PopupPanel(true, false); + + @UiField SimplePanel contentContainerUi; + + public UserManagementFlyover(Element autoHidePartner) { + LOCAL_CSS.ensureInjected(); + popupPanel.addStyleName(LOCAL_CSS.flyover()); + popupPanel.addAutoHidePartner(autoHidePartner); + popupPanel.setWidget(uiBinder.createAndBindUi(this)); + } + + @Override + public void setWidget(IsWidget w) { + contentContainerUi.setWidget(w); + } + + public void show() { + popupPanel.show(); + } + + public void hide() { + popupPanel.hide(); + } + + public boolean isShowing() { + return popupPanel.isShowing(); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml new file mode 100644 index 00000000000..46fbdf3ce56 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml @@ -0,0 +1,12 @@ + + + + + + +
+ +
+
+
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java new file mode 100644 index 00000000000..201b3c157a7 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java @@ -0,0 +1,19 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; + +public interface UserManagementResources extends ClientBundle { + + public static final UserManagementResources INSTANCE = GWT.create(UserManagementResources.class); + + @Source("UserManagement.gss") + LocalCss css(); + + public interface LocalCss extends CssResource { + String flyover(); + String flyover_content(); + } + +} From 4e97d314f6763b0a8ccca78511a65e0cef067467 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 11:04:54 +0100 Subject: [PATCH 014/367] Added user management menu icon to desktop header --- .../images/home/loggedin.svg | 18 ++++++++++++++++++ .../home/desktop/partials/header/Header.gss | 9 +++++++++ .../home/desktop/partials/header/Header.java | 18 ++++++++++++++++++ .../home/desktop/partials/header/Header.ui.xml | 1 + .../partials/header/HeaderResources.java | 1 + 5 files changed, 47 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/images/home/loggedin.svg diff --git a/java/com.sap.sailing.gwt.ui/images/home/loggedin.svg b/java/com.sap.sailing.gwt.ui/images/home/loggedin.svg new file mode 100644 index 00000000000..ecedd72d6df --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/images/home/loggedin.svg @@ -0,0 +1,18 @@ + + + + + + + + + + diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss index ba9d697ac18..0069d12a2d5 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss @@ -104,3 +104,12 @@ .submit { font-size: inherit; } + +.user_menu_button { + width: 3rem; + height: 3rem; + vertical-align: middle; + background: url('images/home/loggedin.svg') no-repeat center; + margin-left: 1rem; + cursor: pointer; +} \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java index 64f75954d2a..4eec15a5576 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java @@ -16,6 +16,7 @@ import com.google.gwt.user.client.Event; import com.google.gwt.user.client.ui.Anchor; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Label; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; import com.google.gwt.user.client.ui.impl.HyperlinkImpl; @@ -31,6 +32,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementFlyover; import com.sap.sse.gwt.client.mvp.PlaceChangedEvent; public class Header extends Composite { @@ -41,6 +43,8 @@ public class Header extends Composite { @UiField TextBox searchText; @UiField Button searchButton; + + @UiField Anchor usermenu; private static final HyperlinkImpl HYPERLINK_IMPL = GWT.create(HyperlinkImpl.class); @@ -51,6 +55,8 @@ public class Header extends Composite { private final PlaceNavigation eventsNavigation; private final PlaceNavigation solutionsNavigation; + private final UserManagementFlyover userManagementFlyover; + interface HeaderUiBinder extends UiBinder { } @@ -74,6 +80,7 @@ public class Header extends Composite { HeaderResources.INSTANCE.css().ensureInjected(); initWidget(uiBinder.createAndBindUi(this)); + userManagementFlyover = new UserManagementFlyover(usermenu.getElement()); links = Arrays.asList(new Anchor[] { startPageLink, eventsPageLink, solutionsPageLink }); homeNavigation = navigator.getHomeNavigation(); @@ -122,6 +129,17 @@ public class Header extends Composite { navigator.goToPlace(searchResultNavigation); } + @UiHandler("usermenu") + void toggleUsermenu(ClickEvent event) { + if (userManagementFlyover.isShowing()) { + userManagementFlyover.hide(); + } else { + userManagementFlyover.show(); + // FIXME: Temporary dummy content for user management flyover + userManagementFlyover.setWidget(new Label("TODO User Management")); + } + } + private void updateActiveLink(Place place) { if(place instanceof EventsPlace || place instanceof AbstractEventPlace diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml index 6159afa5045..15edd568e80 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml @@ -36,6 +36,7 @@ +
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java index fa16ccd2a95..4401e76fd1b 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java @@ -23,5 +23,6 @@ public interface HeaderResources extends ClientBundle { String search_textfield(); String search_button(); String submit(); + String user_menu_button(); } } From 88958fd365a749665e185205d8ee11de3fd1d75d Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Tue, 8 Dec 2015 12:45:24 +0100 Subject: [PATCH 015/367] Fire user change event over global eventbus --- .../gwt/home/desktop/DesktopEntryPoint.java | 17 +++++++++- .../desktop/app/DesktopActivityMapper.java | 11 +++++++ .../gwt/home/mobile/MobileEntryPoint.java | 16 ++++++++- .../usermanagement/UserChangeEvent.java | 33 +++++++++++++++++++ 4 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserChangeEvent.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java index 913b1064c91..3d669badddf 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java @@ -12,6 +12,7 @@ import com.sap.sailing.gwt.home.desktop.app.DesktopActivityMapper; import com.sap.sailing.gwt.home.desktop.app.DesktopClientFactory; import com.sap.sailing.gwt.home.desktop.app.TabletAndDesktopApplicationClientFactory; import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; +import com.sap.sailing.gwt.home.shared.usermanagement.UserChangeEvent; import com.sap.sailing.gwt.ui.client.RemoteServiceMappingConstants; import com.sap.sailing.gwt.ui.client.ServerConfigurationService; import com.sap.sailing.gwt.ui.client.ServerConfigurationServiceAsync; @@ -20,8 +21,15 @@ import com.sap.sse.gwt.client.EntryPointHelper; import com.sap.sse.gwt.client.mvp.AbstractMvpEntryPoint; import com.sap.sse.gwt.resources.CommonControlsCSS; import com.sap.sse.gwt.resources.Highcharts; +import com.sap.sse.security.ui.client.DefaultWithSecurityImpl; +import com.sap.sse.security.ui.client.UserStatusEventHandler; +import com.sap.sse.security.ui.client.WithSecurity; +import com.sap.sse.security.ui.shared.UserDTO; public class DesktopEntryPoint extends AbstractMvpEntryPoint { + + private WithSecurity securityProvider; + @Override public void doOnModuleLoad() { Document.get().getBody().addClassName(SharedResources.INSTANCE.mainCss().desktop()); @@ -46,9 +54,16 @@ public class DesktopEntryPoint extends AbstractMvpEntryPoint { + private WithSecurity securityProvider; + @Override public void doOnModuleLoad() { Document.get().getBody().addClassName(SharedResources.INSTANCE.mainCss().mobile()); @@ -45,9 +52,16 @@ public class MobileEntryPoint extends AbstractMvpEntryPoint { + public static final Type TYPE = new Type(); + + private final UserDTO currentUser; + + public interface Handler extends EventHandler { + void onUserChangeEvent(UserChangeEvent event); + } + + public UserChangeEvent(UserDTO currentUser) { + this.currentUser = currentUser; + } + + public UserDTO getCurrentUser() { + return currentUser; + } + + @Override + public Type getAssociatedType() { + return TYPE; + } + + @Override + protected void dispatch(Handler handler) { + handler.onUserChangeEvent(this); + } +} From 2a39b21a07a34885aa69c687c0635585b5ba9905 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 14:28:54 +0100 Subject: [PATCH 016/367] Added primary outlined button style to SharedResources --- .../sap/sailing/gwt/common/client/SharedResources.java | 1 + .../java/com/sap/sailing/gwt/common/client/main.gss | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java index 72db668974a..1fb0bc73b80 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java @@ -27,6 +27,7 @@ public interface SharedResources extends ClientBundle { String buttonstrong(); String buttoninactive(); String buttonprimary(); + String buttonprimaryoutlined(); String buttonred(); String buttonrefresh(); String buttonarrowdown(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss index ef74f7a328f..9409f99ddac 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss @@ -167,6 +167,16 @@ figcaption { .buttonprimary:hover { background-color: #0081b8; } +.buttonprimaryoutlined { + background-color: transparent; + padding: .533333333333333em 1.333333333333333em; + border: 1px solid #008fcc; + color: #008fcc; +} +.buttonprimaryoutlined:hover { + background-color: #0081b8; + color: #fff; +} .buttonred { background-color: #e94a1b; } From 4f55bb019f42d69bec55fa945e236ac76e4e2071 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 14:57:43 +0100 Subject: [PATCH 017/367] Adjusted flyover popup for desktop user management contents --- .../home/shared/usermanagement/UserManagementFlyover.java | 3 ++- .../shared/usermanagement/UserManagementFlyover.ui.xml | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java index d4d235b61b4..b5559299035 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java @@ -29,7 +29,8 @@ public class UserManagementFlyover extends Composite implements AcceptsOneWidget LOCAL_CSS.ensureInjected(); popupPanel.addStyleName(LOCAL_CSS.flyover()); popupPanel.addAutoHidePartner(autoHidePartner); - popupPanel.setWidget(uiBinder.createAndBindUi(this)); + super.initWidget(uiBinder.createAndBindUi(this)); + popupPanel.setWidget(this); } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml index 46fbdf3ce56..71563ee9ef3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml @@ -1,10 +1,10 @@ - - - - + + + +
From 233daf575d4d08d8888fdf4ce388e326e5274532 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 14:58:34 +0100 Subject: [PATCH 018/367] Added images and styles for desktop sign in form --- .../images/home/facebook.svg | 1 + .../images/home/google.svg | 1 + .../shared/usermanagement/UserManagement.gss | 142 +++++++++++++++++- .../UserManagementResources.java | 12 ++ 4 files changed, 153 insertions(+), 3 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/images/home/facebook.svg create mode 100644 java/com.sap.sailing.gwt.ui/images/home/google.svg diff --git a/java/com.sap.sailing.gwt.ui/images/home/facebook.svg b/java/com.sap.sailing.gwt.ui/images/home/facebook.svg new file mode 100644 index 00000000000..c12e1f9afed --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/images/home/facebook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/images/home/google.svg b/java/com.sap.sailing.gwt.ui/images/home/google.svg new file mode 100644 index 00000000000..3662a830ae7 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/images/home/google.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss index 18e165dd7b2..39fcadd0b20 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss @@ -3,7 +3,6 @@ top: 4.666667em !important; width: 100%; } - .flyover_content { width: 24.8em; float: right; @@ -13,7 +12,6 @@ box-shadow: 0 0 .533333333333333em rgba(0,0,0,.15); border: 1px solid rgba(0,0,0,.1); } - .flyover_content:before { content: ''; width: 1.333333333333333em; @@ -30,4 +28,142 @@ right: 1.333333333333333em; border-top: 1px solid rgba(0,0,0,.1); border-left: 1px solid rgba(0,0,0,.1); -} \ No newline at end of file +} +.form_title { + color: #0a0a0a; + font-weight: 600; + font-size: 1.466666666666667em; + line-height: 1.363636363636364em; + margin-bottom: .909090909090909em; +} +.form_label { + display: block; + font-weight: 600; + margin-bottom: .4em; +} +.form_input, .form_errors { + margin-bottom: 1.333333333333333em; +} +.form_input { + width: 100%; + height: 2.666666666666667em; + line-height: 1.333333333333333em; + padding: .666666666666667em; + border: 1px solid #ccc; + border-radius: .2em; +} +.form_errors { + color: red; +} +.form_link { + height: 1.333333333333333em; + line-height: 1.333333333333333em; + margin-top: -1em; + display: block; + color: #0a0a0a; + text-decoration: underline; + cursor: pointer; +} +.form_actions { + display: -webkit-box; + display: -webkit-flex; + display: -moz-box; + display: -ms-flexbox; + display: flex; + overflow: hidden; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin: 0 -.666666666666667em; +} +.form_action_button { + float: left; + -webkit-box-flex: 1; + -webkit-flex-grow: 1; + -moz-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + cursor: pointer; + text-align: center; + text-transform: uppercase; + margin: 1.333333333333333em .666666666666667em 0; +} +.form_social_seperator { + position: relative; + width: 100%; + height: 1.333333333333333em; + line-height: 1.333333333333333em; + margin: 1.333333333333333em 0; + text-transform: uppercase; +} +.form_social_seperator:before { + position: relative; + content: ''; + display: block; + top: 50%; + left: 0; + width: 100%; + border-top: 1px solid #dedede; +} +.form_social_seperator_text { + display: inline-block; + position: relative; + left: 50%; + z-index: 1; + -webkit-transform: translateX(-50%); + -moz-transform: translateX(-50%); + -ms-transform: translateX(-50%); + transform: translateX(-50%); + text-align: center; + line-height: 1.333333333333333em; + padding: 0 .666666666666667em; + color: #dedede; + background-color: #fff; +} +a.form_social_button { + display: block; + width: 100%; + height: 2.666666666666667em; + line-height: 1.333333333333333em; + margin-top: 1.333333333333333em; + padding: .666666666666667em 1.333333333333333em .666666666666667em 2.666666666666667em; + color: #fff; + font-weight: 600; + text-align: center; + text-decoration: none; + border-radius: .2em; + cursor: pointer; +} +a.form_social_button:first-of-type { + margin-bottom: 0; +} +a.form_social_button:before { + content: ''; + display: block; + float: left; + height: 2.666666666666667em; + width: 2.666666666666667em; + margin-top: -.666666666666667em; + margin-left: -2.666666666666667em; + background-size: contain; + background-repeat: no-repeat; + background-position: center; +} +a.form_social_button_facebook { + background-color: #3b5998; +} +a.form_social_button_facebook:hover { + background-color: #355089 +} +a.form_social_button_facebook:before { + background-image: url(images/home/facebook.svg); +} +a.form_social_button_google { + background-color: #de5342; +} +a.form_social_button_google:hover { + background-color: #da3d29 +} +a.form_social_button_google:before { + background-image: url(images/home/google.svg); +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java index 201b3c157a7..4531c9ba3c1 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java @@ -14,6 +14,18 @@ public interface UserManagementResources extends ClientBundle { public interface LocalCss extends CssResource { String flyover(); String flyover_content(); + String form_title(); + String form_label(); + String form_input(); + String form_errors(); + String form_link(); + String form_actions(); + String form_action_button(); + String form_social_seperator(); + String form_social_seperator_text(); + String form_social_button(); + String form_social_button_facebook(); + String form_social_button_google(); } } From 0edc8b815e8fd96c4cbcb7cb524b351c2eb3b132 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 15:06:57 +0100 Subject: [PATCH 019/367] Added base implementation for desktop sign in form --- .../shared/usermanagement/SignInForm.java | 69 +++++++++++++++++++ .../shared/usermanagement/SignInForm.ui.xml | 31 +++++++++ 2 files changed, 100 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java new file mode 100644 index 00000000000..20247b061f3 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java @@ -0,0 +1,69 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; +import com.google.gwt.user.client.ui.Anchor; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.PasswordTextBox; +import com.google.gwt.user.client.ui.TextBox; +import com.google.gwt.user.client.ui.Widget; + +public class SignInForm extends Composite { + + interface SignInFormUiBinder extends UiBinder { + } + + private static SignInFormUiBinder uiBinder = GWT.create(SignInFormUiBinder.class); + + @UiField TextBox loginNameUi; + @UiField PasswordTextBox passwordUi; + @UiField Anchor forgotPasswordUi; + @UiField Anchor createAccountUi; + @UiField Anchor signInUi; + @UiField Anchor loginFacebookUi; + @UiField Anchor loginGoogleUi; + + @UiField DivElement formErrorUi; + @UiField DivElement socialLoginUi; + + public SignInForm() { + initWidget(uiBinder.createAndBindUi(this)); + setPlaceholder(loginNameUi, "TODO Username or Email"); + setPlaceholder(passwordUi, "TODO Password"); + } + + @UiHandler("forgotPasswordUi") + void onForgotPasswordUiControlClicked(ClickEvent event) { + // TODO + } + + @UiHandler("createAccountUi") + void onCreateAccountUiControlClicked(ClickEvent event) { + // TODO + } + + @UiHandler("signInUi") + void onSignInControlUiClicked(ClickEvent event) { + // String login = loginNameUi.getValue(), pw = passwordUi.getValue(); + // TODO + } + + @UiHandler("loginFacebookUi") + void onLoginFacebookUiClicked(ClickEvent event) { + // TODO + } + + @UiHandler("loginGoogleUi") + void onLoginGoogleUiClicked(ClickEvent event) { + // TODO + } + + private void setPlaceholder(Widget widget, String placeholderText) { + widget.getElement().setAttribute("placeholder", placeholderText); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.ui.xml new file mode 100644 index 00000000000..0b61e282ef3 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.ui.xml @@ -0,0 +1,31 @@ + + + + + + +
TODO Sign In
+
+ + + + + TODO Forgot Password? +
+ TODO Create account + TODO Sign in +
+
+
+
TODO or
+
+ TODO Login with Facebook + TODO Login with Google +
+
+
From c035288b278946bd4c391ae6498fbb720c326d14 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 15:24:54 +0100 Subject: [PATCH 020/367] Added styles for desktop create account form --- .../sailing/gwt/home/shared/usermanagement/UserManagement.gss | 2 +- .../home/shared/usermanagement/UserManagementResources.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss index 39fcadd0b20..0a83bd51d85 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss @@ -41,7 +41,7 @@ font-weight: 600; margin-bottom: .4em; } -.form_input, .form_errors { +.form_input, .form_description, .form_errors { margin-bottom: 1.333333333333333em; } .form_input { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java index 4531c9ba3c1..164023f13e4 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java @@ -15,9 +15,10 @@ public interface UserManagementResources extends ClientBundle { String flyover(); String flyover_content(); String form_title(); + String form_description(); + String form_errors(); String form_label(); String form_input(); - String form_errors(); String form_link(); String form_actions(); String form_action_button(); From 9924f58dfa3ecf62b6bc1b1daf7a35ac229d60a1 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 15:25:14 +0100 Subject: [PATCH 021/367] Added base implementation for desktop create account form --- .../usermanagement/CreateAccountForm.java | 53 +++++++++++++++++++ .../usermanagement/CreateAccountForm.ui.xml | 26 +++++++++ 2 files changed, 79 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java new file mode 100644 index 00000000000..0410e48a868 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java @@ -0,0 +1,53 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; +import com.google.gwt.user.client.ui.Anchor; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.PasswordTextBox; +import com.google.gwt.user.client.ui.TextBox; +import com.google.gwt.user.client.ui.Widget; + +public class CreateAccountForm extends Composite { + + interface CreateAccountFormUiBinder extends UiBinder { + } + + private static CreateAccountFormUiBinder uiBinder = GWT.create(CreateAccountFormUiBinder.class); + + @UiField TextBox emailUi; + @UiField TextBox usernameUi; + @UiField PasswordTextBox passwordUi; + @UiField PasswordTextBox passwordConfirmationUi; + @UiField Anchor createAccountUi; + @UiField Anchor signInUi; + + @UiField DivElement formErrorUi; + + public CreateAccountForm() { + initWidget(uiBinder.createAndBindUi(this)); + setPlaceholder(emailUi, "TODO Email"); + setPlaceholder(usernameUi, "TODO Username"); + setPlaceholder(passwordUi, "TODO Password"); + setPlaceholder(passwordConfirmationUi, "TODO Password Confirmation"); + } + + @UiHandler("createAccountUi") + void onCreateAccountUiControlClicked(ClickEvent event) { + // TODO + } + + @UiHandler("signInUi") + void onSignInControlUiClicked(ClickEvent event) { + // TODO + } + + private void setPlaceholder(Widget widget, String placeholderText) { + widget.getElement().setAttribute("placeholder", placeholderText); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.ui.xml new file mode 100644 index 00000000000..da020a83640 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.ui.xml @@ -0,0 +1,26 @@ + + + + + + +
TODO Create Account
+
Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte.
+
+ + + + + + + + +
+ TODO Sign in + TODO Create account +
+
+
From 76d3a9ba5ea3f55f8db68a0b559e28c63307edcc Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 15:35:39 +0100 Subject: [PATCH 022/367] Added base implementation for desktop password recovery form --- .../usermanagement/PasswordRecoveryForm.java | 39 +++++++++++++++++++ .../PasswordRecoveryForm.ui.xml | 17 ++++++++ 2 files changed, 56 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.java new file mode 100644 index 00000000000..c47caceb535 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.java @@ -0,0 +1,39 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.TextBox; +import com.google.gwt.user.client.ui.Widget; + +public class PasswordRecoveryForm extends Composite { + + interface PasswordRecoveryFormUiBinder extends UiBinder { + } + + private static PasswordRecoveryFormUiBinder uiBinder = GWT.create(PasswordRecoveryFormUiBinder.class); + + @UiField TextBox loginNameUi; + + @UiField DivElement formErrorUi; + + public PasswordRecoveryForm() { + initWidget(uiBinder.createAndBindUi(this)); + setPlaceholder(loginNameUi, "TODO Username or Email"); + } + + @UiHandler("resetPasswordUi") + void onResetPasswordUiControlClicked(ClickEvent event) { + // String login = loginNameUi.getValue(); + // TODO + } + + private void setPlaceholder(Widget widget, String placeholderText) { + widget.getElement().setAttribute("placeholder", placeholderText); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.ui.xml new file mode 100644 index 00000000000..e2256016191 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.ui.xml @@ -0,0 +1,17 @@ + + + + + + +
TODO Forgot Password
+
+ + +
+ TODO Reset password +
+
+
From 77e0aabddbc88693bed64361e4d8c3ac7fe15147 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 16:43:23 +0100 Subject: [PATCH 023/367] Added images and styles for desktop user info panel --- .../images/home/userdefault.svg | 63 +++++++++++++++++++ .../shared/usermanagement/UserManagement.gss | 41 +++++++++++- .../UserManagementResources.java | 6 ++ 3 files changed, 108 insertions(+), 2 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/images/home/userdefault.svg diff --git a/java/com.sap.sailing.gwt.ui/images/home/userdefault.svg b/java/com.sap.sailing.gwt.ui/images/home/userdefault.svg new file mode 100644 index 00000000000..c942890386f --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/images/home/userdefault.svg @@ -0,0 +1,63 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss index 0a83bd51d85..cc950cb024d 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss @@ -36,6 +36,13 @@ line-height: 1.363636363636364em; margin-bottom: .909090909090909em; } +.form_subtitle { + color: #666; + font-size: 1em; + font-weight: 400; + line-height: 1.333333333333333em; + margin-bottom: .666666666666667em +} .form_label { display: block; font-weight: 600; @@ -153,7 +160,7 @@ a.form_social_button_facebook { background-color: #3b5998; } a.form_social_button_facebook:hover { - background-color: #355089 + background-color: #355089; } a.form_social_button_facebook:before { background-image: url(images/home/facebook.svg); @@ -162,8 +169,38 @@ a.form_social_button_google { background-color: #de5342; } a.form_social_button_google:hover { - background-color: #da3d29 + background-color: #da3d29; } a.form_social_button_google:before { background-image: url(images/home/google.svg); } +.info_user { + overflow: hidden; + clear: both; +} +.info_user_image { + float: left; + width: 5.333333333333333em; + height: 5.333333333333333em; + padding: .333333333333333em; + margin-right: .666666666666667em; + border: 1px solid #dedede; + border-radius: .2em; +} +.info_user_image_item { + width: 4.533333333333333em; + height: 4.533333333333333em; + background-color: #ebebeb; + background-repeat: no-repeat; + background-position: center center; + background-size: contain; + background-image: url('images/home/userdefault.svg'); +} +.info_user_realname { + color: #0a0a0a; + font-size: 1.466666666666667em; + font-weight: 600; +} +.info_user_username { + color: #666; +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java index 164023f13e4..ca7782e41ab 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementResources.java @@ -15,6 +15,7 @@ public interface UserManagementResources extends ClientBundle { String flyover(); String flyover_content(); String form_title(); + String form_subtitle(); String form_description(); String form_errors(); String form_label(); @@ -27,6 +28,11 @@ public interface UserManagementResources extends ClientBundle { String form_social_button(); String form_social_button_facebook(); String form_social_button_google(); + String info_user(); + String info_user_image(); + String info_user_image_item(); + String info_user_realname(); + String info_user_username(); } } From 1dfc7a21a9e6b7cb4ef5661b11563e8f9bbd7a91 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 16:43:44 +0100 Subject: [PATCH 024/367] Added base implementation for desktop logged in user info --- .../usermanagement/LoggedInUserInfo.java | 41 +++++++++++++++++++ .../usermanagement/LoggedInUserInfo.ui.xml | 23 +++++++++++ 2 files changed, 64 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java new file mode 100644 index 00000000000..0feb3f3b8fe --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java @@ -0,0 +1,41 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; +import com.google.gwt.user.client.ui.Anchor; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; + +public class LoggedInUserInfo extends Composite { + + interface LoggedInUserInfoUiBinder extends UiBinder { + } + + private static LoggedInUserInfoUiBinder uiBinder = GWT.create(LoggedInUserInfoUiBinder.class); + + @UiField DivElement userImageUi; + @UiField DivElement userRealnameUi; + @UiField DivElement userUsernameUi; + + @UiField Anchor userProfileUi; + @UiField Anchor signOutUi; + + public LoggedInUserInfo() { + initWidget(uiBinder.createAndBindUi(this)); + } + + @UiHandler("userProfileUi") + void onUserProfileUiControlClicked(ClickEvent event) { + // TODO + } + + @UiHandler("signOutUi") + void onSignOutUiControlClicked(ClickEvent event) { + // TODO + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml new file mode 100644 index 00000000000..d7181b80a95 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml @@ -0,0 +1,23 @@ + + + + + + +
TODO Signed in as:
+
+
+
+
+
TODO Max Mustermann
+
TODO user001
+
+
+ TODO User profile + TODO Sign out +
+
+
From cc7204cea2d946044a2e2e863ae3b98b783b4043 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 16:44:08 +0100 Subject: [PATCH 025/367] Adjusted user management menu icon to desktop header --- .../images/home/loggedout.svg | 61 +++++++++++++++++++ .../home/desktop/partials/header/Header.gss | 5 +- .../home/desktop/partials/header/Header.java | 4 +- 3 files changed, 67 insertions(+), 3 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/images/home/loggedout.svg diff --git a/java/com.sap.sailing.gwt.ui/images/home/loggedout.svg b/java/com.sap.sailing.gwt.ui/images/home/loggedout.svg new file mode 100644 index 00000000000..dcb76d150b6 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/images/home/loggedout.svg @@ -0,0 +1,61 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss index 0069d12a2d5..ae47b2776df 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss @@ -109,7 +109,10 @@ width: 3rem; height: 3rem; vertical-align: middle; - background: url('images/home/loggedin.svg') no-repeat center; + background-repeat: no-repeat; + background-position: center center; + background-size: contain; + background-image: url('images/home/loggedout.svg'); margin-left: 1rem; cursor: pointer; } \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java index 4eec15a5576..d2e94c574a3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java @@ -16,7 +16,6 @@ import com.google.gwt.user.client.Event; import com.google.gwt.user.client.ui.Anchor; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Label; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; import com.google.gwt.user.client.ui.impl.HyperlinkImpl; @@ -32,6 +31,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.LoggedInUserInfo; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementFlyover; import com.sap.sse.gwt.client.mvp.PlaceChangedEvent; @@ -136,7 +136,7 @@ public class Header extends Composite { } else { userManagementFlyover.show(); // FIXME: Temporary dummy content for user management flyover - userManagementFlyover.setWidget(new Label("TODO User Management")); + userManagementFlyover.setWidget(new LoggedInUserInfo()); } } From 21f4dfc470101f7173953f5ea4bbd9125757ec12 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 18:04:35 +0100 Subject: [PATCH 026/367] Availability of social services for User management login can be enabled/disabled via experimental feature flag --- .../com/sap/sailing/gwt/home/shared/ExperimentalFeatures.java | 4 ++++ .../sailing/gwt/home/shared/usermanagement/SignInForm.java | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/ExperimentalFeatures.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/ExperimentalFeatures.java index dcfbd043171..de63938a1a3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/ExperimentalFeatures.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/ExperimentalFeatures.java @@ -67,4 +67,8 @@ public class ExperimentalFeatures { * Provide a button to toogle autoplay in mobile fullscreen image gallery viewer. */ public static final boolean SHOW_AUTOPLAY_IMAGES_ON_MOBILE = true; + /** + * Provide buttons for user management login via social services like facebook or google. + */ + public static final boolean SHOW_SOCIAL_LOGINS_FOR_USER_MANGEMENT = false; } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java index 20247b061f3..0bdc5dff807 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java @@ -11,6 +11,7 @@ import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.PasswordTextBox; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.ExperimentalFeatures; public class SignInForm extends Composite { @@ -34,6 +35,9 @@ public class SignInForm extends Composite { initWidget(uiBinder.createAndBindUi(this)); setPlaceholder(loginNameUi, "TODO Username or Email"); setPlaceholder(passwordUi, "TODO Password"); + if (!ExperimentalFeatures.SHOW_SOCIAL_LOGINS_FOR_USER_MANGEMENT) { + socialLoginUi.removeFromParent(); + } } @UiHandler("forgotPasswordUi") From fbac52dc432c6a6f09cdb2dd5dca79faffda843e Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 8 Dec 2015 18:20:10 +0100 Subject: [PATCH 027/367] Move dummy data from markup to code and added setter method for errors --- .../gwt/home/shared/usermanagement/CreateAccountForm.java | 6 ++++++ .../gwt/home/shared/usermanagement/LoggedInUserInfo.java | 7 +++++++ .../gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml | 4 ++-- .../home/shared/usermanagement/PasswordRecoveryForm.java | 4 ++++ .../sailing/gwt/home/shared/usermanagement/SignInForm.java | 4 ++++ .../gwt/home/shared/usermanagement/UserManagement.gss | 1 - 6 files changed, 23 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java index 0410e48a868..124903e1607 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java @@ -36,8 +36,14 @@ public class CreateAccountForm extends Composite { setPlaceholder(passwordConfirmationUi, "TODO Password Confirmation"); } + public void setErrorMessage(String errorMessage) { + formErrorUi.setInnerText(errorMessage); + } + @UiHandler("createAccountUi") void onCreateAccountUiControlClicked(ClickEvent event) { + // String email = emailUi.getValue(), username = usernameUi.getValue(); + // String password = passwordUi.getValue(), passwordConfirm = passwordConfirmationUi.getValue(); // TODO } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java index 0feb3f3b8fe..63d29906cbb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java @@ -26,6 +26,13 @@ public class LoggedInUserInfo extends Composite { public LoggedInUserInfo() { initWidget(uiBinder.createAndBindUi(this)); + setUserInfo(); + } + + public void setUserInfo() { + userImageUi.getStyle().setBackgroundImage("url('images/home/userdefault.svg')"); + userRealnameUi.setInnerText("Max Mustermann"); + userUsernameUi.setInnerText("user001"); } @UiHandler("userProfileUi") diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml index d7181b80a95..be27c82fc79 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml @@ -10,8 +10,8 @@
-
TODO Max Mustermann
-
TODO user001
+
+
Date: Wed, 9 Dec 2015 13:10:33 +0100 Subject: [PATCH 028/367] Moved security provider into client factories and introduced client side user management context --- .../gwt/home/desktop/DesktopEntryPoint.java | 13 -------- .../desktop/app/DesktopActivityMapper.java | 8 ++--- .../desktop/app/DesktopClientFactory.java | 8 +++-- ...letAndDesktopApplicationClientFactory.java | 28 ++++++++++++++++ .../gwt/home/mobile/MobileEntryPoint.java | 13 -------- .../app/MobileApplicationClientFactory.java | 33 ++++++++++++++++++- .../shared/app/ClientFactoryWithSecurity.java | 9 +++++ .../shared/app/UserManagementContext.java | 9 +++++ .../shared/app/UserManagementContextImpl.java | 27 +++++++++++++++ .../usermanagement/UserChangeEvent.java | 33 ------------------- .../UserManagementContextEvent.java | 33 +++++++++++++++++++ 11 files changed, 148 insertions(+), 66 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContext.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java delete mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserChangeEvent.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementContextEvent.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java index 3d669badddf..cee4048cbe4 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/DesktopEntryPoint.java @@ -12,7 +12,6 @@ import com.sap.sailing.gwt.home.desktop.app.DesktopActivityMapper; import com.sap.sailing.gwt.home.desktop.app.DesktopClientFactory; import com.sap.sailing.gwt.home.desktop.app.TabletAndDesktopApplicationClientFactory; import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; -import com.sap.sailing.gwt.home.shared.usermanagement.UserChangeEvent; import com.sap.sailing.gwt.ui.client.RemoteServiceMappingConstants; import com.sap.sailing.gwt.ui.client.ServerConfigurationService; import com.sap.sailing.gwt.ui.client.ServerConfigurationServiceAsync; @@ -21,14 +20,9 @@ import com.sap.sse.gwt.client.EntryPointHelper; import com.sap.sse.gwt.client.mvp.AbstractMvpEntryPoint; import com.sap.sse.gwt.resources.CommonControlsCSS; import com.sap.sse.gwt.resources.Highcharts; -import com.sap.sse.security.ui.client.DefaultWithSecurityImpl; -import com.sap.sse.security.ui.client.UserStatusEventHandler; -import com.sap.sse.security.ui.client.WithSecurity; -import com.sap.sse.security.ui.shared.UserDTO; public class DesktopEntryPoint extends AbstractMvpEntryPoint { - private WithSecurity securityProvider; @Override public void doOnModuleLoad() { @@ -57,13 +51,6 @@ public class DesktopEntryPoint extends AbstractMvpEntryPoint> implements DesktopClientFactory { private final SailingDispatchSystem dispatch = new SailingDispatchSystemImpl(); + private WithSecurity securityProvider; + private UserManagementContext uCtx = new UserManagementContextImpl(); public TabletAndDesktopApplicationClientFactory(boolean isStandaloneServer) { this(new SimpleEventBus(), isStandaloneServer); @@ -41,6 +51,14 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio private TabletAndDesktopApplicationClientFactory(EventBus eventBus, PlaceController placeController, DesktopPlacesNavigator placesNavigator) { super(new TabletAndDesktopApplicationView(placesNavigator, eventBus), eventBus, placeController, placesNavigator); + securityProvider = new DefaultWithSecurityImpl(); + securityProvider.getUserService().addUserStatusEventHandler(new UserStatusEventHandler() { + @Override + public void onUserStatusChange(UserDTO user) { + uCtx = new UserManagementContextImpl(user); + getEventBus().fireEvent(new UserManagementContextEvent(uCtx)); + } + }); } @Override @@ -92,4 +110,14 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio public BusyView createBusyView() { return new BusyViewImpl(); } + + @Override + public UserManagementServiceAsync getUserManagement() { + return securityProvider.getUserManagementService(); + } + + @Override + public UserManagementContext getUserManagementContext() { + return uCtx; + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/MobileEntryPoint.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/MobileEntryPoint.java index 629ae7106c3..164aa0175e4 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/MobileEntryPoint.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/MobileEntryPoint.java @@ -12,7 +12,6 @@ import com.sap.sailing.gwt.home.mobile.app.MobileApplicationClientFactory; import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; import com.sap.sailing.gwt.home.shared.app.ResettableNavigationPathDisplay; import com.sap.sailing.gwt.home.shared.app.SailingActivityManager; -import com.sap.sailing.gwt.home.shared.usermanagement.UserChangeEvent; import com.sap.sailing.gwt.ui.client.RemoteServiceMappingConstants; import com.sap.sailing.gwt.ui.client.ServerConfigurationService; import com.sap.sailing.gwt.ui.client.ServerConfigurationServiceAsync; @@ -20,14 +19,9 @@ import com.sap.sailing.gwt.ui.client.StringMessages; import com.sap.sse.gwt.client.EntryPointHelper; import com.sap.sse.gwt.client.mvp.AbstractMvpEntryPoint; import com.sap.sse.gwt.resources.CommonControlsCSS; -import com.sap.sse.security.ui.client.DefaultWithSecurityImpl; -import com.sap.sse.security.ui.client.UserStatusEventHandler; -import com.sap.sse.security.ui.client.WithSecurity; -import com.sap.sse.security.ui.shared.UserDTO; public class MobileEntryPoint extends AbstractMvpEntryPoint { - private WithSecurity securityProvider; @Override public void doOnModuleLoad() { @@ -55,13 +49,6 @@ public class MobileEntryPoint extends AbstractMvpEntryPoint> implements ErrorAndBusyClientFactory, SearchResultClientFactory { +public class MobileApplicationClientFactory extends + SecureClientFactoryImpl> implements + ErrorAndBusyClientFactory, SearchResultClientFactory, ClientFactoryWithSecurity { private final MobilePlacesNavigator navigator; private final SailingDispatchSystem dispatch = new SailingDispatchSystemImpl(); + private WithSecurity securityProvider; + private UserManagementContext uCtx = new UserManagementContextImpl(); public MobileApplicationClientFactory(boolean isStandaloneServer) { this(new SimpleEventBus(), isStandaloneServer); @@ -48,6 +61,14 @@ public class MobileApplicationClientFactory extends SecureClientFactoryImpl { - public static final Type TYPE = new Type(); - - private final UserDTO currentUser; - - public interface Handler extends EventHandler { - void onUserChangeEvent(UserChangeEvent event); - } - - public UserChangeEvent(UserDTO currentUser) { - this.currentUser = currentUser; - } - - public UserDTO getCurrentUser() { - return currentUser; - } - - @Override - public Type getAssociatedType() { - return TYPE; - } - - @Override - protected void dispatch(Handler handler) { - handler.onUserChangeEvent(this); - } -} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementContextEvent.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementContextEvent.java new file mode 100644 index 00000000000..c2b56cb8e30 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementContextEvent.java @@ -0,0 +1,33 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.event.shared.EventHandler; +import com.google.gwt.event.shared.GwtEvent; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; + +public class UserManagementContextEvent extends GwtEvent { + public static final Type TYPE = new Type(); + + private final UserManagementContext ctx; + + public interface Handler extends EventHandler { + void onUserChangeEvent(UserManagementContextEvent event); + } + + public UserManagementContextEvent(UserManagementContext ctx) { + this.ctx = ctx; + } + + public UserManagementContext getCtx() { + return ctx; + } + + @Override + public Type getAssociatedType() { + return TYPE; + } + + @Override + protected void dispatch(Handler handler) { + handler.onUserChangeEvent(this); + } +} From 73d3db97748785d829a3218eb6e4b103ac1c7b85 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 13:39:43 +0100 Subject: [PATCH 029/367] Implemented first stub for tabbed user profile UI --- .../desktop/app/DesktopActivityMapper.java | 4 + .../desktop/app/DesktopClientFactory.java | 5 +- .../desktop/app/DesktopPlacesNavigator.java | 5 ++ .../userprofileheader/UserProfileHeader.java | 12 +++ .../TabletAndDesktopUserProfileView.java | 76 ++++++++++++++++ .../TabletAndDesktopUserProfileView.ui.xml | 50 +++++++++++ .../user/profile/UserProfileActivity.java | 88 +++++++++++++++++++ .../profile/UserProfileActivityProxy.java | 55 ++++++++++++ .../profile/UserProfileClientFactory.java | 8 ++ .../user/profile/UserProfileTabView.java | 7 ++ .../places/user/profile/UserProfileView.java | 43 +++++++++ .../detailstab/UserProfileDetailsTabView.java | 61 +++++++++++++ .../UserProfileDetailsTabView.ui.xml | 11 +++ .../shared/app/ApplicationHistoryMapper.java | 3 + .../shared/places/PlaceTokenPrefixes.java | 2 + .../profile/AbstractUserProfilePlace.java | 27 ++++++ .../user/profile/UserProfileDetailsPlace.java | 17 ++++ 17 files changed, 472 insertions(+), 2 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDetailsPlace.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java index 391b5827d2d..87ed6f6445f 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java @@ -16,6 +16,7 @@ import com.sap.sailing.gwt.home.desktop.places.solutions.SolutionsActivityProxy; import com.sap.sailing.gwt.home.desktop.places.sponsoring.SponsoringActivityProxy; import com.sap.sailing.gwt.home.desktop.places.sponsoring.SponsoringPlace; import com.sap.sailing.gwt.home.desktop.places.start.StartActivityProxy; +import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileActivityProxy; import com.sap.sailing.gwt.home.desktop.places.whatsnew.WhatsNewActivityProxy; import com.sap.sailing.gwt.home.desktop.places.whatsnew.WhatsNewPlace; import com.sap.sailing.gwt.home.shared.SwitchingEntryPoint; @@ -28,6 +29,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultActivityP import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; public class DesktopActivityMapper implements ActivityMapper { @@ -70,6 +72,8 @@ public class DesktopActivityMapper implements ActivityMapper { return new com.sap.sailing.gwt.home.desktop.places.fakeseries.SeriesActivityProxy((AbstractSeriesPlace) place, clientFactory, clientFactory.getHomePlacesNavigator()); } else if (place instanceof EventsPlace) { return new EventsActivityProxy((EventsPlace) place, clientFactory, clientFactory.getHomePlacesNavigator()); + } else if (place instanceof AbstractUserProfilePlace) { + return new UserProfileActivityProxy((AbstractUserProfilePlace) place, clientFactory, clientFactory.getHomePlacesNavigator()); } else if (place instanceof StartPlace) { return new StartActivityProxy((StartPlace) place, clientFactory); } else if (place instanceof SponsoringPlace) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java index 515196c7cfc..4fe5671eec6 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java @@ -8,6 +8,7 @@ import com.sap.sailing.gwt.home.desktop.places.events.EventsClientFactory; import com.sap.sailing.gwt.home.desktop.places.solutions.SolutionsClientFactory; import com.sap.sailing.gwt.home.desktop.places.sponsoring.SponsoringClientFactory; import com.sap.sailing.gwt.home.desktop.places.start.StartClientFactory; +import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileClientFactory; import com.sap.sailing.gwt.home.desktop.places.whatsnew.WhatsNewClientFactory; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithSecurity; import com.sap.sailing.gwt.home.shared.places.error.ErrorClientFactory; @@ -15,8 +16,8 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultClientFac public interface DesktopClientFactory extends AboutUsClientFactory, ContactClientFactory, EventClientFactory, EventsClientFactory, StartClientFactory, SponsoringClientFactory, SolutionsClientFactory, - SearchResultClientFactory, WhatsNewClientFactory, SeriesClientFactory, ErrorClientFactory, - ClientFactoryWithSecurity { + SearchResultClientFactory, WhatsNewClientFactory, SeriesClientFactory, UserProfileClientFactory, + ErrorClientFactory, ClientFactoryWithSecurity { DesktopPlacesNavigator getHomePlacesNavigator(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java index 1de1efe8804..3fedabd7614 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java @@ -23,6 +23,8 @@ import com.sap.sailing.gwt.home.shared.places.fakeseries.SeriesDefaultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPlace; import com.sap.sailing.gwt.ui.client.EntryPointLinkFactory; public class DesktopPlacesNavigator extends AbstractPlaceNavigator { @@ -100,4 +102,7 @@ public class DesktopPlacesNavigator extends AbstractPlaceNavigator { return createPlaceNavigation(baseUrl, isOnRemoteServer, regattaPlace); } + public PlaceNavigation getUserProfileNavigation() { + return createGlobalPlaceNavigation(new UserProfileDetailsPlace()); + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java new file mode 100644 index 00000000000..20f1aec7de0 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java @@ -0,0 +1,12 @@ +package com.sap.sailing.gwt.home.desktop.partials.userprofileheader; + +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Label; + +public class UserProfileHeader extends Composite { + + public UserProfileHeader() { + initWidget(new Label("TODO implement User Profile Header")); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java new file mode 100644 index 00000000000..d7e462cd38b --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java @@ -0,0 +1,76 @@ +package com.sap.sailing.gwt.home.desktop.places.user.profile; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; +import com.google.gwt.user.client.Window; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.IsWidget; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.common.client.controls.tabbar.TabPanel; +import com.sap.sailing.gwt.common.client.controls.tabbar.TabPanelPlaceSelectionEvent; +import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.desktop.partials.userprofileheader.UserProfileHeader; +import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.ui.client.StringMessages; + +public class TabletAndDesktopUserProfileView extends Composite implements UserProfileView { + private static final ApplicationHistoryMapper historyMapper = GWT. create(ApplicationHistoryMapper.class); + + private static MyBinder uiBinder = GWT.create(MyBinder.class); + + private UserProfileView.Presenter currentPresenter; + + interface MyBinder extends UiBinder { + } + + @UiField StringMessages i18n; + + @UiField(provided = true) + TabPanel tabPanelUi; + + @UiField(provided = true) + UserProfileHeader headerUi; + + public TabletAndDesktopUserProfileView() { + } + + @Override + public void registerPresenter(final UserProfileView.Presenter currentPresenter) { + this.currentPresenter = currentPresenter; + tabPanelUi = new TabPanel<>(currentPresenter, historyMapper); + + headerUi = new UserProfileHeader(); + + initWidget(uiBinder.createAndBindUi(this)); + } + + @Override + public void navigateTabsTo(AbstractUserProfilePlace place) { + tabPanelUi.activatePlace(place); + // TODO implement +// StringBuilder titleBuilder = new StringBuilder(TextMessages.INSTANCE.sapSailing()).append(" - "); +// +// titleBuilder.append(currentPresenter.getSeriesDTO().getDisplayName()); +// +// String currentTabTitle = tabPanelUi.getCurrentTabTitle(); +// if (currentTabTitle != null && !currentTabTitle.isEmpty()) { +// titleBuilder.append(" - ").append(currentTabTitle); +// } +// Window.setTitle(titleBuilder.toString()); + Window.setTitle("TODO User Profile title"); + } + + @SuppressWarnings("unchecked") + @UiHandler("tabPanelUi") + public void onTabSelection(TabPanelPlaceSelectionEvent e) { + currentPresenter.handleTabPlaceSelection((TabView) e.getSelectedActivity()); + } + + @Override + public void showErrorInCurrentTab(IsWidget errorView) { + tabPanelUi.overrideCurrentContentInTab(errorView); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml new file mode 100644 index 00000000000..d0ca2b7ec91 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml @@ -0,0 +1,50 @@ + + + + + + .header { + position: relative; + width: 100%; + margin: 0; + padding: 0; + } + .mainHeader { + width: 66.6666666666667%; + } + .sharingHeader { + width: 33.3333333333333%; + float: right; + padding: 0 1rem; + position: relative; + padding: 1.333333333333333em 0; + text-align: right; + background-color: maroon; + height: 2rem; + } + .breadcrumb, .intro { + box-sizing: border-box; + -moz-box-sizing: border-box; + } + .breadcrumb { + font-size: 0.866666666666667em; + font-weight: 600; + } + .intro { + height: 5em; + } + + + + + + + + + + + + \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java new file mode 100644 index 00000000000..e75aeeb9491 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java @@ -0,0 +1,88 @@ +package com.sap.sailing.gwt.home.desktop.places.user.profile; + +import com.google.gwt.activity.shared.AbstractActivity; +import com.google.gwt.core.shared.GWT; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.place.shared.Place; +import com.google.gwt.safehtml.shared.SafeUri; +import com.google.gwt.safehtml.shared.UriUtils; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.desktop.app.DesktopPlacesNavigator; +import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; +import com.sap.sailing.gwt.home.shared.app.NavigationPathDisplay; +import com.sap.sailing.gwt.home.shared.app.NavigationPathDisplay.NavigationItem; +import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; +import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; +import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.ui.client.StringMessages; +import com.sap.sse.security.ui.shared.UserDTO; + +public class UserProfileActivity extends AbstractActivity implements UserProfileView.Presenter { + + protected final AbstractUserProfilePlace currentPlace; + protected final UserProfileClientFactory clientFactory; + + protected final DesktopPlacesNavigator homePlacesNavigator; + + private static final ApplicationHistoryMapper historyMapper = GWT.create(ApplicationHistoryMapper.class); + + private UserProfileView currentView = new TabletAndDesktopUserProfileView(); + + private final UserDTO user; + + public UserProfileActivity(AbstractUserProfilePlace place, UserDTO user, UserProfileClientFactory clientFactory, + DesktopPlacesNavigator homePlacesNavigator, NavigationPathDisplay navigationPathDisplay) { + this.currentPlace = place; + this.user = user; + this.clientFactory = clientFactory; + this.homePlacesNavigator = homePlacesNavigator; + + initNavigationPath(navigationPathDisplay); + } + + private void initNavigationPath(NavigationPathDisplay navigationPathDisplay) { + StringMessages i18n = StringMessages.INSTANCE; + navigationPathDisplay.showNavigationPath(new NavigationItem(i18n.home(), getHomeNavigation()), + new NavigationItem("TODO User Details", getUserProfileNavigation())); + } + + @Override + public void start(final AcceptsOneWidget panel, final EventBus eventBus) { + currentView.registerPresenter(this); + panel.setWidget(currentView); + currentView.navigateTabsTo(currentPlace); + } + + @Override + public void handleTabPlaceSelection(TabView selectedActivity) { + Place tabPlaceToGo = selectedActivity.placeToFire(); + clientFactory.getPlaceController().goTo(tabPlaceToGo); + } + + public void navigateTo(Place place) { + clientFactory.getPlaceController().goTo(place); + } + + @Override + public SafeUri getUrl(AbstractSeriesPlace place) { + String token = historyMapper.getToken(place); + return UriUtils.fromString("#" + token); + } + + @Override + public PlaceNavigation getHomeNavigation() { + return homePlacesNavigator.getHomeNavigation(); + } + + @Override + public PlaceNavigation getUserProfileNavigation() { + return homePlacesNavigator.getUserProfileNavigation(); + } + + @Override + public UserDTO getUser() { + return user; + } +} \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java new file mode 100644 index 00000000000..33a355be081 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java @@ -0,0 +1,55 @@ +package com.sap.sailing.gwt.home.desktop.places.user.profile; + +import com.google.gwt.core.client.GWT; +import com.sap.sailing.gwt.home.desktop.app.DesktopPlacesNavigator; +import com.sap.sailing.gwt.home.desktop.app.WithHeader; +import com.sap.sailing.gwt.home.shared.app.NavigationPathDisplay; +import com.sap.sailing.gwt.home.shared.app.ProvidesNavigationPath; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sse.gwt.client.mvp.AbstractActivityProxy; +import com.sap.sse.security.ui.shared.UserDTO; + +public class UserProfileActivityProxy extends AbstractActivityProxy implements ProvidesNavigationPath, WithHeader { + + private AbstractUserProfilePlace place; + private UserProfileClientFactory clientFactory; + private final DesktopPlacesNavigator homePlacesNavigator; + private NavigationPathDisplay navigationPathDisplay; + + public UserProfileActivityProxy(AbstractUserProfilePlace place, UserProfileClientFactory clientFactory, + DesktopPlacesNavigator homePlacesNavigator) { + this.place = place; + this.clientFactory = clientFactory; + this.homePlacesNavigator = homePlacesNavigator; + } + + @Override + public void setNavigationPathDisplay(NavigationPathDisplay navigationPathDisplay) { + this.navigationPathDisplay = navigationPathDisplay; + } + + @Override + protected void startAsync() { + // TODO implement +// final UUID seriesUUID = UUID.fromString(ctx.getSeriesId()); +// clientFactory.getDispatch().execute(new GetEventSeriesViewAction(seriesUUID), +// new ActivityProxyCallback(clientFactory, place) { +// @Override +// public void onSuccess(EventSeriesViewDTO series) { +// afterLoad(series); +// } +// }); + // TODO remove + afterLoad(null); + } + + private void afterLoad(final UserDTO user) { + GWT.runAsync(new AbstractRunAsyncCallback() { + @Override + public void onSuccess() { + super.onSuccess(new UserProfileActivity(place, user, clientFactory, + homePlacesNavigator, navigationPathDisplay)); + } + }); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java new file mode 100644 index 00000000000..43fdba6219f --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java @@ -0,0 +1,8 @@ +package com.sap.sailing.gwt.home.desktop.places.user.profile; + +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithDispatch; +import com.sap.sailing.gwt.ui.client.SailingClientFactory; +import com.sap.sailing.gwt.ui.client.refresh.ErrorAndBusyClientFactory; + +public interface UserProfileClientFactory extends SailingClientFactory, ErrorAndBusyClientFactory, ClientFactoryWithDispatch { +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java new file mode 100644 index 00000000000..8f75c18bfea --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java @@ -0,0 +1,7 @@ +package com.sap.sailing.gwt.home.desktop.places.user.profile; + +import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; + +public interface UserProfileTabView extends TabView { +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java new file mode 100644 index 00000000000..5e614949d00 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java @@ -0,0 +1,43 @@ +package com.sap.sailing.gwt.home.desktop.places.user.profile; + +import com.google.gwt.place.shared.Place; +import com.google.gwt.safehtml.shared.SafeUri; +import com.google.gwt.user.client.ui.IsWidget; +import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; +import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; +import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sse.security.ui.shared.UserDTO; + +public interface UserProfileView extends IsWidget { + + public interface Presenter { + void handleTabPlaceSelection(TabView selectedActivity); + + SafeUri getUrl(AbstractSeriesPlace place); + void navigateTo(Place place); + + PlaceNavigation getHomeNavigation(); + PlaceNavigation getUserProfileNavigation(); + + UserDTO getUser(); + } + + /** + * This is the presenter the view can talk to. + * + * @param currentPresenter + */ + void registerPresenter(PRES currentPresenter); + + /** + * Tell the view to process tabbar place navigation + * + * @param place + */ + void navigateTabsTo(PLACE place); + + void showErrorInCurrentTab(IsWidget errorView); + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java new file mode 100644 index 00000000000..037c15ad617 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java @@ -0,0 +1,61 @@ +package com.sap.sailing.gwt.home.desktop.places.user.profile.detailstab; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileTabView; +import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileView; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPlace; + +/** + * Created by pgtaboada on 25.11.14. + */ +public class UserProfileDetailsTabView extends Composite implements UserProfileTabView { + + interface MyBinder extends UiBinder { + } + + private static MyBinder ourUiBinder = GWT.create(MyBinder.class); + private UserProfileView.Presenter currentPresenter; + + public UserProfileDetailsTabView() { + } + + @Override + public Class getPlaceClassForActivation() { + return UserProfileDetailsPlace.class; + } + + @Override + public TabView.State getState() { + return TabView.State.VISIBLE; + } + + @Override + public void start(UserProfileDetailsPlace myPlace, AcceptsOneWidget contentArea) { + initWidget(ourUiBinder.createAndBindUi(this)); + + // TODO fill contents + currentPresenter.getUser(); + + contentArea.setWidget(this); + } + + @Override + public void stop() { + + } + + @Override + public UserProfileDetailsPlace placeToFire() { + return new UserProfileDetailsPlace(); + } + + @Override + public void setPresenter(UserProfileView.Presenter currentPresenter) { + this.currentPresenter = currentPresenter; + } +} \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml new file mode 100644 index 00000000000..d8180bcb251 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml @@ -0,0 +1,11 @@ + + + + + + +
+
TODO implement content
+
+
+
\ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java index 614edb7551d..4f232504ea2 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java @@ -31,6 +31,7 @@ import com.sap.sailing.gwt.home.shared.places.fakeseries.SeriesDefaultPlace; import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPlace; @WithTokenizers({ AboutUsPlace.Tokenizer.class, ContactPlace.Tokenizer.class, EventPlace.Tokenizer.class, EventsPlace.Tokenizer.class, SolutionsPlace.Tokenizer.class, WhatsNewPlace.Tokenizer.class, @@ -58,6 +59,8 @@ import com.sap.sailing.gwt.home.shared.places.start.StartPlace; LatestNewsPlace.Tokenizer.class, MiniLeaderboardPlace.Tokenizer.class, SeriesMiniOverallLeaderboardPlace.Tokenizer.class, + // User management places: + UserProfileDetailsPlace.Tokenizer.class, ErrorPlace.Tokenizer.class }) public interface ApplicationHistoryMapper extends PlaceHistoryMapper { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java index 198fa384f86..1a776e60210 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java @@ -22,4 +22,6 @@ public class PlaceTokenPrefixes { public static final String EventSeriesLeaderboards = "/series/leaderboards/"; public static final String EventSeriesCompetitorAnalytics = "/series/competitoranalytics/"; public static final String EventSeriesMiniOverallLeaderboard = "/series/minioverallleaderboard/"; + + public static final String UserProfileDetails = "/user/profile/details/"; } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java new file mode 100644 index 00000000000..e259abd29ef --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java @@ -0,0 +1,27 @@ +package com.sap.sailing.gwt.home.shared.places.user.profile; + +import com.google.gwt.place.shared.Place; +import com.google.gwt.place.shared.PlaceTokenizer; +import com.sap.sailing.gwt.common.client.i18n.TextMessages; + +public abstract class AbstractUserProfilePlace extends Place { + + public String getTitle(String eventName) { + // TODO + return TextMessages.INSTANCE.sapSailing() + " - " + eventName; + } + + public static abstract class Tokenizer implements PlaceTokenizer { + @Override + public PLACE getPlace(String token) { + return getRealPlace(); + } + + @Override + public String getToken(PLACE place) { + return ""; + } + + abstract PLACE getRealPlace(); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDetailsPlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDetailsPlace.java new file mode 100644 index 00000000000..f9d033c420d --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDetailsPlace.java @@ -0,0 +1,17 @@ +package com.sap.sailing.gwt.home.shared.places.user.profile; + +import com.google.gwt.place.shared.Prefix; +import com.sap.sailing.gwt.home.shared.app.HasMobileVersion; +import com.sap.sailing.gwt.home.shared.places.PlaceTokenPrefixes; + + +public class UserProfileDetailsPlace extends AbstractUserProfilePlace implements HasMobileVersion { + + @Prefix(PlaceTokenPrefixes.UserProfileDetails) + public static class Tokenizer extends AbstractUserProfilePlace.Tokenizer { + @Override + protected UserProfileDetailsPlace getRealPlace() { + return new UserProfileDetailsPlace(); + } + } +} From 21fce16fdc5b0d673f06f65f4ad0eb134df17c2c Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 14:17:12 +0100 Subject: [PATCH 030/367] Split security interface in two --- .../sailing/gwt/home/desktop/app/DesktopClientFactory.java | 3 ++- .../home/mobile/app/MobileApplicationClientFactory.java | 4 +++- .../gwt/home/shared/app/ClientFactoryWithSecurity.java | 3 --- .../shared/app/ClientFactoryWithUserManagementService.java | 7 +++++++ .../gwt/home/shared/app/UserManagementContextImpl.java | 5 +++-- 5 files changed, 15 insertions(+), 7 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java index 515196c7cfc..c87c21a961e 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java @@ -10,13 +10,14 @@ import com.sap.sailing.gwt.home.desktop.places.sponsoring.SponsoringClientFactor import com.sap.sailing.gwt.home.desktop.places.start.StartClientFactory; import com.sap.sailing.gwt.home.desktop.places.whatsnew.WhatsNewClientFactory; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithSecurity; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; import com.sap.sailing.gwt.home.shared.places.error.ErrorClientFactory; import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultClientFactory; public interface DesktopClientFactory extends AboutUsClientFactory, ContactClientFactory, EventClientFactory, EventsClientFactory, StartClientFactory, SponsoringClientFactory, SolutionsClientFactory, SearchResultClientFactory, WhatsNewClientFactory, SeriesClientFactory, ErrorClientFactory, - ClientFactoryWithSecurity { + ClientFactoryWithSecurity, ClientFactoryWithUserManagementService { DesktopPlacesNavigator getHomePlacesNavigator(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java index 75022c42eb6..9e41cf54d89 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java @@ -10,6 +10,7 @@ import com.sap.sailing.gwt.home.desktop.app.ApplicationTopLevelView; import com.sap.sailing.gwt.home.mobile.places.error.ErrorViewImpl; import com.sap.sailing.gwt.home.mobile.places.searchresult.SearchResultViewImpl; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithSecurity; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; import com.sap.sailing.gwt.home.shared.app.ResettableNavigationPathDisplay; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.app.UserManagementContextImpl; @@ -35,7 +36,8 @@ import com.sap.sse.security.ui.shared.UserDTO; */ public class MobileApplicationClientFactory extends SecureClientFactoryImpl> implements - ErrorAndBusyClientFactory, SearchResultClientFactory, ClientFactoryWithSecurity { + ErrorAndBusyClientFactory, SearchResultClientFactory, ClientFactoryWithSecurity, + ClientFactoryWithUserManagementService { private final MobilePlacesNavigator navigator; private final SailingDispatchSystem dispatch = new SailingDispatchSystemImpl(); private WithSecurity securityProvider; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java index 4b59428f461..e703f3e446c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java @@ -1,9 +1,6 @@ package com.sap.sailing.gwt.home.shared.app; -import com.sap.sse.security.ui.client.UserManagementServiceAsync; public interface ClientFactoryWithSecurity { - UserManagementServiceAsync getUserManagement(); - UserManagementContext getUserManagementContext(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java new file mode 100644 index 00000000000..47e51191173 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java @@ -0,0 +1,7 @@ +package com.sap.sailing.gwt.home.shared.app; + +import com.sap.sse.security.ui.client.UserManagementServiceAsync; + +public interface ClientFactoryWithUserManagementService { + UserManagementServiceAsync getUserManagement(); +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java index 773f96d6703..9d2b2b4a991 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java @@ -5,9 +5,10 @@ import com.sap.sse.security.ui.shared.UserDTO; public class UserManagementContextImpl implements UserManagementContext { private final UserDTO currentUser; + private final static UserDTO ANONYMOUS = new UserDTO("Anonymous", "", false, null, null, null); public UserManagementContextImpl() { - this.currentUser = null; + this.currentUser = ANONYMOUS; } public UserManagementContextImpl(UserDTO currentUser) { @@ -16,7 +17,7 @@ public class UserManagementContextImpl implements UserManagementContext { @Override public boolean isLoggedIn() { - return (currentUser != null); + return (currentUser != ANONYMOUS); } @Override From f6dd942f739ea8ebdff9e1f2e818073a62212353 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 14:23:33 +0100 Subject: [PATCH 031/367] Added class for isolated/wrapped places management --- .../WrappedPlacesManagementController.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java new file mode 100644 index 00000000000..d7367890b63 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java @@ -0,0 +1,36 @@ +package com.sap.sailing.gwt.home.shared.framework; + +import com.google.gwt.activity.shared.ActivityManager; +import com.google.gwt.activity.shared.ActivityMapper; +import com.google.gwt.place.shared.Place; +import com.google.gwt.place.shared.PlaceController; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.google.web.bindery.event.shared.EventBus; +import com.google.web.bindery.event.shared.SimpleEventBus; + +public class WrappedPlacesManagementController { + + public interface StartPlaceActivityMapper extends ActivityMapper { + Place getStartPlace(); + } + + private final StartPlaceActivityMapper wrappedActivityMapper; + private final PlaceController wrappedPlaceController; + + public WrappedPlacesManagementController(StartPlaceActivityMapper wrappedActivityMapper, AcceptsOneWidget wrappedDisplay) { + EventBus eventBus = new SimpleEventBus(); + this.wrappedActivityMapper = wrappedActivityMapper; + this.wrappedPlaceController = new PlaceController(eventBus); + ActivityManager wrappedActivityManager = new ActivityManager(this.wrappedActivityMapper, eventBus); + wrappedActivityManager.setDisplay(wrappedDisplay); + } + + public void start() { + this.wrappedPlaceController.goTo(this.wrappedActivityMapper.getStartPlace()); + } + + public void goTo(Place newPlace) { + this.wrappedPlaceController.goTo(newPlace); + } + +} From 68ee341e1e0688e156d5af253a4ee14d5b42befe Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 14:25:03 +0100 Subject: [PATCH 032/367] Added event class for UserManagement requests --- .../UserManagementRequestEvent.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java new file mode 100644 index 00000000000..8a73bc11053 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java @@ -0,0 +1,22 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.event.shared.EventHandler; +import com.google.gwt.event.shared.GwtEvent; + +public class UserManagementRequestEvent extends GwtEvent { + public static final Type TYPE = new Type(); + + public interface Handler extends EventHandler { + void onUserManagementRequestEvent(UserManagementRequestEvent event); + } + + @Override + public Type getAssociatedType() { + return TYPE; + } + + @Override + protected void dispatch(Handler handler) { + handler.onUserManagementRequestEvent(this); + } +} From 3eb9950303b321c7c872c9560192ecf66e0e4999 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 14:25:31 +0100 Subject: [PATCH 033/367] Adjusted UserManagement bootstraping --- .../desktop/app/DesktopActivityMapper.java | 11 ----- ...letAndDesktopApplicationClientFactory.java | 42 ++++++++++++++++++- .../home/desktop/partials/header/Header.java | 40 +++++++----------- .../usermanagement/UserManagementFlyover.java | 5 +-- 4 files changed, 57 insertions(+), 41 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java index 87ed6f6445f..a6200f4a872 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopActivityMapper.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.desktop.app; import com.google.gwt.activity.shared.Activity; import com.google.gwt.activity.shared.ActivityMapper; import com.google.gwt.place.shared.Place; -import com.google.gwt.user.client.Window; import com.sap.sailing.gwt.common.client.formfactor.DeviceDetector; import com.sap.sailing.gwt.home.desktop.places.aboutus.AboutUsActivityProxy; import com.sap.sailing.gwt.home.desktop.places.aboutus.AboutUsPlace; @@ -30,7 +29,6 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; -import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; public class DesktopActivityMapper implements ActivityMapper { private final DesktopClientFactory clientFactory; @@ -39,15 +37,6 @@ public class DesktopActivityMapper implements ActivityMapper { public DesktopActivityMapper(DesktopClientFactory clientFactory) { super(); this.clientFactory = clientFactory; - - // TODO: remove example usage. - clientFactory.getEventBus().addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { - @Override - public void onUserChangeEvent(UserManagementContextEvent event) { - Window.alert("Login: " + event.getCtx().getCurrentUser().getName()); - } - }); - } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 1a1d8617261..8704ac8ddaa 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -1,6 +1,8 @@ package com.sap.sailing.gwt.home.desktop.app; +import com.google.gwt.activity.shared.Activity; import com.google.gwt.event.shared.SimpleEventBus; +import com.google.gwt.place.shared.Place; import com.google.gwt.place.shared.PlaceController; import com.google.web.bindery.event.shared.EventBus; import com.sap.sailing.gwt.home.communication.SailingDispatchSystem; @@ -20,10 +22,15 @@ import com.sap.sailing.gwt.home.desktop.places.whatsnew.WhatsNewPlace.WhatsNewNa import com.sap.sailing.gwt.home.desktop.places.whatsnew.WhatsNewView; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.app.UserManagementContextImpl; +import com.sap.sailing.gwt.home.shared.framework.WrappedPlacesManagementController; +import com.sap.sailing.gwt.home.shared.framework.WrappedPlacesManagementController.StartPlaceActivityMapper; import com.sap.sailing.gwt.home.shared.partials.busy.BusyViewImpl; import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultView; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; +import com.sap.sailing.gwt.home.shared.usermanagement.SignInForm; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementFlyover; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sailing.gwt.ui.client.refresh.BusyView; import com.sap.sse.security.ui.client.DefaultWithSecurityImpl; import com.sap.sse.security.ui.client.UserManagementServiceAsync; @@ -34,7 +41,8 @@ import com.sap.sse.security.ui.shared.UserDTO; public class TabletAndDesktopApplicationClientFactory extends AbstractApplicationClientFactory> implements DesktopClientFactory { private final SailingDispatchSystem dispatch = new SailingDispatchSystemImpl(); - private WithSecurity securityProvider; + private final WithSecurity securityProvider; + private final WrappedPlacesManagementController userManagementWizardController; private UserManagementContext uCtx = new UserManagementContextImpl(); public TabletAndDesktopApplicationClientFactory(boolean isStandaloneServer) { @@ -59,6 +67,24 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio getEventBus().fireEvent(new UserManagementContextEvent(uCtx)); } }); + + final UserManagementFlyover userManagementDisplay = new UserManagementFlyover(); + this.userManagementWizardController = new WrappedPlacesManagementController( + new DesktopUserManagementStartPlaceActivityMapper(), userManagementDisplay); + getEventBus().addHandler(UserManagementRequestEvent.TYPE, new UserManagementRequestEvent.Handler() { + @Override + public void onUserManagementRequestEvent(UserManagementRequestEvent event) { + if (userManagementDisplay.isShowing()) { + userManagementDisplay.hide(); + } else { + userManagementDisplay.setWidget(createBusyView()); + userManagementDisplay.show(); + // TODO remove + userManagementDisplay.setWidget(new SignInForm()); + // userManagementWizardController.start(); + } + } + }); } @Override @@ -120,4 +146,18 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio public UserManagementContext getUserManagementContext() { return uCtx; } + + private class DesktopUserManagementStartPlaceActivityMapper implements StartPlaceActivityMapper { + @Override + public Activity getActivity(Place place) { + // TODO Auto-generated method stub + return null; + } + + @Override + public Place getStartPlace() { + // TODO Auto-generated method stub + return null; + } + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java index d2e94c574a3..e6f163705d9 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java @@ -31,8 +31,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; -import com.sap.sailing.gwt.home.shared.usermanagement.LoggedInUserInfo; -import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementFlyover; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sse.gwt.client.mvp.PlaceChangedEvent; public class Header extends Composite { @@ -55,7 +54,7 @@ public class Header extends Composite { private final PlaceNavigation eventsNavigation; private final PlaceNavigation solutionsNavigation; - private final UserManagementFlyover userManagementFlyover; + private final EventBus eventBus; interface HeaderUiBinder extends UiBinder { } @@ -63,30 +62,18 @@ public class Header extends Composite { private static HeaderUiBinder uiBinder = GWT.create(HeaderUiBinder.class); public Header(final DesktopPlacesNavigator navigator, EventBus eventBus) { - this(navigator); - - eventBus.addHandler(PlaceChangedEvent.TYPE, new PlaceChangedEvent.Handler() { - - @Override - public void onPlaceChanged(PlaceChangedEvent event) { - updateActiveLink(event.getNewPlace()); - } - }); - } - - public Header(final DesktopPlacesNavigator navigator) { this.navigator = navigator; + this.eventBus = eventBus; HeaderResources.INSTANCE.css().ensureInjected(); - + initWidget(uiBinder.createAndBindUi(this)); - userManagementFlyover = new UserManagementFlyover(usermenu.getElement()); links = Arrays.asList(new Anchor[] { startPageLink, eventsPageLink, solutionsPageLink }); - + homeNavigation = navigator.getHomeNavigation(); eventsNavigation = navigator.getEventsNavigation(); solutionsNavigation = navigator.getSolutionsNavigation(SolutionsNavigationTabs.SapInSailing); - + startPageLink.setHref(homeNavigation.getTargetUrl()); eventsPageLink.setHref(eventsNavigation.getTargetUrl()); solutionsPageLink.setHref(solutionsNavigation.getTargetUrl()); @@ -100,6 +87,13 @@ public class Header extends Composite { } } }); + + eventBus.addHandler(PlaceChangedEvent.TYPE, new PlaceChangedEvent.Handler() { + @Override + public void onPlaceChanged(PlaceChangedEvent event) { + updateActiveLink(event.getNewPlace()); + } + }); } @UiHandler("startPageLink") @@ -131,13 +125,7 @@ public class Header extends Composite { @UiHandler("usermenu") void toggleUsermenu(ClickEvent event) { - if (userManagementFlyover.isShowing()) { - userManagementFlyover.hide(); - } else { - userManagementFlyover.show(); - // FIXME: Temporary dummy content for user management flyover - userManagementFlyover.setWidget(new LoggedInUserInfo()); - } + eventBus.fireEvent(new UserManagementRequestEvent()); } private void updateActiveLink(Place place) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java index b5559299035..b3eac858618 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java @@ -1,7 +1,6 @@ package com.sap.sailing.gwt.home.shared.usermanagement; import com.google.gwt.core.client.GWT; -import com.google.gwt.dom.client.Element; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.AcceptsOneWidget; @@ -25,10 +24,10 @@ public class UserManagementFlyover extends Composite implements AcceptsOneWidget @UiField SimplePanel contentContainerUi; - public UserManagementFlyover(Element autoHidePartner) { + public UserManagementFlyover() { LOCAL_CSS.ensureInjected(); popupPanel.addStyleName(LOCAL_CSS.flyover()); - popupPanel.addAutoHidePartner(autoHidePartner); +// popupPanel.addAutoHidePartner(autoHidePartner); super.initWidget(uiBinder.createAndBindUi(this)); popupPanel.setWidget(this); } From f78341734df38e264395392538fb63ebe5bb073b Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 14:28:42 +0100 Subject: [PATCH 034/367] Fixed NPE on anonymous user --- .../gwt/home/shared/app/UserManagementContextImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java index 9d2b2b4a991..8bba2c59876 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java @@ -1,11 +1,15 @@ package com.sap.sailing.gwt.home.shared.app; +import java.util.ArrayList; + +import com.sap.sse.security.ui.shared.AccountDTO; import com.sap.sse.security.ui.shared.UserDTO; public class UserManagementContextImpl implements UserManagementContext { private final UserDTO currentUser; - private final static UserDTO ANONYMOUS = new UserDTO("Anonymous", "", false, null, null, null); + private final static UserDTO ANONYMOUS = new UserDTO("Anonymous", "", false, new ArrayList(), + new ArrayList(), new ArrayList()); public UserManagementContextImpl() { this.currentUser = ANONYMOUS; From 19d77a5e4ff07ba55673b211237bb0134fb1890a Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 14:31:14 +0100 Subject: [PATCH 035/367] Renamed security interface --- .../sailing/gwt/home/desktop/app/DesktopClientFactory.java | 4 ++-- .../gwt/home/mobile/app/MobileApplicationClientFactory.java | 4 ++-- ...urity.java => ClientFactoryWithUserManagementContext.java} | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/{ClientFactoryWithSecurity.java => ClientFactoryWithUserManagementContext.java} (63%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java index eaae9207e47..5ce4dfd121d 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopClientFactory.java @@ -10,7 +10,7 @@ import com.sap.sailing.gwt.home.desktop.places.sponsoring.SponsoringClientFactor import com.sap.sailing.gwt.home.desktop.places.start.StartClientFactory; import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileClientFactory; import com.sap.sailing.gwt.home.desktop.places.whatsnew.WhatsNewClientFactory; -import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithSecurity; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementContext; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; import com.sap.sailing.gwt.home.shared.places.error.ErrorClientFactory; import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultClientFactory; @@ -18,7 +18,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultClientFac public interface DesktopClientFactory extends AboutUsClientFactory, ContactClientFactory, EventClientFactory, EventsClientFactory, StartClientFactory, SponsoringClientFactory, SolutionsClientFactory, SearchResultClientFactory, WhatsNewClientFactory, SeriesClientFactory, UserProfileClientFactory, - ErrorClientFactory, ClientFactoryWithSecurity, ClientFactoryWithUserManagementService { + ErrorClientFactory, ClientFactoryWithUserManagementContext, ClientFactoryWithUserManagementService { DesktopPlacesNavigator getHomePlacesNavigator(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java index 9e41cf54d89..c42634d50eb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java @@ -9,7 +9,7 @@ import com.sap.sailing.gwt.home.communication.SailingDispatchSystemImpl; import com.sap.sailing.gwt.home.desktop.app.ApplicationTopLevelView; import com.sap.sailing.gwt.home.mobile.places.error.ErrorViewImpl; import com.sap.sailing.gwt.home.mobile.places.searchresult.SearchResultViewImpl; -import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithSecurity; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementContext; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; import com.sap.sailing.gwt.home.shared.app.ResettableNavigationPathDisplay; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; @@ -36,7 +36,7 @@ import com.sap.sse.security.ui.shared.UserDTO; */ public class MobileApplicationClientFactory extends SecureClientFactoryImpl> implements - ErrorAndBusyClientFactory, SearchResultClientFactory, ClientFactoryWithSecurity, + ErrorAndBusyClientFactory, SearchResultClientFactory, ClientFactoryWithUserManagementContext, ClientFactoryWithUserManagementService { private final MobilePlacesNavigator navigator; private final SailingDispatchSystem dispatch = new SailingDispatchSystemImpl(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java similarity index 63% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java index e703f3e446c..86938f89d7e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithSecurity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java @@ -1,6 +1,6 @@ package com.sap.sailing.gwt.home.shared.app; -public interface ClientFactoryWithSecurity { +public interface ClientFactoryWithUserManagementContext { UserManagementContext getUserManagementContext(); } From abca3956923c9b83f53f610f7fbe122d58729a85 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 14:49:04 +0100 Subject: [PATCH 036/367] Moved User management Ui Componenents into separat package --- .../shared/usermanagement/{ => create}/CreateAccountForm.java | 2 +- .../usermanagement/{ => create}/CreateAccountForm.ui.xml | 0 .../usermanagement/{ => flyover}/UserManagementFlyover.java | 3 ++- .../usermanagement/{ => flyover}/UserManagementFlyover.ui.xml | 0 .../shared/usermanagement/{ => info}/LoggedInUserInfo.java | 2 +- .../shared/usermanagement/{ => info}/LoggedInUserInfo.ui.xml | 0 .../usermanagement/{ => recovery}/PasswordRecoveryForm.java | 2 +- .../usermanagement/{ => recovery}/PasswordRecoveryForm.ui.xml | 0 .../home/shared/usermanagement/{ => signin}/SignInForm.java | 2 +- .../home/shared/usermanagement/{ => signin}/SignInForm.ui.xml | 0 10 files changed, 6 insertions(+), 5 deletions(-) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => create}/CreateAccountForm.java (97%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => create}/CreateAccountForm.ui.xml (100%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => flyover}/UserManagementFlyover.java (91%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => flyover}/UserManagementFlyover.ui.xml (100%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => info}/LoggedInUserInfo.java (95%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => info}/LoggedInUserInfo.ui.xml (100%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => recovery}/PasswordRecoveryForm.java (95%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => recovery}/PasswordRecoveryForm.ui.xml (100%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => signin}/SignInForm.java (97%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/{ => signin}/SignInForm.ui.xml (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.java similarity index 97% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.java index 124903e1607..2c7d0dc160e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.java @@ -1,4 +1,4 @@ -package com.sap.sailing.gwt.home.shared.usermanagement; +package com.sap.sailing.gwt.home.shared.usermanagement.create; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/CreateAccountForm.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java similarity index 91% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java index b3eac858618..379c72113d5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java @@ -1,4 +1,4 @@ -package com.sap.sailing.gwt.home.shared.usermanagement; +package com.sap.sailing.gwt.home.shared.usermanagement.flyover; import com.google.gwt.core.client.GWT; import com.google.gwt.uibinder.client.UiBinder; @@ -9,6 +9,7 @@ import com.google.gwt.user.client.ui.IsWidget; import com.google.gwt.user.client.ui.PopupPanel; import com.google.gwt.user.client.ui.SimplePanel; import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementResources; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementResources.LocalCss; public class UserManagementFlyover extends Composite implements AcceptsOneWidget { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementFlyover.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.java similarity index 95% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.java index 63d29906cbb..a6a8d36ac95 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.java @@ -1,4 +1,4 @@ -package com.sap.sailing.gwt.home.shared.usermanagement; +package com.sap.sailing.gwt.home.shared.usermanagement.info; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/LoggedInUserInfo.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.java similarity index 95% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.java index 03f3a5a2f64..e8e7f6ca166 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.java @@ -1,4 +1,4 @@ -package com.sap.sailing.gwt.home.shared.usermanagement; +package com.sap.sailing.gwt.home.shared.usermanagement.recovery; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/PasswordRecoveryForm.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.java similarity index 97% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.java index ff17cbed808..7c86f400bd4 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.java @@ -1,4 +1,4 @@ -package com.sap.sailing.gwt.home.shared.usermanagement; +package com.sap.sailing.gwt.home.shared.usermanagement.signin; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/SignInForm.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.ui.xml From b16025bb5a004eb28bb76bfafda9776c951dafb5 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 14:55:35 +0100 Subject: [PATCH 037/367] Moved User management Ui Componenents into separat package --- .../desktop/app/TabletAndDesktopApplicationClientFactory.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 8704ac8ddaa..05d6d60f75a 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -27,10 +27,10 @@ import com.sap.sailing.gwt.home.shared.framework.WrappedPlacesManagementControll import com.sap.sailing.gwt.home.shared.partials.busy.BusyViewImpl; import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultView; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; -import com.sap.sailing.gwt.home.shared.usermanagement.SignInForm; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; -import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementFlyover; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.flyover.UserManagementFlyover; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SignInForm; import com.sap.sailing.gwt.ui.client.refresh.BusyView; import com.sap.sse.security.ui.client.DefaultWithSecurityImpl; import com.sap.sse.security.ui.client.UserManagementServiceAsync; From 9303ef152dcdae93ca52109559a3cb705d17c2b0 Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 15:06:59 +0100 Subject: [PATCH 038/367] Set anonymous user if current user is null --- .../gwt/home/shared/app/UserManagementContextImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java index 8bba2c59876..1f5a938464d 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/UserManagementContextImpl.java @@ -16,7 +16,11 @@ public class UserManagementContextImpl implements UserManagementContext { } public UserManagementContextImpl(UserDTO currentUser) { - this.currentUser = currentUser; + if (currentUser == null) { + this.currentUser = ANONYMOUS; + } else { + this.currentUser = currentUser; + } } @Override From c58dc72bc2b1f6fb96c34874977858f2388da865 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 14:57:53 +0100 Subject: [PATCH 039/367] Added generic typing of TabPanel for Place and TabView classes --- .../client/controls/tabbar/TabPanel.java | 26 +++++++++---------- ...TabletAndDesktopMultiRegattaEventView.java | 2 +- .../TabletAndDesktopRegattaEventView.java | 2 +- .../TabletAndDesktopSeriesView.java | 2 +- .../TabletAndDesktopUserProfileView.java | 2 +- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/controls/tabbar/TabPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/controls/tabbar/TabPanel.java index be2cd7fb6ed..1c7b887f597 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/controls/tabbar/TabPanel.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/controls/tabbar/TabPanel.java @@ -32,11 +32,11 @@ import com.sap.sailing.gwt.home.shared.ExperimentalFeatures; * Created by pgtaboada on 25.11.14. */ -public class TabPanel extends Composite { +public class TabPanel> extends Composite { private static final Logger logger = Logger.getLogger(TabPanel.class.getName()); private static TabPanelUiBinder ourUiBinder = GWT.create(TabPanelUiBinder.class); - private final Map, TabView> knownTabs = new LinkedHashMap<>(); - private final Map, String> knownTabTitles = new HashMap<>(); + private final Map, TABVIEW> knownTabs = new LinkedHashMap<>(); + private final Map, String> knownTabTitles = new HashMap<>(); @UiField SimplePanel additionalHeader; @@ -47,7 +47,7 @@ public class TabPanel extends Composite { @UiField BreadcrumbPane breadcrumbs; @UiField DivElement breadcrumbsContainer; @UiField FlowPanel tabExtension; - private TabView currentTab; + private TABVIEW currentTab; private final PlaceHistoryMapper historyMapper; @@ -63,7 +63,7 @@ public class TabPanel extends Composite { } } - public TabView getCurrentTab() { + public TABVIEW getCurrentTab() { return currentTab; } @@ -80,20 +80,20 @@ public class TabPanel extends Composite { * @param title * The label for the tab. */ + @SuppressWarnings("unchecked") @UiChild - public void addTabContent(final TabView tab, String title) { - + public void addTabContent(final TABVIEW tab, String title) { GWT.log("Adding TAB: " + title); // TODO: check if place class already known, reject... tab.setPresenter(presenter); - final Class classForActivation = tab.getPlaceClassForActivation(); + final Class classForActivation = tab.getPlaceClassForActivation(); knownTabs.put(classForActivation, tab); knownTabTitles.put(classForActivation, title); if(tab.getState() == State.VISIBLE) { String link = "#" + historyMapper.getToken(tab.placeToFire()); - tabBar.addTab(title, classForActivation, link); + tabBar.addTab(title, (Class) classForActivation, link); } } @@ -123,13 +123,13 @@ public class TabPanel extends Composite { * @param placeToGo * the given place. */ - public void activatePlace(Place placeToGo) { + public void activatePlace(PLACE placeToGo) { if (knownTabs.containsKey(placeToGo.getClass())) { - final TabView newTab = knownTabs.get(placeToGo.getClass()); + final TABVIEW newTab = knownTabs.get(placeToGo.getClass()); if (newTab.getState() == State.NOT_AVAILABLE_REDIRECT || newTab.getState() == State.NOT_AVAILABLE_SHOW_NEXT_AVAILABLE) { - for(TabView tab : knownTabs.values()) { + for(TabView tab : knownTabs.values()) { if(tab.getState() == State.VISIBLE) { // TODO is this redirect wanted? Just silently select another tab? if (currentTab != null) { @@ -181,7 +181,7 @@ public class TabPanel extends Composite { return addHandler(handler, TabPanelPlaceSelectionEvent.TYPE); } - interface TabPanelUiBinder extends UiBinder> { + interface TabPanelUiBinder extends UiBinder> { } public String getCurrentTabTitle() { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/multiregatta/TabletAndDesktopMultiRegattaEventView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/multiregatta/TabletAndDesktopMultiRegattaEventView.java index d8e3c7efcc2..c2d77c23ac3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/multiregatta/TabletAndDesktopMultiRegattaEventView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/multiregatta/TabletAndDesktopMultiRegattaEventView.java @@ -36,7 +36,7 @@ public class TabletAndDesktopMultiRegattaEventView extends Composite implements @UiField StringMessages i18n; - @UiField(provided = true) TabPanel tabPanelUi; + @UiField(provided = true) TabPanel> tabPanelUi; @UiField(provided = true) EventHeader eventHeader; private Presenter currentPresenter; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/TabletAndDesktopRegattaEventView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/TabletAndDesktopRegattaEventView.java index 75ddd21b195..38f20536823 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/TabletAndDesktopRegattaEventView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/TabletAndDesktopRegattaEventView.java @@ -38,7 +38,7 @@ public class TabletAndDesktopRegattaEventView extends Composite implements Event @UiField StringMessages i18n; - @UiField(provided = true) TabPanel tabPanelUi; + @UiField(provided = true) TabPanel> tabPanelUi; @UiField(provided = true) EventHeader eventHeader; private Presenter currentPresenter; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/fakeseries/TabletAndDesktopSeriesView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/fakeseries/TabletAndDesktopSeriesView.java index 112489d4584..b11dccfc82e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/fakeseries/TabletAndDesktopSeriesView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/fakeseries/TabletAndDesktopSeriesView.java @@ -30,7 +30,7 @@ public class TabletAndDesktopSeriesView extends Composite implements SeriesView< @UiField StringMessages i18n; @UiField(provided = true) - TabPanel tabPanelUi; + TabPanel> tabPanelUi; @UiField(provided = true) SeriesHeader seriesHeader; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java index d7e462cd38b..bbc00193ba4 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java @@ -29,7 +29,7 @@ public class TabletAndDesktopUserProfileView extends Composite implements UserPr @UiField StringMessages i18n; @UiField(provided = true) - TabPanel tabPanelUi; + TabPanel> tabPanelUi; @UiField(provided = true) UserProfileHeader headerUi; From 16b6db64f14b28cf4346fee197d7f4f645ce5318 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 15:05:05 +0100 Subject: [PATCH 040/367] User profile tab interface is now UserManagementContext sensitive --- .../userprofileheader/UserProfileHeader.java | 9 ++++++++ .../TabletAndDesktopUserProfileView.java | 7 ++++++ .../user/profile/UserProfileActivity.java | 23 +++++++++++-------- .../profile/UserProfileActivityProxy.java | 17 +------------- .../profile/UserProfileClientFactory.java | 4 ++-- .../user/profile/UserProfileTabView.java | 4 ++++ .../places/user/profile/UserProfileView.java | 6 ++--- .../detailstab/UserProfileDetailsTabView.java | 23 ++++++++++++++++--- .../UserProfileDetailsTabView.ui.xml | 3 ++- 9 files changed, 61 insertions(+), 35 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java index 20f1aec7de0..4f455b95a4b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java @@ -2,6 +2,7 @@ package com.sap.sailing.gwt.home.desktop.partials.userprofileheader; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Label; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; public class UserProfileHeader extends Composite { @@ -9,4 +10,12 @@ public class UserProfileHeader extends Composite { initWidget(new Label("TODO implement User Profile Header")); } + public void setUserManagementContext(UserManagementContext userManagementContext) { + if(userManagementContext.isLoggedIn()) { + ((Label)getWidget()).setText(userManagementContext.getCurrentUser().getName()); + } else { + ((Label)getWidget()).setText("TODO: anonymous"); + } + } + } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java index bbc00193ba4..af4b61130b9 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java @@ -13,6 +13,7 @@ import com.sap.sailing.gwt.common.client.controls.tabbar.TabPanelPlaceSelectionE import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; import com.sap.sailing.gwt.home.desktop.partials.userprofileheader.UserProfileHeader; import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; import com.sap.sailing.gwt.ui.client.StringMessages; @@ -62,6 +63,12 @@ public class TabletAndDesktopUserProfileView extends Composite implements UserPr // Window.setTitle(titleBuilder.toString()); Window.setTitle("TODO User Profile title"); } + + @Override + public void setUserManagementContext(UserManagementContext userManagementContext) { + headerUi.setUserManagementContext(userManagementContext); + tabPanelUi.getCurrentTab().setUserManagementContext(userManagementContext); + } @SuppressWarnings("unchecked") @UiHandler("tabPanelUi") diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java index e75aeeb9491..261fbade450 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java @@ -16,8 +16,8 @@ import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sailing.gwt.ui.client.StringMessages; -import com.sap.sse.security.ui.shared.UserDTO; public class UserProfileActivity extends AbstractActivity implements UserProfileView.Presenter { @@ -30,12 +30,9 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile private UserProfileView currentView = new TabletAndDesktopUserProfileView(); - private final UserDTO user; - - public UserProfileActivity(AbstractUserProfilePlace place, UserDTO user, UserProfileClientFactory clientFactory, + public UserProfileActivity(AbstractUserProfilePlace place, UserProfileClientFactory clientFactory, DesktopPlacesNavigator homePlacesNavigator, NavigationPathDisplay navigationPathDisplay) { this.currentPlace = place; - this.user = user; this.clientFactory = clientFactory; this.homePlacesNavigator = homePlacesNavigator; @@ -52,7 +49,18 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile public void start(final AcceptsOneWidget panel, final EventBus eventBus) { currentView.registerPresenter(this); panel.setWidget(currentView); + currentView.navigateTabsTo(currentPlace); + + currentView.setUserManagementContext(clientFactory.getUserManagementContext()); + + eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { + @Override + public void onUserChangeEvent(UserManagementContextEvent event) { + currentView.setUserManagementContext(event.getCtx()); + } + }); + } @Override @@ -80,9 +88,4 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile public PlaceNavigation getUserProfileNavigation() { return homePlacesNavigator.getUserProfileNavigation(); } - - @Override - public UserDTO getUser() { - return user; - } } \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java index 33a355be081..8766d4f544e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java @@ -7,7 +7,6 @@ import com.sap.sailing.gwt.home.shared.app.NavigationPathDisplay; import com.sap.sailing.gwt.home.shared.app.ProvidesNavigationPath; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; import com.sap.sse.gwt.client.mvp.AbstractActivityProxy; -import com.sap.sse.security.ui.shared.UserDTO; public class UserProfileActivityProxy extends AbstractActivityProxy implements ProvidesNavigationPath, WithHeader { @@ -30,24 +29,10 @@ public class UserProfileActivityProxy extends AbstractActivityProxy implements P @Override protected void startAsync() { - // TODO implement -// final UUID seriesUUID = UUID.fromString(ctx.getSeriesId()); -// clientFactory.getDispatch().execute(new GetEventSeriesViewAction(seriesUUID), -// new ActivityProxyCallback(clientFactory, place) { -// @Override -// public void onSuccess(EventSeriesViewDTO series) { -// afterLoad(series); -// } -// }); - // TODO remove - afterLoad(null); - } - - private void afterLoad(final UserDTO user) { GWT.runAsync(new AbstractRunAsyncCallback() { @Override public void onSuccess() { - super.onSuccess(new UserProfileActivity(place, user, clientFactory, + super.onSuccess(new UserProfileActivity(place, clientFactory, homePlacesNavigator, navigationPathDisplay)); } }); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java index 43fdba6219f..29a80b343d1 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileClientFactory.java @@ -1,8 +1,8 @@ package com.sap.sailing.gwt.home.desktop.places.user.profile; -import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithDispatch; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementContext; import com.sap.sailing.gwt.ui.client.SailingClientFactory; import com.sap.sailing.gwt.ui.client.refresh.ErrorAndBusyClientFactory; -public interface UserProfileClientFactory extends SailingClientFactory, ErrorAndBusyClientFactory, ClientFactoryWithDispatch { +public interface UserProfileClientFactory extends SailingClientFactory, ErrorAndBusyClientFactory, ClientFactoryWithUserManagementContext { } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java index 8f75c18bfea..4b34d7e2911 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileTabView.java @@ -1,7 +1,11 @@ package com.sap.sailing.gwt.home.desktop.places.user.profile; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; public interface UserProfileTabView extends TabView { + + void setUserManagementContext(UserManagementContext userManagementContext); + } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java index 5e614949d00..03d7441d7c4 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java @@ -5,10 +5,10 @@ import com.google.gwt.safehtml.shared.SafeUri; import com.google.gwt.user.client.ui.IsWidget; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; -import com.sap.sse.security.ui.shared.UserDTO; public interface UserProfileView extends IsWidget { @@ -20,8 +20,6 @@ public interface UserProfileView getHomeNavigation(); PlaceNavigation getUserProfileNavigation(); - - UserDTO getUser(); } /** @@ -39,5 +37,7 @@ public interface UserProfileView
-
TODO implement content
+
TODO you are currently not logged in
+
TODO implement content
\ No newline at end of file From 8a612b2ed7fb91d7c302e20f35ad78067aa38b63 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 15:06:48 +0100 Subject: [PATCH 041/367] We don't need to check if there is a user in UserProfileHeader anymore --- .../partials/userprofileheader/UserProfileHeader.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java index 4f455b95a4b..81af280c5a0 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java @@ -11,11 +11,7 @@ public class UserProfileHeader extends Composite { } public void setUserManagementContext(UserManagementContext userManagementContext) { - if(userManagementContext.isLoggedIn()) { - ((Label)getWidget()).setText(userManagementContext.getCurrentUser().getName()); - } else { - ((Label)getWidget()).setText("TODO: anonymous"); - } + ((Label)getWidget()).setText(userManagementContext.getCurrentUser().getName()); } } From b44b647e737c53deab9cd80ae7fafee334ecb721 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 15:25:11 +0100 Subject: [PATCH 042/367] Initial implementation of UserHeader partial --- .../partials/userHeader/UserHeader.gss | 45 +++++++++++++++++++ .../partials/userHeader/UserHeader.java | 33 ++++++++++++++ .../partials/userHeader/UserHeader.ui.xml | 23 ++++++++++ .../userHeader/UserHeaderResources.java | 22 +++++++++ .../userprofileheader/UserProfileHeader.java | 17 ------- .../TabletAndDesktopUserProfileView.java | 6 +-- .../TabletAndDesktopUserProfileView.ui.xml | 2 +- 7 files changed, 127 insertions(+), 21 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeaderResources.java delete mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss new file mode 100644 index 00000000000..647345dc60e --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss @@ -0,0 +1,45 @@ +/** + * The header of the pages to an event + */ +.userheader { + position: relative; + font-size: 1rem; + color: #666; + background: #f2f2f2; + border-bottom: 1px solid #dedede; +} +.userheader_intro { + padding-left: 5.8em; + margin: 0.666666666666667em 0 1.333333333333333em; + min-height: 4.8em; + position: relative; +} +.userheader_intro_logo { + position: absolute; + top: 0; + left: 0; + width: 4.8em; + height: 4.8em; + border: 0.333333333333333em solid #fff; + box-shadow: 0 0 5px rgba(235,235,235,0.5); +} +.userheader_intro_logo_image { + height: 100%; + background-size: cover; + background-position: center; + background-repeat: no-repeat; +} +.userheader_intro_title { + font-weight: 600; +} +.userheader_intro_title_realname { + margin: 0 0.178571428571429em 0 0; + font-size: 1.866666666666667em; + color: #333; +} +.userheader_intro_title_username { + color: #666; + margin-left: 0; + padding-left: 0; + border: none; +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.java new file mode 100644 index 00000000000..328e0359fa5 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.java @@ -0,0 +1,33 @@ +package com.sap.sailing.gwt.home.desktop.partials.userHeader; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; + +public class UserHeader extends Composite { + private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); + + interface MyUiBinder extends UiBinder { + } + + @UiField DivElement imageUi; + @UiField DivElement nameUi; + @UiField DivElement usernameUi; + + public UserHeader() { + initWidget(uiBinder.createAndBindUi(this)); + } + + public void setUserManagementContext(UserManagementContext userManagementContext) { + UserHeaderResources.INSTANCE.css().ensureInjected(); + imageUi.getStyle().setBackgroundImage("url(images/home/userdefault.svg)"); + nameUi.setInnerText(userManagementContext.getCurrentUser().getName()); + + // TODO there is no distinction between usernam und the user's name, so we show the email instead as username + usernameUi.setInnerText(userManagementContext.getCurrentUser().getEmail()); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.ui.xml new file mode 100644 index 00000000000..3856265634b --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.ui.xml @@ -0,0 +1,23 @@ + + + + + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeaderResources.java new file mode 100644 index 00000000000..8b8937cb06f --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeaderResources.java @@ -0,0 +1,22 @@ +package com.sap.sailing.gwt.home.desktop.partials.userHeader; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; + +public interface UserHeaderResources extends ClientBundle { + public static final UserHeaderResources INSTANCE = GWT.create(UserHeaderResources.class); + + @Source("UserHeader.gss") + LocalCss css(); + + public interface LocalCss extends CssResource { + String userheader(); + String userheader_intro(); + String userheader_intro_logo(); + String userheader_intro_logo_image(); + String userheader_intro_title(); + String userheader_intro_title_realname(); + String userheader_intro_title_username(); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java deleted file mode 100644 index 81af280c5a0..00000000000 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userprofileheader/UserProfileHeader.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.sap.sailing.gwt.home.desktop.partials.userprofileheader; - -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Label; -import com.sap.sailing.gwt.home.shared.app.UserManagementContext; - -public class UserProfileHeader extends Composite { - - public UserProfileHeader() { - initWidget(new Label("TODO implement User Profile Header")); - } - - public void setUserManagementContext(UserManagementContext userManagementContext) { - ((Label)getWidget()).setText(userManagementContext.getCurrentUser().getName()); - } - -} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java index af4b61130b9..8c5622c71f7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java @@ -11,7 +11,7 @@ import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.common.client.controls.tabbar.TabPanel; import com.sap.sailing.gwt.common.client.controls.tabbar.TabPanelPlaceSelectionEvent; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; -import com.sap.sailing.gwt.home.desktop.partials.userprofileheader.UserProfileHeader; +import com.sap.sailing.gwt.home.desktop.partials.userHeader.UserHeader; import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; @@ -33,7 +33,7 @@ public class TabletAndDesktopUserProfileView extends Composite implements UserPr TabPanel> tabPanelUi; @UiField(provided = true) - UserProfileHeader headerUi; + UserHeader headerUi; public TabletAndDesktopUserProfileView() { } @@ -43,7 +43,7 @@ public class TabletAndDesktopUserProfileView extends Composite implements UserPr this.currentPresenter = currentPresenter; tabPanelUi = new TabPanel<>(currentPresenter, historyMapper); - headerUi = new UserProfileHeader(); + headerUi = new UserHeader(); initWidget(uiBinder.createAndBindUi(this)); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml index d0ca2b7ec91..74e17dbaba7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml @@ -40,7 +40,7 @@ - + From d6640e928b48c181c1c553694fa25daf5e754fb8 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 15:27:22 +0100 Subject: [PATCH 043/367] Removed border of UserHeader --- .../sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss | 1 - 1 file changed, 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss index 647345dc60e..340f617645a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/userHeader/UserHeader.gss @@ -6,7 +6,6 @@ font-size: 1rem; color: #666; background: #f2f2f2; - border-bottom: 1px solid #dedede; } .userheader_intro { padding-left: 5.8em; From 0d980d4c6a8ed7413a3a2677aa7eebf763c55a2e Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 15:28:30 +0100 Subject: [PATCH 044/367] Added place and activity for sign in view --- .../usermanagement/signin/SigInPlace.java | 7 +++ .../usermanagement/signin/SignInActivity.java | 47 +++++++++++++++++++ .../usermanagement/signin/SignInView.java | 22 +++++++++ .../{SignInForm.java => SignInViewImpl.java} | 26 ++++++---- ...ignInForm.ui.xml => SignInViewImpl.ui.xml} | 0 5 files changed, 92 insertions(+), 10 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SigInPlace.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/{SignInForm.java => SignInViewImpl.java} (76%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/{SignInForm.ui.xml => SignInViewImpl.ui.xml} (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SigInPlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SigInPlace.java new file mode 100644 index 00000000000..8fcfba78192 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SigInPlace.java @@ -0,0 +1,7 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.signin; + +import com.google.gwt.place.shared.Place; + +public class SigInPlace extends Place { + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java new file mode 100644 index 00000000000..7f02ae6f363 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java @@ -0,0 +1,47 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.signin; + +import com.google.gwt.activity.shared.AbstractActivity; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; + +public class SignInActivity extends AbstractActivity implements SignInView.Presenter { + + private ClientFactoryWithUserManagementService clientFactory; + + public SignInActivity(ClientFactoryWithUserManagementService clientFactory) { + this.clientFactory = clientFactory; + } + + @Override + public void start(AcceptsOneWidget panel, EventBus eventBus) { + SignInView view = new SignInViewImpl(); + panel.setWidget(view); + } + + @Override + public void login(String loginName, String password) { + // TODO Auto-generated method stub + } + + @Override + public void createAccount() { + // TODO Auto-generated method stub + } + + @Override + public void forgotPassword() { + // TODO Auto-generated method stub + } + + @Override + public void loginWithFacebook() { + // TODO Auto-generated method stub + } + + @Override + public void loginWithGoogle() { + // TODO Auto-generated method stub + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java new file mode 100644 index 00000000000..d4414d1795e --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java @@ -0,0 +1,22 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.signin; + +import com.google.gwt.user.client.ui.IsWidget; + +public interface SignInView extends IsWidget { + + void setPresenter(Presenter presenter); + + public interface Presenter { + + void login(String loginName, String password); + + void createAccount(); + + void forgotPassword(); + + void loginWithFacebook(); + + void loginWithGoogle(); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java similarity index 76% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java index 7c86f400bd4..31cedce773a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java @@ -13,12 +13,12 @@ import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.shared.ExperimentalFeatures; -public class SignInForm extends Composite { +public class SignInViewImpl extends Composite implements SignInView { - interface SignInFormUiBinder extends UiBinder { + interface SignInViewImplUiBinder extends UiBinder { } - private static SignInFormUiBinder uiBinder = GWT.create(SignInFormUiBinder.class); + private static SignInViewImplUiBinder uiBinder = GWT.create(SignInViewImplUiBinder.class); @UiField TextBox loginNameUi; @UiField PasswordTextBox passwordUi; @@ -31,7 +31,9 @@ public class SignInForm extends Composite { @UiField DivElement formErrorUi; @UiField DivElement socialLoginUi; - public SignInForm() { + private Presenter presenter; + + public SignInViewImpl() { initWidget(uiBinder.createAndBindUi(this)); setPlaceholder(loginNameUi, "TODO Username or Email"); setPlaceholder(passwordUi, "TODO Password"); @@ -40,34 +42,38 @@ public class SignInForm extends Composite { } } + @Override + public void setPresenter(Presenter presenter) { + this.presenter = presenter; + } + public void setErrorMessage(String errorMessage) { formErrorUi.setInnerText(errorMessage); } @UiHandler("forgotPasswordUi") void onForgotPasswordUiControlClicked(ClickEvent event) { - // TODO + presenter.forgotPassword(); } @UiHandler("createAccountUi") void onCreateAccountUiControlClicked(ClickEvent event) { - // TODO + presenter.createAccount(); } @UiHandler("signInUi") void onSignInControlUiClicked(ClickEvent event) { - // String login = loginNameUi.getValue(), pw = passwordUi.getValue(); - // TODO + presenter.login(loginNameUi.getValue(), passwordUi.getValue()); } @UiHandler("loginFacebookUi") void onLoginFacebookUiClicked(ClickEvent event) { - // TODO + presenter.loginWithFacebook(); } @UiHandler("loginGoogleUi") void onLoginGoogleUiClicked(ClickEvent event) { - // TODO + presenter.loginWithGoogle(); } private void setPlaceholder(Widget widget, String placeholderText) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInForm.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml From 3676c12d09b5f6661ff6edb1d21b6eb0f286a576 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 15:29:41 +0100 Subject: [PATCH 045/367] Added place and activity for sign in view --- .../gwt/home/shared/usermanagement/signin/SignInActivity.java | 1 + 1 file changed, 1 insertion(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java index 7f02ae6f363..fc17701e1eb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java @@ -16,6 +16,7 @@ public class SignInActivity extends AbstractActivity implements SignInView.Prese @Override public void start(AcceptsOneWidget panel, EventBus eventBus) { SignInView view = new SignInViewImpl(); + view.setPresenter(this); panel.setWidget(view); } From 10b49018a8cc6c5f43d96ee2cd00f85b67ac2dac Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 15:38:50 +0100 Subject: [PATCH 046/367] Added place and activity for create account view --- .../create/CreateAccountActivity.java | 33 +++++++++++++++++++ .../create/CreateAccountPlace.java | 7 ++++ .../create/CreateAccountView.java | 17 ++++++++++ ...ntForm.java => CreateAccountViewImpl.java} | 23 ++++++++----- ...rm.ui.xml => CreateAccountViewImpl.ui.xml} | 0 5 files changed, 72 insertions(+), 8 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountPlace.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/{CreateAccountForm.java => CreateAccountViewImpl.java} (68%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/{CreateAccountForm.ui.xml => CreateAccountViewImpl.ui.xml} (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java new file mode 100644 index 00000000000..e077563e4b7 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java @@ -0,0 +1,33 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.create; + +import com.google.gwt.activity.shared.AbstractActivity; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; + +public class CreateAccountActivity extends AbstractActivity implements CreateAccountView.Presenter { + + private ClientFactoryWithUserManagementService clientFactory; + + public CreateAccountActivity(ClientFactoryWithUserManagementService clientFactory) { + this.clientFactory = clientFactory; + } + + @Override + public void start(AcceptsOneWidget panel, EventBus eventBus) { + CreateAccountView view = new CreateAccountViewImpl(); + view.setPresenter(this); + panel.setWidget(view); + } + + @Override + public void createAccount(String username, String email, String password, String passwordConfirmation) { + // TODO Auto-generated method stub + } + + @Override + public void signIn() { + // TODO Auto-generated method stub + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountPlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountPlace.java new file mode 100644 index 00000000000..d5f02605c7b --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountPlace.java @@ -0,0 +1,7 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.create; + +import com.google.gwt.place.shared.Place; + +public class CreateAccountPlace extends Place { + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java new file mode 100644 index 00000000000..02e2e9a8222 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java @@ -0,0 +1,17 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.create; + +import com.google.gwt.user.client.ui.IsWidget; + +public interface CreateAccountView extends IsWidget { + + void setPresenter(Presenter presenter); + + public interface Presenter { + + void createAccount(String username, String email, String password, String passwordConfirmation); + + void signIn(); + + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java similarity index 68% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java index 2c7d0dc160e..dae74c0d548 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java @@ -12,12 +12,12 @@ import com.google.gwt.user.client.ui.PasswordTextBox; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; -public class CreateAccountForm extends Composite { +public class CreateAccountViewImpl extends Composite implements CreateAccountView { - interface CreateAccountFormUiBinder extends UiBinder { + interface CreateAccountViewImplUiBinder extends UiBinder { } - private static CreateAccountFormUiBinder uiBinder = GWT.create(CreateAccountFormUiBinder.class); + private static CreateAccountViewImplUiBinder uiBinder = GWT.create(CreateAccountViewImplUiBinder.class); @UiField TextBox emailUi; @UiField TextBox usernameUi; @@ -27,8 +27,10 @@ public class CreateAccountForm extends Composite { @UiField Anchor signInUi; @UiField DivElement formErrorUi; + + private Presenter presenter; - public CreateAccountForm() { + public CreateAccountViewImpl() { initWidget(uiBinder.createAndBindUi(this)); setPlaceholder(emailUi, "TODO Email"); setPlaceholder(usernameUi, "TODO Username"); @@ -36,20 +38,25 @@ public class CreateAccountForm extends Composite { setPlaceholder(passwordConfirmationUi, "TODO Password Confirmation"); } + @Override + public void setPresenter(Presenter presenter) { + this.presenter = presenter; + } + public void setErrorMessage(String errorMessage) { formErrorUi.setInnerText(errorMessage); } @UiHandler("createAccountUi") void onCreateAccountUiControlClicked(ClickEvent event) { - // String email = emailUi.getValue(), username = usernameUi.getValue(); - // String password = passwordUi.getValue(), passwordConfirm = passwordConfirmationUi.getValue(); - // TODO + String username = usernameUi.getValue(), email = emailUi.getValue(); + String password = passwordUi.getValue(), passwordConfirmation = passwordConfirmationUi.getValue(); + presenter.createAccount(username, email, password, passwordConfirmation); } @UiHandler("signInUi") void onSignInControlUiClicked(ClickEvent event) { - // TODO + presenter.signIn(); } private void setPlaceholder(Widget widget, String placeholderText) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountForm.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml From 23db3bc83de7b0a745dbb7868df17b3fd1224f7c Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 15:41:21 +0100 Subject: [PATCH 047/367] Added place and activity for sign in view --- .../desktop/app/TabletAndDesktopApplicationClientFactory.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 05d6d60f75a..2e74c0e202c 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -30,7 +30,7 @@ import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.Solutions import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sailing.gwt.home.shared.usermanagement.flyover.UserManagementFlyover; -import com.sap.sailing.gwt.home.shared.usermanagement.signin.SignInForm; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SignInViewImpl; import com.sap.sailing.gwt.ui.client.refresh.BusyView; import com.sap.sse.security.ui.client.DefaultWithSecurityImpl; import com.sap.sse.security.ui.client.UserManagementServiceAsync; @@ -80,7 +80,7 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio userManagementDisplay.setWidget(createBusyView()); userManagementDisplay.show(); // TODO remove - userManagementDisplay.setWidget(new SignInForm()); + userManagementDisplay.setWidget(new SignInViewImpl()); // userManagementWizardController.start(); } } From 24712984dd8e002f00140e9bf6959f250d15064f Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 15:45:56 +0100 Subject: [PATCH 048/367] Added place and activity for password recovery view --- .../recovery/PasswordRecoveryActivity.java | 29 +++++++++++++++++++ .../recovery/PasswordRecoveryPlace.java | 7 +++++ .../recovery/PasswordRecoveryView.java | 13 +++++++++ ...orm.java => PasswordRecoveryViewImpl.java} | 18 ++++++++---- ...ui.xml => PasswordRecoveryViewImpl.ui.xml} | 0 5 files changed, 61 insertions(+), 6 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryPlace.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/{PasswordRecoveryForm.java => PasswordRecoveryViewImpl.java} (66%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/{PasswordRecoveryForm.ui.xml => PasswordRecoveryViewImpl.ui.xml} (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java new file mode 100644 index 00000000000..0463dc678cf --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java @@ -0,0 +1,29 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.recovery; + +import com.google.gwt.activity.shared.AbstractActivity; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; + +public class PasswordRecoveryActivity extends AbstractActivity implements PasswordRecoveryView.Presenter { + + private ClientFactoryWithUserManagementService clientFactory; + + public PasswordRecoveryActivity(ClientFactoryWithUserManagementService clientFactory) { + this.clientFactory = clientFactory; + } + + @Override + public void start(AcceptsOneWidget panel, EventBus eventBus) { + PasswordRecoveryView view = new PasswordRecoveryViewImpl(); + view.setPresenter(this); + panel.setWidget(view); + } + + @Override + public void resetPassword(String loginName) { + // TODO Auto-generated method stub + } + + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryPlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryPlace.java new file mode 100644 index 00000000000..9c415ecf284 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryPlace.java @@ -0,0 +1,7 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.recovery; + +import com.google.gwt.place.shared.Place; + +public class PasswordRecoveryPlace extends Place { + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java new file mode 100644 index 00000000000..f37e4dcfc6c --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java @@ -0,0 +1,13 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.recovery; + +import com.google.gwt.user.client.ui.IsWidget; + +public interface PasswordRecoveryView extends IsWidget { + + void setPresenter(Presenter presenter); + + public interface Presenter { + + void resetPassword(String loginName); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java similarity index 66% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java index e8e7f6ca166..82aadfc77ec 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java @@ -10,21 +10,28 @@ import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; -public class PasswordRecoveryForm extends Composite { +public class PasswordRecoveryViewImpl extends Composite implements PasswordRecoveryView { - interface PasswordRecoveryFormUiBinder extends UiBinder { + interface PasswordRecoveryViewImplUiBinder extends UiBinder { } - private static PasswordRecoveryFormUiBinder uiBinder = GWT.create(PasswordRecoveryFormUiBinder.class); + private static PasswordRecoveryViewImplUiBinder uiBinder = GWT.create(PasswordRecoveryViewImplUiBinder.class); @UiField TextBox loginNameUi; @UiField DivElement formErrorUi; + + private Presenter presenter; - public PasswordRecoveryForm() { + public PasswordRecoveryViewImpl() { initWidget(uiBinder.createAndBindUi(this)); setPlaceholder(loginNameUi, "TODO Username or Email"); } + + @Override + public void setPresenter(Presenter presenter) { + this.presenter = presenter; + } public void setErrorMessage(String errorMessage) { formErrorUi.setInnerText(errorMessage); @@ -32,8 +39,7 @@ public class PasswordRecoveryForm extends Composite { @UiHandler("resetPasswordUi") void onResetPasswordUiControlClicked(ClickEvent event) { - // String login = loginNameUi.getValue(); - // TODO + presenter.resetPassword(loginNameUi.getValue()); } private void setPlaceholder(Widget widget, String placeholderText) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryForm.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml From 80dea1e261dc17dbdf439f918ba2ccee5e15dc16 Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 15:55:04 +0100 Subject: [PATCH 049/367] Initial user details activity --- .../usermanagement/RequiresLoggedInUser.java | 4 +++ .../info/LoggedInUserInfoActivity.java | 34 +++++++++++++++++++ .../info/LoggedInUserInfoPlace.java | 8 +++++ .../info/LoggedInUserInfoView.java | 15 ++++++++ ...nfo.java => LoggedInUserInfoViewImpl.java} | 16 ++++++--- ...ui.xml => LoggedInUserInfoViewImpl.ui.xml} | 0 6 files changed, 72 insertions(+), 5 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/RequiresLoggedInUser.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoPlace.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/{LoggedInUserInfo.java => LoggedInUserInfoViewImpl.java} (78%) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/{LoggedInUserInfo.ui.xml => LoggedInUserInfoViewImpl.ui.xml} (100%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/RequiresLoggedInUser.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/RequiresLoggedInUser.java new file mode 100644 index 00000000000..e88900ee88b --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/RequiresLoggedInUser.java @@ -0,0 +1,4 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +public interface RequiresLoggedInUser { +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java new file mode 100644 index 00000000000..67ae38f51b4 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java @@ -0,0 +1,34 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.info; + +import com.google.gwt.activity.shared.AbstractActivity; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; + +public class LoggedInUserInfoActivity extends AbstractActivity implements LoggedInUserInfoView.Presenter { + + private ClientFactoryWithUserManagementService clientFactory; + + public LoggedInUserInfoActivity(ClientFactoryWithUserManagementService clientFactory) { + this.clientFactory = clientFactory; + } + + @Override + public void start(AcceptsOneWidget panel, EventBus eventBus) { + LoggedInUserInfoView view = new LoggedInUserInfoViewImpl(); + view.setPresenter(this); + panel.setWidget(view); + } + + @Override + public void gotoProfileUi() { + // TODO Auto-generated method stub + } + + @Override + public void signOut() { + // TODO Auto-generated method stub + } + + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoPlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoPlace.java new file mode 100644 index 00000000000..e1ed8213b8b --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoPlace.java @@ -0,0 +1,8 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.info; + +import com.google.gwt.place.shared.Place; +import com.sap.sailing.gwt.home.shared.usermanagement.RequiresLoggedInUser; + +public class LoggedInUserInfoPlace extends Place implements RequiresLoggedInUser { + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java new file mode 100644 index 00000000000..8433fcc1f74 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java @@ -0,0 +1,15 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.info; + +import com.google.gwt.user.client.ui.IsWidget; + +public interface LoggedInUserInfoView extends IsWidget { + + void setPresenter(Presenter presenter); + + public interface Presenter { + void gotoProfileUi(); + void signOut(); + + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.java similarity index 78% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.java index a6a8d36ac95..9a2a9163c5f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.java @@ -10,9 +10,9 @@ import com.google.gwt.user.client.ui.Anchor; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; -public class LoggedInUserInfo extends Composite { +public class LoggedInUserInfoViewImpl extends Composite implements LoggedInUserInfoView { - interface LoggedInUserInfoUiBinder extends UiBinder { + interface LoggedInUserInfoUiBinder extends UiBinder { } private static LoggedInUserInfoUiBinder uiBinder = GWT.create(LoggedInUserInfoUiBinder.class); @@ -23,8 +23,9 @@ public class LoggedInUserInfo extends Composite { @UiField Anchor userProfileUi; @UiField Anchor signOutUi; + private Presenter presenter; - public LoggedInUserInfo() { + public LoggedInUserInfoViewImpl() { initWidget(uiBinder.createAndBindUi(this)); setUserInfo(); } @@ -37,12 +38,17 @@ public class LoggedInUserInfo extends Composite { @UiHandler("userProfileUi") void onUserProfileUiControlClicked(ClickEvent event) { - // TODO + this.presenter.gotoProfileUi(); } @UiHandler("signOutUi") void onSignOutUiControlClicked(ClickEvent event) { - // TODO + this.presenter.signOut(); + } + + @Override + public void setPresenter(Presenter presenter) { + this.presenter = presenter; } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml similarity index 100% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfo.ui.xml rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml From 245db65b5bec710a938f460b497caae82e4be9df Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 15:55:25 +0100 Subject: [PATCH 050/367] Implemented initial activity mapper for user management --- ...letAndDesktopApplicationClientFactory.java | 40 ++++++++++++++----- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 2e74c0e202c..3081d25fddf 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -27,10 +27,18 @@ import com.sap.sailing.gwt.home.shared.framework.WrappedPlacesManagementControll import com.sap.sailing.gwt.home.shared.partials.busy.BusyViewImpl; import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultView; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; +import com.sap.sailing.gwt.home.shared.usermanagement.RequiresLoggedInUser; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.create.CreateAccountActivity; +import com.sap.sailing.gwt.home.shared.usermanagement.create.CreateAccountPlace; import com.sap.sailing.gwt.home.shared.usermanagement.flyover.UserManagementFlyover; -import com.sap.sailing.gwt.home.shared.usermanagement.signin.SignInViewImpl; +import com.sap.sailing.gwt.home.shared.usermanagement.info.LoggedInUserInfoActivity; +import com.sap.sailing.gwt.home.shared.usermanagement.info.LoggedInUserInfoPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.recovery.PasswordRecoveryActivity; +import com.sap.sailing.gwt.home.shared.usermanagement.recovery.PasswordRecoveryPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SignInActivity; import com.sap.sailing.gwt.ui.client.refresh.BusyView; import com.sap.sse.security.ui.client.DefaultWithSecurityImpl; import com.sap.sse.security.ui.client.UserManagementServiceAsync; @@ -79,9 +87,7 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio } else { userManagementDisplay.setWidget(createBusyView()); userManagementDisplay.show(); - // TODO remove - userManagementDisplay.setWidget(new SignInViewImpl()); - // userManagementWizardController.start(); + userManagementWizardController.start(); } } }); @@ -149,15 +155,31 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio private class DesktopUserManagementStartPlaceActivityMapper implements StartPlaceActivityMapper { @Override - public Activity getActivity(Place place) { - // TODO Auto-generated method stub - return null; + public Activity getActivity(final Place requestedPlace) { + final Place placeToUse; + if (requestedPlace instanceof RequiresLoggedInUser && !uCtx.isLoggedIn()) { + placeToUse = getStartPlace(); + } else { + placeToUse = requestedPlace; + } + + final TabletAndDesktopApplicationClientFactory cf = TabletAndDesktopApplicationClientFactory.this; + if (placeToUse instanceof SigInPlace) { + return new SignInActivity(cf); + } else if (placeToUse instanceof CreateAccountPlace) { + return new CreateAccountActivity(cf); + } else if (placeToUse instanceof PasswordRecoveryPlace) { + return new PasswordRecoveryActivity(cf); + } else if (placeToUse instanceof LoggedInUserInfoPlace) { + return new LoggedInUserInfoActivity(cf); + } + + return new SignInActivity(cf); } @Override public Place getStartPlace() { - // TODO Auto-generated method stub - return null; + return new SigInPlace(); } } } From 20f7b0f2b94f1b9e1eb8ffc4bcba64d9e96d3933 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 16:20:38 +0100 Subject: [PATCH 051/367] Added placeController to activity constructor parameters --- .../usermanagement/create/CreateAccountActivity.java | 7 +++++-- .../usermanagement/recovery/PasswordRecoveryActivity.java | 7 +++++-- .../home/shared/usermanagement/signin/SignInActivity.java | 7 +++++-- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java index e077563e4b7..602ca7ca214 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java @@ -2,15 +2,18 @@ package com.sap.sailing.gwt.home.shared.usermanagement.create; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; +import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; public class CreateAccountActivity extends AbstractActivity implements CreateAccountView.Presenter { - private ClientFactoryWithUserManagementService clientFactory; + private final ClientFactoryWithUserManagementService clientFactory; + private final PlaceController placeController; - public CreateAccountActivity(ClientFactoryWithUserManagementService clientFactory) { + public CreateAccountActivity(ClientFactoryWithUserManagementService clientFactory, PlaceController placeController) { this.clientFactory = clientFactory; + this.placeController = placeController; } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java index 0463dc678cf..04ba8030d71 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java @@ -2,15 +2,18 @@ package com.sap.sailing.gwt.home.shared.usermanagement.recovery; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; +import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; public class PasswordRecoveryActivity extends AbstractActivity implements PasswordRecoveryView.Presenter { - private ClientFactoryWithUserManagementService clientFactory; + private final ClientFactoryWithUserManagementService clientFactory; + private final PlaceController placeController; - public PasswordRecoveryActivity(ClientFactoryWithUserManagementService clientFactory) { + public PasswordRecoveryActivity(ClientFactoryWithUserManagementService clientFactory, PlaceController placeController) { this.clientFactory = clientFactory; + this.placeController = placeController; } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java index fc17701e1eb..7da108d041f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java @@ -2,15 +2,18 @@ package com.sap.sailing.gwt.home.shared.usermanagement.signin; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; +import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; public class SignInActivity extends AbstractActivity implements SignInView.Presenter { - private ClientFactoryWithUserManagementService clientFactory; + private final ClientFactoryWithUserManagementService clientFactory; + private final PlaceController placeController; - public SignInActivity(ClientFactoryWithUserManagementService clientFactory) { + public SignInActivity(ClientFactoryWithUserManagementService clientFactory, PlaceController placeController) { this.clientFactory = clientFactory; + this.placeController = placeController; } @Override From 27bb89759e25c6a56b9ecc4a64729cd3270e1220 Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 16:23:50 +0100 Subject: [PATCH 052/367] Fire global user management event into local eventbus, initial logged user info activity implementation --- ...letAndDesktopApplicationClientFactory.java | 21 +++++++++--- .../WrappedPlacesManagementController.java | 11 +++++-- .../info/LoggedInUserInfoActivity.java | 33 +++++++++++++++---- .../info/LoggedInUserInfoView.java | 4 +-- .../info/LoggedInUserInfoViewImpl.java | 9 ++--- 5 files changed, 59 insertions(+), 19 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 3081d25fddf..781e9291553 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -91,6 +91,12 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio } } }); + getEventBus().addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { + @Override + public void onUserChangeEvent(UserManagementContextEvent event) { + userManagementWizardController.fireEvent(event); + } + }); } @Override @@ -154,6 +160,8 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio } private class DesktopUserManagementStartPlaceActivityMapper implements StartPlaceActivityMapper { + private PlaceController placeController; + @Override public Activity getActivity(final Place requestedPlace) { final Place placeToUse; @@ -165,21 +173,26 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio final TabletAndDesktopApplicationClientFactory cf = TabletAndDesktopApplicationClientFactory.this; if (placeToUse instanceof SigInPlace) { - return new SignInActivity(cf); + return new SignInActivity(cf, placeController); } else if (placeToUse instanceof CreateAccountPlace) { - return new CreateAccountActivity(cf); + return new CreateAccountActivity(cf, placeController); } else if (placeToUse instanceof PasswordRecoveryPlace) { - return new PasswordRecoveryActivity(cf); + return new PasswordRecoveryActivity(cf, placeController); } else if (placeToUse instanceof LoggedInUserInfoPlace) { return new LoggedInUserInfoActivity(cf); } - return new SignInActivity(cf); + return new SignInActivity(cf, placeController); } @Override public Place getStartPlace() { return new SigInPlace(); } + + @Override + public void setPlaceController(PlaceController placeController) { + this.placeController = placeController; + } } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java index d7367890b63..38e2b36afe7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java @@ -7,20 +7,21 @@ import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.google.web.bindery.event.shared.EventBus; import com.google.web.bindery.event.shared.SimpleEventBus; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; public class WrappedPlacesManagementController { public interface StartPlaceActivityMapper extends ActivityMapper { Place getStartPlace(); + void setPlaceController(PlaceController placeController); } private final StartPlaceActivityMapper wrappedActivityMapper; - private final PlaceController wrappedPlaceController; + private final EventBus eventBus = new SimpleEventBus(); + private final PlaceController wrappedPlaceController = new PlaceController(eventBus); public WrappedPlacesManagementController(StartPlaceActivityMapper wrappedActivityMapper, AcceptsOneWidget wrappedDisplay) { - EventBus eventBus = new SimpleEventBus(); this.wrappedActivityMapper = wrappedActivityMapper; - this.wrappedPlaceController = new PlaceController(eventBus); ActivityManager wrappedActivityManager = new ActivityManager(this.wrappedActivityMapper, eventBus); wrappedActivityManager.setDisplay(wrappedDisplay); } @@ -32,5 +33,9 @@ public class WrappedPlacesManagementController { public void goTo(Place newPlace) { this.wrappedPlaceController.goTo(newPlace); } + + public void fireEvent(UserManagementContextEvent event) { + eventBus.fireEvent(event); + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java index 67ae38f51b4..4997aedf045 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java @@ -2,32 +2,53 @@ package com.sap.sailing.gwt.home.shared.usermanagement.info; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; -import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; +import com.sap.sailing.gwt.home.desktop.app.TabletAndDesktopApplicationClientFactory; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; +import com.sap.sse.security.ClientUtils; +import com.sap.sse.security.ui.shared.SuccessInfo; public class LoggedInUserInfoActivity extends AbstractActivity implements LoggedInUserInfoView.Presenter { - private ClientFactoryWithUserManagementService clientFactory; + private TabletAndDesktopApplicationClientFactory clientFactory; - public LoggedInUserInfoActivity(ClientFactoryWithUserManagementService clientFactory) { + public LoggedInUserInfoActivity(TabletAndDesktopApplicationClientFactory clientFactory) { this.clientFactory = clientFactory; } @Override public void start(AcceptsOneWidget panel, EventBus eventBus) { - LoggedInUserInfoView view = new LoggedInUserInfoViewImpl(); + final LoggedInUserInfoView view = new LoggedInUserInfoViewImpl(); view.setPresenter(this); panel.setWidget(view); + view.setUserInfo(clientFactory.getUserManagementContext().getCurrentUser()); + eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { + @Override + public void onUserChangeEvent(UserManagementContextEvent event) { + view.setUserInfo(event.getCtx().getCurrentUser()); + } + }); } @Override public void gotoProfileUi() { - // TODO Auto-generated method stub + clientFactory.getHomePlacesNavigator().getUserProfileNavigation().goToPlace(); } @Override public void signOut() { - // TODO Auto-generated method stub + clientFactory.getUserManagement().logout(new AsyncCallback() { + @Override + public void onSuccess(SuccessInfo result) { + ClientUtils.reload(); + } + + @Override + public void onFailure(Throwable caught) { + ClientUtils.reload(); + } + }); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java index 8433fcc1f74..af1b7524a43 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoView.java @@ -1,15 +1,15 @@ package com.sap.sailing.gwt.home.shared.usermanagement.info; import com.google.gwt.user.client.ui.IsWidget; +import com.sap.sse.security.ui.shared.UserDTO; public interface LoggedInUserInfoView extends IsWidget { void setPresenter(Presenter presenter); + void setUserInfo(UserDTO user); public interface Presenter { void gotoProfileUi(); void signOut(); - } - } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.java index 9a2a9163c5f..b0877335dbb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.java @@ -9,6 +9,7 @@ import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.ui.Anchor; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; +import com.sap.sse.security.ui.shared.UserDTO; public class LoggedInUserInfoViewImpl extends Composite implements LoggedInUserInfoView { @@ -27,13 +28,13 @@ public class LoggedInUserInfoViewImpl extends Composite implements LoggedInUserI public LoggedInUserInfoViewImpl() { initWidget(uiBinder.createAndBindUi(this)); - setUserInfo(); } - public void setUserInfo() { + @Override + public void setUserInfo(UserDTO user) { userImageUi.getStyle().setBackgroundImage("url('images/home/userdefault.svg')"); - userRealnameUi.setInnerText("Max Mustermann"); - userUsernameUi.setInnerText("user001"); + userRealnameUi.setInnerText(user.getName()); + userUsernameUi.setInnerText(user.getEmail()); } @UiHandler("userProfileUi") From 5f9c40c6dc8052383d44bebb4fcf23634febe5ff Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 16:46:41 +0100 Subject: [PATCH 053/367] Initial logout implementation --- .../TabletAndDesktopApplicationClientFactory.java | 12 +++++++++++- .../mobile/app/MobileApplicationClientFactory.java | 8 +++++++- .../app/ClientFactoryWithUserManagementContext.java | 1 + .../info/LoggedInUserInfoActivity.java | 6 +++--- 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 781e9291553..b5406b95c3b 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -159,6 +159,12 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio return uCtx; } + @Override + public void resetUserManagementContext() { + uCtx = new UserManagementContextImpl(); + securityProvider.getUserService().updateUser(true); + } + private class DesktopUserManagementStartPlaceActivityMapper implements StartPlaceActivityMapper { private PlaceController placeController; @@ -187,7 +193,11 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio @Override public Place getStartPlace() { - return new SigInPlace(); + if (uCtx.isLoggedIn()) { + return new LoggedInUserInfoPlace(); + } else { + return new SigInPlace(); + } } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java index c42634d50eb..b058090bb36 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java @@ -109,7 +109,13 @@ public class MobileApplicationClientFactory extends public UserManagementContext getUserManagementContext() { return uCtx; } - + + @Override + public void resetUserManagementContext() { + uCtx = new UserManagementContextImpl(); + securityProvider.getUserService().updateUser(true); + } + @Override public UserManagementServiceAsync getUserManagement() { return securityProvider.getUserManagementService(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java index 86938f89d7e..b9dfccfb28a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java @@ -3,4 +3,5 @@ package com.sap.sailing.gwt.home.shared.app; public interface ClientFactoryWithUserManagementContext { UserManagementContext getUserManagementContext(); + void resetUserManagementContext(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java index 4997aedf045..5c52325f587 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java @@ -6,7 +6,7 @@ import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.desktop.app.TabletAndDesktopApplicationClientFactory; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; -import com.sap.sse.security.ClientUtils; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sse.security.ui.shared.SuccessInfo; public class LoggedInUserInfoActivity extends AbstractActivity implements LoggedInUserInfoView.Presenter { @@ -41,12 +41,12 @@ public class LoggedInUserInfoActivity extends AbstractActivity implements Logged clientFactory.getUserManagement().logout(new AsyncCallback() { @Override public void onSuccess(SuccessInfo result) { - ClientUtils.reload(); + clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); } @Override public void onFailure(Throwable caught) { - ClientUtils.reload(); + clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); } }); } From c301954353e28a18fb4ad39df3db2879fb04a8ee Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 16:41:02 +0100 Subject: [PATCH 054/367] Initial implementation of UserAccountDetails partial --- .../images/home/edit.svg | 15 +++++ .../UserAccountDetails.java | 43 +++++++++++++ .../UserAccountDetails.ui.xml | 59 ++++++++++++++++++ .../useraccountDetails/UseraccountDetails.gss | 61 +++++++++++++++++++ .../UseraccountDetailsResources.java | 23 +++++++ 5 files changed, 201 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/images/home/edit.svg create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java diff --git a/java/com.sap.sailing.gwt.ui/images/home/edit.svg b/java/com.sap.sailing.gwt.ui/images/home/edit.svg new file mode 100644 index 00000000000..1d86a44eb80 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/images/home/edit.svg @@ -0,0 +1,15 @@ + + + + + + + diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java new file mode 100644 index 00000000000..460f2a23625 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java @@ -0,0 +1,43 @@ +package com.sap.sailing.gwt.home.desktop.partials.useraccountDetails; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.AnchorElement; +import com.google.gwt.dom.client.InputElement; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; +import com.sap.sse.security.ui.shared.UserDTO; + +public class UserAccountDetails extends Composite { + private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); + + interface MyUiBinder extends UiBinder { + } + + public interface Presenter { + } + + @UiField AnchorElement editImageLinkUi; + @UiField InputElement usernameUi; + @UiField InputElement nameUi; + @UiField InputElement emailUi; + + public UserAccountDetails(Presenter presenter) { + UseraccountDetailsResources.INSTANCE.css().ensureInjected(); + initWidget(uiBinder.createAndBindUi(this)); + } + + public void setUserManagementContext(UserManagementContext userManagementContext) { + UserDTO currentUser = userManagementContext.getCurrentUser(); + // TODO correct message + editImageLinkUi.setTitle("TODO picture of: " + currentUser.getName()); + // TODO use image from user when field is available + editImageLinkUi.getStyle().setBackgroundImage("url(images/home/userdefault.svg)"); + + nameUi.setValue(currentUser.getName()); + usernameUi.setValue(currentUser.getName()); + emailUi.setValue(currentUser.getEmail()); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml new file mode 100644 index 00000000000..0889c3eb5d4 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml @@ -0,0 +1,59 @@ + + + + + + + +
+
+
+ +
+
+
+
+ + +
+
+ + +
+
+ + + +
+
+ + +
+
+ + + +
+
+
+ +
+
+
+
+
+
+
+
\ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss new file mode 100644 index 00000000000..9d50c4923aa --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss @@ -0,0 +1,61 @@ +.useraccountdetails { + overflow: hidden; +} +.useraccountdetails_image { + float: left; + width: 8em; + height: 8em; + z-index: 1; + position: relative; + background-repeat: no-repeat; + background-size: cover; + background-position: center center; +} +.useraccountdetails_image_editbutton { + display: none; + position: absolute; + bottom: 0; + right: 0; + width: 2em; + height: 2em; + background-image: url("images/home/edit.svg"); + background-color: #efaa00; + background-repeat: no-repeat; + background-size: contain; + background-position: center center; +} +.useraccountdetails_image:hover .useraccountdetails_image_editbutton { + display: block; +} +.useraccountdetails_content { + float: left; + width: 100%; + max-width: 53.333333333333336em; + padding-left: 12em; + margin-left: -10em; +} +.useraccountdetails_content_detail { + float: right; + width: 50%; + padding-left: 1.333333333333333em; + margin-bottom: 1.333333333333333em; + overflow: hidden; +} +.useraccountdetails_content_detail_label { + display: block; + font-weight: 600; + margin-bottom: 0.4em; +} +.useraccountdetails_content_detail_input { + display: block; + width: 100%; + padding: 0.666666666666667em; + border-radius: 3px; + border: 1px solid #ccc; +} +.useraccountdetails_content_submit { + width: 100%; + float: right; + text-align: right; + text-transform: uppercase; +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java new file mode 100644 index 00000000000..4a741f4f2b2 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java @@ -0,0 +1,23 @@ +package com.sap.sailing.gwt.home.desktop.partials.useraccountDetails; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; + +public interface UseraccountDetailsResources extends ClientBundle { + public static final UseraccountDetailsResources INSTANCE = GWT.create(UseraccountDetailsResources.class); + + @Source("UseraccountDetails.gss") + LocalCss css(); + + public interface LocalCss extends CssResource { + String useraccountdetails(); + String useraccountdetails_image(); + String useraccountdetails_image_editbutton(); + String useraccountdetails_content(); + String useraccountdetails_content_detail(); + String useraccountdetails_content_detail_label(); + String useraccountdetails_content_detail_input(); + String useraccountdetails_content_submit(); + } +} From 1db9c1a7fd857781041bf3209475dd99623ae7a7 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 16:41:23 +0100 Subject: [PATCH 055/367] Using UserAccountDetails partial in UserProfileDetailsTabView --- .../profile/detailstab/UserProfileDetailsTabView.java | 10 ++++++---- .../detailstab/UserProfileDetailsTabView.ui.xml | 5 +++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java index d9c53eef857..8d289104cc6 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java @@ -9,6 +9,7 @@ import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.desktop.partials.useraccountDetails.UserAccountDetails; import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileTabView; import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileView; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; @@ -26,8 +27,8 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT @SuppressWarnings("unused") private UserProfileView.Presenter currentPresenter; - @UiField DivElement userUi; @UiField DivElement notLoggedInUi; + @UiField(provided = true) UserAccountDetails accountDetailsUi; public UserProfileDetailsTabView() { } @@ -44,6 +45,7 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT @Override public void start(UserProfileDetailsPlace myPlace, AcceptsOneWidget contentArea) { + accountDetailsUi = new UserAccountDetails(null); initWidget(ourUiBinder.createAndBindUi(this)); contentArea.setWidget(this); @@ -53,11 +55,11 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT public void setUserManagementContext(UserManagementContext userManagementContext) { if(userManagementContext.isLoggedIn()) { notLoggedInUi.getStyle().setDisplay(Display.NONE); - userUi.getStyle().clearDisplay(); - userUi.setInnerText(userManagementContext.getCurrentUser().getName()); + accountDetailsUi.getElement().getStyle().clearDisplay(); + accountDetailsUi.setUserManagementContext(userManagementContext); } else { notLoggedInUi.getStyle().clearDisplay(); - userUi.getStyle().setDisplay(Display.NONE); + accountDetailsUi.getElement().getStyle().setDisplay(Display.NONE); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml index a33c0b77e05..6aa90582689 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml @@ -1,4 +1,5 @@ - + @@ -6,7 +7,7 @@
TODO you are currently not logged in
-
TODO implement content
+
\ No newline at end of file From d44b26427776490eac8219834f82949fe42c12fc Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 16:54:15 +0100 Subject: [PATCH 056/367] Reset user management context --- .../shared/usermanagement/info/LoggedInUserInfoActivity.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java index 5c52325f587..a792a1ea658 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java @@ -42,11 +42,13 @@ public class LoggedInUserInfoActivity extends AbstractActivity implements Logged @Override public void onSuccess(SuccessInfo result) { clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); + clientFactory.resetUserManagementContext(); } @Override public void onFailure(Throwable caught) { clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); + clientFactory.resetUserManagementContext(); } }); } From 6bfa254989c0f9f227ed7630b9552a32631b254b Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 17:05:32 +0100 Subject: [PATCH 057/367] Header icon now reacts to logged in state --- .../sailing/gwt/home/desktop/partials/header/Header.gss | 5 ++++- .../sailing/gwt/home/desktop/partials/header/Header.java | 7 +++++++ .../gwt/home/desktop/partials/header/HeaderResources.java | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss index ae47b2776df..a69d0de197e 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.gss @@ -115,4 +115,7 @@ background-image: url('images/home/loggedout.svg'); margin-left: 1rem; cursor: pointer; -} \ No newline at end of file +} +.user_menu_button.loggedin { + background-image: url('images/home/loggedin.svg'); +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java index e6f163705d9..b799241cd8f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.java @@ -31,6 +31,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sse.gwt.client.mvp.PlaceChangedEvent; @@ -94,6 +95,12 @@ public class Header extends Composite { updateActiveLink(event.getNewPlace()); } }); + eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { + @Override + public void onUserChangeEvent(UserManagementContextEvent event) { + usermenu.setStyleName(HeaderResources.INSTANCE.css().loggedin(), event.getCtx().isLoggedIn()); + } + }); } @UiHandler("startPageLink") diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java index 4401e76fd1b..f170e13390e 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/HeaderResources.java @@ -24,5 +24,6 @@ public interface HeaderResources extends ClientBundle { String search_button(); String submit(); String user_menu_button(); + String loggedin(); } } From c48005e1f7d9561ff8d84eda863f5f9885c0b780 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 17:08:52 +0100 Subject: [PATCH 058/367] Set placecontroller to wrapped activity mapper --- .../home/shared/framework/WrappedPlacesManagementController.java | 1 + 1 file changed, 1 insertion(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java index 38e2b36afe7..589cff2175b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/framework/WrappedPlacesManagementController.java @@ -22,6 +22,7 @@ public class WrappedPlacesManagementController { public WrappedPlacesManagementController(StartPlaceActivityMapper wrappedActivityMapper, AcceptsOneWidget wrappedDisplay) { this.wrappedActivityMapper = wrappedActivityMapper; + this.wrappedActivityMapper.setPlaceController(this.wrappedPlaceController); ActivityManager wrappedActivityManager = new ActivityManager(this.wrappedActivityMapper, eventBus); wrappedActivityManager.setDisplay(wrappedDisplay); } From fb85852953ea02b2578b3c1bccb459fcd9aaf7c3 Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 17:14:04 +0100 Subject: [PATCH 059/367] Implemented did login method --- .../app/TabletAndDesktopApplicationClientFactory.java | 7 +++++++ .../home/mobile/app/MobileApplicationClientFactory.java | 8 +++++++- .../app/ClientFactoryWithUserManagementService.java | 2 ++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index b5406b95c3b..493156b63dd 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -165,6 +165,12 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio securityProvider.getUserService().updateUser(true); } + @Override + public void didLogin(UserDTO user) { + uCtx = new UserManagementContextImpl(user); + getEventBus().fireEvent(new UserManagementContextEvent(uCtx)); + } + private class DesktopUserManagementStartPlaceActivityMapper implements StartPlaceActivityMapper { private PlaceController placeController; @@ -205,4 +211,5 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio this.placeController = placeController; } } + } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java index b058090bb36..67b430e1fa8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java @@ -115,7 +115,13 @@ public class MobileApplicationClientFactory extends uCtx = new UserManagementContextImpl(); securityProvider.getUserService().updateUser(true); } - + + @Override + public void didLogin(UserDTO user) { + uCtx = new UserManagementContextImpl(user); + getEventBus().fireEvent(new UserManagementContextEvent(uCtx)); + } + @Override public UserManagementServiceAsync getUserManagement() { return securityProvider.getUserManagementService(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java index 47e51191173..b9b97b5ad4b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementService.java @@ -1,7 +1,9 @@ package com.sap.sailing.gwt.home.shared.app; import com.sap.sse.security.ui.client.UserManagementServiceAsync; +import com.sap.sse.security.ui.shared.UserDTO; public interface ClientFactoryWithUserManagementService { UserManagementServiceAsync getUserManagement(); + void didLogin(UserDTO user); } From 0ddf99dcdaef1fd2dec465ca4b4faf29c1eb203a Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 17:17:31 +0100 Subject: [PATCH 060/367] Added UserProfileDefaultPlace as primary link target to make user UI consistent to event an series and make it possible to change the behavior in the future --- .../desktop/app/DesktopPlacesNavigator.java | 4 ++-- .../user/profile/UserProfileActivityProxy.java | 5 +++++ .../shared/app/ApplicationHistoryMapper.java | 2 ++ .../home/shared/places/PlaceTokenPrefixes.java | 1 + .../user/profile/UserProfileDefaultPlace.java | 17 +++++++++++++++++ 5 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDefaultPlace.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java index 3fedabd7614..5a8f19bd50f 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/DesktopPlacesNavigator.java @@ -24,7 +24,7 @@ import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; -import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDefaultPlace; import com.sap.sailing.gwt.ui.client.EntryPointLinkFactory; public class DesktopPlacesNavigator extends AbstractPlaceNavigator { @@ -103,6 +103,6 @@ public class DesktopPlacesNavigator extends AbstractPlaceNavigator { } public PlaceNavigation getUserProfileNavigation() { - return createGlobalPlaceNavigation(new UserProfileDetailsPlace()); + return createGlobalPlaceNavigation(new UserProfileDefaultPlace()); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java index 8766d4f544e..6fba8a17d4f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivityProxy.java @@ -6,6 +6,8 @@ import com.sap.sailing.gwt.home.desktop.app.WithHeader; import com.sap.sailing.gwt.home.shared.app.NavigationPathDisplay; import com.sap.sailing.gwt.home.shared.app.ProvidesNavigationPath; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDefaultPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPlace; import com.sap.sse.gwt.client.mvp.AbstractActivityProxy; public class UserProfileActivityProxy extends AbstractActivityProxy implements ProvidesNavigationPath, WithHeader { @@ -32,6 +34,9 @@ public class UserProfileActivityProxy extends AbstractActivityProxy implements P GWT.runAsync(new AbstractRunAsyncCallback() { @Override public void onSuccess() { + if(place instanceof UserProfileDefaultPlace) { + place = new UserProfileDetailsPlace(); + } super.onSuccess(new UserProfileActivity(place, clientFactory, homePlacesNavigator, navigationPathDisplay)); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java index 4f232504ea2..90bb98de886 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ApplicationHistoryMapper.java @@ -31,6 +31,7 @@ import com.sap.sailing.gwt.home.shared.places.fakeseries.SeriesDefaultPlace; import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDefaultPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPlace; @WithTokenizers({ AboutUsPlace.Tokenizer.class, ContactPlace.Tokenizer.class, EventPlace.Tokenizer.class, @@ -60,6 +61,7 @@ import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPla MiniLeaderboardPlace.Tokenizer.class, SeriesMiniOverallLeaderboardPlace.Tokenizer.class, // User management places: + UserProfileDefaultPlace.Tokenizer.class, UserProfileDetailsPlace.Tokenizer.class, ErrorPlace.Tokenizer.class }) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java index 1a776e60210..7c596a2fbac 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/PlaceTokenPrefixes.java @@ -23,5 +23,6 @@ public class PlaceTokenPrefixes { public static final String EventSeriesCompetitorAnalytics = "/series/competitoranalytics/"; public static final String EventSeriesMiniOverallLeaderboard = "/series/minioverallleaderboard/"; + public static final String UserProfileDefault = "/user/profile/"; public static final String UserProfileDetails = "/user/profile/details/"; } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDefaultPlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDefaultPlace.java new file mode 100644 index 00000000000..2e070fff514 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/UserProfileDefaultPlace.java @@ -0,0 +1,17 @@ +package com.sap.sailing.gwt.home.shared.places.user.profile; + +import com.google.gwt.place.shared.Prefix; +import com.sap.sailing.gwt.home.shared.app.HasMobileVersion; +import com.sap.sailing.gwt.home.shared.places.PlaceTokenPrefixes; + + +public class UserProfileDefaultPlace extends AbstractUserProfilePlace implements HasMobileVersion { + + @Prefix(PlaceTokenPrefixes.UserProfileDefault) + public static class Tokenizer extends AbstractUserProfilePlace.Tokenizer { + @Override + protected UserProfileDefaultPlace getRealPlace() { + return new UserProfileDefaultPlace(); + } + } +} From d34068f22dbd702cb1492ec056749af5afd6a609 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 17:19:00 +0100 Subject: [PATCH 061/367] Implemented login logic --- .../usermanagement/signin/SignInActivity.java | 42 ++++++++++++++++--- .../usermanagement/signin/SignInView.java | 2 + .../usermanagement/signin/SignInViewImpl.java | 1 + 3 files changed, 39 insertions(+), 6 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java index 7da108d041f..c522e7fdfcb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java @@ -3,13 +3,20 @@ package com.sap.sailing.gwt.home.shared.usermanagement.signin; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.PlaceController; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.create.CreateAccountPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.info.LoggedInUserInfoPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.recovery.PasswordRecoveryPlace; +import com.sap.sse.security.ui.shared.SuccessInfo; public class SignInActivity extends AbstractActivity implements SignInView.Presenter { private final ClientFactoryWithUserManagementService clientFactory; private final PlaceController placeController; + private final SignInView view = new SignInViewImpl(); public SignInActivity(ClientFactoryWithUserManagementService clientFactory, PlaceController placeController) { this.clientFactory = clientFactory; @@ -18,34 +25,57 @@ public class SignInActivity extends AbstractActivity implements SignInView.Prese @Override public void start(AcceptsOneWidget panel, EventBus eventBus) { - SignInView view = new SignInViewImpl(); view.setPresenter(this); panel.setWidget(view); + eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { + @Override + public void onUserChangeEvent(UserManagementContextEvent event) { + if (event.getCtx().isLoggedIn()) { + placeController.goTo(new LoggedInUserInfoPlace()); + } + } + }); } @Override public void login(String loginName, String password) { - // TODO Auto-generated method stub + clientFactory.getUserManagement().login(loginName, password, new AsyncCallback() { + @Override + public void onSuccess(SuccessInfo result) { + if (result.isSuccessful()) { + clientFactory.didLogin(result.getUserDTO()); + placeController.goTo(new LoggedInUserInfoPlace()); + } else { + view.setErrorMessage(result.getMessage()); + } + } + + @Override + public void onFailure(Throwable caught) { + // TODO + view.setErrorMessage("TODO - login failed"); + } + }); } @Override public void createAccount() { - // TODO Auto-generated method stub + placeController.goTo(new CreateAccountPlace()); } @Override public void forgotPassword() { - // TODO Auto-generated method stub + placeController.goTo(new PasswordRecoveryPlace()); } @Override public void loginWithFacebook() { - // TODO Auto-generated method stub + // TODO not supported yet } @Override public void loginWithGoogle() { - // TODO Auto-generated method stub + // TODO not supported yet } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java index d4414d1795e..3e656aeed39 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java @@ -5,6 +5,8 @@ import com.google.gwt.user.client.ui.IsWidget; public interface SignInView extends IsWidget { void setPresenter(Presenter presenter); + + void setErrorMessage(String errorMessage); public interface Presenter { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java index 31cedce773a..a7be77a357a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java @@ -47,6 +47,7 @@ public class SignInViewImpl extends Composite implements SignInView { this.presenter = presenter; } + @Override public void setErrorMessage(String errorMessage) { formErrorUi.setInnerText(errorMessage); } From 4d339ee439b73ee0d8a68fe4e3b2f3795d99654a Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 17:23:19 +0100 Subject: [PATCH 062/367] Properly react to user management context changes in logged in user flyover --- .../TabletAndDesktopApplicationClientFactory.java | 2 +- .../info/LoggedInUserInfoActivity.java | 13 +++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 493156b63dd..9ec30ea9a90 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -191,7 +191,7 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio } else if (placeToUse instanceof PasswordRecoveryPlace) { return new PasswordRecoveryActivity(cf, placeController); } else if (placeToUse instanceof LoggedInUserInfoPlace) { - return new LoggedInUserInfoActivity(cf); + return new LoggedInUserInfoActivity(cf, placeController); } return new SignInActivity(cf, placeController); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java index a792a1ea658..5084c8bedfb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java @@ -2,19 +2,24 @@ package com.sap.sailing.gwt.home.shared.usermanagement.info; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; +import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.desktop.app.TabletAndDesktopApplicationClientFactory; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; import com.sap.sse.security.ui.shared.SuccessInfo; public class LoggedInUserInfoActivity extends AbstractActivity implements LoggedInUserInfoView.Presenter { private TabletAndDesktopApplicationClientFactory clientFactory; + private PlaceController placeController; - public LoggedInUserInfoActivity(TabletAndDesktopApplicationClientFactory clientFactory) { + public LoggedInUserInfoActivity(TabletAndDesktopApplicationClientFactory clientFactory, + PlaceController placeController) { this.clientFactory = clientFactory; + this.placeController = placeController; } @Override @@ -26,7 +31,11 @@ public class LoggedInUserInfoActivity extends AbstractActivity implements Logged eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { @Override public void onUserChangeEvent(UserManagementContextEvent event) { - view.setUserInfo(event.getCtx().getCurrentUser()); + if (event.getCtx().isLoggedIn()) { + view.setUserInfo(event.getCtx().getCurrentUser()); + } else { + placeController.goTo(new SigInPlace()); + } } }); } From 346105af8c7b3782f77940ce9a2b387909d26c04 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 17:48:54 +0100 Subject: [PATCH 063/367] Using i18n message for details tab --- .../places/user/profile/TabletAndDesktopUserProfileView.ui.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml index 74e17dbaba7..0d245f6412d 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.ui.xml @@ -42,7 +42,7 @@ - +
From 44275b1c4ea44033e10692c80f6b8c8853bcf77a Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 17:53:32 +0100 Subject: [PATCH 064/367] Close dialog when going to profile place --- .../shared/usermanagement/info/LoggedInUserInfoActivity.java | 1 + 1 file changed, 1 insertion(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java index 5084c8bedfb..ef699199b89 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java @@ -42,6 +42,7 @@ public class LoggedInUserInfoActivity extends AbstractActivity implements Logged @Override public void gotoProfileUi() { + clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); clientFactory.getHomePlacesNavigator().getUserProfileNavigation().goToPlace(); } From 75083c7ac3791a7859794c596d2e655a380bc0ad Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 18:06:47 +0100 Subject: [PATCH 065/367] Using pre-existing messages from security UI --- .../useraccountDetails/UserAccountDetails.ui.xml | 14 +++++++------- .../places/user/profile/UserProfileActivity.java | 3 ++- .../create/CreateAccountViewImpl.ui.xml | 15 ++++++++------- .../info/LoggedInUserInfoViewImpl.ui.xml | 5 +++-- .../usermanagement/signin/SignInViewImpl.ui.xml | 11 ++++++----- 5 files changed, 26 insertions(+), 22 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml index 0889c3eb5d4..d1bd577ddf0 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml @@ -2,6 +2,7 @@ + @@ -14,41 +15,40 @@
- +
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java index 261fbade450..7c3d11ae898 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java @@ -41,8 +41,9 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile private void initNavigationPath(NavigationPathDisplay navigationPathDisplay) { StringMessages i18n = StringMessages.INSTANCE; + com.sap.sse.security.ui.client.i18n.StringMessages i18n_sec = com.sap.sse.security.ui.client.i18n.StringMessages.INSTANCE; navigationPathDisplay.showNavigationPath(new NavigationItem(i18n.home(), getHomeNavigation()), - new NavigationItem("TODO User Details", getUserProfileNavigation())); + new NavigationItem(i18n_sec.userDetails(), getUserProfileNavigation())); } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml index da020a83640..5c644f795b8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml @@ -2,25 +2,26 @@ + -
TODO Create Account
+
Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte.
- + - + - + - +
TODO Sign in + ui:field="signInUi"> TODO Create account + ui:field="createAccountUi">
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml index be27c82fc79..159c09fa886 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml @@ -2,6 +2,7 @@ + @@ -15,9 +16,9 @@
TODO User profile + ui:field="userProfileUi"> TODO Sign out + ui:field="signOutUi">
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml index 0b61e282ef3..e2d9c8de36a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml @@ -2,21 +2,22 @@ + -
TODO Sign In
+
- + - TODO Forgot Password? +
TODO Create account + ui:field="createAccountUi"> TODO Sign in + ui:field="signInUi">
From 1235a1bbf48e6417a078a85870a6020a71582185 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 18:08:42 +0100 Subject: [PATCH 066/367] Adjusted default selection and key handling in sign in view --- .../usermanagement/signin/SignInViewImpl.java | 26 ++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java index a7be77a357a..5b81a305cdb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java @@ -3,6 +3,8 @@ package com.sap.sailing.gwt.home.shared.usermanagement.signin; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.event.dom.client.KeyCodes; +import com.google.gwt.event.dom.client.KeyUpEvent; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.uibinder.client.UiHandler; @@ -50,6 +52,12 @@ public class SignInViewImpl extends Composite implements SignInView { @Override public void setErrorMessage(String errorMessage) { formErrorUi.setInnerText(errorMessage); + selectAll(passwordUi.getValue().isEmpty() ? loginNameUi : passwordUi); + } + + @Override + protected void onLoad() { + selectAll(loginNameUi); } @UiHandler("forgotPasswordUi") @@ -64,7 +72,14 @@ public class SignInViewImpl extends Composite implements SignInView { @UiHandler("signInUi") void onSignInControlUiClicked(ClickEvent event) { - presenter.login(loginNameUi.getValue(), passwordUi.getValue()); + triggerLogin(); + } + + @UiHandler({"loginNameUi","passwordUi"}) + void onSignInKeyPressed(KeyUpEvent event) { + if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { + triggerLogin(); + } } @UiHandler("loginFacebookUi") @@ -77,8 +92,17 @@ public class SignInViewImpl extends Composite implements SignInView { presenter.loginWithGoogle(); } + private void triggerLogin() { + presenter.login(loginNameUi.getValue(), passwordUi.getValue()); + } + private void setPlaceholder(Widget widget, String placeholderText) { widget.getElement().setAttribute("placeholder", placeholderText); } + private void selectAll(TextBox textBox) { + textBox.setFocus(true); + textBox.selectAll(); + } + } From f052e28b8bc3c3f0f9271b4becd6dfe460619b2b Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 18:11:29 +0100 Subject: [PATCH 067/367] Added navigation from create account to sign in view --- .../shared/usermanagement/create/CreateAccountActivity.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java index 602ca7ca214..9c1a2e51352 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java @@ -5,6 +5,7 @@ import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; public class CreateAccountActivity extends AbstractActivity implements CreateAccountView.Presenter { @@ -30,7 +31,7 @@ public class CreateAccountActivity extends AbstractActivity implements CreateAcc @Override public void signIn() { - // TODO Auto-generated method stub + placeController.goTo(new SigInPlace()); } } From 12de86621bbac62fa360a10965372159f27a8e32 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 9 Dec 2015 18:17:44 +0100 Subject: [PATCH 068/367] Implemented create account logic --- .../create/CreateAccountActivity.java | 43 +++++++++++++++++-- .../create/CreateAccountView.java | 3 ++ .../create/CreateAccountViewImpl.java | 1 + 3 files changed, 44 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java index 9c1a2e51352..edf61f3db85 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java @@ -1,16 +1,24 @@ package com.sap.sailing.gwt.home.shared.usermanagement.create; +import java.util.HashMap; + import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.PlaceController; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; +import com.sap.sailing.gwt.home.shared.usermanagement.info.LoggedInUserInfoPlace; import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; +import com.sap.sse.security.ui.client.EntryPointLinkFactory; +import com.sap.sse.security.ui.shared.SuccessInfo; +import com.sap.sse.security.ui.shared.UserDTO; public class CreateAccountActivity extends AbstractActivity implements CreateAccountView.Presenter { private final ClientFactoryWithUserManagementService clientFactory; private final PlaceController placeController; + private final CreateAccountView view = new CreateAccountViewImpl(); public CreateAccountActivity(ClientFactoryWithUserManagementService clientFactory, PlaceController placeController) { this.clientFactory = clientFactory; @@ -19,14 +27,43 @@ public class CreateAccountActivity extends AbstractActivity implements CreateAcc @Override public void start(AcceptsOneWidget panel, EventBus eventBus) { - CreateAccountView view = new CreateAccountViewImpl(); view.setPresenter(this); panel.setWidget(view); } @Override - public void createAccount(String username, String email, String password, String passwordConfirmation) { - // TODO Auto-generated method stub + public void createAccount(String username, String email, final String password, String passwordConfirmation) { + clientFactory.getUserManagement().createSimpleUser(username, email, password, + EntryPointLinkFactory.createEmailValidationLink(new HashMap()), + new AsyncCallback() { + @Override + public void onSuccess(UserDTO result) { + clientFactory.getUserManagement().login(result.getName(), password, + new AsyncCallback() { + @Override + public void onSuccess(SuccessInfo result) { + if (result.isSuccessful()) { + clientFactory.didLogin(result.getUserDTO()); + placeController.goTo(new LoggedInUserInfoPlace()); + } else { + view.setErrorMessage(result.getMessage()); + } + } + + @Override + public void onFailure(Throwable caught) { + // TODO + view.setErrorMessage("TODO - login failed"); + } + }); + } + + @Override + public void onFailure(Throwable caught) { + // TODO + view.setErrorMessage("TODO - create account failed"); + } + }); } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java index 02e2e9a8222..e6f2cbc0e66 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java @@ -5,6 +5,8 @@ import com.google.gwt.user.client.ui.IsWidget; public interface CreateAccountView extends IsWidget { void setPresenter(Presenter presenter); + + void setErrorMessage(String message); public interface Presenter { @@ -14,4 +16,5 @@ public interface CreateAccountView extends IsWidget { } + } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java index dae74c0d548..aeb15d928a7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java @@ -43,6 +43,7 @@ public class CreateAccountViewImpl extends Composite implements CreateAccountVie this.presenter = presenter; } + @Override public void setErrorMessage(String errorMessage) { formErrorUi.setInnerText(errorMessage); } From 5fd1fe71dbb48edeeb1178770150953aea628765 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Wed, 9 Dec 2015 18:27:11 +0100 Subject: [PATCH 069/367] Using pre-existing messages from security UI --- .../usermanagement/create/CreateAccountViewImpl.java | 11 +++++++---- .../recovery/PasswordRecoveryViewImpl.ui.xml | 3 ++- .../shared/usermanagement/signin/SignInViewImpl.java | 5 ++++- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java index aeb15d928a7..d2841de7c32 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java @@ -11,6 +11,7 @@ import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.PasswordTextBox; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; +import com.sap.sse.security.ui.client.i18n.StringMessages; public class CreateAccountViewImpl extends Composite implements CreateAccountView { @@ -32,10 +33,12 @@ public class CreateAccountViewImpl extends Composite implements CreateAccountVie public CreateAccountViewImpl() { initWidget(uiBinder.createAndBindUi(this)); - setPlaceholder(emailUi, "TODO Email"); - setPlaceholder(usernameUi, "TODO Username"); - setPlaceholder(passwordUi, "TODO Password"); - setPlaceholder(passwordConfirmationUi, "TODO Password Confirmation"); + + StringMessages i18n = StringMessages.INSTANCE; + setPlaceholder(emailUi, i18n.email()); + setPlaceholder(usernameUi, i18n.username()); + setPlaceholder(passwordUi, i18n.password()); + setPlaceholder(passwordConfirmationUi, i18n.passwordRepeat()); } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml index e2256016191..73e41054ce8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml @@ -2,10 +2,11 @@ + -
TODO Forgot Password
+
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java index 5b81a305cdb..3cf4b36c39c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java @@ -14,6 +14,7 @@ import com.google.gwt.user.client.ui.PasswordTextBox; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.shared.ExperimentalFeatures; +import com.sap.sse.security.ui.client.i18n.StringMessages; public class SignInViewImpl extends Composite implements SignInView { @@ -37,8 +38,10 @@ public class SignInViewImpl extends Composite implements SignInView { public SignInViewImpl() { initWidget(uiBinder.createAndBindUi(this)); + + StringMessages i18n = StringMessages.INSTANCE; setPlaceholder(loginNameUi, "TODO Username or Email"); - setPlaceholder(passwordUi, "TODO Password"); + setPlaceholder(passwordUi, i18n.password()); if (!ExperimentalFeatures.SHOW_SOCIAL_LOGINS_FOR_USER_MANGEMENT) { socialLoginUi.removeFromParent(); } From d3d1664b948cc859e656bd9ca871463bd52506f1 Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Wed, 9 Dec 2015 18:32:05 +0100 Subject: [PATCH 070/367] Ugly fix for positioning flyover on the right side --- .../home/desktop/partials/header/Header.ui.xml | 1 + .../home/shared/usermanagement/UserManagement.gss | 3 +-- .../flyover/UserManagementFlyover.java | 15 ++++++++++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml index 15edd568e80..307e1bb0bf2 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/header/Header.ui.xml @@ -37,6 +37,7 @@ +
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss index fbdb041a511..04248ab6edf 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagement.gss @@ -1,7 +1,6 @@ .flyover { font-size: 1rem; - top: 4.666667em !important; - width: 100%; + } .flyover_content { width: 24.8em; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java index 379c72113d5..d3120b3904f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java @@ -1,12 +1,15 @@ package com.sap.sailing.gwt.home.shared.usermanagement.flyover; import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.Document; +import com.google.gwt.dom.client.Element; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.IsWidget; import com.google.gwt.user.client.ui.PopupPanel; +import com.google.gwt.user.client.ui.PopupPanel.PositionCallback; import com.google.gwt.user.client.ui.SimplePanel; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementResources; @@ -39,7 +42,17 @@ public class UserManagementFlyover extends Composite implements AcceptsOneWidget } public void show() { - popupPanel.show(); + popupPanel.setPopupPositionAndShow(new PositionCallback() { + @Override + public void setPosition(int offsetWidth, int offsetHeight) { + Element anchor = Document.get().getElementById("usrMngmtFlyover"); + + if (anchor != null) { + popupPanel.setPopupPosition(anchor.getAbsoluteLeft() + anchor.getOffsetWidth() - offsetWidth + 20, + anchor.getAbsoluteTop() + 20); + } + } + }); } public void hide() { From e0afee978cca475a01a6094e6db32ee2208049d8 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Thu, 10 Dec 2015 15:38:40 +0100 Subject: [PATCH 071/367] Added interface for views showing an error message --- .../gwt/home/shared/usermanagement/ErrorMessageView.java | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/ErrorMessageView.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/ErrorMessageView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/ErrorMessageView.java new file mode 100644 index 00000000000..b3913c46b13 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/ErrorMessageView.java @@ -0,0 +1,7 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +public interface ErrorMessageView { + + void setErrorMessage(String errorMessage); + +} From 30b94d3b23abc4623a014ef3550252f4493f0766 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Thu, 10 Dec 2015 15:39:21 +0100 Subject: [PATCH 072/367] Used the interface for views showing an error message --- .../home/shared/usermanagement/create/CreateAccountView.java | 5 ++--- .../gwt/home/shared/usermanagement/signin/SignInView.java | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java index e6f2cbc0e66..69d70577cba 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountView.java @@ -1,12 +1,11 @@ package com.sap.sailing.gwt.home.shared.usermanagement.create; import com.google.gwt.user.client.ui.IsWidget; +import com.sap.sailing.gwt.home.shared.usermanagement.ErrorMessageView; -public interface CreateAccountView extends IsWidget { +public interface CreateAccountView extends ErrorMessageView, IsWidget { void setPresenter(Presenter presenter); - - void setErrorMessage(String message); public interface Presenter { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java index 3e656aeed39..8922b53067e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInView.java @@ -1,13 +1,12 @@ package com.sap.sailing.gwt.home.shared.usermanagement.signin; import com.google.gwt.user.client.ui.IsWidget; +import com.sap.sailing.gwt.home.shared.usermanagement.ErrorMessageView; -public interface SignInView extends IsWidget { +public interface SignInView extends ErrorMessageView, IsWidget { void setPresenter(Presenter presenter); - void setErrorMessage(String errorMessage); - public interface Presenter { void login(String loginName, String password); From 3017b27d03432cbc3e871017344322b8b28c082c Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Thu, 10 Dec 2015 15:40:07 +0100 Subject: [PATCH 073/367] Implemented AsyncCallback for login method calls --- .../usermanagement/AsyncLoginCallback.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java new file mode 100644 index 00000000000..b19961f2058 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java @@ -0,0 +1,38 @@ +package com.sap.sailing.gwt.home.shared.usermanagement; + +import com.google.gwt.place.shared.PlaceController; +import com.google.gwt.user.client.rpc.AsyncCallback; +import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; +import com.sap.sailing.gwt.home.shared.usermanagement.info.LoggedInUserInfoPlace; +import com.sap.sse.security.ui.client.i18n.StringMessages; +import com.sap.sse.security.ui.shared.SuccessInfo; + +public class AsyncLoginCallback implements AsyncCallback { + + private final ClientFactoryWithUserManagementService clientFactory; + private final PlaceController placeController; + private final ErrorMessageView view; + + public AsyncLoginCallback(ClientFactoryWithUserManagementService clientFactory, + PlaceController placeController, ErrorMessageView view) { + this.clientFactory = clientFactory; + this.placeController = placeController; + this.view = view; + } + + @Override + public void onSuccess(SuccessInfo result) { + if (result.isSuccessful()) { + clientFactory.didLogin(result.getUserDTO()); + placeController.goTo(new LoggedInUserInfoPlace()); + } else { + view.setErrorMessage(result.getMessage()); + } + } + + @Override + public void onFailure(Throwable caught) { + view.setErrorMessage(StringMessages.INSTANCE.failedToSignIn()); + } + +} From 287ef913c678dbc7ded33a5110e4c0490a1626e5 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Thu, 10 Dec 2015 15:40:25 +0100 Subject: [PATCH 074/367] Used AsyncCallback for login method calls --- .../create/CreateAccountActivity.java | 24 +++---------------- .../usermanagement/signin/SignInActivity.java | 22 +++-------------- 2 files changed, 6 insertions(+), 40 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java index edf61f3db85..f291ed11023 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java @@ -8,10 +8,9 @@ import com.google.gwt.place.shared.PlaceController; import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; -import com.sap.sailing.gwt.home.shared.usermanagement.info.LoggedInUserInfoPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.AsyncLoginCallback; import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; import com.sap.sse.security.ui.client.EntryPointLinkFactory; -import com.sap.sse.security.ui.shared.SuccessInfo; import com.sap.sse.security.ui.shared.UserDTO; public class CreateAccountActivity extends AbstractActivity implements CreateAccountView.Presenter { @@ -39,29 +38,12 @@ public class CreateAccountActivity extends AbstractActivity implements CreateAcc @Override public void onSuccess(UserDTO result) { clientFactory.getUserManagement().login(result.getName(), password, - new AsyncCallback() { - @Override - public void onSuccess(SuccessInfo result) { - if (result.isSuccessful()) { - clientFactory.didLogin(result.getUserDTO()); - placeController.goTo(new LoggedInUserInfoPlace()); - } else { - view.setErrorMessage(result.getMessage()); - } - } - - @Override - public void onFailure(Throwable caught) { - // TODO - view.setErrorMessage("TODO - login failed"); - } - }); + new AsyncLoginCallback(clientFactory, placeController, view)); } @Override public void onFailure(Throwable caught) { - // TODO - view.setErrorMessage("TODO - create account failed"); + view.setErrorMessage("Error occured! Creating account failed."); } }); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java index c522e7fdfcb..2b4b95f1f82 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInActivity.java @@ -3,14 +3,13 @@ package com.sap.sailing.gwt.home.shared.usermanagement.signin; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.PlaceController; -import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; +import com.sap.sailing.gwt.home.shared.usermanagement.AsyncLoginCallback; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sailing.gwt.home.shared.usermanagement.create.CreateAccountPlace; import com.sap.sailing.gwt.home.shared.usermanagement.info.LoggedInUserInfoPlace; import com.sap.sailing.gwt.home.shared.usermanagement.recovery.PasswordRecoveryPlace; -import com.sap.sse.security.ui.shared.SuccessInfo; public class SignInActivity extends AbstractActivity implements SignInView.Presenter { @@ -39,23 +38,8 @@ public class SignInActivity extends AbstractActivity implements SignInView.Prese @Override public void login(String loginName, String password) { - clientFactory.getUserManagement().login(loginName, password, new AsyncCallback() { - @Override - public void onSuccess(SuccessInfo result) { - if (result.isSuccessful()) { - clientFactory.didLogin(result.getUserDTO()); - placeController.goTo(new LoggedInUserInfoPlace()); - } else { - view.setErrorMessage(result.getMessage()); - } - } - - @Override - public void onFailure(Throwable caught) { - // TODO - view.setErrorMessage("TODO - login failed"); - } - }); + clientFactory.getUserManagement().login(loginName, password, + new AsyncLoginCallback(clientFactory, placeController, view)); } @Override From 0918815753e4ce45453c21302e69c0b2f94ea491 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Thu, 10 Dec 2015 16:20:30 +0100 Subject: [PATCH 075/367] Used the interface for views showing an error message again --- .../shared/usermanagement/recovery/PasswordRecoveryView.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java index f37e4dcfc6c..49d64efb3e5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java @@ -1,8 +1,9 @@ package com.sap.sailing.gwt.home.shared.usermanagement.recovery; import com.google.gwt.user.client.ui.IsWidget; +import com.sap.sailing.gwt.home.shared.usermanagement.ErrorMessageView; -public interface PasswordRecoveryView extends IsWidget { +public interface PasswordRecoveryView extends ErrorMessageView, IsWidget { void setPresenter(Presenter presenter); From 1ee0df2f352df3e9c41d06120d82f525c1bb7e82 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Thu, 10 Dec 2015 16:22:30 +0100 Subject: [PATCH 076/367] Added field for separat input of username or email in password recovery view --- .../recovery/PasswordRecoveryActivity.java | 2 +- .../usermanagement/recovery/PasswordRecoveryView.java | 2 +- .../recovery/PasswordRecoveryViewImpl.java | 11 ++++++++--- .../recovery/PasswordRecoveryViewImpl.ui.xml | 7 +++++-- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java index 04ba8030d71..1f1a4abee24 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java @@ -24,7 +24,7 @@ public class PasswordRecoveryActivity extends AbstractActivity implements Passwo } @Override - public void resetPassword(String loginName) { + public void resetPassword(String email, String username) { // TODO Auto-generated method stub } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java index 49d64efb3e5..200d35d4dc9 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryView.java @@ -9,6 +9,6 @@ public interface PasswordRecoveryView extends ErrorMessageView, IsWidget { public interface Presenter { - void resetPassword(String loginName); + void resetPassword(String email, String username); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java index 82aadfc77ec..023d99395a3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java @@ -9,6 +9,7 @@ import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; +import com.sap.sse.security.ui.client.i18n.StringMessages; public class PasswordRecoveryViewImpl extends Composite implements PasswordRecoveryView { @@ -17,7 +18,8 @@ public class PasswordRecoveryViewImpl extends Composite implements PasswordRecov private static PasswordRecoveryViewImplUiBinder uiBinder = GWT.create(PasswordRecoveryViewImplUiBinder.class); - @UiField TextBox loginNameUi; + @UiField TextBox emailUi; + @UiField TextBox usernameUi; @UiField DivElement formErrorUi; @@ -25,7 +27,9 @@ public class PasswordRecoveryViewImpl extends Composite implements PasswordRecov public PasswordRecoveryViewImpl() { initWidget(uiBinder.createAndBindUi(this)); - setPlaceholder(loginNameUi, "TODO Username or Email"); + StringMessages i18n = StringMessages.INSTANCE; + setPlaceholder(emailUi, i18n.email()); + setPlaceholder(usernameUi, i18n.username()); } @Override @@ -33,13 +37,14 @@ public class PasswordRecoveryViewImpl extends Composite implements PasswordRecov this.presenter = presenter; } + @Override public void setErrorMessage(String errorMessage) { formErrorUi.setInnerText(errorMessage); } @UiHandler("resetPasswordUi") void onResetPasswordUiControlClicked(ClickEvent event) { - presenter.resetPassword(loginNameUi.getValue()); + presenter.resetPassword(emailUi.getValue(), usernameUi.getValue()); } private void setPlaceholder(Widget widget, String placeholderText) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml index 73e41054ce8..cac329209a8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml @@ -7,9 +7,12 @@
+
- - + + + +
TODO Reset password From 41179f5b914cb9d40b5f8e833acad61d5224a334 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Thu, 10 Dec 2015 16:23:24 +0100 Subject: [PATCH 077/367] Implemented password recovery logic --- .../recovery/PasswordRecoveryActivity.java | 46 +++++++++++++++---- 1 file changed, 38 insertions(+), 8 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java index 1f1a4abee24..65dd42c1b10 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryActivity.java @@ -1,32 +1,62 @@ package com.sap.sailing.gwt.home.shared.usermanagement.recovery; +import static com.sap.sse.security.shared.UserManagementException.CANNOT_RESET_PASSWORD_WITHOUT_VALIDATED_EMAIL; + +import java.util.HashMap; + import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.PlaceController; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; -import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementService; +import com.sap.sailing.gwt.home.desktop.app.TabletAndDesktopApplicationClientFactory; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; +import com.sap.sse.security.shared.UserManagementException; +import com.sap.sse.security.ui.client.EntryPointLinkFactory; +import com.sap.sse.security.ui.client.i18n.StringMessages; public class PasswordRecoveryActivity extends AbstractActivity implements PasswordRecoveryView.Presenter { - private final ClientFactoryWithUserManagementService clientFactory; + private final TabletAndDesktopApplicationClientFactory clientFactory; private final PlaceController placeController; + private final PasswordRecoveryView view = new PasswordRecoveryViewImpl(); - public PasswordRecoveryActivity(ClientFactoryWithUserManagementService clientFactory, PlaceController placeController) { + public PasswordRecoveryActivity(TabletAndDesktopApplicationClientFactory clientFactory, PlaceController placeController) { this.clientFactory = clientFactory; this.placeController = placeController; } @Override public void start(AcceptsOneWidget panel, EventBus eventBus) { - PasswordRecoveryView view = new PasswordRecoveryViewImpl(); view.setPresenter(this); panel.setWidget(view); } @Override - public void resetPassword(String email, String username) { - // TODO Auto-generated method stub + public void resetPassword(String email, final String username) { + clientFactory.getUserManagement().resetPassword(username, email, + EntryPointLinkFactory.createPasswordResetLink(new HashMap()), + new AsyncCallback() { + @Override + public void onSuccess(Void result) { + clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); + placeController.goTo(new SigInPlace()); + } + + @Override + public void onFailure(Throwable caught) { + StringMessages i18n = StringMessages.INSTANCE; + if (caught instanceof UserManagementException) { + if (CANNOT_RESET_PASSWORD_WITHOUT_VALIDATED_EMAIL.equals(caught.getMessage())) { + view.setErrorMessage(i18n.cannotResetPasswordWithoutValidatedEmail(username)); + } else { + view.setErrorMessage(i18n.errorResettingPassword(username, caught.getMessage())); + } + } else { + view.setErrorMessage(i18n.errorDuringPasswordReset(caught.getMessage())); + } + } + }); } - - } From 4414196eeb1274b9c899ef696344b28fec9f2603 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 11:44:06 +0100 Subject: [PATCH 078/367] Adjusted error message for login fail --- .../gwt/home/shared/usermanagement/AsyncLoginCallback.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java index b19961f2058..043b3277a48 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/AsyncLoginCallback.java @@ -26,7 +26,11 @@ public class AsyncLoginCallback implements AsyncCallback { clientFactory.didLogin(result.getUserDTO()); placeController.goTo(new LoggedInUserInfoPlace()); } else { - view.setErrorMessage(result.getMessage()); + if (SuccessInfo.FAILED_TO_LOGIN.equals(result.getMessage())) { + view.setErrorMessage(StringMessages.INSTANCE.failedToSignIn()); + } else { + view.setErrorMessage(result.getMessage()); + } } } From 192b86860fd7504535dbcf5e9f3f03acc3290daf Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 14:24:52 +0100 Subject: [PATCH 079/367] Adjusted user profile tab view textbox positions --- .../UserAccountDetails.ui.xml | 26 ++++++++++++++----- .../useraccountDetails/UseraccountDetails.gss | 5 ++++ .../UseraccountDetailsResources.java | 1 + .../UserProfileDetailsTabView.ui.xml | 2 +- 4 files changed, 26 insertions(+), 8 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml index d1bd577ddf0..338594162ce 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml @@ -15,16 +15,28 @@
- +
- +
+
+ + +
+
+
+ +
+
+
- +
- +
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss index 9d50c4923aa..5853fafb6f8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss @@ -59,3 +59,8 @@ text-align: right; text-transform: uppercase; } +.useraccountdetails_content_spacer { + width: 100%; + float: right; + height: 4em; +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java index 4a741f4f2b2..b6beee48cc3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetailsResources.java @@ -19,5 +19,6 @@ public interface UseraccountDetailsResources extends ClientBundle { String useraccountdetails_content_detail_label(); String useraccountdetails_content_detail_input(); String useraccountdetails_content_submit(); + String useraccountdetails_content_spacer(); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml index 6aa90582689..28b6084afee 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml @@ -7,7 +7,7 @@
TODO you are currently not logged in
- +
\ No newline at end of file From 4ee722c86baf609b121025c12772580422074d1d Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 14:44:09 +0100 Subject: [PATCH 080/367] Introduced widget for inputs on user profil tab view --- .../useraccountDetails/UserAccountDetails.java | 14 +++++++++++++- .../UserAccountDetails.ui.xml | 18 +++++++++--------- .../useraccountDetails/UseraccountDetails.gss | 2 ++ 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java index 460f2a23625..74e770ff53e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java @@ -6,6 +6,8 @@ import com.google.gwt.dom.client.InputElement; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.PasswordTextBox; +import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sse.security.ui.shared.UserDTO; @@ -22,11 +24,17 @@ public class UserAccountDetails extends Composite { @UiField AnchorElement editImageLinkUi; @UiField InputElement usernameUi; @UiField InputElement nameUi; - @UiField InputElement emailUi; + @UiField TextBox emailUi; + @UiField PasswordTextBox oldPasswordUi; + @UiField PasswordTextBox newPasswordUi; + @UiField PasswordTextBox newPasswordConfirmationUi; public UserAccountDetails(Presenter presenter) { UseraccountDetailsResources.INSTANCE.css().ensureInjected(); initWidget(uiBinder.createAndBindUi(this)); + setPlaceholder(oldPasswordUi, "TODO placeholder text"); + setPlaceholder(newPasswordUi, "TODO placeholder text"); + setPlaceholder(newPasswordConfirmationUi, "TODO placeholder text"); } public void setUserManagementContext(UserManagementContext userManagementContext) { @@ -40,4 +48,8 @@ public class UserAccountDetails extends Composite { usernameUi.setValue(currentUser.getName()); emailUi.setValue(currentUser.getEmail()); } + + private void setPlaceholder(Widget widget, String placeholderText) { + widget.getElement().setAttribute("placeholder", placeholderText); + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml index 338594162ce..d8d8cb669a3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml @@ -29,12 +29,12 @@ - +
-
+ -
+
@@ -42,13 +42,13 @@ - +
- +
- +
-
+ -
+
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss index 5853fafb6f8..879a60bac71 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss @@ -57,6 +57,8 @@ width: 100%; float: right; text-align: right; +} +.useraccountdetails_content_submit > button { text-transform: uppercase; } .useraccountdetails_content_spacer { From 2c55d7c3b692e7eb10b7b653de92ec5bffdaa75a Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 14:56:20 +0100 Subject: [PATCH 081/367] Connected user profile tab view which its presenter class --- .../UserAccountDetails.java | 20 +++++++++++++++++++ .../user/profile/UserProfileActivity.java | 11 ++++++++++ .../places/user/profile/UserProfileView.java | 3 ++- .../detailstab/UserProfileDetailsTabView.java | 7 +++---- 4 files changed, 36 insertions(+), 5 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java index 74e770ff53e..de1978e53e5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java @@ -3,8 +3,10 @@ package com.sap.sailing.gwt.home.desktop.partials.useraccountDetails; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.AnchorElement; import com.google.gwt.dom.client.InputElement; +import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.PasswordTextBox; import com.google.gwt.user.client.ui.TextBox; @@ -19,6 +21,8 @@ public class UserAccountDetails extends Composite { } public interface Presenter { + void handleSaveChangesRequest(String email); + void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation); } @UiField AnchorElement editImageLinkUi; @@ -29,12 +33,17 @@ public class UserAccountDetails extends Composite { @UiField PasswordTextBox newPasswordUi; @UiField PasswordTextBox newPasswordConfirmationUi; + private final Presenter presenter; + public UserAccountDetails(Presenter presenter) { + this.presenter = presenter; UseraccountDetailsResources.INSTANCE.css().ensureInjected(); initWidget(uiBinder.createAndBindUi(this)); setPlaceholder(oldPasswordUi, "TODO placeholder text"); setPlaceholder(newPasswordUi, "TODO placeholder text"); setPlaceholder(newPasswordConfirmationUi, "TODO placeholder text"); + // TODO remove after specifying desing for image upload + editImageLinkUi.removeFromParent(); } public void setUserManagementContext(UserManagementContext userManagementContext) { @@ -52,4 +61,15 @@ public class UserAccountDetails extends Composite { private void setPlaceholder(Widget widget, String placeholderText) { widget.getElement().setAttribute("placeholder", placeholderText); } + + @UiHandler("saveChangesUi") + void onSaveChangesClicked(ClickEvent event) { + presenter.handleSaveChangesRequest(emailUi.getValue()); + } + + @UiHandler("changePasswordUi") + void onChangePasswordClicked(ClickEvent event) { + presenter.handlePasswordChangeRequest(oldPasswordUi.getValue(), newPasswordUi.getValue(), + newPasswordConfirmationUi.getValue()); + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java index 7c3d11ae898..35d7018d619 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java @@ -6,6 +6,7 @@ import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.Place; import com.google.gwt.safehtml.shared.SafeUri; import com.google.gwt.safehtml.shared.UriUtils; +import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; import com.sap.sailing.gwt.home.desktop.app.DesktopPlacesNavigator; @@ -63,6 +64,16 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile }); } + + @Override + public void handleSaveChangesRequest(String email) { + Window.alert("Saving changes ..."); + } + + @Override + public void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation) { + Window.alert("Changes password ..."); + } @Override public void handleTabPlaceSelection(TabView selectedActivity) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java index 03d7441d7c4..d4096a65214 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java @@ -4,6 +4,7 @@ import com.google.gwt.place.shared.Place; import com.google.gwt.safehtml.shared.SafeUri; import com.google.gwt.user.client.ui.IsWidget; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.home.desktop.partials.useraccountDetails.UserAccountDetails; import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; @@ -12,7 +13,7 @@ import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePl public interface UserProfileView extends IsWidget { - public interface Presenter { + public interface Presenter extends UserAccountDetails.Presenter { void handleTabPlaceSelection(TabView selectedActivity); SafeUri getUrl(AbstractSeriesPlace place); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java index 8d289104cc6..5fc9a5a9865 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java @@ -24,12 +24,12 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT } private static MyBinder ourUiBinder = GWT.create(MyBinder.class); - @SuppressWarnings("unused") - private UserProfileView.Presenter currentPresenter; @UiField DivElement notLoggedInUi; @UiField(provided = true) UserAccountDetails accountDetailsUi; + private UserProfileView.Presenter currentPresenter; + public UserProfileDetailsTabView() { } @@ -45,9 +45,8 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT @Override public void start(UserProfileDetailsPlace myPlace, AcceptsOneWidget contentArea) { - accountDetailsUi = new UserAccountDetails(null); + accountDetailsUi = new UserAccountDetails(currentPresenter); initWidget(ourUiBinder.createAndBindUi(this)); - contentArea.setWidget(this); } From 8043627f9a0c87c77dcae1492f5ec0e5ff9ed5ff Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 16:08:55 +0100 Subject: [PATCH 082/367] Adjusted user profile tab view components --- .../useraccountDetails/UserAccountDetails.java | 9 +++++---- .../useraccountDetails/UserAccountDetails.ui.xml | 12 +++++------- .../useraccountDetails/UseraccountDetails.gss | 5 +++-- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java index de1978e53e5..bb4f999f20c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java @@ -1,7 +1,7 @@ package com.sap.sailing.gwt.home.desktop.partials.useraccountDetails; import com.google.gwt.core.client.GWT; -import com.google.gwt.dom.client.AnchorElement; +import com.google.gwt.dom.client.DivElement; import com.google.gwt.dom.client.InputElement; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.uibinder.client.UiBinder; @@ -25,7 +25,7 @@ public class UserAccountDetails extends Composite { void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation); } - @UiField AnchorElement editImageLinkUi; + @UiField DivElement editImageLinkUi; @UiField InputElement usernameUi; @UiField InputElement nameUi; @UiField TextBox emailUi; @@ -42,8 +42,6 @@ public class UserAccountDetails extends Composite { setPlaceholder(oldPasswordUi, "TODO placeholder text"); setPlaceholder(newPasswordUi, "TODO placeholder text"); setPlaceholder(newPasswordConfirmationUi, "TODO placeholder text"); - // TODO remove after specifying desing for image upload - editImageLinkUi.removeFromParent(); } public void setUserManagementContext(UserManagementContext userManagementContext) { @@ -56,6 +54,9 @@ public class UserAccountDetails extends Composite { nameUi.setValue(currentUser.getName()); usernameUi.setValue(currentUser.getName()); emailUi.setValue(currentUser.getEmail()); + oldPasswordUi.setValue(""); + newPasswordUi.setValue(""); + newPasswordConfirmationUi.setValue(""); } private void setPlaceholder(Widget widget, String placeholderText) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml index d8d8cb669a3..91c580fc4c8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml @@ -9,9 +9,9 @@
- -
-
+
+ +
- +
-
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss index 879a60bac71..7901bd40eb8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss @@ -25,7 +25,8 @@ background-position: center center; } .useraccountdetails_image:hover .useraccountdetails_image_editbutton { - display: block; + /* remove comment after specifying design for image upload */ + /* display: block; */ } .useraccountdetails_content { float: left; @@ -64,5 +65,5 @@ .useraccountdetails_content_spacer { width: 100%; float: right; - height: 4em; + height: 2em; } From a6c76fd9f46d84c3ccbe26921849ef12d0398b52 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 16:09:47 +0100 Subject: [PATCH 083/367] Called respective backend service methods in presenter class --- .../user/profile/UserProfileActivity.java | 56 ++++++++++++++++--- 1 file changed, 47 insertions(+), 9 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java index 35d7018d619..e6ef9b23288 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java @@ -1,5 +1,7 @@ package com.sap.sailing.gwt.home.desktop.places.user.profile; +import java.util.HashMap; + import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.core.shared.GWT; import com.google.gwt.event.shared.EventBus; @@ -7,6 +9,7 @@ import com.google.gwt.place.shared.Place; import com.google.gwt.safehtml.shared.SafeUri; import com.google.gwt.safehtml.shared.UriUtils; import com.google.gwt.user.client.Window; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; import com.sap.sailing.gwt.home.desktop.app.DesktopPlacesNavigator; @@ -18,10 +21,13 @@ import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; -import com.sap.sailing.gwt.ui.client.StringMessages; +import com.sap.sse.security.shared.UserManagementException; +import com.sap.sse.security.ui.client.EntryPointLinkFactory; +import com.sap.sse.security.ui.client.i18n.StringMessages; public class UserProfileActivity extends AbstractActivity implements UserProfileView.Presenter { + private final StringMessages i18n_sec = StringMessages.INSTANCE; protected final AbstractUserProfilePlace currentPlace; protected final UserProfileClientFactory clientFactory; @@ -41,8 +47,7 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile } private void initNavigationPath(NavigationPathDisplay navigationPathDisplay) { - StringMessages i18n = StringMessages.INSTANCE; - com.sap.sse.security.ui.client.i18n.StringMessages i18n_sec = com.sap.sse.security.ui.client.i18n.StringMessages.INSTANCE; + com.sap.sailing.gwt.ui.client.StringMessages i18n = com.sap.sailing.gwt.ui.client.StringMessages.INSTANCE; navigationPathDisplay.showNavigationPath(new NavigationItem(i18n.home(), getHomeNavigation()), new NavigationItem(i18n_sec.userDetails(), getUserProfileNavigation())); } @@ -51,11 +56,8 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile public void start(final AcceptsOneWidget panel, final EventBus eventBus) { currentView.registerPresenter(this); panel.setWidget(currentView); - currentView.navigateTabsTo(currentPlace); - currentView.setUserManagementContext(clientFactory.getUserManagementContext()); - eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { @Override public void onUserChangeEvent(UserManagementContextEvent event) { @@ -66,13 +68,49 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile } @Override - public void handleSaveChangesRequest(String email) { - Window.alert("Saving changes ..."); + public void handleSaveChangesRequest(final String email) { + final String username = clientFactory.getUserManagementContext().getCurrentUser().getName(); + clientFactory.getUserManagementService().updateSimpleUserEmail(username, email, + EntryPointLinkFactory.createEmailValidationLink(new HashMap()), + new AsyncCallback() { + @Override + public void onSuccess(Void result) { + Window.alert(i18n_sec.successfullyUpdatedEmail(username, email)); + } + + @Override + public void onFailure(Throwable caught) { + Window.alert(i18n_sec.errorUpdatingEmail(caught.getMessage())); + } + }); } @Override public void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation) { - Window.alert("Changes password ..."); + final String username = clientFactory.getUserManagementContext().getCurrentUser().getName(); + clientFactory.getUserManagementService().updateSimpleUserPassword(username, oldPassword, null, newPassword, + new AsyncCallback() { + @Override + public void onFailure(Throwable caught) { + if (caught instanceof UserManagementException) { + String message = ((UserManagementException) caught).getMessage(); + if (UserManagementException.PASSWORD_DOES_NOT_MEET_REQUIREMENTS.equals(message)) { + Window.alert(i18n_sec.passwordDoesNotMeetRequirements()); + } else if (UserManagementException.INVALID_CREDENTIALS.equals(message)) { + Window.alert(i18n_sec.invalidCredentials()); + } else { + Window.alert(i18n_sec.errorChangingPassword(caught.getMessage())); + } + } else { + Window.alert(i18n_sec.errorChangingPassword(caught.getMessage())); + } + } + + @Override + public void onSuccess(Void result) { + Window.alert(i18n_sec.passwordSuccessfullyChanged()); + } + }); } @Override From e368e854b8157bd640387a08dc62e49f1db52f49 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 16:10:18 +0100 Subject: [PATCH 084/367] Adjusted user management flyover positioning --- .../shared/usermanagement/flyover/UserManagementFlyover.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java index d3120b3904f..df0b9e858db 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/flyover/UserManagementFlyover.java @@ -46,10 +46,9 @@ public class UserManagementFlyover extends Composite implements AcceptsOneWidget @Override public void setPosition(int offsetWidth, int offsetHeight) { Element anchor = Document.get().getElementById("usrMngmtFlyover"); - if (anchor != null) { - popupPanel.setPopupPosition(anchor.getAbsoluteLeft() + anchor.getOffsetWidth() - offsetWidth + 20, - anchor.getAbsoluteTop() + 20); + int left = anchor.getAbsoluteLeft() + anchor.getOffsetWidth() - offsetWidth + 15; + popupPanel.setPopupPosition(left, anchor.getAbsoluteTop() + 20); } } }); From b2184bcce0e36aaef55465f7b35f35af6dbe8b6b Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 17:26:02 +0100 Subject: [PATCH 085/367] Adjusted user profile tab view alignment once more --- .../UserAccountDetails.ui.xml | 40 ++++++++++--------- .../useraccountDetails/UseraccountDetails.gss | 16 ++++---- 2 files changed, 30 insertions(+), 26 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml index 91c580fc4c8..25677b25cf7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml @@ -13,55 +13,57 @@
-
- - -
-
+
+
-
+
+ + +
+
-
+
-
-
+
+
+ + +
+
-
- - -
-
+
-
+
+
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss index 7901bd40eb8..b716f5109bf 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UseraccountDetails.gss @@ -35,15 +35,19 @@ padding-left: 12em; margin-left: -10em; } +.useraccountdetails_content > div { + font-size: 0; +} .useraccountdetails_content_detail { - float: right; - width: 50%; padding-left: 1.333333333333333em; margin-bottom: 1.333333333333333em; overflow: hidden; + font-size: 1rem; + display: inline-block; } .useraccountdetails_content_detail_label { display: block; + width: 100%; font-weight: 600; margin-bottom: 0.4em; } @@ -55,15 +59,13 @@ border: 1px solid #ccc; } .useraccountdetails_content_submit { - width: 100%; - float: right; text-align: right; } .useraccountdetails_content_submit > button { text-transform: uppercase; + margin-left: 1.333333333333333em; } .useraccountdetails_content_spacer { - width: 100%; - float: right; - height: 2em; + height: 2rem; + display: inline-block; } From b664cc6ad0664cd13fc159f6f27cd7ecb0fa8111 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 17:39:26 +0100 Subject: [PATCH 086/367] Added client-side validation to user profile tab view --- .../places/user/profile/UserProfileActivity.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java index e6ef9b23288..69e27a8f3a5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java @@ -23,17 +23,19 @@ import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePl import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sse.security.shared.UserManagementException; import com.sap.sse.security.ui.client.EntryPointLinkFactory; +import com.sap.sse.security.ui.client.component.NewAccountValidator; import com.sap.sse.security.ui.client.i18n.StringMessages; public class UserProfileActivity extends AbstractActivity implements UserProfileView.Presenter { - private final StringMessages i18n_sec = StringMessages.INSTANCE; + private static final ApplicationHistoryMapper historyMapper = GWT.create(ApplicationHistoryMapper.class); + protected final AbstractUserProfilePlace currentPlace; protected final UserProfileClientFactory clientFactory; - protected final DesktopPlacesNavigator homePlacesNavigator; - - private static final ApplicationHistoryMapper historyMapper = GWT.create(ApplicationHistoryMapper.class); + + private final StringMessages i18n_sec = StringMessages.INSTANCE; + private final NewAccountValidator validator = new NewAccountValidator(i18n_sec); private UserProfileView currentView = new TabletAndDesktopUserProfileView(); @@ -88,6 +90,11 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile @Override public void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation) { final String username = clientFactory.getUserManagementContext().getCurrentUser().getName(); + String errorMessage = validator.validateUsernameAndPassword(username, newPassword, newPasswordConfirmation); + if (errorMessage != null && !errorMessage.isEmpty()) { + Window.alert(errorMessage); + return; + } clientFactory.getUserManagementService().updateSimpleUserPassword(username, oldPassword, null, newPassword, new AsyncCallback() { @Override From 1849fec679f57c791f82183e230a65fc66a0192d Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Mon, 14 Dec 2015 18:11:25 +0100 Subject: [PATCH 087/367] Added client-side validation to create account view --- .../usermanagement/create/CreateAccountActivity.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java index f291ed11023..3601f9bc54c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountActivity.java @@ -11,6 +11,8 @@ import com.sap.sailing.gwt.home.shared.app.ClientFactoryWithUserManagementServic import com.sap.sailing.gwt.home.shared.usermanagement.AsyncLoginCallback; import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; import com.sap.sse.security.ui.client.EntryPointLinkFactory; +import com.sap.sse.security.ui.client.component.NewAccountValidator; +import com.sap.sse.security.ui.client.i18n.StringMessages; import com.sap.sse.security.ui.shared.UserDTO; public class CreateAccountActivity extends AbstractActivity implements CreateAccountView.Presenter { @@ -18,6 +20,9 @@ public class CreateAccountActivity extends AbstractActivity implements CreateAcc private final ClientFactoryWithUserManagementService clientFactory; private final PlaceController placeController; private final CreateAccountView view = new CreateAccountViewImpl(); + + private final StringMessages i18n_sec = StringMessages.INSTANCE; + private final NewAccountValidator validator = new NewAccountValidator(i18n_sec); public CreateAccountActivity(ClientFactoryWithUserManagementService clientFactory, PlaceController placeController) { this.clientFactory = clientFactory; @@ -32,6 +37,11 @@ public class CreateAccountActivity extends AbstractActivity implements CreateAcc @Override public void createAccount(String username, String email, final String password, String passwordConfirmation) { + String errorMessage = validator.validateUsernameAndPassword(username, password, passwordConfirmation); + if (errorMessage != null && !errorMessage.isEmpty()) { + view.setErrorMessage(errorMessage); + return; + } clientFactory.getUserManagement().createSimpleUser(username, email, password, EntryPointLinkFactory.createEmailValidationLink(new HashMap()), new AsyncCallback() { From b328ef0f7a952dceb00d586657b432339a3ded13 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 09:58:44 +0100 Subject: [PATCH 088/367] Added spacing to the bottom of user profile tab view --- .../user/profile/detailstab/UserProfileDetailsTabView.ui.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml index 28b6084afee..f310f1de1f2 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml @@ -7,7 +7,8 @@
TODO you are currently not logged in
- +
\ No newline at end of file From 41a59d7c7ca0893632f8e941f94efd9f357b8aca Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 10:12:11 +0100 Subject: [PATCH 089/367] Refactored event state calculation in HomeServiceUtil --- .../sap/sailing/gwt/server/HomeServiceUtil.java | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/server/HomeServiceUtil.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/server/HomeServiceUtil.java index d6e1ab0216b..2555a21b45c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/server/HomeServiceUtil.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/server/HomeServiceUtil.java @@ -4,7 +4,6 @@ import java.net.MalformedURLException; import java.net.URL; import java.util.ArrayList; import java.util.Collection; -import java.util.Date; import java.util.Iterator; import java.util.LinkedList; import java.util.List; @@ -92,18 +91,11 @@ public final class HomeServiceUtil { } public static EventState calculateEventState(EventBase event) { - return calculateEventState(event.isPublic(), event.getStartDate().asDate(), event.getEndDate().asDate()); - } - - public static EventState calculateEventState(boolean isPublic, Date startDate, Date endDate) { - Date now = new Date(); - if(now.compareTo(startDate) < 0) { - if(isPublic) { - return EventState.UPCOMING; - } - return EventState.PLANNED; + TimePoint now = MillisecondsTimePoint.now(); + if (now.before(event.getStartDate())) { + return event.isPublic() ? EventState.UPCOMING : EventState.PLANNED; } - if(now.compareTo(endDate) > 0) { + if (now.after(event.getEndDate())) { return EventState.FINISHED; } return EventState.RUNNING; From 25ac591932e513aa14de6c1f44e8ae0d63e2713a Mon Sep 17 00:00:00 2001 From: Papick Garcia Taboada Date: Tue, 15 Dec 2015 11:00:20 +0100 Subject: [PATCH 090/367] Fixed encoding --- .../.settings/org.eclipse.core.resources.prefs | 7 ++++--- .../security/ui/client/i18n/StringMessages_de.properties | 6 +++--- 2 files changed, 7 insertions(+), 6 deletions(-) mode change 100755 => 100644 java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties diff --git a/java/com.sap.sse.security.ui/.settings/org.eclipse.core.resources.prefs b/java/com.sap.sse.security.ui/.settings/org.eclipse.core.resources.prefs index 597b388e1ed..bad142803ca 100755 --- a/java/com.sap.sse.security.ui/.settings/org.eclipse.core.resources.prefs +++ b/java/com.sap.sse.security.ui/.settings/org.eclipse.core.resources.prefs @@ -1,3 +1,4 @@ -eclipse.preferences.version=1 -encoding//src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties=UTF-8 -encoding//src/main/java/com/sap/sse/security/ui/servlet/RedirectServlet.java=utf-8 +eclipse.preferences.version=1 +encoding//src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties=UTF-8 +encoding//src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties=UTF-8 +encoding//src/main/java/com/sap/sse/security/ui/servlet/RedirectServlet.java=utf-8 diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties old mode 100755 new mode 100644 index a378439264d..3f567e57bd4 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties @@ -42,8 +42,8 @@ errorUpdatingPermissions=Fehler beim Aktualisieren der Berechtigungen des Benutz enterRoleName=Rollennamen eingeben... enterPermissionName=Berechtigungsnamen eingeben... errorCreatingUser=Fehler beim Anlegen des Benutzers mit Namen {0}: {1} -signedUpSuccessfully=Benutzer {0} erfolgreich angelegt. Bitte e-Mails pr�fen, um e-Mail-Adresse zu validieren. -unknownErrorCreatingUser=Unbekannter Fehler beim Versuch, den Benutzer mit dem Namen {0} anzulegen. M�glicherweise existiert ein Benutzer gleichen Namens bereits. +signedUpSuccessfully=Benutzer {0} erfolgreich angelegt. Bitte e-Mails prüfen, um e-Mail-Adresse zu validieren. +unknownErrorCreatingUser=Unbekannter Fehler beim Versuch, den Benutzer mit dem Namen {0} anzulegen. Möglicherweise existiert ein Benutzer gleichen Namens bereits. userAlreadyExists=Ein Benutzer mit dem Namen {0} existiert bereits currentPassword=Derzeitiges Passwort passwordSuccessfullyChanged=Passwort erfolgreich geändert @@ -52,7 +52,7 @@ errorChangingPassword=Fehler beim Ändern des Passwortes: {0} invalidCredentials=Ungültige Zugangsdaten editEmail=e-Mail-Adresse bearbeiten errorUpdatingEmail=Fehler beim Aktualisieren der e-Mail-Adresse: {0} -successfullyUpdatedEmail=e-Mail-Adresse f�r Benutzer {0} erfolgreich aktualisiert.\nBest�tigungs-e-Mail an {1} versandt. +successfullyUpdatedEmail=e-Mail-Adresse für Benutzer {0} erfolgreich aktualisiert.\nBestätigungs-e-Mail an {1} versandt. forgotPassword=Passwort vergessen errorDuringPasswordReset=Fehler beim Zurücksetzen des Passworts: {0} cannotResetPasswordWithoutValidatedEmail=Passwort für Benutzer {0} kann nicht zurückgesetzt werden, da keine validierte e-Mail-Adresse vorliegt From 63f1cfe889a55065b3b41e69405a627e00d392ba Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 11:14:34 +0100 Subject: [PATCH 091/367] Added message for "Signed in as:" --- .../shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml | 2 +- .../com/sap/sse/security/ui/client/i18n/StringMessages.java | 1 + .../sap/sse/security/ui/client/i18n/StringMessages.properties | 1 + .../sse/security/ui/client/i18n/StringMessages_de.properties | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml index 159c09fa886..702b6c3a4ff 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoViewImpl.ui.xml @@ -6,7 +6,7 @@ -
TODO Signed in as:
+
diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java index 44e0ed0b1c7..cfc2978d68b 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java @@ -21,6 +21,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages { String tryingToVerifyUser(); String fetchingUserInformation(); String signedInAs(String name); + String signedInAsTitle(); String close(); String loading(); String users(); diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties index 15566305597..170c76982e2 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties @@ -14,6 +14,7 @@ welcome=Welcome, {0}! tryingToVerifyUser=Trying to verify user... fetchingUserInformation=Fetching user information... signedInAs=Signed in as {0} +signedInAsTitle=Signed in as: close=Close loading=Loading... users=Users diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties index 3f567e57bd4..534837ccab4 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties @@ -14,6 +14,7 @@ welcome=Hallo {0}! tryingToVerifyUser=Zugangsdaten werden überprüft... fetchingUserInformation=Benutzerdaten werden geladen... signedInAs=Angemeldet als {0} +signedInAsTitle=Angemeldet als: close=Schliessen loading=Lädt... users=Benutzer From 30977ecca2536569eeb65b2d6f7e3c01c07a3eb2 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 11:32:19 +0100 Subject: [PATCH 092/367] Using pre-existing message from security UI --- .../gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml index e2d9c8de36a..e6d2df2c08a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.ui.xml @@ -8,7 +8,7 @@
- + From b88676b6e3346eb18fb5ab945ba0b3a058a76f57 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 11:48:21 +0100 Subject: [PATCH 093/367] Removed textbox placeholders from views where the placeholder doesn't provide additional information --- .../usermanagement/create/CreateAccountViewImpl.java | 2 -- .../recovery/PasswordRecoveryViewImpl.java | 9 --------- .../shared/usermanagement/signin/SignInViewImpl.java | 8 -------- 3 files changed, 19 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java index d2841de7c32..481479c30ca 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java @@ -35,8 +35,6 @@ public class CreateAccountViewImpl extends Composite implements CreateAccountVie initWidget(uiBinder.createAndBindUi(this)); StringMessages i18n = StringMessages.INSTANCE; - setPlaceholder(emailUi, i18n.email()); - setPlaceholder(usernameUi, i18n.username()); setPlaceholder(passwordUi, i18n.password()); setPlaceholder(passwordConfirmationUi, i18n.passwordRepeat()); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java index 023d99395a3..5ce5ce36614 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.java @@ -9,7 +9,6 @@ import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; -import com.sap.sse.security.ui.client.i18n.StringMessages; public class PasswordRecoveryViewImpl extends Composite implements PasswordRecoveryView { @@ -27,9 +26,6 @@ public class PasswordRecoveryViewImpl extends Composite implements PasswordRecov public PasswordRecoveryViewImpl() { initWidget(uiBinder.createAndBindUi(this)); - StringMessages i18n = StringMessages.INSTANCE; - setPlaceholder(emailUi, i18n.email()); - setPlaceholder(usernameUi, i18n.username()); } @Override @@ -46,9 +42,4 @@ public class PasswordRecoveryViewImpl extends Composite implements PasswordRecov void onResetPasswordUiControlClicked(ClickEvent event) { presenter.resetPassword(emailUi.getValue(), usernameUi.getValue()); } - - private void setPlaceholder(Widget widget, String placeholderText) { - widget.getElement().setAttribute("placeholder", placeholderText); - } - } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java index 3cf4b36c39c..1ebadfda73f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/signin/SignInViewImpl.java @@ -14,7 +14,6 @@ import com.google.gwt.user.client.ui.PasswordTextBox; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.shared.ExperimentalFeatures; -import com.sap.sse.security.ui.client.i18n.StringMessages; public class SignInViewImpl extends Composite implements SignInView { @@ -39,9 +38,6 @@ public class SignInViewImpl extends Composite implements SignInView { public SignInViewImpl() { initWidget(uiBinder.createAndBindUi(this)); - StringMessages i18n = StringMessages.INSTANCE; - setPlaceholder(loginNameUi, "TODO Username or Email"); - setPlaceholder(passwordUi, i18n.password()); if (!ExperimentalFeatures.SHOW_SOCIAL_LOGINS_FOR_USER_MANGEMENT) { socialLoginUi.removeFromParent(); } @@ -99,10 +95,6 @@ public class SignInViewImpl extends Composite implements SignInView { presenter.login(loginNameUi.getValue(), passwordUi.getValue()); } - private void setPlaceholder(Widget widget, String placeholderText) { - widget.getElement().setAttribute("placeholder", placeholderText); - } - private void selectAll(TextBox textBox) { textBox.setFocus(true); textBox.selectAll(); From c97a89e228883f29c92b77c0500ccab241360ecc Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 11:49:16 +0100 Subject: [PATCH 094/367] I18n for placeholder texts --- .../partials/useraccountDetails/UserAccountDetails.java | 8 +++++--- .../usermanagement/create/CreateAccountViewImpl.java | 4 ++-- .../sap/sse/security/ui/client/i18n/StringMessages.java | 3 +++ .../sse/security/ui/client/i18n/StringMessages.properties | 5 ++++- .../security/ui/client/i18n/StringMessages_de.properties | 5 ++++- 5 files changed, 18 insertions(+), 7 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java index bb4f999f20c..81197e6fa2b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.java @@ -12,6 +12,7 @@ import com.google.gwt.user.client.ui.PasswordTextBox; import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; +import com.sap.sse.security.ui.client.i18n.StringMessages; import com.sap.sse.security.ui.shared.UserDTO; public class UserAccountDetails extends Composite { @@ -39,9 +40,10 @@ public class UserAccountDetails extends Composite { this.presenter = presenter; UseraccountDetailsResources.INSTANCE.css().ensureInjected(); initWidget(uiBinder.createAndBindUi(this)); - setPlaceholder(oldPasswordUi, "TODO placeholder text"); - setPlaceholder(newPasswordUi, "TODO placeholder text"); - setPlaceholder(newPasswordConfirmationUi, "TODO placeholder text"); + StringMessages i18n = StringMessages.INSTANCE; + setPlaceholder(oldPasswordUi, i18n.oldPasswordPlaceholder()); + setPlaceholder(newPasswordUi, i18n.newPasswordPlaceholder()); + setPlaceholder(newPasswordConfirmationUi, i18n.passwordRepeatPlaceholder()); } public void setUserManagementContext(UserManagementContext userManagementContext) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java index 481479c30ca..60094615f8d 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.java @@ -35,8 +35,8 @@ public class CreateAccountViewImpl extends Composite implements CreateAccountVie initWidget(uiBinder.createAndBindUi(this)); StringMessages i18n = StringMessages.INSTANCE; - setPlaceholder(passwordUi, i18n.password()); - setPlaceholder(passwordConfirmationUi, i18n.passwordRepeat()); + setPlaceholder(passwordUi, i18n.newPasswordPlaceholder()); + setPlaceholder(passwordConfirmationUi, i18n.passwordRepeatPlaceholder()); } @Override diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java index cfc2978d68b..967235479b2 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java @@ -84,4 +84,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages { String errorCommunicatingWithServer(); String editProfile(); String allPermissions(); + String newPasswordPlaceholder(); + String oldPasswordPlaceholder(); + String passwordRepeatPlaceholder(); } diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties index 170c76982e2..51ddd484357 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties @@ -79,4 +79,7 @@ editProfile=Edit user profile allPermissions=All permissions (including inferred from roles) configuration=Configuration settingsForComponent=Settings for {0} -pleaseSelect=Please select \ No newline at end of file +pleaseSelect=Please select +newPasswordPlaceholder=Type in a new password +oldPasswordPlaceholder=Type in the old password +passwordRepeatPlaceholder=Repeat the new password diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties index 534837ccab4..54139cc1550 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties @@ -79,4 +79,7 @@ editProfile=Benutzerprofil bearbeiten allPermissions=Alle Berechtigungen (einschließlich der aus den Rollen abgeleiteten) configuration=Konfiguration settingsForComponent=Einstellungen für {0} -pleaseSelect=Bitte auswählen \ No newline at end of file +pleaseSelect=Bitte auswählen +newPasswordPlaceholder=Geben Sie ein neues Passwort ein +oldPasswordPlaceholder=Geben Sie das alte Passwort ein +passwordRepeatPlaceholder=Wiederholen Sie das Passwort From 4a09402d93af015d44c7d6c33635acaf9e15f758 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 11:51:21 +0100 Subject: [PATCH 095/367] I18n for "old password" field label --- .../partials/useraccountDetails/UserAccountDetails.ui.xml | 2 +- .../com/sap/sse/security/ui/client/i18n/StringMessages.java | 1 + .../sap/sse/security/ui/client/i18n/StringMessages.properties | 1 + .../sse/security/ui/client/i18n/StringMessages_de.properties | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml index 25677b25cf7..19250ade29a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/useraccountDetails/UserAccountDetails.ui.xml @@ -40,7 +40,7 @@
diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java index 967235479b2..6ee5060ee4a 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java @@ -84,6 +84,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages { String errorCommunicatingWithServer(); String editProfile(); String allPermissions(); + String oldPassword(); String newPasswordPlaceholder(); String oldPasswordPlaceholder(); String passwordRepeatPlaceholder(); diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties index 51ddd484357..afcd45d95f4 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties @@ -80,6 +80,7 @@ allPermissions=All permissions (including inferred from roles) configuration=Configuration settingsForComponent=Settings for {0} pleaseSelect=Please select +oldPassword=Old password newPasswordPlaceholder=Type in a new password oldPasswordPlaceholder=Type in the old password passwordRepeatPlaceholder=Repeat the new password diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties index 54139cc1550..32242054887 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties @@ -80,6 +80,7 @@ allPermissions=Alle Berechtigungen (einschließlich der aus den Rollen abgeleite configuration=Konfiguration settingsForComponent=Einstellungen für {0} pleaseSelect=Bitte auswählen +oldPassword=Altes Passwort newPasswordPlaceholder=Geben Sie ein neues Passwort ein oldPasswordPlaceholder=Geben Sie das alte Passwort ein passwordRepeatPlaceholder=Wiederholen Sie das Passwort From f6d5420af93cfb902a2d973c327a01edb40c81e9 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 11:57:16 +0100 Subject: [PATCH 096/367] Using pre-existing welcome message from security UI --- .../shared/usermanagement/create/CreateAccountViewImpl.ui.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml index 5c644f795b8..a4c089e8f77 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/create/CreateAccountViewImpl.ui.xml @@ -7,7 +7,7 @@
-
Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte.
+
From 1d66ec3e6df9046f5aabe23dfa2d32102d9a7f54 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 12:01:30 +0100 Subject: [PATCH 097/367] I18n for "reset password" button --- .../usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml | 2 +- .../com/sap/sse/security/ui/client/i18n/StringMessages.java | 1 + .../sap/sse/security/ui/client/i18n/StringMessages.properties | 1 + .../sse/security/ui/client/i18n/StringMessages_de.properties | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml index cac329209a8..18343781800 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/recovery/PasswordRecoveryViewImpl.ui.xml @@ -15,7 +15,7 @@
TODO Reset password + ui:field="resetPasswordUi">
diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java index 6ee5060ee4a..d24911d91cb 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java @@ -88,4 +88,5 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages { String newPasswordPlaceholder(); String oldPasswordPlaceholder(); String passwordRepeatPlaceholder(); + String resetPassword(); } diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties index afcd45d95f4..33fc9f5d897 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties @@ -84,3 +84,4 @@ oldPassword=Old password newPasswordPlaceholder=Type in a new password oldPasswordPlaceholder=Type in the old password passwordRepeatPlaceholder=Repeat the new password +resetPassword=ResetPassword diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties index 32242054887..16143bc562f 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties @@ -84,3 +84,4 @@ oldPassword=Altes Passwort newPasswordPlaceholder=Geben Sie ein neues Passwort ein oldPasswordPlaceholder=Geben Sie das alte Passwort ein passwordRepeatPlaceholder=Wiederholen Sie das Passwort +resetPassword=Passwort zurücksetzen From c635328d6df49c95e9afb1fee92c0c9459b8f622 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 13:20:34 +0100 Subject: [PATCH 098/367] Added missing GSS related configuration flags --- .../com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml index aa4fbfd3adb..66a1cd15527 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/ui/LeaderboardEditing.gwt.xml @@ -45,6 +45,9 @@ + + + From ce15b41e0119a5b7519a49dc774ead72d0a98615 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 13:25:19 +0100 Subject: [PATCH 099/367] Added main styles for input element and associated labels --- .../gwt/common/client/SharedResources.java | 5 ++++ .../sap/sailing/gwt/common/client/main.gss | 29 +++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java index 1fb0bc73b80..88dccc20b59 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/SharedResources.java @@ -41,6 +41,11 @@ public interface SharedResources extends ClientBundle { String mainsection_header(); String mainsection_header_title(); String mainsection_navigation(); + String input(); + String input_label(); + String input_input(); + String input_inputerror(); + String input_errortext(); String lightbox(); String lightbox_overlay(); String lightbox_content(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss index 9409f99ddac..783c6478425 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/common/client/main.gss @@ -409,6 +409,35 @@ figcaption { .mainsection_navigation { text-align: center; } +.input { + width: 100%; + padding: 0.333333333333333em 0; + display: inline-block; +} +.input_label { + font-weight: 600; + margin-top: 1.333333333333333em; + line-height: 1.333333333333333em; + margin-bottom: 0.333333333333333em; +} +.input:first-of-type .input_label { + margin-top: 0.666666666666667em; +} +.input_input { + width: 100%; + color: #333; + padding: 0.6em 1.333333333333333em; + border-radius: 0.2em; + border: 1px solid #dedede; +} +.input_inputerror { + border: 1px solid #f00; +} +.input_errortext { + color: #f00; + font-size: 0.8em; + margin: -0.266666666666667em 0 0.333333333333333em; +} .lightbox { font-size: 1rem; } From 54aa5aae4b53354213848962120b3d9100122749 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 13:25:41 +0100 Subject: [PATCH 100/367] Added partial for mobile user profile --- .../partials/userdetails/UserDetails.gss | 52 ++++++++++++++++ .../partials/userdetails/UserDetails.java | 21 +++++++ .../partials/userdetails/UserDetails.ui.xml | 59 +++++++++++++++++++ .../userdetails/UserDetailsResources.java | 23 ++++++++ 4 files changed, 155 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetailsResources.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss new file mode 100644 index 00000000000..071426fd563 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss @@ -0,0 +1,52 @@ +.userstyles { + font-size: 1rem; +} +.userstyles_error { + color: #f00; +} +.userstyles_buttons { + margin-top: 2.666666666666667em; +} +.userstyles_buttons_button { + margin-bottom: 0.666666666666667em; +} +.userstyles_socialseperator { + position: relative; + width: 100%; + height: 1.333333333333333em; + line-height: 1.333333333333333em; + margin: 0.666666666666667em 0 1.333333333333333em; + text-transform: uppercase; +} +.userstyles_socialseperator_text { + display: inline-block; + position: relative; + left: 50%; + z-index: 1; + -webkit-transform: translateX(-50%); + -moz-transform: translateX(-50%); + -ms-transform: translateX(-50%); + transform: translateX(-50%); + text-align: center; + line-height: 1.333333333333333em; + padding: 0 0.666666666666667em; + color: #dedede; + background-color: #fff; +} +.userstyles_socialseperator:before { + position: relative; + content: ''; + display: block; + top: 50%; + left: 0; + width: 100%; + border-top: 1px solid #dedede; +} +.userdetails { + font-size: 1rem; +} +.userdetails_save { + float: right; + margin-top: 0.666666666666667em; + text-transform: uppercase; +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java new file mode 100644 index 00000000000..90f7ce01fa2 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java @@ -0,0 +1,21 @@ +package com.sap.sailing.gwt.home.mobile.partials.userdetails; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; + +public class UserDetails extends Composite { + + interface MyUiBinder extends UiBinder { + } + + private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); + + + public UserDetails() { + UserDetailsResources.INSTANCE.css().ensureInjected(); + initWidget(uiBinder.createAndBindUi(this)); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml new file mode 100644 index 00000000000..6060fa70e91 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml @@ -0,0 +1,59 @@ + + + + + + + +
+
+
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+ +
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+ +
+
+
+
+
+
\ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetailsResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetailsResources.java new file mode 100644 index 00000000000..257655f007c --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetailsResources.java @@ -0,0 +1,23 @@ +package com.sap.sailing.gwt.home.mobile.partials.userdetails; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; + +public interface UserDetailsResources extends ClientBundle { + public static final UserDetailsResources INSTANCE = GWT.create(UserDetailsResources.class); + + @Source("UserDetails.gss") + LocalCss css(); + + public interface LocalCss extends CssResource { + String userstyles(); + String userstyles_error(); + String userstyles_buttons(); + String userstyles_buttons_button(); + String userstyles_socialseperator(); + String userstyles_socialseperator_text(); + String userdetails(); + String userdetails_save(); + } +} From a85072a34dfce012f04ae912a46d6e3f29d6dbd2 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 13:26:49 +0100 Subject: [PATCH 101/367] Added and mapped mobile page for user profile --- .../home/mobile/app/MobileActivityMapper.java | 4 +++ .../user/profile/UserProfilDetailsView.java | 10 +++++++ .../profile/UserProfileActivityProxy.java | 27 +++++++++++++++++++ .../profile/UserProfileDetailsActivity.java | 18 +++++++++++++ .../profile/UserProfileDetailsViewImpl.java | 18 +++++++++++++ .../profile/UserProfileDetailsViewImpl.ui.xml | 6 +++++ 6 files changed, 83 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileActivityProxy.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileActivityMapper.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileActivityMapper.java index c62dc9e6806..f9ef6bac5fc 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileActivityMapper.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileActivityMapper.java @@ -12,6 +12,7 @@ import com.sap.sailing.gwt.home.mobile.places.series.minileaderboard.SeriesMiniO import com.sap.sailing.gwt.home.mobile.places.series.minileaderboard.SeriesMiniOverallLeaderboardPlace; import com.sap.sailing.gwt.home.mobile.places.solutions.SolutionsActivityProxy; import com.sap.sailing.gwt.home.mobile.places.start.StartActivityProxy; +import com.sap.sailing.gwt.home.mobile.places.user.profile.UserProfileActivityProxy; import com.sap.sailing.gwt.home.shared.SwitchingEntryPoint; import com.sap.sailing.gwt.home.shared.app.ApplicationPlaceUpdater; import com.sap.sailing.gwt.home.shared.places.error.ErrorPlace; @@ -22,6 +23,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultActivityP import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; public class MobileActivityMapper implements ActivityMapper { private final MobileApplicationClientFactory clientFactory; @@ -56,6 +58,8 @@ public class MobileActivityMapper implements ActivityMapper { return new SearchResultActivityProxy((SearchResultPlace) place, clientFactory); } else if (place instanceof SolutionsPlace) { return new SolutionsActivityProxy((SolutionsPlace) place, clientFactory); + } else if (place instanceof AbstractUserProfilePlace) { + return new UserProfileActivityProxy((AbstractUserProfilePlace) place, clientFactory); } else { return null; } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java new file mode 100644 index 00000000000..3f6f92cc7f9 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java @@ -0,0 +1,10 @@ +package com.sap.sailing.gwt.home.mobile.places.user.profile; + +import com.google.gwt.user.client.ui.IsWidget; + +public interface UserProfilDetailsView extends IsWidget { + + public interface Presenter { + } +} + diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileActivityProxy.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileActivityProxy.java new file mode 100644 index 00000000000..714c480ecce --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileActivityProxy.java @@ -0,0 +1,27 @@ +package com.sap.sailing.gwt.home.mobile.places.user.profile; + +import com.google.gwt.core.client.GWT; +import com.sap.sailing.gwt.home.mobile.app.MobileApplicationClientFactory; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sse.gwt.client.mvp.AbstractActivityProxy; + +public class UserProfileActivityProxy extends AbstractActivityProxy { + + private final MobileApplicationClientFactory clientFactory; + private final AbstractUserProfilePlace currentPlace; + + public UserProfileActivityProxy(AbstractUserProfilePlace place, MobileApplicationClientFactory clientFactory) { + this.currentPlace = place; + this.clientFactory = clientFactory; + } + + @Override + protected void startAsync() { + GWT.runAsync(new AbstractRunAsyncCallback() { + @Override + public void onSuccess() { + super.onSuccess(new UserProfileDetailsActivity(currentPlace, clientFactory)); + } + }); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java new file mode 100644 index 00000000000..7d8de6d5351 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java @@ -0,0 +1,18 @@ +package com.sap.sailing.gwt.home.mobile.places.user.profile; + +import com.google.gwt.activity.shared.AbstractActivity; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.ui.AcceptsOneWidget; +import com.sap.sailing.gwt.home.mobile.app.MobileApplicationClientFactory; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; + +public class UserProfileDetailsActivity extends AbstractActivity implements UserProfilDetailsView.Presenter { + + public UserProfileDetailsActivity(AbstractUserProfilePlace place, MobileApplicationClientFactory clientFactory) { + } + + @Override + public void start(final AcceptsOneWidget panel, final EventBus eventBus) { + panel.setWidget(new UserProfileDetailsViewImpl(this)); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java new file mode 100644 index 00000000000..84fff99de97 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java @@ -0,0 +1,18 @@ +package com.sap.sailing.gwt.home.mobile.places.user.profile; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; + +public class UserProfileDetailsViewImpl extends Composite implements UserProfilDetailsView { + private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); + + interface MyUiBinder extends UiBinder { + } + + + public UserProfileDetailsViewImpl(Presenter presenter) { + initWidget(uiBinder.createAndBindUi(this)); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml new file mode 100644 index 00000000000..dd245de9d98 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml @@ -0,0 +1,6 @@ + + + + From c62cdc3c78f708324a4609868f5a2727b884637b Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 14:01:00 +0100 Subject: [PATCH 102/367] Implemented user profile page window title --- .../TabletAndDesktopUserProfileView.java | 21 +++++++++---------- .../profile/AbstractUserProfilePlace.java | 12 +++++------ .../sailing/gwt/ui/client/StringMessages.java | 1 + .../gwt/ui/client/StringMessages.properties | 1 + .../ui/client/StringMessages_de.properties | 1 + .../ui/client/StringMessages_ru.properties | 1 + .../ui/client/StringMessages_zh.properties | 1 + 7 files changed, 21 insertions(+), 17 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java index 8c5622c71f7..aeba06518eb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/TabletAndDesktopUserProfileView.java @@ -11,6 +11,7 @@ import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.common.client.controls.tabbar.TabPanel; import com.sap.sailing.gwt.common.client.controls.tabbar.TabPanelPlaceSelectionEvent; import com.sap.sailing.gwt.common.client.controls.tabbar.TabView; +import com.sap.sailing.gwt.common.client.i18n.TextMessages; import com.sap.sailing.gwt.home.desktop.partials.userHeader.UserHeader; import com.sap.sailing.gwt.home.shared.app.ApplicationHistoryMapper; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; @@ -51,17 +52,15 @@ public class TabletAndDesktopUserProfileView extends Composite implements UserPr @Override public void navigateTabsTo(AbstractUserProfilePlace place) { tabPanelUi.activatePlace(place); - // TODO implement -// StringBuilder titleBuilder = new StringBuilder(TextMessages.INSTANCE.sapSailing()).append(" - "); -// -// titleBuilder.append(currentPresenter.getSeriesDTO().getDisplayName()); -// -// String currentTabTitle = tabPanelUi.getCurrentTabTitle(); -// if (currentTabTitle != null && !currentTabTitle.isEmpty()) { -// titleBuilder.append(" - ").append(currentTabTitle); -// } -// Window.setTitle(titleBuilder.toString()); - Window.setTitle("TODO User Profile title"); + StringBuilder titleBuilder = new StringBuilder(TextMessages.INSTANCE.sapSailing()).append(" - "); + + titleBuilder.append(place.getLocationTitle()); + + String currentTabTitle = tabPanelUi.getCurrentTabTitle(); + if (currentTabTitle != null && !currentTabTitle.isEmpty()) { + titleBuilder.append(" - ").append(currentTabTitle); + } + Window.setTitle(titleBuilder.toString()); } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java index e259abd29ef..d3cc0b67114 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/places/user/profile/AbstractUserProfilePlace.java @@ -2,13 +2,13 @@ package com.sap.sailing.gwt.home.shared.places.user.profile; import com.google.gwt.place.shared.Place; import com.google.gwt.place.shared.PlaceTokenizer; -import com.sap.sailing.gwt.common.client.i18n.TextMessages; +import com.sap.sailing.gwt.home.shared.app.HasLocationTitle; +import com.sap.sailing.gwt.ui.client.StringMessages; -public abstract class AbstractUserProfilePlace extends Place { - - public String getTitle(String eventName) { - // TODO - return TextMessages.INSTANCE.sapSailing() + " - " + eventName; +public abstract class AbstractUserProfilePlace extends Place implements HasLocationTitle { + @Override + public String getLocationTitle() { + return StringMessages.INSTANCE.profile(); } public static abstract class Tokenizer implements PlaceTokenizer { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java index b251a82792e..151b568d2f2 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java @@ -1452,4 +1452,5 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages, c String topN(int n); String transparentBufferLineOnHover(); String bufferLineStrokeWeight(); + String profile(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties index 4e6a8f36112..1f31f626e69 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties @@ -1419,3 +1419,4 @@ errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} topN=Top {0} transparentBufferLineOnHover=Transparent buffer lines on hover of helplines bufferLineStrokeWeight=Buffer line stroke weight +profile=Profile diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties index a10dfe95094..f149aae4136 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties @@ -1410,3 +1410,4 @@ errorTryingToCreateEmbeddedMap=Fehler beim Erstellen der eingebetteten Karte: {0 topN=Top {0} transparentBufferLineOnHover=Transparente Pufferlinien bei Maus über Hilfslinien bufferLineStrokeWeight=Linienbreite der Pufferlinien +profile=Profil diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties index b9e0491b9d2..a5b68cdef65 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties @@ -1349,3 +1349,4 @@ errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} topN=Top {0} transparentBufferLineOnHover=Transparent buffer lines on hover of helplines bufferLineStrokeWeight=Buffer line stroke weight +profile=профиль diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties index e1f07d2c910..8592948a87e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties @@ -1364,3 +1364,4 @@ errorTryingToCreateEmbeddedMap=Error trying to create the embedded map: {0} topN=Top {0} transparentBufferLineOnHover=Transparent buffer lines on hover of helplines bufferLineStrokeWeight=Buffer line stroke weight +profile=簡介 From ce1bc0222419c63701e7f4f36c53180b5ef67a0b Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 13:43:45 +0100 Subject: [PATCH 103/367] Adjusted button styles for mobile user profile --- .../sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss | 1 + 1 file changed, 1 insertion(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss index 071426fd563..1ea8fa513b8 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.gss @@ -49,4 +49,5 @@ float: right; margin-top: 0.666666666666667em; text-transform: uppercase; + width: 100%; } From 586887eee221042c1c7f6b8b2d51679cab7e36ec Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 14:03:20 +0100 Subject: [PATCH 104/367] Introduced widgets for inputs on mobile user profil view --- .../partials/userdetails/UserDetails.java | 56 ++++++++++++++++++- .../partials/userdetails/UserDetails.ui.xml | 23 ++++---- .../user/profile/UserProfilDetailsView.java | 6 +- .../profile/UserProfileDetailsActivity.java | 11 ++++ .../profile/UserProfileDetailsViewImpl.java | 12 +++- .../profile/UserProfileDetailsViewImpl.ui.xml | 2 +- 6 files changed, 94 insertions(+), 16 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java index 90f7ce01fa2..a8778e7e165 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.java @@ -1,9 +1,18 @@ package com.sap.sailing.gwt.home.mobile.partials.userdetails; import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.InputElement; +import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.PasswordTextBox; +import com.google.gwt.user.client.ui.TextBox; import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; +import com.sap.sse.security.ui.client.i18n.StringMessages; +import com.sap.sse.security.ui.shared.UserDTO; public class UserDetails extends Composite { @@ -11,11 +20,54 @@ public class UserDetails extends Composite { } private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); - - public UserDetails() { + public interface Presenter { + void handleSaveChangesRequest(String email); + void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation); + } + + @UiField InputElement usernameUi; + @UiField InputElement nameUi; + @UiField TextBox emailUi; + @UiField PasswordTextBox oldPasswordUi; + @UiField PasswordTextBox newPasswordUi; + @UiField PasswordTextBox newPasswordConfirmationUi; + + private final Presenter presenter; + + public UserDetails(Presenter presenter) { + this.presenter = presenter; UserDetailsResources.INSTANCE.css().ensureInjected(); initWidget(uiBinder.createAndBindUi(this)); + StringMessages i18n = StringMessages.INSTANCE; + setPlaceholder(oldPasswordUi, i18n.oldPasswordPlaceholder()); + setPlaceholder(newPasswordUi, i18n.newPasswordPlaceholder()); + setPlaceholder(newPasswordConfirmationUi, i18n.passwordRepeatPlaceholder()); + } + + public void setUserManagementContext(UserManagementContext userManagementContext) { + UserDTO currentUser = userManagementContext.getCurrentUser(); + nameUi.setValue(currentUser.getName()); + usernameUi.setValue(currentUser.getName()); + emailUi.setValue(currentUser.getEmail()); + oldPasswordUi.setValue(""); + newPasswordUi.setValue(""); + newPasswordConfirmationUi.setValue(""); + } + + private void setPlaceholder(Widget widget, String placeholderText) { + widget.getElement().setAttribute("placeholder", placeholderText); + } + + @UiHandler("saveChangesUi") + void onSaveChangesClicked(ClickEvent event) { + presenter.handleSaveChangesRequest(emailUi.getValue()); + } + + @UiHandler("changePasswordUi") + void onChangePasswordClicked(ClickEvent event) { + presenter.handlePasswordChangeRequest(oldPasswordUi.getValue(), newPasswordUi.getValue(), + newPasswordConfirmationUi.getValue()); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml index 6060fa70e91..a8f3821e4d5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userdetails/UserDetails.ui.xml @@ -1,5 +1,6 @@ - + @@ -13,44 +14,44 @@
- +
- +
- +
- +
- +
- +
- +
- +
diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java index 3f6f92cc7f9..8fec4f9f98c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java @@ -1,10 +1,14 @@ package com.sap.sailing.gwt.home.mobile.places.user.profile; import com.google.gwt.user.client.ui.IsWidget; +import com.sap.sailing.gwt.home.mobile.partials.userdetails.UserDetails; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; public interface UserProfilDetailsView extends IsWidget { + + void setUserManagementContext(UserManagementContext userManagementContext); - public interface Presenter { + public interface Presenter extends UserDetails.Presenter { } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java index 7d8de6d5351..878b69a3a8a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java @@ -2,6 +2,7 @@ package com.sap.sailing.gwt.home.mobile.places.user.profile; import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; +import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.mobile.app.MobileApplicationClientFactory; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; @@ -15,4 +16,14 @@ public class UserProfileDetailsActivity extends AbstractActivity implements User public void start(final AcceptsOneWidget panel, final EventBus eventBus) { panel.setWidget(new UserProfileDetailsViewImpl(this)); } + + @Override + public void handleSaveChangesRequest(String email) { + Window.alert("Saving changes ..."); + } + + @Override + public void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation) { + Window.alert("Changing password ..."); + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java index 84fff99de97..b495f872f7a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java @@ -2,8 +2,11 @@ package com.sap.sailing.gwt.home.mobile.places.user.profile; import com.google.gwt.core.client.GWT; import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.mobile.partials.userdetails.UserDetails; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; public class UserProfileDetailsViewImpl extends Composite implements UserProfilDetailsView { private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); @@ -11,8 +14,15 @@ public class UserProfileDetailsViewImpl extends Composite implements UserProfilD interface MyUiBinder extends UiBinder { } - + @UiField(provided = true) UserDetails userDetailsUi; + public UserProfileDetailsViewImpl(Presenter presenter) { + userDetailsUi = new UserDetails(presenter); initWidget(uiBinder.createAndBindUi(this)); } + + @Override + public void setUserManagementContext(UserManagementContext userManagementContext) { + userDetailsUi.setUserManagementContext(userManagementContext); + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml index dd245de9d98..d8b0316636b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml @@ -2,5 +2,5 @@ - + From 4e8cec1f3d62b6412f7150a123929a7ac52df1fa Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 14:39:28 +0100 Subject: [PATCH 105/367] Added partial for mobile user profile header --- .../mobile/partials/userheader/UserHeader.gss | 101 ++++++++++++++++++ .../partials/userheader/UserHeader.java | 43 ++++++++ .../partials/userheader/UserHeader.ui.xml | 30 ++++++ .../userheader/UserHeaderResources.java | 37 +++++++ 4 files changed, 211 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.gss create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeaderResources.java diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.gss new file mode 100644 index 00000000000..22426d61ead --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.gss @@ -0,0 +1,101 @@ +.eventheader { + font-size: 1rem; + position: relative; + padding: 0.333333333333333em; + background: #f2f2f2; + -webkit-transition: top 0.3s ease-in-out; + -moz-transition: top 0.3s ease-in-out; + transition: top 0.3s ease-in-out; +} +.eventheaderreduced { + padding-bottom: 1em; +} +.eventheaderreduced .eventheader_info_subtitle { + display: none; +} +.eventheaderfixedup { + position: fixed; + top: -5em; + z-index: 10; +} +.eventheaderfixeddown { + position: fixed; + top: 0; + z-index: 10; +} +.eventheadernobox { + padding-bottom: 1em; +} +.eventheaderwithinputbox .eventheader_info { + padding-top: 1em; +} +.eventheaderwithinputbox .sidenavigation_drawer { + top: 0.333333333333333em; +} +.eventheaderwithinputbox .eventheader_inputwrapper { + margin-top: 0.666666666666667em; +} +.eventheader_info { + padding: 0.666666666666667em 0 0 0.666666666666667em; +} +.eventheader_info_title { + padding: 0; +} +.eventheader_info_title_text { + padding: 0; + margin: 0; + display: inline-block; +} +.eventheader_info_title_text_label { + margin-left: 1.25em; + text-transform: capitalize; +} +.eventheader_info_subtitle { + font-size: 0.866666666666667em; + line-height: 1.384615384615385em; + margin: 0.384615384615385em 0; +} +.eventheader_info_subtitlereduced { + display: none; +} +.eventheader_info_subtitle_logo { + width: 2.692307692307693em; + height: 2.692307692307693em; + display: inline-block; + vertical-align: top; + background: #f6f9fc; + background-size: contain; + background-position: center; + background-repeat: no-repeat; +} +.eventheader_info_subtitle_info { + display: inline-block; + vertical-align: top; + margin-left: 0.384615384615385em; + width: 80%; + word-break: break-all; +} +.eventheader_info_subtitle_info_date { + visibility: visible; +} +.eventheader_info_subtitle_info_location { + visibility: visible; +} +.eventheaderplaceholder { + font-size: inherit; +} +.userheader { + background-color: #f2f2f2; +} +.userheader .eventheader { + padding: 0.666666666666667em 0 0; +} +.userheader .eventheader_info { + padding: 0; +} +.userheader .quickfinder { + padding: 0.666666666666667em 0.333333333333333em 0.333333333333333em; +} +.userheader .quickfinder_select { + background-color: #fff; +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.java new file mode 100644 index 00000000000..ac253f595c1 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.java @@ -0,0 +1,43 @@ +package com.sap.sailing.gwt.home.mobile.partials.userheader; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.dom.client.HeadingElement; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; +import com.sap.sse.security.ui.shared.UserDTO; + +public class UserHeader extends Composite { + + interface MyUiBinder extends UiBinder { + } + + private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); + + @UiField HeadingElement titleUi; + @UiField DivElement imageUi; + @UiField DivElement subtitleUi; + + public UserHeader() { + UserHeaderResources.INSTANCE.css().ensureInjected(); + initWidget(uiBinder.createAndBindUi(this)); + imageUi.getStyle().setBackgroundImage("url(images/home/userdefault.svg)"); + titleUi.setInnerText("testuser"); + subtitleUi.setInnerText("jennifer@auchnichtwennduderletztemenschauferdenwaerts.looser"); + } + + public void setUserManagementContext(UserManagementContext userManagementContext) { + UserDTO currentUser = userManagementContext.getCurrentUser(); + // TODO correct message + imageUi.setTitle("TODO picture of: " + currentUser.getName()); + // TODO use image from user when field is available + imageUi.getStyle().setBackgroundImage("url(images/home/userdefault.svg)"); + + titleUi.setInnerText(currentUser.getName()); + subtitleUi.setInnerText(currentUser.getEmail()); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.ui.xml new file mode 100644 index 00000000000..675936238a1 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeader.ui.xml @@ -0,0 +1,30 @@ + + + + + + + +
+
+
+
+
+
+

+

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeaderResources.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeaderResources.java new file mode 100644 index 00000000000..1b61d9c1149 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/userheader/UserHeaderResources.java @@ -0,0 +1,37 @@ +package com.sap.sailing.gwt.home.mobile.partials.userheader; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; + +public interface UserHeaderResources extends ClientBundle { + public static final UserHeaderResources INSTANCE = GWT.create(UserHeaderResources.class); + + @Source("UserHeader.gss") + LocalCss css(); + + public interface LocalCss extends CssResource { + String eventheader(); + String eventheaderreduced(); + String eventheader_info_subtitle(); + String eventheaderfixedup(); + String eventheaderfixeddown(); + String eventheadernobox(); + String eventheaderwithinputbox(); + String eventheader_info(); + String sidenavigation_drawer(); + String eventheader_inputwrapper(); + String eventheader_info_title(); + String eventheader_info_title_text(); + String eventheader_info_title_text_label(); + String eventheader_info_subtitlereduced(); + String eventheader_info_subtitle_logo(); + String eventheader_info_subtitle_info(); + String eventheader_info_subtitle_info_date(); + String eventheader_info_subtitle_info_location(); + String eventheaderplaceholder(); + String userheader(); + String quickfinder(); + String quickfinder_select(); + } +} From aed594f76cf9c7f160202826c234e0d0a3807da8 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 14:41:06 +0100 Subject: [PATCH 106/367] Integrated user profile header partial into mobile user profil view --- .../places/user/profile/UserProfileDetailsViewImpl.java | 5 ++++- .../places/user/profile/UserProfileDetailsViewImpl.ui.xml | 8 +++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java index b495f872f7a..00021c67fb1 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java @@ -6,6 +6,7 @@ import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.mobile.partials.userdetails.UserDetails; +import com.sap.sailing.gwt.home.mobile.partials.userheader.UserHeader; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; public class UserProfileDetailsViewImpl extends Composite implements UserProfilDetailsView { @@ -14,6 +15,7 @@ public class UserProfileDetailsViewImpl extends Composite implements UserProfilD interface MyUiBinder extends UiBinder { } + @UiField UserHeader userHeaderUi; @UiField(provided = true) UserDetails userDetailsUi; public UserProfileDetailsViewImpl(Presenter presenter) { @@ -23,6 +25,7 @@ public class UserProfileDetailsViewImpl extends Composite implements UserProfilD @Override public void setUserManagementContext(UserManagementContext userManagementContext) { - userDetailsUi.setUserManagementContext(userManagementContext); + userHeaderUi.setUserManagementContext(userManagementContext); + userDetailsUi.setUserManagementContext(userManagementContext); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml index d8b0316636b..7ec0bb735ed 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml @@ -1,6 +1,8 @@ - - + + + + From b4da95d8f7acbd3685c50b2677f1998a57aab122 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 15:25:28 +0100 Subject: [PATCH 107/367] Set correct data to mobile user profil view --- .../profile/UserProfileDetailsActivity.java | 17 +++++++++++++++-- ...ilsView.java => UserProfileDetailsView.java} | 2 +- .../profile/UserProfileDetailsViewImpl.java | 2 +- 3 files changed, 17 insertions(+), 4 deletions(-) rename java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/{UserProfilDetailsView.java => UserProfileDetailsView.java} (87%) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java index 878b69a3a8a..c49c61296cf 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java @@ -6,15 +6,28 @@ import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.mobile.app.MobileApplicationClientFactory; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; -public class UserProfileDetailsActivity extends AbstractActivity implements UserProfilDetailsView.Presenter { +public class UserProfileDetailsActivity extends AbstractActivity implements UserProfileDetailsView.Presenter { + + private final MobileApplicationClientFactory clientFactory; + + private final UserProfileDetailsView currentView = new UserProfileDetailsViewImpl(this); public UserProfileDetailsActivity(AbstractUserProfilePlace place, MobileApplicationClientFactory clientFactory) { + this.clientFactory = clientFactory; } @Override public void start(final AcceptsOneWidget panel, final EventBus eventBus) { - panel.setWidget(new UserProfileDetailsViewImpl(this)); + panel.setWidget(currentView); + currentView.setUserManagementContext(clientFactory.getUserManagementContext()); + eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { + @Override + public void onUserChangeEvent(UserManagementContextEvent event) { + currentView.setUserManagementContext(event.getCtx()); + } + }); } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsView.java similarity index 87% rename from java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java rename to java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsView.java index 8fec4f9f98c..f81f87b83b9 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfilDetailsView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsView.java @@ -4,7 +4,7 @@ import com.google.gwt.user.client.ui.IsWidget; import com.sap.sailing.gwt.home.mobile.partials.userdetails.UserDetails; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; -public interface UserProfilDetailsView extends IsWidget { +public interface UserProfileDetailsView extends IsWidget { void setUserManagementContext(UserManagementContext userManagementContext); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java index 00021c67fb1..b61b47555cb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java @@ -9,7 +9,7 @@ import com.sap.sailing.gwt.home.mobile.partials.userdetails.UserDetails; import com.sap.sailing.gwt.home.mobile.partials.userheader.UserHeader; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; -public class UserProfileDetailsViewImpl extends Composite implements UserProfilDetailsView { +public class UserProfileDetailsViewImpl extends Composite implements UserProfileDetailsView { private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); interface MyUiBinder extends UiBinder { From 8c4c11e157a5c7e82fd7efcc410003da5ffb6e91 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 15:26:50 +0100 Subject: [PATCH 108/367] Refactored how instances are notified about signed in/out --- .../desktop/app/TabletAndDesktopApplicationClientFactory.java | 2 ++ .../gwt/home/mobile/app/MobileApplicationClientFactory.java | 3 +++ .../shared/usermanagement/info/LoggedInUserInfoActivity.java | 2 -- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java index 9ec30ea9a90..a290811e38b 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/app/TabletAndDesktopApplicationClientFactory.java @@ -163,11 +163,13 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio public void resetUserManagementContext() { uCtx = new UserManagementContextImpl(); securityProvider.getUserService().updateUser(true); + getEventBus().fireEvent(new UserManagementRequestEvent()); } @Override public void didLogin(UserDTO user) { uCtx = new UserManagementContextImpl(user); + securityProvider.getUserService().updateUser(true); getEventBus().fireEvent(new UserManagementContextEvent(uCtx)); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java index 67b430e1fa8..264c5b9e546 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java @@ -19,6 +19,7 @@ import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultClientFac import com.sap.sailing.gwt.home.shared.places.searchresult.SearchResultView; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sailing.gwt.ui.client.refresh.BusyView; import com.sap.sailing.gwt.ui.client.refresh.ErrorAndBusyClientFactory; import com.sap.sse.gwt.client.mvp.ErrorView; @@ -114,11 +115,13 @@ public class MobileApplicationClientFactory extends public void resetUserManagementContext() { uCtx = new UserManagementContextImpl(); securityProvider.getUserService().updateUser(true); + getEventBus().fireEvent(new UserManagementRequestEvent()); } @Override public void didLogin(UserDTO user) { uCtx = new UserManagementContextImpl(user); + securityProvider.getUserService().updateUser(true); getEventBus().fireEvent(new UserManagementContextEvent(uCtx)); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java index ef699199b89..544ab16f48e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/info/LoggedInUserInfoActivity.java @@ -51,13 +51,11 @@ public class LoggedInUserInfoActivity extends AbstractActivity implements Logged clientFactory.getUserManagement().logout(new AsyncCallback() { @Override public void onSuccess(SuccessInfo result) { - clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); clientFactory.resetUserManagementContext(); } @Override public void onFailure(Throwable caught) { - clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); clientFactory.resetUserManagementContext(); } }); From e1b1590c3d0cfb26481ae606936e99b0ed7c48e8 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 15:56:40 +0100 Subject: [PATCH 109/367] Called respective backend service methods in presenter class --- .../profile/UserProfileDetailsActivity.java | 57 ++++++++++++++++++- 1 file changed, 54 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java index c49c61296cf..8bd35f9126a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java @@ -1,17 +1,27 @@ package com.sap.sailing.gwt.home.mobile.places.user.profile; +import java.util.HashMap; + import com.google.gwt.activity.shared.AbstractActivity; import com.google.gwt.event.shared.EventBus; import com.google.gwt.user.client.Window; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.sap.sailing.gwt.home.mobile.app.MobileApplicationClientFactory; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; +import com.sap.sse.security.shared.UserManagementException; +import com.sap.sse.security.ui.client.EntryPointLinkFactory; +import com.sap.sse.security.ui.client.component.NewAccountValidator; +import com.sap.sse.security.ui.client.i18n.StringMessages; public class UserProfileDetailsActivity extends AbstractActivity implements UserProfileDetailsView.Presenter { private final MobileApplicationClientFactory clientFactory; + private final StringMessages i18n_sec = StringMessages.INSTANCE; + private final NewAccountValidator validator = new NewAccountValidator(i18n_sec); + private final UserProfileDetailsView currentView = new UserProfileDetailsViewImpl(this); public UserProfileDetailsActivity(AbstractUserProfilePlace place, MobileApplicationClientFactory clientFactory) { @@ -31,12 +41,53 @@ public class UserProfileDetailsActivity extends AbstractActivity implements User } @Override - public void handleSaveChangesRequest(String email) { - Window.alert("Saving changes ..."); + public void handleSaveChangesRequest(final String email) { + final String username = clientFactory.getUserManagementContext().getCurrentUser().getName(); + clientFactory.getUserManagementService().updateSimpleUserEmail(username, email, + EntryPointLinkFactory.createEmailValidationLink(new HashMap()), + new AsyncCallback() { + @Override + public void onSuccess(Void result) { + Window.alert(i18n_sec.successfullyUpdatedEmail(username, email)); + } + + @Override + public void onFailure(Throwable caught) { + Window.alert(i18n_sec.errorUpdatingEmail(caught.getMessage())); + } + }); } @Override public void handlePasswordChangeRequest(String oldPassword, String newPassword, String newPasswordConfirmation) { - Window.alert("Changing password ..."); + final String username = clientFactory.getUserManagementContext().getCurrentUser().getName(); + String errorMessage = validator.validateUsernameAndPassword(username, newPassword, newPasswordConfirmation); + if (errorMessage != null && !errorMessage.isEmpty()) { + Window.alert(errorMessage); + return; + } + clientFactory.getUserManagementService().updateSimpleUserPassword(username, oldPassword, null, newPassword, + new AsyncCallback() { + @Override + public void onFailure(Throwable caught) { + if (caught instanceof UserManagementException) { + String message = ((UserManagementException) caught).getMessage(); + if (UserManagementException.PASSWORD_DOES_NOT_MEET_REQUIREMENTS.equals(message)) { + Window.alert(i18n_sec.passwordDoesNotMeetRequirements()); + } else if (UserManagementException.INVALID_CREDENTIALS.equals(message)) { + Window.alert(i18n_sec.invalidCredentials()); + } else { + Window.alert(i18n_sec.errorChangingPassword(caught.getMessage())); + } + } else { + Window.alert(i18n_sec.errorChangingPassword(caught.getMessage())); + } + } + + @Override + public void onSuccess(Void result) { + Window.alert(i18n_sec.passwordSuccessfullyChanged()); + } + }); } } From c393b60b8004a24a8e62bc94baff05d76791ae7d Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 15:57:21 +0100 Subject: [PATCH 110/367] Implementation of "not logged in" placeholder --- .../user/profile/UserProfileActivity.java | 6 +++ .../places/user/profile/UserProfileView.java | 3 +- .../detailstab/UserProfileDetailsTabView.java | 29 +++++------ .../UserProfileDetailsTabView.ui.xml | 25 +++++----- ...lientFactoryWithUserManagementContext.java | 1 + .../decorator/AuthorizedContentDecorator.java | 34 +++++++++++++ .../AuthorizedContentDecoratorDesktop.java | 10 ++++ .../AuthorizedContentDecoratorMobile.java | 10 ++++ .../decorator/NotLoggedInPresenter.java | 5 ++ .../decorator/NotLoggedInView.java | 12 +++++ .../decorator/NotLoggedInViewDesktopImpl.java | 50 +++++++++++++++++++ .../NotLoggedInViewDesktopImpl.ui.xml | 20 ++++++++ .../decorator/NotLoggedInViewMobileImpl.java | 50 +++++++++++++++++++ .../NotLoggedInViewMobileImpl.ui.xml | 19 +++++++ .../ui/client/i18n/StringMessages.java | 1 + .../ui/client/i18n/StringMessages.properties | 1 + .../client/i18n/StringMessages_de.properties | 1 + 17 files changed, 247 insertions(+), 30 deletions(-) create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecorator.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorDesktop.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorMobile.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInPresenter.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInView.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.ui.xml create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.java create mode 100644 java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java index 69e27a8f3a5..e29429adb08 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileActivity.java @@ -21,6 +21,7 @@ import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sse.security.shared.UserManagementException; import com.sap.sse.security.ui.client.EntryPointLinkFactory; import com.sap.sse.security.ui.client.component.NewAccountValidator; @@ -145,4 +146,9 @@ public class UserProfileActivity extends AbstractActivity implements UserProfile public PlaceNavigation getUserProfileNavigation() { return homePlacesNavigator.getUserProfileNavigation(); } + + @Override + public void doTriggerLoginForm() { + clientFactory.getEventBus().fireEvent(new UserManagementRequestEvent()); + } } \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java index d4096a65214..65519cf1b3a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/UserProfileView.java @@ -10,10 +10,11 @@ import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.places.fakeseries.AbstractSeriesPlace; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.home.shared.usermanagement.decorator.NotLoggedInPresenter; public interface UserProfileView extends IsWidget { - public interface Presenter extends UserAccountDetails.Presenter { + public interface Presenter extends UserAccountDetails.Presenter, NotLoggedInPresenter { void handleTabPlaceSelection(TabView selectedActivity); SafeUri getUrl(AbstractSeriesPlace place); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java index 5fc9a5a9865..383aecdc881 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.java @@ -1,8 +1,6 @@ package com.sap.sailing.gwt.home.desktop.places.user.profile.detailstab; import com.google.gwt.core.client.GWT; -import com.google.gwt.dom.client.DivElement; -import com.google.gwt.dom.client.Style.Display; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.AcceptsOneWidget; @@ -14,6 +12,7 @@ import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileTabView; import com.sap.sailing.gwt.home.desktop.places.user.profile.UserProfileView; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDetailsPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.decorator.AuthorizedContentDecoratorDesktop; /** * Created by pgtaboada on 25.11.14. @@ -24,12 +23,15 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT } private static MyBinder ourUiBinder = GWT.create(MyBinder.class); + + @UiField(provided = true) + AuthorizedContentDecoratorDesktop decoratorUi; - @UiField DivElement notLoggedInUi; - @UiField(provided = true) UserAccountDetails accountDetailsUi; - + @UiField(provided = true) + UserAccountDetails accountDetailsUi; + private UserProfileView.Presenter currentPresenter; - + public UserProfileDetailsTabView() { } @@ -37,7 +39,7 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT public Class getPlaceClassForActivation() { return UserProfileDetailsPlace.class; } - + @Override public TabView.State getState() { return TabView.State.VISIBLE; @@ -45,21 +47,16 @@ public class UserProfileDetailsTabView extends Composite implements UserProfileT @Override public void start(UserProfileDetailsPlace myPlace, AcceptsOneWidget contentArea) { + decoratorUi = new AuthorizedContentDecoratorDesktop(currentPresenter); accountDetailsUi = new UserAccountDetails(currentPresenter); initWidget(ourUiBinder.createAndBindUi(this)); contentArea.setWidget(this); } - + @Override public void setUserManagementContext(UserManagementContext userManagementContext) { - if(userManagementContext.isLoggedIn()) { - notLoggedInUi.getStyle().setDisplay(Display.NONE); - accountDetailsUi.getElement().getStyle().clearDisplay(); - accountDetailsUi.setUserManagementContext(userManagementContext); - } else { - notLoggedInUi.getStyle().clearDisplay(); - accountDetailsUi.getElement().getStyle().setDisplay(Display.NONE); - } + decoratorUi.setUserManagementContext(userManagementContext); + accountDetailsUi.setUserManagementContext(userManagementContext); } @Override diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml index f310f1de1f2..03cd95884a3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/user/profile/detailstab/UserProfileDetailsTabView.ui.xml @@ -1,14 +1,13 @@ - - - - - -
-
TODO you are currently not logged in
- -
-
-
\ No newline at end of file + xmlns:s="urn:import:com.sap.sailing.gwt.home.desktop.partials" xmlns:um="urn:import:com.sap.sailing.gwt.home.shared.usermanagement.decorator"> + + + + + + + + + + diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java index b9dfccfb28a..5ebae49f52f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/app/ClientFactoryWithUserManagementContext.java @@ -1,6 +1,7 @@ package com.sap.sailing.gwt.home.shared.app; + public interface ClientFactoryWithUserManagementContext { UserManagementContext getUserManagementContext(); void resetUserManagementContext(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecorator.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecorator.java new file mode 100644 index 00000000000..6cc7f6ab7ed --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecorator.java @@ -0,0 +1,34 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.decorator; + +import com.google.gwt.uibinder.client.UiChild; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.SimplePanel; +import com.google.gwt.user.client.ui.Widget; +import com.sap.sailing.gwt.home.shared.app.UserManagementContext; +import com.sap.sse.security.ui.client.i18n.StringMessages; + +public class AuthorizedContentDecorator extends Composite { + + private final SimplePanel contentHolder = new SimplePanel(); + private Widget content; + private final NotLoggedInView notLoggedInView; + + public AuthorizedContentDecorator(NotLoggedInPresenter presenter, NotLoggedInView notLoggedInView) { + this.notLoggedInView = notLoggedInView; + + notLoggedInView.setPresenter(presenter); + notLoggedInView.setMessage(StringMessages.INSTANCE.youAreNotSignedIn()); + notLoggedInView.setSignInText(StringMessages.INSTANCE.signIn()); + + initWidget(contentHolder); + } + + @UiChild(limit = 1) + public void addContent(Widget content) { + this.content = content; + } + + public void setUserManagementContext(UserManagementContext userManagementContext) { + contentHolder.setWidget(userManagementContext.isLoggedIn() ? content : notLoggedInView); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorDesktop.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorDesktop.java new file mode 100644 index 00000000000..d3e7252ec92 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorDesktop.java @@ -0,0 +1,10 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.decorator; + + +public class AuthorizedContentDecoratorDesktop extends AuthorizedContentDecorator { + + public AuthorizedContentDecoratorDesktop(NotLoggedInPresenter presenter) { + super(presenter, new NotLoggedInViewDesktopImpl()); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorMobile.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorMobile.java new file mode 100644 index 00000000000..a18f2ca123d --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/AuthorizedContentDecoratorMobile.java @@ -0,0 +1,10 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.decorator; + + +public class AuthorizedContentDecoratorMobile extends AuthorizedContentDecorator { + + public AuthorizedContentDecoratorMobile(NotLoggedInPresenter presenter) { + super(presenter, new NotLoggedInViewMobileImpl()); + } + +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInPresenter.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInPresenter.java new file mode 100644 index 00000000000..212af55c342 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInPresenter.java @@ -0,0 +1,5 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.decorator; + +public interface NotLoggedInPresenter { + void doTriggerLoginForm(); +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInView.java new file mode 100644 index 00000000000..4a59ba501ed --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInView.java @@ -0,0 +1,12 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.decorator; + +import com.google.gwt.user.client.ui.IsWidget; + +public interface NotLoggedInView extends IsWidget { + + void setPresenter(NotLoggedInPresenter presenter); + + void setMessage(String message); + + void setSignInText(String signInText); +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.java new file mode 100644 index 00000000000..a33863098a2 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.java @@ -0,0 +1,50 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.decorator; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; +import com.google.gwt.user.client.ui.Button; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; + +public class NotLoggedInViewDesktopImpl extends Composite implements NotLoggedInView { + + private static NotLoggedInViewUiBinder uiBinder = GWT.create(NotLoggedInViewUiBinder.class); + + interface NotLoggedInViewUiBinder extends UiBinder { + } + + @UiField + DivElement messageUi; + + @UiField + Button buttonUi; + private NotLoggedInPresenter presenter; + + public NotLoggedInViewDesktopImpl() { + initWidget(uiBinder.createAndBindUi(this)); + } + + @Override + public void setPresenter(NotLoggedInPresenter presenter) { + this.presenter = presenter; + } + + @UiHandler("buttonUi") + void onClick(ClickEvent e) { + presenter.doTriggerLoginForm(); + } + + @Override + public void setMessage(String message) { + messageUi.setInnerText(message); + } + + @Override + public void setSignInText(String signInText) { + buttonUi.setText(signInText); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.ui.xml new file mode 100644 index 00000000000..f26a7da45cc --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewDesktopImpl.ui.xml @@ -0,0 +1,20 @@ + + + + + .message { + font-weight: bold; + font-style: italic; + display: inline-block; + padding-right: 1em; + } + + + +
+
+ +
+ + \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.java new file mode 100644 index 00000000000..50de7f1bfcc --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.java @@ -0,0 +1,50 @@ +package com.sap.sailing.gwt.home.shared.usermanagement.decorator; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.DivElement; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.uibinder.client.UiHandler; +import com.google.gwt.user.client.ui.Button; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Widget; + +public class NotLoggedInViewMobileImpl extends Composite implements NotLoggedInView { + + private static NotLoggedInViewUiBinder uiBinder = GWT.create(NotLoggedInViewUiBinder.class); + + interface NotLoggedInViewUiBinder extends UiBinder { + } + + @UiField + DivElement messageUi; + + @UiField + Button buttonUi; + private NotLoggedInPresenter presenter; + + public NotLoggedInViewMobileImpl() { + initWidget(uiBinder.createAndBindUi(this)); + } + + @Override + public void setPresenter(NotLoggedInPresenter presenter) { + this.presenter = presenter; + } + + @UiHandler("buttonUi") + void onClick(ClickEvent e) { + presenter.doTriggerLoginForm(); + } + + @Override + public void setMessage(String message) { + messageUi.setInnerText(message); + } + + @Override + public void setSignInText(String signInText) { + buttonUi.setText(signInText); + } +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml new file mode 100644 index 00000000000..32ad320ddb2 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml @@ -0,0 +1,19 @@ + + + + + .message { + font-weight: bold; + font-style: italic; + padding: 0 0.5em; + } + .button { + display: block; + } + + +
+ + + \ No newline at end of file diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java index d24911d91cb..9b6f5538de4 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.java @@ -89,4 +89,5 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages { String oldPasswordPlaceholder(); String passwordRepeatPlaceholder(); String resetPassword(); + String youAreNotSignedIn(); } diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties index 33fc9f5d897..dc542dd214c 100755 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages.properties @@ -85,3 +85,4 @@ newPasswordPlaceholder=Type in a new password oldPasswordPlaceholder=Type in the old password passwordRepeatPlaceholder=Repeat the new password resetPassword=ResetPassword +youAreNotSignedIn=You are currently not signed in. diff --git a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties index 16143bc562f..8dc4994aaa4 100644 --- a/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties +++ b/java/com.sap.sse.security.ui/src/main/java/com/sap/sse/security/ui/client/i18n/StringMessages_de.properties @@ -85,3 +85,4 @@ newPasswordPlaceholder=Geben Sie ein neues Passwort ein oldPasswordPlaceholder=Geben Sie das alte Passwort ein passwordRepeatPlaceholder=Wiederholen Sie das Passwort resetPassword=Passwort zurücksetzen +youAreNotSignedIn=Sie sind aktuell nicht eingeloggt. From 89528f1ab257a2d1ed49e93063dbc37108748962 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 16:24:25 +0100 Subject: [PATCH 111/367] Added place navigations for mobile sign in and user profile --- .../gwt/home/mobile/app/MobilePlacesNavigator.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobilePlacesNavigator.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobilePlacesNavigator.java index ffa27130262..3d1a6d3b8fe 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobilePlacesNavigator.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobilePlacesNavigator.java @@ -21,6 +21,9 @@ import com.sap.sailing.gwt.home.shared.places.fakeseries.SeriesDefaultPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace; import com.sap.sailing.gwt.home.shared.places.solutions.SolutionsPlace.SolutionsNavigationTabs; import com.sap.sailing.gwt.home.shared.places.start.StartPlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.AbstractUserProfilePlace; +import com.sap.sailing.gwt.home.shared.places.user.profile.UserProfileDefaultPlace; +import com.sap.sailing.gwt.home.shared.usermanagement.signin.SigInPlace; public class MobilePlacesNavigator extends AbstractPlaceNavigator { @@ -86,4 +89,12 @@ public class MobilePlacesNavigator extends AbstractPlaceNavigator { boolean isOnRemoteServer) { return createPlaceNavigation(baseUrl, isOnRemoteServer, new RegattaOverviewPlace(eventId, leaderboardName)); } + + public PlaceNavigation getSignInNavigation() { + return createGlobalPlaceNavigation(new SigInPlace()); + } + + public PlaceNavigation getUserProfileNavigation() { + return createGlobalPlaceNavigation(new UserProfileDefaultPlace()); + } } From c6aded86830a327d38975ca5324107e0603cff4e Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 16:30:06 +0100 Subject: [PATCH 112/367] Added sign in and user details entries to mobile main menu --- .../mobile/app/MobileApplicationView.java | 2 +- .../home/mobile/partials/header/Header.java | 28 +++++++++++++++++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationView.java index 66bc213a76d..5a4840c3b1b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationView.java @@ -41,7 +41,7 @@ public class MobileApplicationView extends Composite implements ApplicationTopLe SimplePanel mainContentPanel; public MobileApplicationView(MobilePlacesNavigator placeNavigator, EventBus eventBus) { - headerPanel = new Header(placeNavigator); + headerPanel = new Header(placeNavigator, eventBus); footerPanel = new Footer(placeNavigator); initWidget(uiBinder.createAndBindUi(this)); eventBus.addHandler(PlaceChangeEvent.TYPE, new PlaceChangeEvent.Handler() { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java index 7821f05354f..233da8e1961 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java @@ -14,12 +14,14 @@ import com.google.gwt.user.client.EventListener; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.FlowPanel; import com.google.gwt.user.client.ui.Widget; +import com.google.web.bindery.event.shared.EventBus; import com.sap.sailing.gwt.common.client.LinkUtil; import com.sap.sailing.gwt.common.client.i18n.TextMessages; import com.sap.sailing.gwt.home.mobile.app.MobilePlacesNavigator; import com.sap.sailing.gwt.home.shared.ExperimentalFeatures; import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; import com.sap.sailing.gwt.home.shared.app.ResettableNavigationPathDisplay; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; import com.sap.sailing.gwt.home.shared.utils.DropdownHandler; import com.sap.sailing.gwt.ui.client.StringMessages; @@ -44,9 +46,11 @@ public class Header extends Composite { } private static HeaderUiBinder uiBinder = GWT.create(HeaderUiBinder.class); - private DropdownHandler dropdownHandler; + private final DropdownHandler dropdownHandler; + private final HeaderNavigationItem signInNavigationItem; + private final HeaderNavigationItem userDetailsNavigationItem; - public Header(final MobilePlacesNavigator placeNavigator) { + public Header(final MobilePlacesNavigator placeNavigator, EventBus eventBus) { initWidget(uiBinder.createAndBindUi(this)); local_res.css().ensureInjected(); @@ -57,6 +61,9 @@ public class Header extends Composite { addNavigation(placeNavigator.getEventsNavigation(), StringMessages.INSTANCE.events()); addNavigation(placeNavigator.getSolutionsNavigation(), TextMessages.INSTANCE.solutions()); addUrl("http://blog.sapsailing.com", TextMessages.INSTANCE.blog()); + signInNavigationItem = addNavigation(placeNavigator.getSignInNavigation(), com.sap.sse.security.ui.client.i18n.StringMessages.INSTANCE.signIn()); + userDetailsNavigationItem = addNavigation(placeNavigator.getUserProfileNavigation(), com.sap.sse.security.ui.client.i18n.StringMessages.INSTANCE.userDetails()); + dropdownHandler = new DropdownHandler(dropdownTriggerUi, dropdownContainerUi); Event.sinkEvents(searchUi, Event.ONCLICK); @@ -70,13 +77,27 @@ public class Header extends Composite { } }); + + eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { + @Override + public void onUserChangeEvent(UserManagementContextEvent event) { + if(event.getCtx().isLoggedIn()) { + signInNavigationItem.getElement().getStyle().setDisplay(Display.NONE); + userDetailsNavigationItem.getElement().getStyle().clearDisplay(); + } else { + signInNavigationItem.getElement().getStyle().clearDisplay(); + userDetailsNavigationItem.getElement().getStyle().setDisplay(Display.NONE); + + } + } + }); } public ResettableNavigationPathDisplay getNavigationPathDisplay() { return navigationPathDisplay; } - private void addNavigation(final PlaceNavigation placeNavigation, String name) { + private HeaderNavigationItem addNavigation(final PlaceNavigation placeNavigation, String name) { HeaderNavigationItem navigationItem = new HeaderNavigationItem(name, placeNavigation.getTargetUrl()); navigationItem.addClickHandler(new ClickHandler() { @Override @@ -89,6 +110,7 @@ public class Header extends Composite { } }); dropdownListUi.add(navigationItem); + return navigationItem; } private void addUrl(String url, String name) { From 703b84d3db678f2ce8a873a5cb7f14e660fb88d1 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 15 Dec 2015 16:33:52 +0100 Subject: [PATCH 113/367] Added decorator to show not logged in info on mobile user profile --- .../places/user/profile/UserProfileDetailsActivity.java | 5 +++++ .../places/user/profile/UserProfileDetailsView.java | 3 ++- .../places/user/profile/UserProfileDetailsViewImpl.java | 4 ++++ .../user/profile/UserProfileDetailsViewImpl.ui.xml | 9 +++++++-- 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java index 8bd35f9126a..d9b71373680 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsActivity.java @@ -40,6 +40,11 @@ public class UserProfileDetailsActivity extends AbstractActivity implements User }); } + @Override + public void doTriggerLoginForm() { + clientFactory.getNavigator().getSignInNavigation().goToPlace(); + } + @Override public void handleSaveChangesRequest(final String email) { final String username = clientFactory.getUserManagementContext().getCurrentUser().getName(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsView.java index f81f87b83b9..4baf10ccf9b 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsView.java @@ -3,12 +3,13 @@ package com.sap.sailing.gwt.home.mobile.places.user.profile; import com.google.gwt.user.client.ui.IsWidget; import com.sap.sailing.gwt.home.mobile.partials.userdetails.UserDetails; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; +import com.sap.sailing.gwt.home.shared.usermanagement.decorator.NotLoggedInPresenter; public interface UserProfileDetailsView extends IsWidget { void setUserManagementContext(UserManagementContext userManagementContext); - public interface Presenter extends UserDetails.Presenter { + public interface Presenter extends UserDetails.Presenter, NotLoggedInPresenter { } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java index b61b47555cb..b9d428c389a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.java @@ -8,6 +8,7 @@ import com.google.gwt.user.client.ui.Widget; import com.sap.sailing.gwt.home.mobile.partials.userdetails.UserDetails; import com.sap.sailing.gwt.home.mobile.partials.userheader.UserHeader; import com.sap.sailing.gwt.home.shared.app.UserManagementContext; +import com.sap.sailing.gwt.home.shared.usermanagement.decorator.AuthorizedContentDecoratorMobile; public class UserProfileDetailsViewImpl extends Composite implements UserProfileDetailsView { private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); @@ -16,9 +17,11 @@ public class UserProfileDetailsViewImpl extends Composite implements UserProfile } @UiField UserHeader userHeaderUi; + @UiField(provided = true) AuthorizedContentDecoratorMobile decoratorUi; @UiField(provided = true) UserDetails userDetailsUi; public UserProfileDetailsViewImpl(Presenter presenter) { + decoratorUi = new AuthorizedContentDecoratorMobile(presenter); userDetailsUi = new UserDetails(presenter); initWidget(uiBinder.createAndBindUi(this)); } @@ -26,6 +29,7 @@ public class UserProfileDetailsViewImpl extends Composite implements UserProfile @Override public void setUserManagementContext(UserManagementContext userManagementContext) { userHeaderUi.setUserManagementContext(userManagementContext); + decoratorUi.setUserManagementContext(userManagementContext); userDetailsUi.setUserManagementContext(userManagementContext); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml index 7ec0bb735ed..e7fead29fe5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/user/profile/UserProfileDetailsViewImpl.ui.xml @@ -1,8 +1,13 @@ + xmlns:mp="urn:import:com.sap.sailing.gwt.home.mobile.partials" + xmlns:um="urn:import:com.sap.sailing.gwt.home.shared.usermanagement.decorator"> - + + + + + From c2d147a4092f0946d73d9cc87423ccb81b63ec5d Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 16:38:31 +0100 Subject: [PATCH 114/367] Fixed styling for mobile "not logged in" placeholder --- .../decorator/NotLoggedInViewMobileImpl.ui.xml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml index 32ad320ddb2..d3abb46cc59 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/decorator/NotLoggedInViewMobileImpl.ui.xml @@ -6,14 +6,18 @@ .message { font-weight: bold; font-style: italic; - padding: 0 0.5em; } .button { display: block; + width: 100%; } -
- +
+
+
+
+ +
\ No newline at end of file From a4c8ee993d09f4d84c855c9cf7058a340a96fe0c Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 16:49:21 +0100 Subject: [PATCH 115/367] UserManagementRequestEvent now has a flag "login" --- .../UserManagementRequestEvent.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java index 8a73bc11053..a90b6cc50a3 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/usermanagement/UserManagementRequestEvent.java @@ -9,7 +9,22 @@ public class UserManagementRequestEvent extends GwtEvent getAssociatedType() { return TYPE; From 69508fadf21f4b2858b52263d684c3bb70700f2e Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 16:50:02 +0100 Subject: [PATCH 116/367] Added sign out entry to mobile main menu --- .../home/mobile/partials/header/Header.java | 32 ++++++++++++++++--- .../partials/header/HeaderNavigationItem.java | 2 +- 2 files changed, 29 insertions(+), 5 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java index 233da8e1961..22df3908009 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java @@ -22,6 +22,7 @@ import com.sap.sailing.gwt.home.shared.ExperimentalFeatures; import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; import com.sap.sailing.gwt.home.shared.app.ResettableNavigationPathDisplay; import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementContextEvent; +import com.sap.sailing.gwt.home.shared.usermanagement.UserManagementRequestEvent; import com.sap.sailing.gwt.home.shared.utils.DropdownHandler; import com.sap.sailing.gwt.ui.client.StringMessages; @@ -49,8 +50,9 @@ public class Header extends Composite { private final DropdownHandler dropdownHandler; private final HeaderNavigationItem signInNavigationItem; private final HeaderNavigationItem userDetailsNavigationItem; + private final HeaderNavigationItem signOutNavigationItem; - public Header(final MobilePlacesNavigator placeNavigator, EventBus eventBus) { + public Header(final MobilePlacesNavigator placeNavigator, final EventBus eventBus) { initWidget(uiBinder.createAndBindUi(this)); local_res.css().ensureInjected(); @@ -63,6 +65,12 @@ public class Header extends Composite { addUrl("http://blog.sapsailing.com", TextMessages.INSTANCE.blog()); signInNavigationItem = addNavigation(placeNavigator.getSignInNavigation(), com.sap.sse.security.ui.client.i18n.StringMessages.INSTANCE.signIn()); userDetailsNavigationItem = addNavigation(placeNavigator.getUserProfileNavigation(), com.sap.sse.security.ui.client.i18n.StringMessages.INSTANCE.userDetails()); + signOutNavigationItem = addNavigation(com.sap.sse.security.ui.client.i18n.StringMessages.INSTANCE.signOut(), new Runnable() { + @Override + public void run() { + eventBus.fireEvent(new UserManagementRequestEvent(false)); + } + }); dropdownHandler = new DropdownHandler(dropdownTriggerUi, dropdownContainerUi); @@ -84,9 +92,11 @@ public class Header extends Composite { if(event.getCtx().isLoggedIn()) { signInNavigationItem.getElement().getStyle().setDisplay(Display.NONE); userDetailsNavigationItem.getElement().getStyle().clearDisplay(); + signOutNavigationItem.getElement().getStyle().clearDisplay(); } else { signInNavigationItem.getElement().getStyle().clearDisplay(); userDetailsNavigationItem.getElement().getStyle().setDisplay(Display.NONE); + signOutNavigationItem.getElement().getStyle().setDisplay(Display.NONE); } } @@ -98,14 +108,28 @@ public class Header extends Composite { } private HeaderNavigationItem addNavigation(final PlaceNavigation placeNavigation, String name) { - HeaderNavigationItem navigationItem = new HeaderNavigationItem(name, placeNavigation.getTargetUrl()); + return addNavigation(placeNavigation.getTargetUrl(), name, new Runnable() { + @Override + public void run() { + placeNavigation.goToPlace(); + dropdownHandler.setVisible(false); + } + + }); + } + + private HeaderNavigationItem addNavigation(String name, final Runnable action) { + return addNavigation(null, name, action); + } + + private HeaderNavigationItem addNavigation(String url, String name, final Runnable action) { + HeaderNavigationItem navigationItem = new HeaderNavigationItem(name, url); navigationItem.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if(LinkUtil.handleLinkClick(event.getNativeEvent().cast())) { event.preventDefault(); - placeNavigation.goToPlace(); - dropdownHandler.setVisible(false); + action.run(); } } }); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/HeaderNavigationItem.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/HeaderNavigationItem.java index 084bb9ee21e..c435e005ca5 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/HeaderNavigationItem.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/HeaderNavigationItem.java @@ -24,7 +24,7 @@ public class HeaderNavigationItem extends Widget implements HasClickHandlers { public HeaderNavigationItem(String linkText, String link) { setElement(uiBinder.createAndBindUi(this)); - linkUi.setHref(link); + linkUi.setHref(link != null ? link : "#"); linkUi.setTitle(linkText); listitemUi.setInnerText(linkText); } From 00a5460bd4c370b3a130b791f4ded4b945c48b29 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 17:04:46 +0100 Subject: [PATCH 117/367] Implemented sign out functionality for mobile --- .../app/MobileApplicationClientFactory.java | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java index 264c5b9e546..82f8ba500bc 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/app/MobileApplicationClientFactory.java @@ -2,6 +2,7 @@ package com.sap.sailing.gwt.home.mobile.app; import com.google.gwt.place.shared.Place; import com.google.gwt.place.shared.PlaceController; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.web.bindery.event.shared.EventBus; import com.google.web.bindery.event.shared.SimpleEventBus; import com.sap.sailing.gwt.home.communication.SailingDispatchSystem; @@ -28,6 +29,7 @@ import com.sap.sse.security.ui.client.SecureClientFactoryImpl; import com.sap.sse.security.ui.client.UserManagementServiceAsync; import com.sap.sse.security.ui.client.UserStatusEventHandler; import com.sap.sse.security.ui.client.WithSecurity; +import com.sap.sse.security.ui.shared.SuccessInfo; import com.sap.sse.security.ui.shared.UserDTO; /** @@ -72,6 +74,24 @@ public class MobileApplicationClientFactory extends getEventBus().fireEvent(new UserManagementContextEvent(uCtx)); } }); + getEventBus().addHandler(UserManagementRequestEvent.TYPE, new UserManagementRequestEvent.Handler() { + @Override + public void onUserManagementRequestEvent(UserManagementRequestEvent event) { + if (!event.isLogin()) { + getUserManagementService().logout(new AsyncCallback() { + @Override + public void onSuccess(SuccessInfo result) { + resetUserManagementContext(); + } + + @Override + public void onFailure(Throwable caught) { + resetUserManagementContext(); + } + }); + } + } + }); } public MobilePlacesNavigator getNavigator() { From 7651636825b35905a9edbe4319746e849e0cb1c3 Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 17:05:22 +0100 Subject: [PATCH 118/367] Fixed hiding mobile main menu on sign out --- .../com/sap/sailing/gwt/home/mobile/partials/header/Header.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java index 22df3908009..8cc4653b496 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java @@ -112,7 +112,6 @@ public class Header extends Composite { @Override public void run() { placeNavigation.goToPlace(); - dropdownHandler.setVisible(false); } }); @@ -130,6 +129,7 @@ public class Header extends Composite { if(LinkUtil.handleLinkClick(event.getNativeEvent().cast())) { event.preventDefault(); action.run(); + dropdownHandler.setVisible(false); } } }); From d76b4091596a8d701dc0b3b658407c3c96e674aa Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 17:19:41 +0100 Subject: [PATCH 119/367] Initial logic to switch the burger button icon when signing in/out --- .../images/mobile/navigation-icon-signedin.svg | 1 + .../com/sap/sailing/gwt/home/mobile/partials/header/Header.java | 1 + 2 files changed, 2 insertions(+) create mode 100644 java/com.sap.sailing.gwt.ui/images/mobile/navigation-icon-signedin.svg diff --git a/java/com.sap.sailing.gwt.ui/images/mobile/navigation-icon-signedin.svg b/java/com.sap.sailing.gwt.ui/images/mobile/navigation-icon-signedin.svg new file mode 100644 index 00000000000..464f7a50069 --- /dev/null +++ b/java/com.sap.sailing.gwt.ui/images/mobile/navigation-icon-signedin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java index 8cc4653b496..2e2181fda4e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java @@ -89,6 +89,7 @@ public class Header extends Composite { eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { @Override public void onUserChangeEvent(UserManagementContextEvent event) { + dropdownTriggerUi.setSrc(event.getCtx().isLoggedIn() ? "images/mobile/navigation-icon-signedin.svg" : "images/mobile/navigation-icon.svg"); if(event.getCtx().isLoggedIn()) { signInNavigationItem.getElement().getStyle().setDisplay(Display.NONE); userDetailsNavigationItem.getElement().getStyle().clearDisplay(); From ded125204e7b1128eabaece6cd95f04e24d83b5a Mon Sep 17 00:00:00 2001 From: Steffen Schaefer Date: Tue, 15 Dec 2015 17:53:11 +0100 Subject: [PATCH 120/367] Adjusted the mobile Header style to be in sync with the design --- .../gwt/home/mobile/partials/header/Header.gss | 11 ++++++++++- .../gwt/home/mobile/partials/header/Header.java | 6 +++--- .../gwt/home/mobile/partials/header/Header.ui.xml | 2 +- .../home/mobile/partials/header/HeaderResources.java | 1 + 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.gss b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.gss index 8be8070ff78..c253f8427ea 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.gss +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.gss @@ -146,7 +146,7 @@ img.header_logo_image { right: 0; } .header_navigation_icon { - position: absolute; + position: relative; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); @@ -154,4 +154,13 @@ img.header_logo_image { -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 1em; + height: 1.333333333333333em; + background-image: url("images/mobile/navigation-icon.svg"); + background-repeat: no-repeat; + background-size: contain; + background-position: center center; +} +.header_navigation_iconsignedin { + width: 1.666666666666667em; + background-image: url("images/mobile/navigation-icon-signedin.svg"); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java index 2e2181fda4e..8b5769660ce 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.java @@ -3,7 +3,6 @@ package com.sap.sailing.gwt.home.mobile.partials.header; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.DivElement; import com.google.gwt.dom.client.Element; -import com.google.gwt.dom.client.ImageElement; import com.google.gwt.dom.client.Style.Display; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; @@ -32,7 +31,7 @@ public class Header extends Composite { // @UiField Button searchButton; @UiField HeaderResources local_res; - @UiField ImageElement dropdownTriggerUi; + @UiField DivElement dropdownTriggerUi; @UiField Element dropdownContainerUi; @UiField FlowPanel dropdownListUi; @UiField FlowPanel dropdownListExtUi; @@ -89,12 +88,13 @@ public class Header extends Composite { eventBus.addHandler(UserManagementContextEvent.TYPE, new UserManagementContextEvent.Handler() { @Override public void onUserChangeEvent(UserManagementContextEvent event) { - dropdownTriggerUi.setSrc(event.getCtx().isLoggedIn() ? "images/mobile/navigation-icon-signedin.svg" : "images/mobile/navigation-icon.svg"); if(event.getCtx().isLoggedIn()) { + dropdownTriggerUi.addClassName(HeaderResources.INSTANCE.css().header_navigation_iconsignedin()); signInNavigationItem.getElement().getStyle().setDisplay(Display.NONE); userDetailsNavigationItem.getElement().getStyle().clearDisplay(); signOutNavigationItem.getElement().getStyle().clearDisplay(); } else { + dropdownTriggerUi.removeClassName(HeaderResources.INSTANCE.css().header_navigation_iconsignedin()); signInNavigationItem.getElement().getStyle().clearDisplay(); userDetailsNavigationItem.getElement().getStyle().setDisplay(Display.NONE); signOutNavigationItem.getElement().getStyle().setDisplay(Display.NONE); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.ui.xml index c6738b9daf6..827fddb8d25 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/partials/header/Header.ui.xml @@ -23,7 +23,7 @@
- +