Skip to content

Commit

Permalink
Profile page: save/preview changes buttons enable behaviour
Browse files Browse the repository at this point in the history
  • Loading branch information
KaterynaHonchar committed Jan 25, 2018
1 parent 4456115 commit 9fe7f2f
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 23 deletions.
Expand Up @@ -23,10 +23,7 @@
import javax.xml.namespace.QName;

import com.evolveum.midpoint.prism.PrismContainerValue;
import com.evolveum.midpoint.prism.query.builder.S_AtomicFilterExit;
import com.evolveum.midpoint.prism.query.builder.S_FilterEntryOrEmpty;
import com.evolveum.midpoint.schema.constants.SchemaConstants;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.web.component.prism.*;
import com.evolveum.midpoint.web.page.admin.PageAdminFocus;
import com.evolveum.midpoint.web.page.admin.users.component.AssignmentInfoDto;
Expand Down Expand Up @@ -179,8 +176,8 @@ protected <T extends ObjectType> void addSelectedAssignmentsPerformed(AjaxReques
createNewAssignmentContainerValueWrapper(newAssignment);
}

refreshTable(target);

refreshTable(target);
reloadSavePreviewButtons(target);
}

protected List<IColumn<ContainerValueWrapper<AssignmentType>, String>> initColumns() {
Expand Down
Expand Up @@ -23,14 +23,14 @@
import com.evolveum.midpoint.gui.api.util.WebModelServiceUtils;
import com.evolveum.midpoint.prism.PrismContainerValue;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.web.component.objectdetails.FocusMainPanel;
import com.evolveum.midpoint.web.component.prism.*;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ActivationStatusType;
import org.apache.commons.lang.StringUtils;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
Expand Down Expand Up @@ -440,6 +440,7 @@ protected void deleteAssignmentPerformed(AjaxRequestTarget target, List<Containe
value.setSelected(false);
});
refreshTable(target);
reloadSavePreviewButtons(target);
}

protected ContainerValueWrapper<AssignmentType> createNewAssignmentContainerValueWrapper(PrismContainerValue<AssignmentType> newAssignment) {
Expand Down Expand Up @@ -511,4 +512,11 @@ private IModel<String> getActivationLabelModel(ContainerValueWrapper<AssignmentT

}


protected void reloadSavePreviewButtons(AjaxRequestTarget target){
FocusMainPanel mainPanel = findParent(FocusMainPanel.class);
if (mainPanel != null) {
mainPanel.reloadSavePreviewButtons(target);
}
}
}
Expand Up @@ -18,28 +18,27 @@
import com.evolveum.midpoint.gui.api.ComponentConstants;
import com.evolveum.midpoint.gui.api.component.tabs.CountablePanelTab;
import com.evolveum.midpoint.gui.api.component.tabs.PanelTab;
import com.evolveum.midpoint.gui.api.model.CountableLoadableModel;
import com.evolveum.midpoint.gui.api.model.LoadableModel;
import com.evolveum.midpoint.gui.api.page.PageBase;
import com.evolveum.midpoint.gui.api.util.FocusTabVisibleBehavior;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.prism.query.ObjectQuery;
import com.evolveum.midpoint.prism.query.builder.QueryBuilder;
import com.evolveum.midpoint.util.exception.SystemException;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.web.component.assignment.AssignmentDto;
import com.evolveum.midpoint.web.component.assignment.AssignmentEditorDto;
import com.evolveum.midpoint.web.component.assignment.AssignmentsUtil;
import com.evolveum.midpoint.web.component.form.Form;
import com.evolveum.midpoint.web.component.prism.ContainerValueWrapper;
import com.evolveum.midpoint.web.component.prism.ContainerWrapper;
import com.evolveum.midpoint.web.component.prism.ObjectWrapper;
import com.evolveum.midpoint.web.component.prism.ValueStatus;
import com.evolveum.midpoint.web.page.admin.PageAdminFocus;
import com.evolveum.midpoint.web.page.admin.PageAdminObjectDetails;
import com.evolveum.midpoint.web.page.admin.server.dto.TaskDtoProvider;
import com.evolveum.midpoint.web.page.admin.server.dto.TaskDtoProviderOptions;
import com.evolveum.midpoint.web.page.admin.users.dto.FocusSubwrapperDto;
import com.evolveum.midpoint.web.page.admin.users.dto.UserDtoStatus;
import com.evolveum.midpoint.web.page.self.PageSelfProfile;
import com.evolveum.midpoint.web.util.OnePageParameterEncoder;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import org.apache.commons.lang.StringUtils;
Expand Down Expand Up @@ -310,18 +309,17 @@ protected boolean areSavePreviewButtonsEnabled(){
}

private boolean isAssignmentsModelChanged(){
// if (assignmentsModel == null && assignmentsModel.getObject() == null){
// return false;
// }
// if (assignmentsModel.getObject().isEmpty()){
// return false;
// }
// for (AssignmentType assignment : assignmentsModel.getObject()){
// //TODO check status
//// if (UserDtoStatus.DELETE.equals(dto.getStatus()) || UserDtoStatus.ADD.equals(dto.getStatus())){
// return true;
//// }
// }
ObjectWrapper<F> focusWrapper = getObjectModel().getObject();
ContainerWrapper<AssignmentType> assignmentsWrapper =
focusWrapper.findContainerWrapper(new ItemPath(FocusType.F_ASSIGNMENT));
if (assignmentsWrapper != null) {
for (ContainerValueWrapper assignmentWrapper : assignmentsWrapper.getValues()) {
if (ValueStatus.DELETED.equals(assignmentWrapper.getStatus()) ||
ValueStatus.ADDED.equals(assignmentWrapper.getStatus())) {
return true;
}
}
}
return false;
}

Expand Down

0 comments on commit 9fe7f2f

Please sign in to comment.