Skip to content

Commit

Permalink
adding of 'visibility' element for DashboardType
Browse files Browse the repository at this point in the history
  • Loading branch information
skublik committed Jun 18, 2020
1 parent 20337df commit 02a15c9
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 6 deletions.
Expand Up @@ -2126,6 +2126,16 @@ protected boolean isMenuActive() {
StringValue dashboardOid = getPageParameters().get(OnePageParameterEncoder.PARAMETER);
return dashboard.getOid().equals(dashboardOid.toString());
}

@Override
public VisibleEnableBehaviour getVisibleEnable() {
return new VisibleEnableBehaviour(){
@Override
public boolean isVisible() {
return WebComponentUtil.getElementVisibility(dashboard.getVisibility());
}
};
}
};
item.getItems().add(menu);
});
Expand Down
Expand Up @@ -11,7 +11,7 @@
<body>
<wicket:extend>
<div class="row dashboard-widgets">
<div class="col-lg-3 col-md-4 col-xs-6" wicket:id="widgets">
<div wicket:id="widgets">
<div class="padding-bottom-20" wicket:id="widget"/>
</div>
</div>
Expand Down
Expand Up @@ -6,11 +6,14 @@
*/
package com.evolveum.midpoint.web.page.admin.home;

import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.web.application.Url;
import com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;

import org.apache.commons.lang.StringUtils;
import org.apache.wicket.RestartResponseException;
import org.apache.wicket.behavior.AttributeAppender;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.model.IModel;
Expand Down Expand Up @@ -104,13 +107,24 @@ private void initInfoBoxes() {
add(new ListView<DashboardWidgetType>(ID_WIDGETS, new PropertyModel(dashboardModel, "widget")) {
@Override
protected void populateItem(ListItem<DashboardWidgetType> item) {
item.add(new SmallInfoBoxPanel(ID_WIDGET, item.getModel(),
boolean visible = WebComponentUtil.getElementVisibility(item.getModelObject().getVisibility());
SmallInfoBoxPanel box = new SmallInfoBoxPanel(ID_WIDGET, item.getModel(),
PageDashboardConfigurable.this) {
@Override
public String getDashboardOid() {
return dashboardModel.getObject().getOid();
}
};
box.add(new VisibleEnableBehaviour(){
@Override
public boolean isVisible() {
return visible;
}
});
if (visible) {
item.add(AttributeAppender.append("class", "col-lg-3 col-md-4 col-xs-6"));
}
item.add(box);
}
});
}
Expand Down
Expand Up @@ -26247,10 +26247,7 @@
<xsd:annotation>
<xsd:documentation>
<p>
TODO
</p>
<p>
TODO
Configuration Dasboard dashboard showing in GUI.
</p>
</xsd:documentation>
<xsd:appinfo>
Expand All @@ -26266,6 +26263,19 @@
<!-- TODO: layout -->
<xsd:element name="widget" type="tns:DashboardWidgetType" minOccurs="0" maxOccurs="unbounded">
</xsd:element>
<xsd:element name="visibility" type="tns:UserInterfaceElementVisibilityType"
minOccurs="0" maxOccurs="1" default="automatic">
<xsd:annotation>
<xsd:documentation>
<p>
Defines, whether this dashboard will be visible or it will be hidden.
</p>
</xsd:documentation>
<xsd:appinfo>
<a:displayName>DashboardType.visibility</a:displayName>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
Expand Down

0 comments on commit 02a15c9

Please sign in to comment.