[SYNCOPE-684] The StatusMod for UserMod#pwdPropRequest was not set at all from 
UserSelfModalPage


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/660b0ce8
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/660b0ce8
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/660b0ce8

Branch: refs/heads/1_2_X
Commit: 660b0ce88b22152e816b7c7812eb6e1bdfdc496b
Parents: 5d2817a
Author: Francesco Chicchiriccò <[email protected]>
Authored: Thu Jul 23 10:53:04 2015 +0200
Committer: Francesco Chicchiriccò <[email protected]>
Committed: Thu Jul 23 10:53:04 2015 +0200

----------------------------------------------------------------------
 .../syncope/console/pages/EditUserModalPage.java  |  6 ++----
 .../syncope/console/pages/UserModalPage.java      | 18 +++++++-----------
 .../syncope/console/pages/UserSelfModalPage.java  | 14 ++++++++++++--
 .../console/pages/UserTemplateModalPage.java      |  4 ++--
 .../syncope/console/pages/ViewUserModalPage.java  |  2 +-
 .../console/pages/panels/UserDetailsPanel.java    |  4 +---
 6 files changed, 25 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/660b0ce8/console/src/main/java/org/apache/syncope/console/pages/EditUserModalPage.java
----------------------------------------------------------------------
diff --git 
a/console/src/main/java/org/apache/syncope/console/pages/EditUserModalPage.java 
b/console/src/main/java/org/apache/syncope/console/pages/EditUserModalPage.java
index be9faf3..9ae618b 100644
--- 
a/console/src/main/java/org/apache/syncope/console/pages/EditUserModalPage.java
+++ 
b/console/src/main/java/org/apache/syncope/console/pages/EditUserModalPage.java
@@ -76,9 +76,8 @@ public class EditUserModalPage extends UserModalPage {
         }
     }
 
-    @SuppressWarnings("rawtypes")
     @Override
-    protected void submitAction(final AjaxRequestTarget target, final Form 
form) {
+    protected void submitAction(final AjaxRequestTarget target, final Form<?> 
form) {
         final UserTO updatedUserTO = (UserTO) form.getModelObject();
 
         if (updatedUserTO.getId() == 0) {
@@ -97,9 +96,8 @@ public class EditUserModalPage extends UserModalPage {
         }
     }
 
-    @SuppressWarnings("rawtypes")
     @Override
-    protected void closeAction(final AjaxRequestTarget target, final Form 
form) {
+    protected void closeAction(final AjaxRequestTarget target, final Form<?> 
form) {
         setResponsePage(new ResultStatusModalPage.Builder(window, 
userTO).mode(mode).build());
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/660b0ce8/console/src/main/java/org/apache/syncope/console/pages/UserModalPage.java
----------------------------------------------------------------------
diff --git 
a/console/src/main/java/org/apache/syncope/console/pages/UserModalPage.java 
b/console/src/main/java/org/apache/syncope/console/pages/UserModalPage.java
index 9135120..faca818 100644
--- a/console/src/main/java/org/apache/syncope/console/pages/UserModalPage.java
+++ b/console/src/main/java/org/apache/syncope/console/pages/UserModalPage.java
@@ -78,8 +78,7 @@ public abstract class UserModalPage extends BaseModalPage {
         fragment.setOutputMarkupId(true);
         add(fragment);
 
-        storePassword = new AjaxCheckBoxPanel("storePassword", "storePassword",
-                new Model<Boolean>(Boolean.TRUE));
+        storePassword = new AjaxCheckBoxPanel("storePassword", 
"storePassword", new Model<Boolean>(Boolean.TRUE));
     }
 
     public UserTO getUserTO() {
@@ -90,18 +89,17 @@ public abstract class UserModalPage extends BaseModalPage {
         this.userTO = userTO;
     }
 
-    @SuppressWarnings({ "unchecked", "rawtypes" })
-    protected Form setupEditPanel() {
+    protected Form<UserTO> setupEditPanel() {
         fragment.add(new Label("id", userTO.getId() == 0
                 ? ""
                 : userTO.getUsername()));
 
         fragment.add(new Label("new", userTO.getId() == 0
                 ? new ResourceModel("new")
-                : new Model("")));
+                : new Model<String>("")));
 
-        final Form form = new Form("UserForm");
-        form.setModel(new CompoundPropertyModel(userTO));
+        final Form<UserTO> form = new Form<UserTO>("UserForm");
+        form.setModel(new CompoundPropertyModel<UserTO>(userTO));
 
         //--------------------------------
         // User details
@@ -222,9 +220,7 @@ public abstract class UserModalPage extends BaseModalPage {
         };
     }
 
-    @SuppressWarnings("rawtypes")
-    protected abstract void submitAction(AjaxRequestTarget target, Form form);
+    protected abstract void submitAction(AjaxRequestTarget target, Form<?> 
form);
 
-    @SuppressWarnings("rawtypes")
-    protected abstract void closeAction(AjaxRequestTarget target, Form form);
+    protected abstract void closeAction(AjaxRequestTarget target, Form<?> 
form);
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/660b0ce8/console/src/main/java/org/apache/syncope/console/pages/UserSelfModalPage.java
----------------------------------------------------------------------
diff --git 
a/console/src/main/java/org/apache/syncope/console/pages/UserSelfModalPage.java 
b/console/src/main/java/org/apache/syncope/console/pages/UserSelfModalPage.java
index 9123f07..2c1407e 100644
--- 
a/console/src/main/java/org/apache/syncope/console/pages/UserSelfModalPage.java
+++ 
b/console/src/main/java/org/apache/syncope/console/pages/UserSelfModalPage.java
@@ -19,6 +19,8 @@
 package org.apache.syncope.console.pages;
 
 import org.apache.commons.lang3.SerializationUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.syncope.common.mod.StatusMod;
 import org.apache.syncope.common.mod.UserMod;
 import org.apache.syncope.common.to.UserTO;
 import org.apache.syncope.common.util.AttributableOperations;
@@ -50,7 +52,7 @@ public class UserSelfModalPage extends UserModalPage {
     }
 
     @Override
-    protected void submitAction(final AjaxRequestTarget target, final Form 
form) {
+    protected void submitAction(final AjaxRequestTarget target, final Form<?> 
form) {
         final UserTO updatedUserTO = (UserTO) form.getModelObject();
 
         if (updatedUserTO.getId() == 0) {
@@ -58,6 +60,14 @@ public class UserSelfModalPage extends UserModalPage {
         } else {
             final UserMod userMod = AttributableOperations.diff(updatedUserTO, 
initialUserTO);
 
+            if (StringUtils.isNotBlank(userMod.getPassword())) {
+                StatusMod pwdPropRequest = new StatusMod();
+                pwdPropRequest.setOnSyncope(true);
+                
pwdPropRequest.getResourceNames().addAll(updatedUserTO.getResources());
+
+                userMod.setPwdPropRequest(pwdPropRequest);
+            }
+
             // update user only if it has changed
             if (!userMod.isEmpty()) {
                 restClient.update(userMod);
@@ -66,7 +76,7 @@ public class UserSelfModalPage extends UserModalPage {
     }
 
     @Override
-    protected void closeAction(final AjaxRequestTarget target, final Form 
form) {
+    protected void closeAction(final AjaxRequestTarget target, final Form<?> 
form) {
         setResponsePage(new ResultStatusModalPage.Builder(window, 
userTO).mode(mode).build());
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/660b0ce8/console/src/main/java/org/apache/syncope/console/pages/UserTemplateModalPage.java
----------------------------------------------------------------------
diff --git 
a/console/src/main/java/org/apache/syncope/console/pages/UserTemplateModalPage.java
 
b/console/src/main/java/org/apache/syncope/console/pages/UserTemplateModalPage.java
index 09ea426..b12a0ed 100644
--- 
a/console/src/main/java/org/apache/syncope/console/pages/UserTemplateModalPage.java
+++ 
b/console/src/main/java/org/apache/syncope/console/pages/UserTemplateModalPage.java
@@ -48,13 +48,13 @@ public class UserTemplateModalPage extends UserModalPage {
     }
 
     @Override
-    protected void submitAction(final AjaxRequestTarget target, final Form 
form) {
+    protected void submitAction(final AjaxRequestTarget target, final Form<?> 
form) {
         syncTaskTO.setUserTemplate((UserTO) form.getModelObject());
         taskRestClient.updateSyncTask(syncTaskTO);
     }
 
     @Override
-    protected void closeAction(final AjaxRequestTarget target, final Form 
form) {
+    protected void closeAction(final AjaxRequestTarget target, final Form<?> 
form) {
         window.close(target);
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/660b0ce8/console/src/main/java/org/apache/syncope/console/pages/ViewUserModalPage.java
----------------------------------------------------------------------
diff --git 
a/console/src/main/java/org/apache/syncope/console/pages/ViewUserModalPage.java 
b/console/src/main/java/org/apache/syncope/console/pages/ViewUserModalPage.java
index fc6f0ec..d424295 100644
--- 
a/console/src/main/java/org/apache/syncope/console/pages/ViewUserModalPage.java
+++ 
b/console/src/main/java/org/apache/syncope/console/pages/ViewUserModalPage.java
@@ -43,7 +43,7 @@ public class ViewUserModalPage extends EditUserModalPage {
     }
 
     @Override
-    protected void submitAction(final AjaxRequestTarget target, final Form 
form) {
+    protected void submitAction(final AjaxRequestTarget target, final Form<?> 
form) {
         // No submit allowed, read-only form
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/660b0ce8/console/src/main/java/org/apache/syncope/console/pages/panels/UserDetailsPanel.java
----------------------------------------------------------------------
diff --git 
a/console/src/main/java/org/apache/syncope/console/pages/panels/UserDetailsPanel.java
 
b/console/src/main/java/org/apache/syncope/console/pages/panels/UserDetailsPanel.java
index 7d30e98..d1c7cec 100644
--- 
a/console/src/main/java/org/apache/syncope/console/pages/panels/UserDetailsPanel.java
+++ 
b/console/src/main/java/org/apache/syncope/console/pages/panels/UserDetailsPanel.java
@@ -20,8 +20,6 @@ package org.apache.syncope.console.pages.panels;
 
 import org.apache.syncope.common.to.UserTO;
 import org.apache.syncope.console.commons.JexlHelpUtil;
-import org.apache.syncope.console.pages.UserModalPage;
-import org.apache.syncope.console.wicket.markup.html.form.AjaxCheckBoxPanel;
 import 
org.apache.syncope.console.wicket.markup.html.form.AjaxPasswordFieldPanel;
 import org.apache.syncope.console.wicket.markup.html.form.AjaxTextFieldPanel;
 import org.apache.syncope.console.wicket.markup.html.form.FieldPanel;
@@ -43,7 +41,7 @@ public class UserDetailsPanel extends Panel {
 
     private static final long serialVersionUID = 6592027822510220463L;
 
-    public UserDetailsPanel(final String id, final UserTO userTO, final Form 
form, final boolean resetPassword,
+    public UserDetailsPanel(final String id, final UserTO userTO, final 
Form<?> form, final boolean resetPassword,
             final boolean templateMode) {
 
         super(id);

Reply via email to