Skip to content

Commit

Permalink
MID-7976 request access ui, improving loading menu based on org. tree…
Browse files Browse the repository at this point in the history
…, wip
  • Loading branch information
1azyman committed Jul 12, 2022
1 parent 5f52920 commit fe8ebe2
Show file tree
Hide file tree
Showing 5 changed files with 42 additions and 22 deletions.
19 changes: 2 additions & 17 deletions gui/admin-gui/src/frontend/js/list-group-menu.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
*/
import $ from 'jquery';

const NAME = 'list-group-menu'
const NAME = 'listGroupMenu'
const VERSION = '0.1'
const DATA_KEY = 'mp.list-group-menu'
const DATA_KEY = 'midpoint.listGroupMenu'
const EVENT_KEY = `.${DATA_KEY}`
const DATA_API_KEY = '.data-api'
const JQUERY_NO_CONFLICT = $.fn[NAME]
Expand Down Expand Up @@ -41,18 +41,3 @@ $.fn[NAME].noConflict = () => {

export default ListGroupMenu;

$(document).ready(function () {
$('.list-group-menu').find('.chevron').parent().click(function (event) {
event.preventDefault();

var link = $(this);
var item = link.parent();
var submenu = item.find('.list-group-submenu');
if (!submenu.is(':visible')) {
$(submenu).slideDown();
} else {
console.info('visible');
$(submenu).slideUp();
}
});
});
20 changes: 20 additions & 0 deletions gui/admin-gui/src/frontend/js/midpoint-theme.js
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,26 @@ export default class MidPointTheme {
}
});
});


// todo move to list-group-menu.js plugin
$(document).ready(function () {
$('.list-group-menu').find('.chevron').parent().attr("href", "#");

$('.list-group-menu').find('.chevron').parent().click(function (event) {
event.preventDefault();

var link = $(this);
var item = link.parent();
var submenu = item.find('.list-group-submenu');
if (!submenu.is(':visible')) {
$(submenu).slideDown();
} else {
console.info('visible');
$(submenu).slideUp();
}
});
});
}

// I'm not sure why sidebar has 15px padding -> and why I had to use 10px constant here [lazyman]
Expand Down
5 changes: 4 additions & 1 deletion gui/admin-gui/src/frontend/scss/_list-group-menu.scss
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ $list-group-item-padding-sm-x: 1rem;

& > a.item-link {
display: flex;
flex-wrap: wrap;
flex-wrap: nowrap;
align-items: center;
// todo for "sm" version 0.5rem 1rem
padding: $list-group-item-padding-y $list-group-item-padding-x;
Expand Down Expand Up @@ -77,6 +77,9 @@ $list-group-item-padding-sm-x: 1rem;

& > span.label {
flex-grow: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

package com.evolveum.midpoint.gui.impl.page.self.requestAccess;

import com.evolveum.midpoint.web.component.util.EnableBehaviour;

import org.apache.commons.lang3.StringUtils;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
Expand Down Expand Up @@ -60,6 +62,7 @@ public void onClick(AjaxRequestTarget target) {
};
link.add(AttributeAppender.append("class", () -> getModelObject().isActive() ? "active" : null));
link.add(AttributeAppender.append("class", () -> getModelObject().isDisabled() ? "disabled" : null));
link.add(new EnableBehaviour(() -> getModelObject().getItems().isEmpty()));
add(link);

WebMarkupContainer icon = new WebMarkupContainer(ID_ICON);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@
import java.util.stream.Collectors;
import javax.xml.namespace.QName;

import com.evolveum.midpoint.gui.api.component.Toggle;

import com.evolveum.midpoint.gui.api.component.TogglePanel;

import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
Expand All @@ -33,6 +29,8 @@
import org.apache.wicket.util.string.Strings;

import com.evolveum.midpoint.gui.api.component.Badge;
import com.evolveum.midpoint.gui.api.component.Toggle;
import com.evolveum.midpoint.gui.api.component.TogglePanel;
import com.evolveum.midpoint.gui.api.component.result.Toast;
import com.evolveum.midpoint.gui.api.component.wizard.WizardStepPanel;
import com.evolveum.midpoint.gui.api.model.LoadableModel;
Expand Down Expand Up @@ -331,6 +329,17 @@ private List<ListGroupMenuItem> loadMenuItems(ObjectReferenceType ref) {
for (PrismObject o : objects) {
String name = WebComponentUtil.getDisplayNameOrName(o, true);
ListGroupMenuItem menu = new ListGroupMenuItem(name);
menu.setItemsModel(new LoadableModel<>(false) {
@Override
protected List<ListGroupMenuItem> load() {
ObjectReferenceType parentRef = new ObjectReferenceType()
.oid(o.getOid())
.targetName(o.getName().getOrig())
.type(o.getDefinition().getTypeName());

return loadMenuItems(parentRef);
}
});
list.add(menu);
}
} catch (Exception ex) {
Expand Down

0 comments on commit fe8ebe2

Please sign in to comment.