Skip to content

Commit

Permalink
Merge branch 'master' into transifex
Browse files Browse the repository at this point in the history
  • Loading branch information
PetrGasparik committed Nov 6, 2017
2 parents d6a090d + 33f30bf commit 998775d
Show file tree
Hide file tree
Showing 36 changed files with 167 additions and 1,458 deletions.
2 changes: 2 additions & 0 deletions dist/src/main/bin/start.bat
@@ -0,0 +1,2 @@
echo "Starting midPoint"
java -jar -Xms1024M -Xmx2048M -Dmidpoint.home=%~dp0%~1..\var %~dp0%~1..\lib\midpoint.war
Expand Up @@ -16,7 +16,7 @@

<wicket:panel xmlns:wicket="http://wicket.apache.org">
<wicket:child/>
<form class="clearfix" wicket:id="mainForm" style="margin: 5px;">
<form class="clearfix" wicket:id="mainForm">
<div wicket:id="table"/>
</form>

Expand Down
Expand Up @@ -24,7 +24,7 @@
</div>
</div>

<div wicket:id="table"></div>
<div wicket:id="table" style="margin: 5px;"></div>
<div class="center">
<a class="btn btn-sm btn-primary" wicket:id="addButton"/>
</div>
Expand Down
Expand Up @@ -16,7 +16,7 @@

<wicket:panel xmlns:wicket="http://wicket.apache.org">

<form class="clearfix" wicket:id="mainForm" style="margin: 5px;">
<form class="clearfix" wicket:id="mainForm">
<div wicket:id="table"/>

<!-- <p align="right"> -->
Expand Down
Expand Up @@ -87,8 +87,7 @@ public void onClick(AjaxRequestTarget target) {
try {
AdminGuiConfigurationType adminGuiConfig = getPageBase().getModelInteractionService().getAdminGuiConfiguration(null,
new OperationResult(OPERATION_GET_EXPORT_SIZE_LIMIT));
if (adminGuiConfig != null && adminGuiConfig.getDefaultExportSettings() != null &&
adminGuiConfig.getDefaultExportSettings().getSizeLimit() != null){
if (adminGuiConfig.getDefaultExportSettings() != null && adminGuiConfig.getDefaultExportSettings().getSizeLimit() != null){
exportSizeLimit = adminGuiConfig.getDefaultExportSettings().getSizeLimit();
}
} catch (Exception ex){
Expand Down
Expand Up @@ -17,7 +17,7 @@
<body>
<wicket:panel>
<div class="feedback-message box box-solid" wicket:id="detailsBox">
<div class="box-header with-border">
<div class="box-header">
<i class="icon fa " wicket:id="iconType"></i>
<a class="box-title" wicket:id="message">
<b class="box-title" wicket:id="messageLabel" ></b>
Expand All @@ -26,10 +26,18 @@
<wicket:message key="OperationResultPanel.showTask"/>
</a>
<div class="box-tools pull-right">
<div wicket:id="showAll" class="btn btn-box-tool fa fa-chevron-left"></div>
<div wicket:id="hideAll" class="btn btn-box-tool fa fa-chevron-down"></div>
<div wicket:id="downloadXml" class="btn btn-box-tool fa fa-download"></div>
<div wicket:id="close" data-widget="remove" class="btn btn-box-tool fa fa-times"></div>
<a wicket:id="showAll" class="btn btn-box-tool">
<i class="fa fa-chevron-left"></i>
</a>
<a wicket:id="hideAll" class="btn btn-box-tool">
<i class="fa fa-chevron-down"></i>
</a>
<a wicket:id="downloadXml" class="btn btn-box-tool">
<i class="fa fa-download"></i>
</a>
<a wicket:id="close" data-widget="remove" class="btn btn-box-tool">
<i class="fa fa-times"></i>
</a>
</div>
</div>
<div class="feedback-message box-body" wicket:id="details">
Expand Down
Expand Up @@ -521,6 +521,7 @@ protected ModelDiagnosticService getModelDiagnosticService() {
return modelDiagnosticService;
}

@NotNull
@Override
public AdminGuiConfigurationType getAdminGuiConfiguration() {
if (adminGuiConfiguration == null) {
Expand Down Expand Up @@ -1104,7 +1105,7 @@ public OpResult showResult(OperationResult result, String errorMessageKey, boole

private OperationResult executeResultScriptHook(OperationResult result) {
AdminGuiConfigurationType adminGuiConfiguration = getAdminGuiConfiguration();
if (adminGuiConfiguration == null || adminGuiConfiguration.getFeedbackMessagesHook() == null) {
if (adminGuiConfiguration.getFeedbackMessagesHook() == null) {
return result;
}

Expand Down Expand Up @@ -1348,7 +1349,6 @@ protected List<SideBarMenuItem> createMenuItems() {
AuthorizationConstants.AUTZ_UI_CONFIGURATION_SYSTEM_CONFIG_URL,
AuthorizationConstants.AUTZ_UI_CONFIGURATION_ABOUT_URL,
AuthorizationConstants.AUTZ_UI_CONFIGURATION_REPOSITORY_QUERY_URL,
AuthorizationConstants.AUTZ_UI_CONFIGURATION_SYNCHRONIZATION_ACCOUNTS_URL,
AuthorizationConstants.AUTZ_UI_CONFIGURATION_ALL_URL, AuthorizationConstants.AUTZ_GUI_ALL_URL,
AuthorizationConstants.AUTZ_GUI_ALL_DEPRECATED_URL)) {

Expand Down Expand Up @@ -1462,7 +1462,6 @@ private void createConfigurationMenu(SideBarMenuItem item) {
addSystemMenuItem(systemItem, "PageAdmin.menu.top.configuration.adminGui",
PageSystemConfiguration.CONFIGURATION_TAB_ADMIN_GUI);

addMainMenuItem(item, "fa fa-address-book", "PageAdmin.menu.top.configuration.shadowsDetails", PageAccounts.class);
addMainMenuItem(item, "fa fa-archive", "PageAdmin.menu.top.configuration.internals", PageInternals.class);
addMainMenuItem(item, "fa fa-search", "PageAdmin.menu.top.configuration.repoQuery", PageRepositoryQuery.class);
if (SystemConfigurationHolder.isExperimentalCodeEnabled()) {
Expand Down Expand Up @@ -1649,18 +1648,16 @@ private void createSelfServiceMenu(SideBarMenuItem menu) {

private void createAdditionalMenu(SideBarMenuItem menu) {
AdminGuiConfigurationType adminGuiConfig = loadAdminGuiConfiguration();
if (adminGuiConfig != null) {
List<RichHyperlinkType> menuList = loadAdminGuiConfiguration().getAdditionalMenuLink();

Map<String, Class> urlClassMap = DescriptorLoader.getUrlClassMap();
if (menuList != null && menuList.size() > 0 && urlClassMap != null && urlClassMap.size() > 0) {
for (RichHyperlinkType link : menuList) {
if (link.getTargetUrl() != null && !link.getTargetUrl().trim().equals("")) {
AdditionalMenuItem item = new AdditionalMenuItem(link.getIcon() == null ? "" : link.getIcon().getCssClass(),
getAdditionalMenuItemNameModel(link.getLabel()),
link.getTargetUrl(), urlClassMap.get(link.getTargetUrl()));
menu.getItems().add(item);
}
List<RichHyperlinkType> menuList = loadAdminGuiConfiguration().getAdditionalMenuLink();

Map<String, Class> urlClassMap = DescriptorLoader.getUrlClassMap();
if (menuList != null && menuList.size() > 0 && urlClassMap != null && urlClassMap.size() > 0) {
for (RichHyperlinkType link : menuList) {
if (link.getTargetUrl() != null && !link.getTargetUrl().trim().equals("")) {
AdditionalMenuItem item = new AdditionalMenuItem(link.getIcon() == null ? "" : link.getIcon().getCssClass(),
getAdditionalMenuItemNameModel(link.getLabel()),
link.getTargetUrl(), urlClassMap.get(link.getTargetUrl()));
menu.getItems().add(item);
}
}
}
Expand Down Expand Up @@ -1869,10 +1866,10 @@ public boolean isEnabled() {
};
}


@NotNull
public AdminGuiConfigurationType loadAdminGuiConfiguration() {
MidPointPrincipal user = SecurityUtils.getPrincipalUser();
AdminGuiConfigurationType adminGuiConfig = null;
AdminGuiConfigurationType adminGuiConfig = new AdminGuiConfigurationType();
if (user == null) {
return adminGuiConfig;
} else {
Expand Down Expand Up @@ -2095,7 +2092,7 @@ public boolean isVisible() {

protected String determineDataLanguage() {
AdminGuiConfigurationType config = loadAdminGuiConfiguration();
if (config != null && config.getPreferredDataLanguage() != null) {
if (config.getPreferredDataLanguage() != null) {
if (PrismContext.LANG_JSON.equals(config.getPreferredDataLanguage())) {
return PrismContext.LANG_JSON;
} else if (PrismContext.LANG_YAML.equals(config.getPreferredDataLanguage())) {
Expand Down
Expand Up @@ -24,6 +24,7 @@
import com.evolveum.midpoint.security.enforcer.api.SecurityEnforcer;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AdminGuiConfigurationType;
import org.jetbrains.annotations.NotNull;

/**
* Interface that allows location of model and model-like services,
Expand Down Expand Up @@ -64,6 +65,7 @@ public interface ModelServiceLocator {
* task and result parameters. And more importantly: this allows to
* cache adminGuiConfig in the page (in case many components need it).
*/
@NotNull
AdminGuiConfigurationType getAdminGuiConfiguration();

default ObjectResolver getModelObjectResolver() {
Expand Down
Expand Up @@ -35,14 +35,7 @@ public ObjectSummaryPanel(String id, Class<O> type, final IModel<PrismObject<O>>
}

private static <O extends ObjectType> SummaryPanelSpecificationType determineConfig(Class<O> type, AdminGuiConfigurationType adminGuiConfig) {
if (adminGuiConfig == null) {
return null;
}
GuiObjectDetailsSetType objectDetailsSetType = adminGuiConfig.getObjectDetails();
if (objectDetailsSetType == null) {
return null;
}
GuiObjectDetailsPageType guiObjectDetailsType = AdminGuiConfigTypeUtil.findObjectConfiguration(objectDetailsSetType.getObjectDetailsPage(), type);
GuiObjectDetailsPageType guiObjectDetailsType = AdminGuiConfigTypeUtil.findObjectConfiguration(type, adminGuiConfig);
if (guiObjectDetailsType == null) {
return null;
}
Expand Down
Expand Up @@ -321,8 +321,7 @@ private void setExportLimitValue(){
OperationResult result = new OperationResult(OPERATION_GET_EXPORT_SIZE_LIMIT);
try {
AdminGuiConfigurationType adminGui = getModelInteractionService().getAdminGuiConfiguration(null, result);
if (adminGui != null && adminGui.getDefaultExportSettings() != null &&
adminGui.getDefaultExportSettings().getSizeLimit() != null){
if (adminGui.getDefaultExportSettings() != null && adminGui.getDefaultExportSettings().getSizeLimit() != null) {
exportLimit = adminGui.getDefaultExportSettings().getSizeLimit();
}
} catch (Exception ex){
Expand Down
Expand Up @@ -19,7 +19,10 @@
<table style="min-width: 75px;">
<tr>
<td>
<span wicket:id="buttons"/>
<wicket:remove>TODO remove that margin</wicket:remove>
<a wicket:id="buttons" style="margin-right: 3px;">
<i wicket:id="icon"></i>
</a>
</td>
<td>
<div wicket:id="inlineMenuPanel"/>
Expand Down
Expand Up @@ -35,6 +35,8 @@

/**
* Created by honchar
*
* todo rewrite
*/
public class MenuMultiButtonPanel<T extends Serializable> extends MultiButtonPanel<T> {
private static final String ID_INLINE_MENU_PANEL = "inlineMenuPanel";
Expand All @@ -49,10 +51,11 @@ public MenuMultiButtonPanel(String id, int buttonsCount, IModel<T> model, IModel
protected void initLayout() {
super.initLayout();

// wtf, magic numbers, lots of css ??
InlineMenu inlineMenu = new InlineMenu(ID_INLINE_MENU_PANEL, menuItemsModel){
@Override
protected String getIconClass(){
return "fa fa-ellipsis-h";
return "fa fa-fw fa-ellipsis-h";
}
@Override
protected String getAdditionalButtonClass(){
Expand All @@ -71,7 +74,7 @@ protected String getMenuItemButtonStyle(){

@Override
protected String getMenuItemContainerStyle(){
return "margin-left: -37px; margin-bottom: -3px; list-style: none;";
return "margin-left: -40px; margin-bottom: -1px; list-style: none;";
}

};
Expand Down
Expand Up @@ -16,6 +16,9 @@
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
<span wicket:id="buttons" />
<wicket:remove>TODO remove that margin</wicket:remove>
<a wicket:id="buttons" style="margin-right: 3px;">
<i wicket:id="icon"></i>
</a>
</wicket:panel>
</html>
Expand Up @@ -23,22 +23,29 @@
import com.evolveum.midpoint.web.component.menu.cog.InlineMenuItem;
import com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour;

import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
import org.apache.wicket.behavior.AttributeAppender;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.repeater.RepeatingView;
import org.apache.wicket.model.AbstractReadOnlyModel;
import org.apache.wicket.model.IModel;

import java.util.List;

/**
* @author shood
* @author mederly
*
* todo rewrite
*
* @deprecated generates incorrect HTML, buttons have different dimensions, looks bad. Overcomplicated code.
*/
public class MultiButtonPanel<T> extends BasePanel<T> {

private static final String ID_BUTTONS = "buttons";
private static final String ID_ICON = "icon";

protected IModel<List<InlineMenuItem>> menuItemsModel = null;
protected int numberOfButtons;
Expand Down Expand Up @@ -88,16 +95,35 @@ public boolean isVisible(){
return MultiButtonPanel.this.isButtonVisible(finalId, MultiButtonPanel.this.getModel());
}
});

button.add(AttributeAppender.append("class", getButtonCssClass(finalId)));
if (!isButtonEnabled(finalId, getModel())) {
button.add(AttributeAppender.append("class", "disabled"));
}

button.add(new AttributeAppender("title", getButtonTitle(finalId)));

Label icon = new Label(ID_ICON);
icon.add(AttributeModifier.replace("class", createIconModel(finalId)));
button.add(icon);

buttons.add(button);
buttons.add(new Label("label"+finalId, " "));
}
}

private IModel<String> createIconModel(int id) {
return new AbstractReadOnlyModel<String>() {
@Override
public String getObject() {
return getButtonIconCss(id);
}
};
}

public String getButtonIconCss(int id) {
return "";
}

public String getCaption(int id) {
return String.valueOf(id);
}
Expand Down
Expand Up @@ -40,6 +40,8 @@

/**
* Created by honchar.
*
* todo rewrite
*/
public class InlineMenuButtonColumn<T extends Serializable> extends MultiButtonColumn<T>{
protected List<InlineMenuItem> menuItems;
Expand Down Expand Up @@ -83,6 +85,11 @@ protected String getButtonCssClass(int id) {
return InlineMenuButtonColumn.this.getButtonCssClass(id, menuItems);
}

@Override
public String getButtonIconCss(int id) {
return InlineMenuButtonColumn.this.getButtonIconCss(id, menuItems);
}

@Override
protected int getButtonId(int id){
return id;
Expand Down Expand Up @@ -225,12 +232,18 @@ protected String getButtonCssClass(int id, List<InlineMenuItem> menuItems) {
sb.append(DoubleButtonColumn.BUTTON_BASE_CLASS).append(" ");
sb.append(getButtonColorCssClass(id, menuItems)).append(" ");
sb.append(getButtonSizeCssClass(id)).append(" ");

return sb.toString();
}

protected String getButtonIconCss(int id, List<InlineMenuItem> menuItems) {
for (InlineMenuItem menuItem : menuItems){
if (menuItem.getId() == id){
sb.append(menuItem.getButtonIconCssClass()).append(" ");
return menuItem.getButtonIconCssClass() + " fa-fw"; //temporary size fix, should be moved somewhere...
}
}
return sb.toString();

return null;
}

public String getButtonTitle(int id, List<InlineMenuItem> menuItems) {
Expand Down
Expand Up @@ -19,8 +19,11 @@

import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.prism.PrismContainerDefinition;
import com.evolveum.midpoint.schema.util.AdminGuiConfigTypeUtil;
import com.evolveum.midpoint.web.component.prism.ContainerStatus;
import com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour;
import com.evolveum.midpoint.xml.ns._public.common.common_3.DetailsPageSaveMethodType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.GuiObjectDetailsPageType;
import org.apache.commons.lang.Validate;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.tabs.ITab;
Expand Down Expand Up @@ -157,7 +160,8 @@ protected void onError(AjaxRequestTarget target,

@Override
public boolean isVisible() {
return !getObjectWrapper().isReadonly();
return !getObjectWrapper().isReadonly() &&
!getDetailsPage().isForcedPreview();
}

@Override
Expand Down
Expand Up @@ -36,6 +36,7 @@
import com.evolveum.midpoint.web.component.AjaxButton;
import com.evolveum.midpoint.web.component.breadcrumbs.Breadcrumb;
import com.evolveum.midpoint.web.component.breadcrumbs.BreadcrumbPageInstance;
import com.evolveum.midpoint.web.component.util.EnableBehaviour;
import com.evolveum.midpoint.web.component.util.VisibleBehaviour;
import com.evolveum.midpoint.web.component.wf.ApprovalProcessesPreviewPanel;
import com.evolveum.midpoint.web.page.admin.PageAdmin;
Expand Down Expand Up @@ -218,6 +219,7 @@ public void onClick(AjaxRequestTarget target) {
savePerformed(target);
}
};
save.add(new EnableBehaviour(() -> violationsEmpty()));
mainForm.add(save);
}

Expand Down

0 comments on commit 998775d

Please sign in to comment.