@Override
public void setEditorValue(
CmsObject cms,
Map formParameters,
I_CmsWidgetDialog widgetDialog,
I_CmsWidgetParameter param) {
super.setEditorValue(cms, formParameters, widgetDialog, param);
String id = param.getStringValue(cms);
if (CmsStringUtil.isEmptyOrWhitespaceOnly(id)) {
return;
}
try {
CmsCategory cat = CmsCategoryService.getInstance().getCategory(cms, cms.readResource(new CmsUUID(id)));
if (cat.getPath().startsWith(getStartingCategory(cms, cms.getSitePath(getResource(cms, param))))) {
param.setStringValue(cms, cat.getRootPath());
} else {
param.setStringValue(cms, "");
}
} catch (CmsException e) {
param.setStringValue(cms, "");
}
}