pass application name into LoginView; layout is messy now --> Frank to fix

This commit is contained in:
Axel Uhl committed 2014-11-05 14:42:04 +01:00
1 parent 59a0f608dd
commit 0467395f2f
4 files changed
+17 -5

No files matched your search

@@ -25,7 +25,7 @@ securityManager.sessionManager = $sessionManager
#securityManager.sessionManager.sessionIdCookie = $globalCookie
authc = com.sap.sse.security.CustomFilter
authc.loginUrl = ../security/ui/Login.html
authc.loginUrl = ../security/ui/Login.html?app=Sailing%20Analytics
authc.successUrl = /security/ui/UserManagement.html
roles.loginUrl = ../security/ui/Login.html
@@ -1,25 +1,33 @@
package com.sap.sse.security.ui.login;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.ServiceDefTarget;
import com.google.gwt.user.client.ui.RootPanel;
import com.sap.sse.gwt.client.AbstractEntryPoint;
import com.sap.sse.gwt.client.EntryPointHelper;
import com.sap.sse.security.ui.client.RemoteServiceMappingConstants;
import com.sap.sse.security.ui.client.UserService;
import com.sap.sse.security.ui.client.i18n.StringMessages;
import com.sap.sse.security.ui.shared.UserManagementService;
import com.sap.sse.security.ui.shared.UserManagementServiceAsync;
public class LoginEntryPoint extends AbstractEntryPoint {
/**
* The URL parameter name used to pass an application name to this entry point. This name
* will be put into the login view's header.
*/
private static final String PARAM_APP = "app";
private UserManagementServiceAsync userManagementService;
private UserService userService;
@Override
public void doOnModuleLoad() {
final String appName = Window.Location.getParameter(PARAM_APP);
userManagementService = GWT.create(UserManagementService.class);
EntryPointHelper.registerASyncService((ServiceDefTarget) userManagementService, RemoteServiceMappingConstants.userManagementServiceRemotePath);
userService = new UserService(userManagementService);
RootPanel rootPanel = RootPanel.get();
rootPanel.add(new LoginView(userManagementService, userService));
rootPanel.add(new LoginView(userManagementService, userService, appName==null?StringMessages.INSTANCE.signIn():appName));
}
}
@@ -13,6 +13,7 @@ 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.HTMLPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
import com.sap.sse.security.shared.UserManagementException;
@@ -33,17 +34,19 @@ public class LoginView extends Composite {
private final UserService userService;
@UiField TextBoxWithWatermark userNameTextBox;
@UiField Label appName;
@UiField Anchor forgotPasswordAnchor;
@UiField PasswordTextBoxWithWatermark passwordTextBox;
@UiField Button loginButton;
@UiField Anchor signUpAnchor;
@UiField HTMLPanel oAuthPanel;
public LoginView(UserManagementServiceAsync userManagementService, UserService userService) {
public LoginView(UserManagementServiceAsync userManagementService, UserService userService, String appName) {
this.userManagementService = userManagementService;
this.userService = userService;
LoginViewResources.INSTANCE.css().ensureInjected();
initWidget(uiBinder.createAndBindUi(this));
this.appName.setText(appName);
userNameTextBox.setWatermark(StringMessages.INSTANCE.username());
passwordTextBox.setWatermark(StringMessages.INSTANCE.password());
String registrationLink = EntryPointLinkFactory.createRegistrationLink(Collections.<String, String> emptyMap());
@@ -6,8 +6,9 @@
<ui:with field="icon_res" type="com.sap.sse.security.ui.client.IconResources" />
<ui:with field="local_res" type="com.sap.sse.security.ui.login.LoginViewResources" />
<g:HTMLPanel styleName="{local_res.css.loginform}">
<div class="{local_res.css.loginform_header}">
<img src="{icon_res.sapLogo.getSafeUri}" />
<div class="{local_res.css.loginform_header}">
<img src="{icon_res.sapLogo.getSafeUri}" />
<g:Label ui:field="appName" />
</div>
<div class="{local_res.css.loginform_content}">
<div><ui:text from="{i18n.generalWelcome}" /></div>