Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
mederly committed Apr 13, 2016
2 parents 8da6de0 + 2bc7ffc commit 979091f
Show file tree
Hide file tree
Showing 186 changed files with 7,996 additions and 17,315 deletions.
2 changes: 1 addition & 1 deletion build-system/pom.xml
Expand Up @@ -82,7 +82,7 @@
<connid.version>1.4.3.0-SNAPSHOT</connid.version>
<jasper.version>6.1.1</jasper.version>
<derby.version>10.11.1.1</derby.version>
<wro4j.version>1.7.1</wro4j.version>
<wro4j.version>1.8.0</wro4j.version>
<jackson.version>2.3.3</jackson.version>
<surefire.version>2.19</surefire.version>
</properties>
Expand Down
6 changes: 3 additions & 3 deletions gui/admin-gui/.gitignore
@@ -1,3 +1,3 @@
/target
/target/
/target/
target

AdminLTE-2.3.0
19 changes: 19 additions & 0 deletions gui/admin-gui/pom.xml
Expand Up @@ -140,11 +140,21 @@
<artifactId>webjars-locator</artifactId>
<scope>runtime</scope> <!-- used for loading js/css from webjars -->
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>less</artifactId>
<version>2.5.3</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>ro.isdc.wro4j</groupId>
<artifactId>wro4j-extensions</artifactId>
<scope>runtime</scope> <!-- used to compile less files -->
<exclusions>
<exclusion>
<groupId>org.webjars</groupId>
<artifactId>less</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
Expand All @@ -158,6 +168,11 @@
<groupId>org.jruby</groupId>
<artifactId>jruby-core</artifactId>
</exclusion>
<exclusion>
<!-- unused library -->
<groupId>org.jruby</groupId>
<artifactId>jruby-stdlib</artifactId>
</exclusion>
<exclusion>
<!-- unused library (500kb) -->
<groupId>me.n4u.sass</groupId>
Expand Down Expand Up @@ -208,6 +223,10 @@
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</exclusion>
<exclusion>
<groupId>com.darrinholst</groupId>
<artifactId>sass-java-gems</artifactId>
</exclusion>
</exclusions>
</dependency>

Expand Down
Expand Up @@ -21,22 +21,35 @@
*/
public class GuiStyleConstants {

public static final String STYLES_OBJECT_USER_ICON = "fa fa-user";
public static final String STYLES_OBJECT_USER_ICON_COLORED = STYLES_OBJECT_USER_ICON + " object-user-color";
public static final String CLASS_OBJECT_USER_ICON = "fa fa-user";
public static final String CLASS_OBJECT_USER_ICON_COLORED = CLASS_OBJECT_USER_ICON + " object-user-color";
public static final String CLASS_OBJECT_USER_BOX_CSS_CLASSES = "box object-user-box";

public static final String STYLES_OBJECT_ROLE_ICON = "fa fa-street-view";
public static final String STYLES_OBJECT_ROLE_ICON_COLORED = STYLES_OBJECT_ROLE_ICON + " object-role-color";
public static final String CLASS_OBJECT_ROLE_ICON = "fa fa-street-view";
public static final String CLASS_OBJECT_ROLE_ICON_COLORED = CLASS_OBJECT_ROLE_ICON + " object-role-color";
public static final String CLASS_OBJECT_ROLE_BOX_CSS_CLASSES = "box object-role-box";

public static final String STYLES_OBJECT_ORG_ICON = "fa fa-building";
public static final String STYLES_OBJECT_ORG_ICON_COLORED = STYLES_OBJECT_ORG_ICON + " object-org-color";
public static final String CLASS_OBJECT_ORG_ICON = "fa fa-building";
public static final String CLASS_OBJECT_ORG_ICON_COLORED = CLASS_OBJECT_ORG_ICON + " object-org-color";
public static final String CLASS_OBJECT_ORG_BOX_CSS_CLASSES = "box object-org-box";

public static final String STYLES_OBJECT_SERVICE_ICON = "fa fa-cloud";
public static final String STYLES_OBJECT_SERVICE_ICON_COLORED = STYLES_OBJECT_SERVICE_ICON + " object-service-color";
public static final String CLASS_OBJECT_SERVICE_ICON = "fa fa-cloud";
public static final String CLASS_OBJECT_SERVICE_ICON_COLORED = CLASS_OBJECT_SERVICE_ICON + " object-service-color";
public static final String CLASS_OBJECT_SERVICE_BOX_CSS_CLASSES = "box object-service-box";

public static final String STYLES_OBJECT_RESOURCE_ICON = "fa fa-database";
public static final String STYLES_OBJECT_RESOURCE_ICON_COLORED = STYLES_OBJECT_RESOURCE_ICON + " object-resource-color";
public static final String CLASS_OBJECT_RESOURCE_ICON = "fa fa-database";
public static final String CLASS_OBJECT_RESOURCE_ICON_COLORED = CLASS_OBJECT_RESOURCE_ICON + " object-resource-color";
public static final String CLASS_OBJECT_RESOURCE_BOX_CSS_CLASSES = "box object-resource-box";

public static final String STYLES_OBJECT_TASK_ICON = "fa fa-tasks";
public static final String STYLES_OBJECT_TASK_ICON_COLORED = STYLES_OBJECT_TASK_ICON;
public static final String CLASS_OBJECT_TASK_ICON = "fa fa-tasks";
public static final String CLASS_OBJECT_TASK_ICON_COLORED = CLASS_OBJECT_TASK_ICON;
public static final String CLASS_OBJECT_TASK_BOX_CSS_CLASSES = "box object-task-box";

public static final String CLASS_ICON_STYLE_NORMAL = "icon-style-normal";
public static final String CLASS_ICON_STYLE_DISABLED = "icon-style-disabled";
public static final String CLASS_ICON_STYLE_PRIVILEGED = "icon-style-privileged";
public static final String CLASS_ICON_STYLE_WARNING = "icon-style-warning";
public static final String CLASS_ICON_STYLE_UP = "icon-style-up";
public static final String CLASS_ICON_STYLE_DOWN = "icon-style-down";

}
Expand Up @@ -15,15 +15,14 @@
-->

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

<!-- <p align="right"> -->
<!-- <a class="btn btn-sm btn-default" wicket:id="cancelButton"/> -->
<!-- </p> -->
</form>
<wicket:fragment wicket:id="buttonBar">
<a wicket:id="newObject" class="btn btn-success btn-sm"/>
<a wicket:id="refresh" class="btn btn-default btn-sm"/>
<a wicket:id="importObject" class="btn btn-primary btn-sm"/>
</wicket:fragment>
</wicket:panel>
Expand Up @@ -16,11 +16,13 @@
package com.evolveum.midpoint.gui.api.component;

import java.util.Collection;
import java.util.List;

import com.evolveum.midpoint.web.component.AjaxIconButton;
import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.panel.Fragment;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;

Expand All @@ -30,8 +32,6 @@
import com.evolveum.midpoint.web.component.data.Table;
import com.evolveum.midpoint.web.component.data.column.CheckBoxHeaderColumn;
import com.evolveum.midpoint.web.component.data.column.LinkColumn;
import com.evolveum.midpoint.web.component.data.column.LinkIconPanel;
import com.evolveum.midpoint.web.component.menu.cog.InlineMenuItem;
import com.evolveum.midpoint.web.component.util.SelectableBean;
import com.evolveum.midpoint.web.page.admin.configuration.PageImportObject;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;
Expand All @@ -40,70 +40,86 @@
* @author katkav
*/
public abstract class MainObjectListPanel<T extends ObjectType> extends ObjectListPanel<T> {
private static final long serialVersionUID = 1L;

private static final String ID_REFRESH = "refresh";
private static final String ID_NEW_OBJECT = "newObject";
private static final String ID_IMPORT_OBJECT = "importObject";

public MainObjectListPanel(String id, Class<T> type, Collection<SelectorOptions<GetOperationOptions>> options, PageBase parentPage) {
super(id, type, options, parentPage);

LinkIconPanel refreshIcon = new LinkIconPanel(ID_REFRESH, new Model<String>("fa fa-refresh")){

@Override
protected void onClickPerformed(AjaxRequestTarget target) {
Table table = getTable();
target.add((Component) table);
}
};
add(refreshIcon);

LinkIconPanel newObjectIcon = new LinkIconPanel(ID_NEW_OBJECT, new Model<String>("fa fa-edit")){

@Override
protected void onClickPerformed(AjaxRequestTarget target) {
newObjectPerformed(target);
}
};
add(newObjectIcon);

LinkIconPanel importObject = new LinkIconPanel(ID_IMPORT_OBJECT, new Model<String>("fa fa-download")){

@Override
protected void onClickPerformed(AjaxRequestTarget target) {
setResponsePage(PageImportObject.class);
}
};
add(importObject);
}

@Override
protected IColumn<SelectableBean<T>, String> createCheckboxColumn() {
return new CheckBoxHeaderColumn<SelectableBean<T>>();
}

@Override
protected IColumn<SelectableBean<T>, String> createNameColumn() {
return new LinkColumn<SelectableBean<T>>(createStringResource("ObjectType.name"),
ObjectType.F_NAME.getLocalPart(), SelectableBean.F_VALUE + ".name") {

private static final long serialVersionUID = 1L;

@Override
public void onClick(AjaxRequestTarget target, IModel<SelectableBean<T>> rowModel) {
T object = rowModel.getObject().getValue();
MainObjectListPanel.this.objectDetailsPerformed(target, object);
};

};
}

protected abstract void objectDetailsPerformed(AjaxRequestTarget target, T object);

protected abstract void newObjectPerformed(AjaxRequestTarget target);



private static final long serialVersionUID = 1L;

private static final String ID_REFRESH = "refresh";
private static final String ID_NEW_OBJECT = "newObject";
private static final String ID_IMPORT_OBJECT = "importObject";
private static final String ID_BUTTON_BAR = "buttonBar";

public MainObjectListPanel(String id, Class<T> type, Collection<SelectorOptions<GetOperationOptions>> options, PageBase parentPage) {
super(id, type, options, parentPage);
}

@Override
protected IColumn<SelectableBean<T>, String> createCheckboxColumn() {
return new CheckBoxHeaderColumn<>();
}

@Override
protected IColumn<SelectableBean<T>, String> createNameColumn() {
return new LinkColumn<SelectableBean<T>>(createStringResource("ObjectType.name"),
ObjectType.F_NAME.getLocalPart(), SelectableBean.F_VALUE + ".name") {

private static final long serialVersionUID = 1L;

@Override
public void onClick(AjaxRequestTarget target, IModel<SelectableBean<T>> rowModel) {
T object = rowModel.getObject().getValue();
MainObjectListPanel.this.objectDetailsPerformed(target, object);
}
};
}

protected abstract void objectDetailsPerformed(AjaxRequestTarget target, T object);

protected abstract void newObjectPerformed(AjaxRequestTarget target);

@Override
protected WebMarkupContainer createTableButtonToolbar(String id) {
return new ButtonBar(id, ID_BUTTON_BAR, this);
}

private static class ButtonBar extends Fragment {

public ButtonBar(String id, String markupId, MainObjectListPanel markupProvider) {
super(id, markupId, markupProvider);

initLayout(markupProvider);
}

private void initLayout(final MainObjectListPanel mainObjectListPanel) {
AjaxIconButton refreshIcon = new AjaxIconButton(ID_REFRESH, new Model<>("fa fa-refresh"),
mainObjectListPanel.createStringResource("MainObjectListPanel.refresh")) {

@Override
public void onClick(AjaxRequestTarget target) {
Table table = mainObjectListPanel.getTable();
target.add((Component) table);
}
};
add(refreshIcon);

AjaxIconButton newObjectIcon = new AjaxIconButton(ID_NEW_OBJECT, new Model<>("fa fa-edit"),
mainObjectListPanel.createStringResource("MainObjectListPanel.newObject")) {

@Override
public void onClick(AjaxRequestTarget target) {
mainObjectListPanel.newObjectPerformed(target);
}
};
add(newObjectIcon);

AjaxIconButton importObject = new AjaxIconButton(ID_IMPORT_OBJECT, new Model<>("fa fa-download"),
mainObjectListPanel.createStringResource("MainObjectListPanel.import")) {

@Override
public void onClick(AjaxRequestTarget target) {
setResponsePage(PageImportObject.class);
}
};
add(importObject);
}
}
}
Expand Up @@ -230,7 +230,6 @@ private BoxedTablePanel<SelectableBean<T>> createTable() {

BoxedTablePanel<SelectableBean<T>> table = new BoxedTablePanel<SelectableBean<T>>(ID_TABLE, provider,
columns, tableId, pageSize) {

private static final long serialVersionUID = 1L;

@Override
Expand All @@ -246,7 +245,18 @@ protected void searchPerformed(ObjectQuery query, AjaxRequestTarget target) {

};
}

@Override
protected String getBoxCssClasses() {
return ObjectListPanel.this.getBoxCssClasses();
}

@Override
protected WebMarkupContainer createButtonToolbar(String id) {
WebMarkupContainer bar = ObjectListPanel.this.createTableButtonToolbar(id);

return bar != null ? bar : super.createButtonToolbar(id);
}
};
table.setOutputMarkupId(true);
String storageKey = getStorageKey();//storageMap.get(type);
Expand All @@ -260,6 +270,18 @@ protected void searchPerformed(ObjectQuery query, AjaxRequestTarget target) {
return table;
}

protected String getBoxCssClasses() {
return null;
}

/**
* there's no way to do it properly...
*/
@Deprecated
protected WebMarkupContainer createTableButtonToolbar(String id) {
return null;
}

private BaseSortableDataProvider<SelectableBean<T>> getDataProvider() {
BoxedTablePanel<SelectableBean<T>> table = getTable();
BaseSortableDataProvider<SelectableBean<T>> provider = (BaseSortableDataProvider<SelectableBean<T>>) table
Expand Down

0 comments on commit 979091f

Please sign in to comment.