Skip to content

Commit

Permalink
another fixes for MID-5479 (including fix for polystring panel)
Browse files Browse the repository at this point in the history
  • Loading branch information
katkav committed Jul 3, 2019
1 parent 406d71c commit 4f4af16
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 6 deletions.
Expand Up @@ -63,17 +63,20 @@ public <D extends ItemDelta<V, ID>, ID extends ItemDefinition> void addToDelta(D
if (!isChanged()) {
break;
}
case MODIFIED:
case MODIFIED:

if (parent.isSingleValue()) {
if (newValue.isEmpty()) {
delta.addValueToReplace(null);
delta.addValueToDelete((V) oldValue.clone());
} else {
delta.addValueToReplace((V) newValue.clone());
}
break;
}

delta.addValueToAdd((V) newValue.clone());

if (!newValue.isEmpty()) {
delta.addValueToAdd((V) newValue.clone());
}
if (!oldValue.isEmpty()) {
delta.addValueToDelete((V) oldValue.clone());
}
Expand Down
Expand Up @@ -27,6 +27,7 @@
import com.evolveum.midpoint.web.page.admin.configuration.component.EmptyOnBlurAjaxFormUpdatingBehaviour;
import com.evolveum.midpoint.web.security.MidPointApplication;
import com.evolveum.prism.xml.ns._public.types_3.PolyStringTranslationType;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
Expand Down Expand Up @@ -145,10 +146,21 @@ public String getObject() {
@Override
public void setObject(String object) {
if (getModelObject() == null){
getModel().setObject(new PolyString(object));
if (StringUtils.isBlank(object)) {
getModel().setObject(null);
} else {
getModel().setObject(new PolyString(object));
}
} else {
PolyString oldModelObject = getModelObject();
getModel().setObject(new PolyString(object, oldModelObject.getNorm(), oldModelObject.getTranslation(), oldModelObject.getLang()));
if (StringUtils.isBlank(object)) {
if (oldModelObject.getTranslation() != null || MapUtils.isNotEmpty(oldModelObject.getLang())) {
getModel().setObject(new PolyString(object, oldModelObject.getNorm(), oldModelObject.getTranslation(), oldModelObject.getLang()));
} else {
getModel().setObject(null);
}
}

}
}

Expand Down

0 comments on commit 4f4af16

Please sign in to comment.