Skip to content

Commit

Permalink
fix redirect to error 404 page for hidden details panel
Browse files Browse the repository at this point in the history
  • Loading branch information
skublik committed Feb 23, 2024
1 parent a443b65 commit 1014a79
Showing 1 changed file with 15 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,11 @@
import com.evolveum.midpoint.gui.api.util.WebPrismUtil;
import com.evolveum.midpoint.gui.impl.component.menu.LeftMenuAuthzUtil;

import com.evolveum.midpoint.web.page.error.PageError404;

import org.apache.commons.lang3.BooleanUtils;
import org.apache.wicket.Component;
import org.apache.wicket.RestartResponseException;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.behavior.AttributeAppender;
import org.apache.wicket.markup.html.WebMarkupContainer;
Expand Down Expand Up @@ -496,13 +499,22 @@ public void refresh(AjaxRequestTarget target, boolean soft) {
}

private ContainerPanelConfigurationType findDefaultConfiguration() {
String panelId = WebComponentUtil.getPanelIdentifierFromParams(getPageParameters());

ContainerPanelConfigurationType defaultConfiguration = findDefaultConfiguration(getPanelConfigurations().getObject(),
WebComponentUtil.getPanelIdentifierFromParams(getPageParameters()));
ContainerPanelConfigurationType defaultConfiguration = findDefaultConfiguration(getPanelConfigurations().getObject(), panelId);

if (defaultConfiguration != null) {
if (defaultConfiguration != null && WebComponentUtil.getElementVisibility(defaultConfiguration.getVisibility())) {
return defaultConfiguration;
}

if (panelId != null) {
//wrong panel id or hidden panel
getSession().error(
createStringResource(
"AbstractPageObjectDetails.panelNotFound", panelId, getPageTitleModel().getObject()).getString());
throw new RestartResponseException(PageError404.class);
}

return getPanelConfigurations().getObject()
.stream()
.filter(config -> isApplicableForOperation(config) && WebComponentUtil.getElementVisibility(config.getVisibility()))
Expand Down

0 comments on commit 1014a79

Please sign in to comment.