--- /dev/null
+/**
+* Copyright (C) 2018 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.cdm.vaadin.security;
+
+import eu.etaxonomy.cdm.model.common.CdmBase;
+import eu.etaxonomy.cdm.persistence.hibernate.permission.CRUD;
+import eu.etaxonomy.vaadin.permission.EditPermissionTester;
+
+/**
+ * To be used for {@link ToManyRelatedEntitiesComboboxSelect}
+ *
+ * @author a.kohlbecker
+ * @since Apr 20, 2018
+ *
+ */
+public class CdmEditDeletePermissionTester implements EditPermissionTester {
+ @Override
+ public boolean userHasEditPermission(Object bean) {
+ return UserHelper.fromSession().userHasPermission((CdmBase)bean, CRUD.UPDATE, CRUD.DELETE);
+ }
+}
\ No newline at end of file
import eu.etaxonomy.cdm.model.name.TaxonName;
import eu.etaxonomy.cdm.model.reference.Reference;
import eu.etaxonomy.cdm.vaadin.event.TaxonNameEditorAction;
+import eu.etaxonomy.cdm.vaadin.security.CdmEditDeletePermissionTester;
import eu.etaxonomy.cdm.vaadin.util.converter.SetToListConverter;
import eu.etaxonomy.vaadin.component.ToManyRelatedEntitiesComboboxSelect;
import eu.etaxonomy.vaadin.component.ToOneRelatedEntityCombobox;
row++;
typifiedNamesComboboxSelect = new ToManyRelatedEntitiesComboboxSelect<TaxonName>(TaxonName.class, "Typified names");
typifiedNamesComboboxSelect.setConverter(new SetToListConverter<TaxonName>());
+ typifiedNamesComboboxSelect.setEditPermissionTester(new CdmEditDeletePermissionTester());
addField(typifiedNamesComboboxSelect, "typifiedNames", 0, row, 3, row);
typifiedNamesComboboxSelect.setReadOnly(false); // FIXME this does not help
import eu.etaxonomy.cdm.model.name.Rank;
import eu.etaxonomy.cdm.model.name.TaxonName;
import eu.etaxonomy.cdm.model.reference.Reference;
-import eu.etaxonomy.cdm.persistence.hibernate.permission.CRUD;
import eu.etaxonomy.cdm.vaadin.component.common.TeamOrPersonField;
import eu.etaxonomy.cdm.vaadin.event.ReferenceEditorAction;
import eu.etaxonomy.cdm.vaadin.event.TaxonNameEditorAction;
import eu.etaxonomy.cdm.vaadin.security.AccessRestrictedView;
-import eu.etaxonomy.cdm.vaadin.security.UserHelper;
+import eu.etaxonomy.cdm.vaadin.security.CdmEditDeletePermissionTester;
import eu.etaxonomy.cdm.vaadin.util.TeamOrPersonBaseCaptionGenerator;
import eu.etaxonomy.cdm.vaadin.util.converter.SetToListConverter;
import eu.etaxonomy.vaadin.component.ReloadableLazyComboBox;
import eu.etaxonomy.vaadin.component.ToOneRelatedEntityCombobox;
import eu.etaxonomy.vaadin.event.EditorActionType;
import eu.etaxonomy.vaadin.mvp.AbstractCdmPopupEditor;
-import eu.etaxonomy.vaadin.permission.EditPermissionTester;
/**
* @author a.kohlbecker
addField(basionymsComboboxSelect, "basionyms", 0, row, 3, row);
basionymsComboboxSelect.setWidth(100, Unit.PERCENTAGE);
basionymsComboboxSelect.withEditButton(true);
- basionymsComboboxSelect.setEditPermissionTester(new EditPermissionTester() {
-
- @Override
- public boolean userHasEditPermission(Object bean) {
- return UserHelper.fromSession().userHasPermission((CdmBase)bean, CRUD.UPDATE, CRUD.DELETE);
- }
- });
+ basionymsComboboxSelect.setEditPermissionTester(new CdmEditDeletePermissionTester());
basionymsComboboxSelect.setEditActionListener(e -> {
Object fieldValue = e.getSource().getValue();