bug5510: finished sign in and up button visibility (initial loggedIn check was missing)

- tuned styling of price selection
This commit is contained in:
Udo Wessels
2021-10-18 10:58:04 +02:00
parent 213ba6b82d
commit 6908ae5774
9 changed files with 45 additions and 11 deletions
@@ -42,6 +42,7 @@ import com.sap.sse.security.ui.authentication.AuthenticationClientFactoryImpl;
import com.sap.sse.security.ui.authentication.AuthenticationManager;
import com.sap.sse.security.ui.authentication.AuthenticationManagerImpl;
import com.sap.sse.security.ui.authentication.AuthenticationPlaceManagementController;
import com.sap.sse.security.ui.authentication.app.AuthenticationContext;
import com.sap.sse.security.ui.authentication.info.LoggedInUserInfoPlace;
import com.sap.sse.security.ui.authentication.view.FlyoutAuthenticationPresenter;
import com.sap.sse.security.ui.client.i18n.StringMessages;
@@ -158,6 +159,10 @@ public class TabletAndDesktopApplicationClientFactory extends AbstractApplicatio
public void toggleAuthenticationFlyout() {
flyoutAuthenticationPresenter.toggleFlyout();
}
@Override
public AuthenticationContext getAuthenticationContext() {
return authenticationManager.getAuthenticationContext();
}
});
}
@@ -108,12 +108,26 @@
font-size: 24px;
font-weight: 700;
}
.price.selected {
.price:hover {
border-color: #d79900;
background-color: #8ab54e;
color: #fff;
}
.free .price, .individual .price {
border-color: #f0ab00;
border-width: 1px;
background-color: #f0ab00;
color: #fff;
}
.price.selected {
background-color: #f0ab00;
color: #fff;
}
.free .price:hover, .individual .price:hover {
border-color: #d79900;
}
.price.selected:hover {
border-color: #d79900;
}
.prices {
padding: 1em;
width: 100%;
@@ -69,7 +69,7 @@ public class SubscriptionCard extends Composite {
private final Consumer<SubscriptionPrice> subscriptionCallback;
private SubscriptionPrice currentPrice;
public <T> SubscriptionCard(SubscriptionPlanDTO subscriptionPlanDTO, Type type, Consumer<SubscriptionPrice> subscriptionCallback, EventBus eventBus) {
public <T> SubscriptionCard(SubscriptionPlanDTO subscriptionPlanDTO, Type type, Consumer<SubscriptionPrice> subscriptionCallback, EventBus eventBus, boolean loggedIn) {
this.subscriptionCallback = subscriptionCallback;
SubscriptionCardResources.INSTANCE.css().ensureInjected();
SharedResources.INSTANCE.mediaCss().ensureInjected();
@@ -145,8 +145,12 @@ public class SubscriptionCard extends Composite {
break;
case FREE:
addStyleName(FREE_STYLE);
button.setText(i18n.signUp());
button.getElement().getStyle().setDisplay(Display.BLOCK);
button.setText(i18n.signInOrUp());
if (loggedIn) {
button.getElement().getStyle().setDisplay(Display.NONE);
} else {
button.getElement().getStyle().setDisplay(Display.BLOCK);
}
eventBus.addHandler(AuthenticationContextEvent.TYPE, event->{
AuthenticationContext authContext = event.getCtx();
// make it point to the current server if the user has CREATE_OBJECT permission there
@@ -38,6 +38,7 @@ import com.sap.sse.security.shared.subscription.InvalidSubscriptionProviderExcep
import com.sap.sse.security.ui.authentication.AuthenticationManager;
import com.sap.sse.security.ui.authentication.AuthenticationManagerImpl;
import com.sap.sse.security.ui.authentication.WithAuthenticationManager;
import com.sap.sse.security.ui.authentication.app.AuthenticationContext;
import com.sap.sse.security.ui.authentication.login.LoginHintContent;
import com.sap.sse.security.ui.client.SecureClientFactoryImpl;
import com.sap.sse.security.ui.client.i18n.StringMessages;
@@ -167,6 +168,10 @@ public class MobileApplicationClientFactory extends
GWT.log("toggle authentication flyout");
navigator.goToPlace(navigator.getSignInNavigation());
}
@Override
public AuthenticationContext getAuthenticationContext() {
return authenticationManager.getAuthenticationContext();
}
});
}
@@ -3,6 +3,7 @@ package com.sap.sailing.gwt.home.shared.places.subscription;
import com.google.gwt.event.shared.EventBus;
import com.google.gwt.user.client.ui.IsWidget;
import com.sap.sailing.gwt.home.desktop.partials.subscription.SubscriptionCard;
import com.sap.sse.security.ui.authentication.app.AuthenticationContext;
import com.sap.sse.security.ui.shared.subscription.SubscriptionPlanDTO;
public interface SubscriptionView extends IsWidget {
@@ -16,6 +17,8 @@ public interface SubscriptionView extends IsWidget {
void manageSubscriptions();
void toggleAuthenticationFlyout();
AuthenticationContext getAuthenticationContext();
}
}
@@ -25,29 +25,29 @@ public class SubscriptionViewImpl extends Composite implements SubscriptionView
if (price != null) {
presenter.startSubscription(price.getPriceId());
}
}, eventBus));
}, eventBus, presenter.getAuthenticationContext().isLoggedIn()));
break;
case DEFAULT:
container.addSubscription(new SubscriptionCard(plan, type, (price) -> {
if (price != null) {
presenter.startSubscription(price.getPriceId());
}
}, eventBus));
}, eventBus, presenter.getAuthenticationContext().isLoggedIn()));
break;
case OWNER:
container.addSubscription(new SubscriptionCard(plan, type, (price) -> {
presenter.manageSubscriptions();
}, eventBus));
}, eventBus, presenter.getAuthenticationContext().isLoggedIn()));
break;
case INDIVIDUAL:
container.addSubscription(new SubscriptionCard(plan, type, (price) -> {
Window.Location.assign("mailto:info@sapsailing.com");
}, eventBus));
}, eventBus, presenter.getAuthenticationContext().isLoggedIn()));
break;
case FREE:
container.addSubscription(new SubscriptionCard(plan, type, (price) -> {
presenter.toggleAuthenticationFlyout();
}, eventBus));
}, eventBus, presenter.getAuthenticationContext().isLoggedIn()));
break;
default:
break;
@@ -17,6 +17,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages {
String signIn();
String invalidUsername();
String signUp();
String signInOrUp();
String signOut();
String couldNotSignOut(String message);
String createUser();
@@ -6,6 +6,7 @@ passwordRepeat=Repeat password
loggedIn=Logged in as user {0}!
signIn=Sign in
signUp=Sign up
signInOrUp=Sign in or sign up
signOut=Sign out
invalidUsername=Invalid username
couldNotSignOut=Could not sign out: {0}
@@ -6,6 +6,7 @@ passwordRepeat=Passwort Wiederholung
loggedIn=Angemeldet als Benutzer {0}!
signIn=Anmelden
signUp=Registrieren
signInOrUp=Anmelden oder Registrieren
signOut=Abmelden
invalidUsername=Ungültiger Benutzername
couldNotSignOut=Abmeldung fehlgeschlagen: {0}
@@ -202,7 +203,7 @@ unlockWithSubscription=Schalten Sie diese Funktion frei, indem Sie ein Abonnemen
selectOption=Bitte eine Option auswählen.
currentlyUnableToSubscribe=Abschließen eines Abbonements derzeit nicht möglich. Bitte versuchen sie es später erneut.
subscribe=Abonnieren
subscriptionPlanOverview=Abonnement Übersicht
subscriptionPlanOverview=Abonnementübersicht
selectSubscriptionPlan=Bitte wählen sie einen Abonnementplan aus.
features=Enthalten
price=Preis