ref #5971: minor
authorKatja Luther <k.luther@bgbm.org>
Tue, 1 Nov 2016 11:41:18 +0000 (12:41 +0100)
committerKatja Luther <k.luther@bgbm.org>
Tue, 1 Nov 2016 11:41:18 +0000 (12:41 +0100)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/AdminNomenclaturalCode.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/NomenclaturalCodePreferences.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencesUtil.java

index d87a9d84b2624897d4e7b087bd8c35ce04b3be7c..4c8b0d1f210326a8055099d57d6b7cf1f38abbd6 100755 (executable)
@@ -84,7 +84,9 @@ public class AdminNomenclaturalCode extends FieldEditorPreferencePage implements
        boolean result = super.performOk();
        if (result){
            String value = getPreferenceStore().getString(IPreferenceKeys.CDM_NOMENCLATURAL_CODE_KEY);
        boolean result = super.performOk();
        if (result){
            String value = getPreferenceStore().getString(IPreferenceKeys.CDM_NOMENCLATURAL_CODE_KEY);
+           String allowOverride =  getPreferenceStore().getString(IPreferenceKeys.ALLOW_OVERRIDE_NOMENCLATURAL_CODE_KEY);
            CdmPreference pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.NomenclaturalCode, value);
            CdmPreference pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.NomenclaturalCode, value);
+           pref.setAllowOverride(Boolean.getBoolean(allowOverride));
            ICdmApplicationConfiguration controller = CdmStore.getCurrentApplicationConfiguration();
            if (controller == null){
                return false;
            ICdmApplicationConfiguration controller = CdmStore.getCurrentApplicationConfiguration();
            if (controller == null){
                return false;
index 126909a5b08d4a4c736738809721efd610d88cf6..657a40dc4e59602a2898793f00f918a80f1d016b 100644 (file)
@@ -41,15 +41,19 @@ public class NomenclaturalCodePreferences extends FieldEditorPreferencePage
         */
        @Override
        protected void createFieldEditors() {
         */
        @Override
        protected void createFieldEditors() {
-
-               addField(new ComboFieldEditor(
+           if (getPreferenceStore().getBoolean(IPreferenceKeys.OVERRIDE_NOMENCLATURAL_CODE_KEY)) {
+               addField(new ComboFieldEditor(
                                IPreferenceKeys.PREFERRED_NOMENCLATURAL_CODE_KEY,
                                "Available Codes", getLabelAndValues(),
                                getFieldEditorParent()));
                                IPreferenceKeys.PREFERRED_NOMENCLATURAL_CODE_KEY,
                                "Available Codes", getLabelAndValues(),
                                getFieldEditorParent()));
-               addField(new BooleanFieldEditor(
-                IPreferenceKeys.OVERRIDE_NOMENCLATURAL_CODE_KEY,
-                "Use local nomenclatural code",
-                getFieldEditorParent()));
+
+            addField(new BooleanFieldEditor(
+                    IPreferenceKeys.OVERRIDE_NOMENCLATURAL_CODE_KEY,
+                    "Use local nomenclatural code",
+                    getFieldEditorParent()));
+        } else {
+            setDescription("The CDM settings don't allow to set the nomenclatural code locally. If you need to make local settings, please ask an administrator.");
+        }
 
        }
 
 
        }
 
index f4f32c9b217c4c1405f8e058b4ba09c6aa05791d..44662fe1699dc645538aed240925776d70aa96df 100644 (file)
@@ -175,6 +175,7 @@ public class PreferencesUtil implements IPreferenceKeys {
            if(pref == null){
                preferredCode = getPreferenceStore().getString(
                                        PREFERRED_NOMENCLATURAL_CODE_KEY);
            if(pref == null){
                preferredCode = getPreferenceStore().getString(
                                        PREFERRED_NOMENCLATURAL_CODE_KEY);
+
            }else{
                preferredCode = pref.getValue();
            }
            }else{
                preferredCode = pref.getValue();
            }