You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2015/01/07 00:18:37 UTC
[07/50] [abbrv] isis git commit: ISIS-987: only open an IsisSession
once to determine whether to render the password reset link and the sign-up
link.
ISIS-987: only open an IsisSession once to determine whether to render the password reset link and the sign-up link.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/258c4b89
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/258c4b89
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/258c4b89
Branch: refs/heads/ISIS-970
Commit: 258c4b8939ee7ecca9002db15ddebfd194c5f9b6
Parents: 6c75618
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon Jan 5 07:06:57 2015 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Mon Jan 5 07:06:57 2015 +0000
----------------------------------------------------------------------
.../wicket/ui/pages/login/IsisSignInPanel.java | 27 ++++++++++++--------
1 file changed, 16 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/258c4b89/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/IsisSignInPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/IsisSignInPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/IsisSignInPanel.java
index 8d86355..66e7082 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/IsisSignInPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/IsisSignInPanel.java
@@ -71,45 +71,50 @@ public class IsisSignInPanel extends SignInPanel {
protected void onInitialize() {
super.onInitialize();
- addPasswordResetLink("passwdResetLink");
- addSignUpLink("signUpLink");
+ final Component passwordResetLink = addPasswordResetLink("passwdResetLink");
+ final Component signUpLink = addSignUpLink("signUpLink");
+
+ setVisibilityAllowedBasedOnAvailableServices(signUpLink, passwordResetLink);
addNotificationPanel("feedback");
}
- private void addPasswordResetLink(final String id) {
- final Class < ?extends Page> passwordResetPageClass = pageClassRegistry.getPageClass(PageType.PASSWORD_RESET);
+ private BookmarkablePageLink<Void> addPasswordResetLink(final String id) {
+ final Class <? extends Page> passwordResetPageClass = pageClassRegistry.getPageClass(PageType.PASSWORD_RESET);
final BookmarkablePageLink<Void> passwordResetLink =
new BookmarkablePageLink<>(id, passwordResetPageClass);
- setVisibilityAllowedBasedOnAvailableServices(passwordResetLink);
-
- // in addition, don't show password reset link has been suppressed.
if(!this.passwordResetLink) {
passwordResetLink.setVisibilityAllowed(false);
}
getSignInForm().addOrReplace(passwordResetLink);
+ return passwordResetLink;
}
- private void addSignUpLink(final String id) {
+ private BookmarkablePageLink<Void> addSignUpLink(final String id) {
final Class<? extends Page> signUpPageClass = pageClassRegistry.getPageClass(PageType.SIGN_UP);
final BookmarkablePageLink<Void> signUpLink = new BookmarkablePageLink<>(id, signUpPageClass);
- setVisibilityAllowedBasedOnAvailableServices(signUpLink);
getSignInForm().addOrReplace(signUpLink);
+ return signUpLink;
}
private void addNotificationPanel(final String id) {
addOrReplace(new NotificationPanel(id));
}
- private void setVisibilityAllowedBasedOnAvailableServices(final Component component) {
+ private void setVisibilityAllowedBasedOnAvailableServices(final Component... components) {
IsisContext.doInSession(new Runnable() {
@Override
public void run() {
final UserRegistrationService userRegistrationService = lookupService(UserRegistrationService.class);
final EmailNotificationService emailNotificationService = lookupService(EmailNotificationService.class);
- component.setVisibilityAllowed(userRegistrationService != null && emailNotificationService.isConfigured());
+ final boolean visibilityAllowed = userRegistrationService != null && emailNotificationService.isConfigured();
+ for (final Component component: components) {
+ if(component.isVisibilityAllowed()) {
+ component.setVisibilityAllowed(visibilityAllowed);
+ }
+ }
}
});
}