Yes. I'll do it soon. Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov
On Tue, Jan 6, 2015 at 11:45 AM, Dan Haywood <[email protected]> wrote: > yes, my bad. Can you make the fix if you didn't already. > > cheers > Dan > > On 6 January 2015 at 09:38, Martin Grigorov <[email protected]> wrote: > > > On Mon, Jan 5, 2015 at 10:07 PM, <[email protected]> wrote: > > > > > ISIS-987: don't allow the user to navigate to the signUp or password > > reset > > > pages if that functionality has been suppressed. > > > > > > > > > Project: http://git-wip-us.apache.org/repos/asf/isis/repo > > > Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/1ca9c59d > > > Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/1ca9c59d > > > Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/1ca9c59d > > > > > > Branch: refs/heads/master > > > Commit: 1ca9c59d9da85065da17ecdc074a01c562d5dcb7 > > > Parents: 0ed6be7 > > > Author: Dan Haywood <[email protected]> > > > Authored: Mon Jan 5 20:06:56 2015 +0000 > > > Committer: Dan Haywood <[email protected]> > > > Committed: Mon Jan 5 20:06:56 2015 +0000 > > > > > > ---------------------------------------------------------------------- > > > .../accmngt/password_reset/PasswordResetPage.java | 9 ++++++++- > > > .../pages/accmngt/signup/RegistrationFormPage.java | 8 ++++++++ > > > .../wicket/ui/pages/login/WicketSignInPage.java | 15 > > ++++++++++----- > > > 3 files changed, 26 insertions(+), 6 deletions(-) > > > ---------------------------------------------------------------------- > > > > > > > > > > > > > > > http://git-wip-us.apache.org/repos/asf/isis/blob/1ca9c59d/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetPage.java > > > ---------------------------------------------------------------------- > > > diff --git > > > > > > a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetPage.java > > > > > > b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetPage.java > > > index 8386fa4..ff5b913 100644 > > > --- > > > > > > a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetPage.java > > > +++ > > > > > > b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/password_reset/PasswordResetPage.java > > > @@ -22,14 +22,16 @@ package > > > org.apache.isis.viewer.wicket.ui.pages.accmngt.password_reset; > > > import > > > > > > de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel; > > > > > > import java.util.concurrent.Callable; > > > +import org.apache.wicket.RestartResponseAtInterceptPageException; > > > import org.apache.wicket.request.mapper.parameter.PageParameters; > > > import org.apache.wicket.util.string.StringValue; > > > import org.apache.wicket.util.string.Strings; > > > import > org.apache.isis.applib.services.userreg.UserRegistrationService; > > > import org.apache.isis.core.runtime.system.context.IsisContext; > > > import org.apache.isis.viewer.wicket.ui.errors.ExceptionModel; > > > -import > > > > > > org.apache.isis.viewer.wicket.ui.pages.accmngt.AccountManagementPageAbstract; > > > import > > > org.apache.isis.viewer.wicket.ui.pages.accmngt.AccountConfirmationMap; > > > +import > > > > > > org.apache.isis.viewer.wicket.ui.pages.accmngt.AccountManagementPageAbstract; > > > +import org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage; > > > > > > /** > > > * A page used for resetting the password of an user. > > > @@ -46,6 +48,11 @@ public class PasswordResetPage extends > > > AccountManagementPageAbstract { > > > > > > private PasswordResetPage(final PageParameters parameters, > > > ExceptionModel exceptionModel) { > > > super(parameters, exceptionModel); > > > + > > > + boolean suppressPasswordResetLink = > > > > > > getConfiguration().getBoolean(WicketSignInPage.ISIS_VIEWER_WICKET_SUPPRESS_PASSWORD_RESET, > > > false); > > > + if(suppressPasswordResetLink) { > > > + throw new > > > RestartResponseAtInterceptPageException(WicketSignInPage.class); > > > > > > > This should use PageClassRegistry.get(PageType.SIGN_IN) instead, to allow > > usage of custom sign in page impls. > > > > > > > + } > > > } > > > > > > @Override > > > > > > > > > > > > http://git-wip-us.apache.org/repos/asf/isis/blob/1ca9c59d/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPage.java > > > ---------------------------------------------------------------------- > > > diff --git > > > > > > a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPage.java > > > > > > b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPage.java > > > index 6fd5338..242febe 100644 > > > --- > > > > > > a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPage.java > > > +++ > > > > > > b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/accmngt/signup/RegistrationFormPage.java > > > @@ -19,9 +19,11 @@ > > > > > > package org.apache.isis.viewer.wicket.ui.pages.accmngt.signup; > > > > > > +import org.apache.wicket.RestartResponseAtInterceptPageException; > > > import org.apache.wicket.request.mapper.parameter.PageParameters; > > > import org.apache.isis.viewer.wicket.ui.errors.ExceptionModel; > > > import > > > > > > org.apache.isis.viewer.wicket.ui.pages.accmngt.AccountManagementPageAbstract; > > > +import org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage; > > > > > > /** > > > * A page for self-registering a new user after confirmation of her > > email > > > account. > > > @@ -36,6 +38,12 @@ public class RegistrationFormPage extends > > > AccountManagementPageAbstract { > > > > > > private RegistrationFormPage(final PageParameters parameters, > > > ExceptionModel exceptionModel) { > > > super(parameters, exceptionModel); > > > + > > > + boolean suppressSignUp = > > > > > > getConfiguration().getBoolean(WicketSignInPage.ISIS_VIEWER_WICKET_SUPPRESS_SIGN_UP, > > > false); > > > + if(suppressSignUp) { > > > + throw new > > > RestartResponseAtInterceptPageException(WicketSignInPage.class); > > > > > > > ditto > > > > > > > + } > > > + > > > } > > > > > > @Override > > > > > > > > > > > > http://git-wip-us.apache.org/repos/asf/isis/blob/1ca9c59d/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketSignInPage.java > > > ---------------------------------------------------------------------- > > > diff --git > > > > > > a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketSignInPage.java > > > > > > b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketSignInPage.java > > > index 9e0e5b3..b0de663 100644 > > > --- > > > > > > a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketSignInPage.java > > > +++ > > > > > > b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketSignInPage.java > > > @@ -30,9 +30,14 @@ import > > > > org.apache.isis.viewer.wicket.ui.pages.accmngt.AccountManagementPageAbstr > > > * Boilerplate, pick up our HTML and CSS. > > > */ > > > public class WicketSignInPage extends AccountManagementPageAbstract { > > > - > > > + > > > private static final long serialVersionUID = 1L; > > > > > > + public static final String > ISIS_VIEWER_WICKET_SUPPRESS_REMEMBER_ME = > > > "isis.viewer.wicket.suppressRememberMe"; > > > + public static final String ISIS_VIEWER_WICKET_SUPPRESS_SIGN_UP = > > > "isis.viewer.wicket.suppressSignUp"; > > > + public static final String > > ISIS_VIEWER_WICKET_SUPPRESS_PASSWORD_RESET > > > = "isis.viewer.wicket.suppressPasswordReset"; > > > + public static final String > > > ISIS_VIEWER_WICKET_CLEAR_ORIGINAL_DESTINATION = > > > "isis.viewer.wicket.clearOriginalDestination"; > > > + > > > public WicketSignInPage(final PageParameters parameters) { > > > this(parameters, getAndClearExceptionModelIfAny()); > > > } > > > @@ -65,10 +70,10 @@ public class WicketSignInPage extends > > > AccountManagementPageAbstract { > > > } > > > > > > protected SignInPanel addSignInPanel() { > > > - final boolean suppressRememberMe = > > > getConfiguration().getBoolean("isis.viewer.wicket.suppressRememberMe", > > > false); > > > - final boolean suppressSignUpLink = > > > getConfiguration().getBoolean("isis.viewer.wicket.suppressSignUp", > > false); > > > - final boolean suppressPasswordResetLink = > > > > getConfiguration().getBoolean("isis.viewer.wicket.suppressPasswordReset", > > > false); > > > - final boolean clearOriginalDestination = > > > > > > getConfiguration().getBoolean("isis.viewer.wicket.clearOriginalDestination", > > > false); > > > + final boolean suppressRememberMe = > > > getConfiguration().getBoolean(ISIS_VIEWER_WICKET_SUPPRESS_REMEMBER_ME, > > > false); > > > + final boolean suppressSignUpLink = > > > getConfiguration().getBoolean(ISIS_VIEWER_WICKET_SUPPRESS_SIGN_UP, > > false); > > > + final boolean suppressPasswordResetLink = > > > > getConfiguration().getBoolean(ISIS_VIEWER_WICKET_SUPPRESS_PASSWORD_RESET, > > > false); > > > + final boolean clearOriginalDestination = > > > > > > getConfiguration().getBoolean(ISIS_VIEWER_WICKET_CLEAR_ORIGINAL_DESTINATION, > > > false); > > > final boolean rememberMe = !suppressRememberMe; > > > final boolean signUpLink = !suppressSignUpLink; > > > final boolean passwordReset = !suppressPasswordResetLink; > > > > > > > > >
