Skip to content

Commit

Permalink
Merge remote-tracking branch 'refs/remotes/origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
skublik committed Mar 16, 2022
2 parents c0d817b + fa64946 commit d9e654a
Show file tree
Hide file tree
Showing 20 changed files with 418 additions and 34 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -496,8 +496,8 @@ private void deleteConfirmedPerformed(AjaxRequestTarget target, O objectToDelete
ExecuteChangeOptionsDto executeOptions = getExecuteOptions();
ModelExecuteOptions options = executeOptions.createOptions(getPrismContext());
LOGGER.debug("Using options {}.", executeOptions);
getPageBase().getModelService().executeChanges(MiscUtil.createCollection(delta), options, task,
subResult);
getPageBase().getModelService()
.executeChanges(MiscUtil.createCollection(delta), options, task, subResult);
subResult.computeStatus();
} catch (Exception ex) {
subResult.recomputeStatus();
Expand Down Expand Up @@ -544,20 +544,20 @@ protected String getNothingSelectedMessage() {

public IModel<String> getConfirmationMessageModel(ColumnMenuAction action, String actionName){
if (action.getRowModel() == null) {
return createStringResource(getConfirmMessageKeyForSingleObject(),
return createStringResource(getConfirmMessageKeyForMultiObject(),
actionName, getSelectedObjectsCount() );
} else {
return createStringResource(getConfirmMessageKeyForMultiObject(),
actionName, ((ObjectType)((SelectableBean)action.getRowModel().getObject()).getValue()).getName());
return createStringResource(getConfirmMessageKeyForSingleObject(),
actionName, ((ObjectType)((SelectableBean<?>)action.getRowModel().getObject()).getValue()).getName());
}
}

protected String getConfirmMessageKeyForSingleObject() {
return null;
protected String getConfirmMessageKeyForMultiObject() {
throw new UnsupportedOperationException("getConfirmMessageKeyForMultiObject() not implemented for " + getClass());
}

protected String getConfirmMessageKeyForMultiObject() {
return null;
protected String getConfirmMessageKeyForSingleObject() {
throw new UnsupportedOperationException("getConfirmMessageKeyForSingleObject() not implemented for " + getClass());
}

public InlineMenuItem createDeleteInlineMenu() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -174,8 +174,8 @@ protected void onError(AjaxRequestTarget target) {
target.add(getPageBase().getFeedbackPanel());
}
};
save.add(new VisibleBehaviour(this::isSaveButtonVisible));
save.add(new EnableBehaviour(this::isSavePreviewButtonEnabled));
save.add(new VisibleBehaviour(this::isSaveButtonVisible));
save.titleAsLabel(true);
save.setOutputMarkupId(true);
save.add(AttributeAppender.append("class", "btn btn-success btn-sm"));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@ protected FocusOperationalButtonsPanel<F> createButtonsPanel(String id, Loadable
protected void refresh(AjaxRequestTarget target) {
PageFocusDetails.this.refresh(target);
}

@Override
protected void savePerformed(AjaxRequestTarget target) {
PageFocusDetails.this.savePerformed(target);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,14 @@
package com.evolveum.midpoint.gui.impl.page.admin.focus.component;

import com.evolveum.midpoint.gui.api.GuiStyleConstants;
import com.evolveum.midpoint.gui.api.prism.ItemStatus;
import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.gui.api.util.WebModelServiceUtils;
import com.evolveum.midpoint.gui.impl.page.admin.AbstractObjectMainPanel;
import com.evolveum.midpoint.gui.impl.page.admin.assignmentholder.FocusDetailsModels;
import com.evolveum.midpoint.gui.impl.page.admin.org.PageOrgHistory;
import com.evolveum.midpoint.gui.impl.page.admin.role.PageRoleHistory;
import com.evolveum.midpoint.gui.impl.page.admin.service.PageServiceHistory;
import com.evolveum.midpoint.gui.impl.page.admin.user.PageUserHistory;
import com.evolveum.midpoint.prism.PrismContext;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.query.ObjectQuery;
Expand All @@ -28,11 +31,7 @@
import com.evolveum.midpoint.web.component.data.MultiButtonPanel;
import com.evolveum.midpoint.web.component.data.column.DoubleButtonColumn;
import com.evolveum.midpoint.web.component.util.SelectableBean;
import com.evolveum.midpoint.web.page.admin.orgs.PageOrgUnitHistory;
import com.evolveum.midpoint.web.page.admin.reports.component.AuditLogViewerPanel;
import com.evolveum.midpoint.web.page.admin.roles.PageRoleHistory;
import com.evolveum.midpoint.web.page.admin.services.PageServiceHistory;
import com.evolveum.midpoint.web.page.admin.users.PageUserHistory;
import com.evolveum.midpoint.web.page.admin.users.PageXmlDataReview;
import com.evolveum.midpoint.web.session.AuditLogStorage;
import com.evolveum.midpoint.web.session.SessionStorage;
Expand Down Expand Up @@ -171,7 +170,7 @@ protected void currentStateButtonClicked(AjaxRequestTarget target, PrismObject<F
} else if (RoleType.class.equals(objectClass)) {
getPageBase().navigateToNext(new PageRoleHistory((PrismObject<RoleType>) object, date));
} else if (OrgType.class.equals(objectClass)) {
getPageBase().navigateToNext(new PageOrgUnitHistory((PrismObject<OrgType>) object, date));
getPageBase().navigateToNext(new PageOrgHistory((PrismObject<OrgType>) object, date));
} else if (ServiceType.class.equals(objectClass)) {
getPageBase().navigateToNext(new PageServiceHistory((PrismObject<ServiceType>) object, date));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,16 @@ protected IColumn<SelectableBean<MessageTemplateType>, String> createCheckboxCol
protected List<InlineMenuItem> createInlineMenu() {
return Arrays.asList(createDeleteInlineMenu());
}

@Override
protected String getConfirmMessageKeyForMultiObject() {
return "pageMessageTemplates.message.confirmationMessageForMultipleObject";
}

@Override
protected String getConfirmMessageKeyForSingleObject() {
return "pageMessageTemplates.message.confirmationMessageForSingleObject";
}
};
table.setOutputMarkupId(true);
mainForm.add(table);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!--
~ Copyright (c) 2010-2018 Evolveum
~
~ This work is dual-licensed under the Apache License 2.0
~ and European Union Public License. See LICENSE file for details.
-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<body>
<wicket:extend>
<wicket:child />
</wicket:extend>
</body>
</html>
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
/*
* Copyright (c) 2010-2018 Evolveum and contributors
*
* This work is dual-licensed under the Apache License 2.0
* and European Union Public License. See LICENSE file for details.
*/
package com.evolveum.midpoint.gui.impl.page.admin.org;

import com.evolveum.midpoint.gui.impl.page.admin.assignmentholder.FocusDetailsModels;

import org.apache.wicket.model.IModel;

import com.evolveum.midpoint.authentication.api.authorization.AuthorizationAction;
import com.evolveum.midpoint.authentication.api.authorization.PageDescriptor;
import com.evolveum.midpoint.authentication.api.authorization.Url;
import com.evolveum.midpoint.gui.api.model.LoadableModel;
import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.security.api.AuthorizationConstants;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.xml.ns._public.common.common_3.OrgType;

/**
* Created by honchar.
*/
@PageDescriptor(
urls = {
@Url(mountUrl = "/admin/orgUnitHistory", matchUrlForSecurity = "/admin/orgUnitHistory")
},
action = {
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_ORG_ALL_URL,
label = "PageAdminUsers.auth.orgAll.label",
description = "PageAdminUsers.auth.orgAll.description"),
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_ORG_UNIT_HISTORY_URL,
label = "PageOrgUnitHistory.auth.orgUnitHistory.label",
description = "PageOrgUnitHistory.auth.orgUnitHistory.description")})
public class PageOrgHistory extends PageOrg {
private static final long serialVersionUID = 1L;

private static final String DOT_CLASS = PageOrgHistory.class.getName() + ".";
private static final Trace LOGGER = TraceManager.getTrace(PageOrgHistory.class);
private String date = "";

public PageOrgHistory(final PrismObject<OrgType> org, String date) {
super(org);
this.date = date;
}

@Override
protected FocusDetailsModels<OrgType> createObjectDetailsModels(PrismObject<OrgType> object) {
return new FocusDetailsModels<OrgType>(createPrismObjectModel(object), this) {
private static final long serialVersionUID = 1L;

@Override
protected boolean isReadonly() {
return true;
}
};
}

@Override
protected IModel<String> createPageTitleModel() {
return new LoadableModel<String>() {
private static final long serialVersionUID = 1L;

@Override
protected String load() {
String name = null;
if (getModelObjectType() != null) {
name = WebComponentUtil.getName(getModelObjectType());
}
return createStringResource("PageUserHistory.title", name, date).getObject();
}
};
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!--
~ Copyright (c) 2010-2018 Evolveum
~
~ This work is dual-licensed under the Apache License 2.0
~ and European Union Public License. See LICENSE file for details.
-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<body>
<wicket:extend>
<wicket:child />
</wicket:extend>
</body>
</html>
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
/*
* Copyright (c) 2010-2018 Evolveum and contributors
*
* This work is dual-licensed under the Apache License 2.0
* and European Union Public License. See LICENSE file for details.
*/
package com.evolveum.midpoint.gui.impl.page.admin.role;

import com.evolveum.midpoint.gui.impl.page.admin.assignmentholder.FocusDetailsModels;
import com.evolveum.midpoint.gui.impl.page.admin.user.UserDetailsModel;
import com.evolveum.midpoint.xml.ns._public.common.common_3.UserType;

import org.apache.wicket.model.IModel;

import com.evolveum.midpoint.authentication.api.authorization.AuthorizationAction;
import com.evolveum.midpoint.authentication.api.authorization.PageDescriptor;
import com.evolveum.midpoint.authentication.api.authorization.Url;
import com.evolveum.midpoint.gui.api.model.LoadableModel;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismObjectWrapper;
import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.security.api.AuthorizationConstants;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.web.component.ObjectSummaryPanel;
import com.evolveum.midpoint.xml.ns._public.common.common_3.RoleType;

/**
* Created by honchar
*/
@PageDescriptor(
urls = {
@Url(mountUrl = "/admin/roleHistory")
},
action = {
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_ROLES_ALL_URL,
label = "PageAdminRoles.auth.roleAll.label",
description = "PageAdminRoles.auth.roleAll.description"),
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_ROLE_HISTORY_URL,
label = "PageRoleHistory.auth.roleHistory.label",
description = "PageRoleHistory.auth.roleHistory.description")})
public class PageRoleHistory extends PageRole {
private static final long serialVersionUID = 1L;

private static final String DOT_CLASS = PageRoleHistory.class.getName() + ".";
private static final Trace LOGGER = TraceManager.getTrace(PageRoleHistory.class);
private String date = "";

public PageRoleHistory(final PrismObject<RoleType> role, String date) {
super(role);
this.date = date;
}

@Override
protected FocusDetailsModels<RoleType> createObjectDetailsModels(PrismObject<RoleType> object) {
return new FocusDetailsModels<RoleType>(createPrismObjectModel(object), this) {
@Override
protected boolean isReadonly() {
return true;
}
};
}

@Override
protected IModel<String> createPageTitleModel() {
return new LoadableModel<String>() {
@Override
protected String load() {
String name = null;
if (getModelObjectType() != null) {
name = WebComponentUtil.getName(getModelObjectType());
}
return createStringResource("PageUserHistory.title", name, date).getObject();
}
};
}

}

Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!--
~ Copyright (c) 2010-2018 Evolveum
~
~ This work is dual-licensed under the Apache License 2.0
~ and European Union Public License. See LICENSE file for details.
-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<body>
<wicket:extend>
<wicket:child />
</wicket:extend>
</body>
</html>
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
/*
* Copyright (c) 2010-2018 Evolveum and contributors
*
* This work is dual-licensed under the Apache License 2.0
* and European Union Public License. See LICENSE file for details.
*/
package com.evolveum.midpoint.gui.impl.page.admin.service;

import com.evolveum.midpoint.authentication.api.authorization.AuthorizationAction;
import com.evolveum.midpoint.authentication.api.authorization.PageDescriptor;
import com.evolveum.midpoint.authentication.api.authorization.Url;
import com.evolveum.midpoint.gui.api.model.LoadableModel;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismObjectWrapper;
import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.gui.impl.page.admin.assignmentholder.FocusDetailsModels;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.security.api.AuthorizationConstants;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.web.component.ObjectSummaryPanel;
import com.evolveum.midpoint.web.util.OnePageParameterEncoder;
import com.evolveum.midpoint.xml.ns._public.common.common_3.RoleType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ServiceType;

import org.apache.wicket.model.IModel;

/**
* Created by honchar
*/
@PageDescriptor(
urls = {
@Url(mountUrl = "/admin/serviceHistory")
},
encoder = OnePageParameterEncoder.class, action = {
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_SERVICES_ALL_URL,
label = "PageAdminServices.auth.servicesAll.label",
description = "PageAdminServices.auth.servicesAll.description"),
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_SERVICE_HISTORY_URL,
label = "PageServiceHistory.auth.service.label",
description = "PageServiceHistory.auth.service.description") })
public class PageServiceHistory extends PageService {
private static final long serialVersionUID = 1L;

private static final String DOT_CLASS = PageServiceHistory.class.getName() + ".";
private static final Trace LOGGER = TraceManager.getTrace(PageServiceHistory.class);
private String date = "";

public PageServiceHistory(final PrismObject<ServiceType> service, String date) {
super(service);
this.date = date;
}

@Override
protected FocusDetailsModels<ServiceType> createObjectDetailsModels(PrismObject<ServiceType> object) {
return new FocusDetailsModels<ServiceType>(createPrismObjectModel(object), this) {
private static final long serialVersionUID = 1L;

@Override
protected boolean isReadonly() {
return true;
}
};
}

@Override
protected IModel<String> createPageTitleModel() {
return new LoadableModel<String>() {
private static final long serialVersionUID = 1L;

@Override
protected String load() {
String name = null;
if (getModelObjectType() != null) {
name = WebComponentUtil.getName(getModelObjectType());
}
return createStringResource("PageUserHistory.title", name, date).getObject();
}
};
}

}

0 comments on commit d9e654a

Please sign in to comment.