Skip to content

Commit

Permalink
more changes for members actions
Browse files Browse the repository at this point in the history
  • Loading branch information
KaterynaHonchar committed Apr 22, 2020
1 parent 8192fbf commit 5acf951
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 26 deletions.
Expand Up @@ -607,7 +607,8 @@ protected boolean isFocusTypeSelectorVisible() {


protected void okPerformed(QName type, Collection<QName> relations, AjaxRequestTarget target) {
unassignMembersPerformed(type, scope, relations, target);
unassignMembersPerformed(type, SearchBoxScopeType.SUBTREE.equals(getSearchScope()) && QueryScope.ALL.equals(scope) ?
QueryScope.ALL_DIRECT : scope, relations, target);
}

@Override
Expand All @@ -622,8 +623,16 @@ protected QName getDefaultObjectType() {

private void deleteMembersPerformed(AjaxRequestTarget target) {
QueryScope scope = getQueryScope();
StringResourceModel confirmModel;
if (SearchBoxScopeType.SUBTREE.equals(getSearchScope())) {
confirmModel = createStringResource("abstractRoleMemberPanel.deleteAllSubtreeMembersConfirmationLabel");
} else {
confirmModel = getMemberTable().getSelectedObjectsCount() > 0 ?
createStringResource("abstractRoleMemberPanel.deleteSelectedMembersConfirmationLabel")
: createStringResource("abstractRoleMemberPanel.deleteAllMembersConfirmationLabel");
}
ChooseFocusTypeAndRelationDialogPanel chooseTypePopupContent = new ChooseFocusTypeAndRelationDialogPanel(getPageBase().getMainPopupBodyId(),
createStringResource("abstractRoleMemberPanel.deleteAllMembersConfirmationLabel")) {
confirmModel) {
private static final long serialVersionUID = 1L;

@Override
Expand Down Expand Up @@ -953,7 +962,7 @@ protected void refreshAll(AjaxRequestTarget target) {
}


private MainObjectListPanel<FocusType> getMemberTable() {
protected MainObjectListPanel<FocusType> getMemberTable() {
return (MainObjectListPanel<FocusType>) get(createComponentPath(ID_FORM, ID_CONTAINER_MEMBER, ID_MEMBER_TABLE));
}

Expand All @@ -962,7 +971,7 @@ protected QueryScope getQueryScope() {
return QueryScope.SELECTED;
}

if (getIndirectmembersPanel().getValue()) {
if (getIndirectmembersPanel().getValue() || SearchBoxScopeType.SUBTREE.equals(getSearchScope())) {
return QueryScope.ALL;
}

Expand All @@ -975,10 +984,14 @@ private CheckFormGroup getIndirectmembersPanel() {

protected void recomputeMembersPerformed(AjaxRequestTarget target) {

StringResourceModel confirmModel = getMemberTable().getSelectedObjectsCount() > 0 ?
createStringResource("abstractRoleMemberPanel.recomputeSelectedMembersConfirmationLabel")
: createStringResource("abstractRoleMemberPanel.recomputeAllMembersConfirmationLabel");

StringResourceModel confirmModel;
if (SearchBoxScopeType.SUBTREE.equals(getSearchScope())) {
confirmModel = createStringResource("abstractRoleMemberPanel.recomputeAllSubtreeMembersConfirmationLabel");
} else {
confirmModel = getMemberTable().getSelectedObjectsCount() > 0 ?
createStringResource("abstractRoleMemberPanel.recomputeSelectedMembersConfirmationLabel")
: createStringResource("abstractRoleMemberPanel.recomputeAllMembersConfirmationLabel");
}
ConfigureTaskConfirmationPanel dialog = new ConfigureTaskConfirmationPanel(((PageBase)getPage()).getMainPopupBodyId(),
confirmModel) {

Expand Down Expand Up @@ -1245,4 +1258,10 @@ protected void updateMembersPanelSessionStorage(){
protected MemberPanelStorage getMemberPanelStorage(){
return null;
}

protected SearchBoxScopeType getSearchScope() {
DropDownFormGroup<SearchBoxScopeType> searchorgScope = (DropDownFormGroup<SearchBoxScopeType>) get(
createComponentPath(ID_FORM, ID_SEARCH_SCOPE));
return searchorgScope.getModelObject();
}
}
Expand Up @@ -24,7 +24,6 @@
import com.evolveum.midpoint.schema.constants.ObjectTypes;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.web.component.form.DropDownFormGroup;
import com.evolveum.midpoint.web.page.admin.roles.AbstractRoleMemberPanel;
import com.evolveum.midpoint.web.page.admin.roles.AvailableRelationDto;
import com.evolveum.midpoint.web.page.admin.roles.MemberOperationsHelper;
Expand Down Expand Up @@ -57,7 +56,7 @@ protected void initLayout() {
@Override
protected ObjectQuery createMemberQuery(boolean indirect, Collection<QName> relations) {
ObjectTypes searchType = getSearchType();
if (SearchBoxScopeType.ONE_LEVEL.equals(getOrgSearchScope())) {
if (SearchBoxScopeType.ONE_LEVEL.equals(getSearchScope())) {
if (AssignmentHolderType.class.isAssignableFrom(searchType.getClassDefinition())) {
return super.createMemberQuery(indirect, relations);
}
Expand All @@ -73,22 +72,14 @@ protected ObjectQuery createMemberQuery(boolean indirect, Collection<QName> rela

@Override
protected ObjectQuery getActionQuery(QueryScope scope, Collection<QName> relations) {
if (SearchBoxScopeType.ONE_LEVEL.equals(getOrgSearchScope())) {
if (SearchBoxScopeType.ONE_LEVEL.equals(getSearchScope()) ||
(SearchBoxScopeType.SUBTREE.equals(getSearchScope()) && !QueryScope.ALL.equals(scope))) {
return super.getActionQuery(scope, relations);
} else {
return getSubtreeScopeMembersQuery();
}
}

@Override
protected QueryScope getQueryScope() {
if (SearchBoxScopeType.SUBTREE.equals(getOrgSearchScope())) {
return QueryScope.ALL;
} else {
return super.getQueryScope();
}
}

@Override
protected ObjectQuery createAllMemberQuery(Collection<QName> relations) {
return getPrismContext().queryFor(AssignmentHolderType.class)
Expand All @@ -111,12 +102,6 @@ private ObjectQuery getSubtreeScopeMembersQuery(){
return query;
}

protected SearchBoxScopeType getOrgSearchScope() {
DropDownFormGroup<SearchBoxScopeType> searchorgScope = (DropDownFormGroup<SearchBoxScopeType>) get(
createComponentPath(ID_FORM, ID_SEARCH_SCOPE));
return searchorgScope.getModelObject();
}

@Override
protected void assignMembers(AjaxRequestTarget target, AvailableRelationDto availableRelationList,
List<QName> objectTypes, List<ObjectReferenceType> archetypeRefList, boolean isOrgTreePanelVisible) {
Expand Down

0 comments on commit 5acf951

Please sign in to comment.