You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2021/03/23 08:48:42 UTC
[syncope] branch master updated: [SYNCOPE-1624] Toggle panel
improvements
This is an automated email from the ASF dual-hosted git repository.
ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git
The following commit(s) were added to refs/heads/master by this push:
new ac43106 [SYNCOPE-1624] Toggle panel improvements
ac43106 is described below
commit ac431061c63d4f21fa58da8f151e54f7f490bf79
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Tue Mar 23 09:26:01 2021 +0100
[SYNCOPE-1624] Toggle panel improvements
---
.../notifications/MailTemplateDirectoryPanel.java | 16 +++--------
.../client/console/panels/AnyDirectoryPanel.java | 15 ----------
.../syncope/client/console/panels/AnyPanel.java | 5 ++++
.../console/panels/ApplicationDirectoryPanel.java | 2 +-
.../client/console/panels/DirectoryPanel.java | 32 ++++++++++------------
.../console/panels/DynRealmDirectoryPanel.java | 15 +++-------
.../panels/ImplementationDirectoryPanel.java | 15 +++-------
.../console/panels/SecurityQuestionsPanel.java | 27 ++++--------------
.../console/policies/PolicyDirectoryPanel.java | 18 ++++--------
.../reports/ReportTemplateDirectoryPanel.java | 16 +++--------
10 files changed, 48 insertions(+), 113 deletions(-)
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java
index fa4642f..47c7f8d 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java
@@ -34,7 +34,6 @@ import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.panels.DirectoryPanel;
import org.apache.syncope.client.console.rest.NotificationRestClient;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink;
import org.apache.syncope.client.ui.commons.wizards.AbstractModalPanelBuilder;
import org.apache.syncope.client.ui.commons.wizards.AjaxWizard;
@@ -70,18 +69,11 @@ public class MailTemplateDirectoryPanel
modal.size(Modal.Size.Small);
modal.addSubmitButton();
- setFooterVisibility(true);
-
- modal.setWindowClosedCallback(new WindowClosedCallback() {
-
- private static final long serialVersionUID = 8804221891699487139L;
-
- @Override
- public void onClose(final AjaxRequestTarget target) {
- updateResultTable(target);
- modal.show(false);
- }
+ modal.setWindowClosedCallback(target -> {
+ updateResultTable(target);
+ modal.show(false);
});
+ setFooterVisibility(true);
addOuterObject(utilityModal);
setWindowClosedReloadCallback(utilityModal);
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java
index 36c1387..4c0d712 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java
@@ -38,9 +38,7 @@ import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.
import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.KeyPropertyColumn;
import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.TokenColumn;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink;
-import org.apache.syncope.client.console.wizards.any.ResultPage;
import org.apache.syncope.client.console.wizards.any.StatusPanel;
import org.apache.syncope.client.ui.commons.Constants;
import org.apache.syncope.client.ui.commons.status.ConnObjectWrapper;
@@ -114,19 +112,6 @@ public abstract class AnyDirectoryPanel<A extends AnyTO, E extends AbstractAnyRe
setWindowClosedReloadCallback(utilityModal);
modal.size(Modal.Size.Large);
- // change close callback in order to update header after model update
- modal.setWindowClosedCallback(new WindowClosedCallback() {
-
- private static final long serialVersionUID = 8804221891699487139L;
-
- @Override
- public void onClose(final AjaxRequestTarget target) {
- if (actionTogglePanel.isVisibleInHierarchy() && modal.getContent() instanceof ResultPage) {
- actionTogglePanel.updateHeader(target, ResultPage.class.cast(modal.getContent()).getItem());
- }
- modal.show(false);
- }
- });
altDefaultModal.size(Modal.Size.Large);
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java
index c0a4992..7c6bda1 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java
@@ -31,6 +31,7 @@ import org.apache.syncope.client.console.panels.search.SearchClausePanel;
import org.apache.syncope.client.console.panels.search.SearchUtils;
import org.apache.syncope.client.console.panels.search.UserSearchPanel;
import org.apache.syncope.client.console.rest.AnyTypeClassRestClient;
+import org.apache.syncope.client.console.wicket.markup.html.form.ActionLinksTogglePanel;
import org.apache.syncope.client.lib.SyncopeClient;
import org.apache.syncope.client.ui.commons.Constants;
import org.apache.syncope.client.ui.commons.panels.LabelPanel;
@@ -49,6 +50,7 @@ import org.apache.wicket.PageReference;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
+import org.apache.wicket.event.Broadcast;
import org.apache.wicket.event.IEvent;
import org.apache.wicket.extensions.markup.html.tabs.AbstractTab;
import org.apache.wicket.extensions.markup.html.tabs.ITab;
@@ -254,6 +256,9 @@ public class AnyPanel extends Panel implements ModalPanel {
if (event.getPayload() instanceof SearchClausePanel.SearchEvent) {
AjaxRequestTarget target = SearchClausePanel.SearchEvent.class.cast(event.getPayload()).getTarget();
+ send(AnyPanel.this.directoryPanel, Broadcast.BREADTH,
+ new ActionLinksTogglePanel.ActionLinkToggleCloseEventPayload(target));
+
String precond = realmTO.getFullPath().startsWith(SyncopeConstants.ROOT_REALM)
? StringUtils.EMPTY
: String.format("$dynRealms=~%s;", realmTO.getKey());
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java
index fa0e574..dc029f0 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java
@@ -85,11 +85,11 @@ public class ApplicationDirectoryPanel extends
modal.size(Modal.Size.Default);
modal.addSubmitButton();
- setFooterVisibility(true);
modal.setWindowClosedCallback(target -> {
updateResultTable(target);
modal.show(false);
});
+ setFooterVisibility(true);
privilegeModal.size(Modal.Size.Large);
privilegeModal.setWindowClosedCallback(target -> {
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java
index fa36ba9..4bf3724 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java
@@ -31,11 +31,11 @@ import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.ui.commons.rest.RestClient;
import org.apache.syncope.client.ui.commons.ajax.form.IndicatorAjaxFormComponentUpdatingBehavior;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLinksTogglePanel;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel;
import org.apache.syncope.client.console.wizards.WizardMgtPanel;
+import org.apache.syncope.client.ui.commons.panels.WizardModalPanel;
import org.apache.syncope.common.lib.types.IdRepoEntitlement;
import org.apache.wicket.PageReference;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -167,27 +167,25 @@ public abstract class DirectoryPanel<
rows = PreferenceManager.getPaginatorRows(getRequest(), paginatorRowsKey());
- setWindowClosedReloadCallback(modal);
- setWindowClosedReloadCallback(altDefaultModal);
- setWindowClosedReloadCallback(displayAttributeModal);
-
- displayAttributeModal.setWindowClosedCallback(new WindowClosedCallback() {
+ modal.setWindowClosedCallback(target -> {
+ if (actionTogglePanel.isVisibleInHierarchy() && modal.getContent() instanceof WizardModalPanel) {
+ actionTogglePanel.updateHeader(target, WizardModalPanel.class.cast(modal.getContent()).getItem());
+ }
+ modal.show(false);
+ });
- private static final long serialVersionUID = 8804221891699487139L;
+ setWindowClosedReloadCallback(altDefaultModal);
+ altDefaultModal.size(Modal.Size.Default);
- @Override
- public void onClose(final AjaxRequestTarget target) {
- final EventDataWrapper data = new EventDataWrapper();
- data.setTarget(target);
- data.setRows(rows);
+ displayAttributeModal.setWindowClosedCallback(target -> {
+ EventDataWrapper data = new EventDataWrapper();
+ data.setTarget(target);
+ data.setRows(rows);
- send(DirectoryPanel.this, Broadcast.EXACT, data);
+ send(DirectoryPanel.this, Broadcast.EXACT, data);
- modal.show(false);
- }
+ modal.show(false);
});
-
- altDefaultModal.size(Modal.Size.Default);
displayAttributeModal.size(Modal.Size.Default);
displayAttributeModal.addSubmitButton();
}
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java
index 087e5de..a828115 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java
@@ -31,7 +31,6 @@ import org.apache.syncope.client.console.commons.SortableDataProviderComparator;
import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.panels.DynRealmDirectoryPanel.DynRealmDataProvider;
import org.apache.syncope.client.console.rest.DynRealmRestClient;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel;
import org.apache.syncope.client.console.wizards.DynRealmWrapper;
@@ -66,17 +65,11 @@ public class DynRealmDirectoryPanel extends
modal.size(Modal.Size.Large);
modal.addSubmitButton();
- setFooterVisibility(true);
- modal.setWindowClosedCallback(new WindowClosedCallback() {
-
- private static final long serialVersionUID = 8804221891699487139L;
-
- @Override
- public void onClose(final AjaxRequestTarget target) {
- updateResultTable(target);
- modal.show(false);
- }
+ modal.setWindowClosedCallback(target -> {
+ updateResultTable(target);
+ modal.show(false);
});
+ setFooterVisibility(true);
AjaxLink<Void> newDynRealmlLink = new AjaxLink<Void>("add") {
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java
index 884a46f..68d85df 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java
@@ -31,7 +31,6 @@ import org.apache.syncope.client.console.commons.SortableDataProviderComparator;
import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.panels.ImplementationDirectoryPanel.ImplementationProvider;
import org.apache.syncope.client.console.rest.ImplementationRestClient;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLinksTogglePanel;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel;
@@ -70,16 +69,10 @@ public class ImplementationDirectoryPanel extends DirectoryPanel<
modal.size(Modal.Size.Large);
modal.addSubmitButton();
- modal.setWindowClosedCallback(new WindowClosedCallback() {
-
- private static final long serialVersionUID = 8804221891699487139L;
-
- @Override
- public void onClose(final AjaxRequestTarget target) {
- implementation.setEngine(null);
- updateResultTable(target);
- modal.show(false);
- }
+ modal.setWindowClosedCallback(target -> {
+ implementation.setEngine(null);
+ updateResultTable(target);
+ modal.show(false);
});
setFooterVisibility(true);
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java
index 5543271..64d93ce 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java
@@ -32,7 +32,6 @@ import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.panels.SecurityQuestionsPanel.SecurityQuestionsProvider;
import org.apache.syncope.client.console.rest.SecurityQuestionRestClient;
import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.KeyPropertyColumn;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel;
import org.apache.syncope.client.ui.commons.wizards.AbstractModalPanelBuilder;
@@ -68,16 +67,13 @@ public class SecurityQuestionsPanel extends DirectoryPanel<
}
}.disableCheckBoxes());
- modal.setWindowClosedCallback(new WindowClosedCallback() {
-
- private static final long serialVersionUID = 8804221891699487139L;
-
- @Override
- public void onClose(final AjaxRequestTarget target) {
- modal.show(false);
- target.add(container);
- }
+ modal.addSubmitButton();
+ modal.size(Modal.Size.Large);
+ modal.setWindowClosedCallback(target -> {
+ modal.show(false);
+ target.add(container);
});
+ setFooterVisibility(true);
this.addNewItemPanelBuilder(
new AbstractModalPanelBuilder<SecurityQuestionTO>(new SecurityQuestionTO(), pageRef) {
@@ -92,22 +88,11 @@ public class SecurityQuestionsPanel extends DirectoryPanel<
}
}, true);
- setFooterVisibility(true);
- modal.addSubmitButton();
- modal.size(Modal.Size.Large);
initResultTable();
MetaDataRoleAuthorizationStrategy.authorize(addAjaxLink, RENDER, IdRepoEntitlement.SECURITY_QUESTION_CREATE);
}
- private SecurityQuestionsPanel(
- final String id,
- final Builder<SecurityQuestionTO, SecurityQuestionTO, SecurityQuestionRestClient> builder) {
-
- super(id, builder);
- setOutputMarkupId(true);
- }
-
@Override
protected SecurityQuestionsProvider dataProvider() {
return new SecurityQuestionsProvider(rows);
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java
index 8d2069a..eac8db2 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java
@@ -35,7 +35,6 @@ import org.apache.syncope.client.console.rest.PolicyRestClient;
import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.CollectionPropertyColumn;
import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.KeyPropertyColumn;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink.ActionType;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel;
@@ -94,20 +93,13 @@ public abstract class PolicyDirectoryPanel<T extends PolicyTO>
setWindowClosedReloadCallback(policySpecModal);
addOuterObject(policySpecModal);
- modal.setWindowClosedCallback(new WindowClosedCallback() {
-
- private static final long serialVersionUID = 8804221891699487129L;
-
- @Override
- public void onClose(final AjaxRequestTarget target) {
- updateResultTable(target);
- modal.show(false);
- }
- });
-
- setFooterVisibility(true);
modal.addSubmitButton();
modal.size(Modal.Size.Large);
+ modal.setWindowClosedCallback(target -> {
+ updateResultTable(target);
+ modal.show(false);
+ });
+ setFooterVisibility(true);
disableCheckBoxes();
}
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java
index 3860c78..40b2535 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java
@@ -51,7 +51,6 @@ import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.model.StringResourceModel;
import org.apache.syncope.client.console.reports.ReportTemplateDirectoryPanel.ReportTemplateProvider;
import org.apache.syncope.client.console.rest.ReportRestClient;
-import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback;
import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel;
import org.apache.syncope.client.console.wicket.markup.html.form.XMLEditorPanel;
import org.apache.syncope.client.ui.commons.panels.WizardModalPanel;
@@ -71,18 +70,11 @@ public class ReportTemplateDirectoryPanel
modal.size(Modal.Size.Small);
modal.addSubmitButton();
- setFooterVisibility(true);
-
- modal.setWindowClosedCallback(new WindowClosedCallback() {
-
- private static final long serialVersionUID = 8804221891699487139L;
-
- @Override
- public void onClose(final AjaxRequestTarget target) {
- updateResultTable(target);
- modal.show(false);
- }
+ modal.setWindowClosedCallback(target -> {
+ updateResultTable(target);
+ modal.show(false);
});
+ setFooterVisibility(true);
addOuterObject(utilityModal);
setWindowClosedReloadCallback(utilityModal);