Project

General

Profile

Download (5.69 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2018 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9
package eu.etaxonomy.taxeditor.databaseAdmin.preferencePage;
10

    
11
import eu.etaxonomy.cdm.api.application.ICdmRepository;
12
import eu.etaxonomy.cdm.api.service.IPreferenceService;
13
import eu.etaxonomy.cdm.model.metadata.CdmPreference;
14
import eu.etaxonomy.cdm.model.metadata.CdmPreference.PrefKey;
15
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
16
import eu.etaxonomy.cdm.model.metadata.PreferenceSubject;
17
import eu.etaxonomy.taxeditor.preference.GeneralPreferencePage;
18
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
19
import eu.etaxonomy.taxeditor.store.CdmStore;
20

    
21
/**
22
 * @author k.luther
23
 * @since 29.05.2018
24
 *
25
 */
26
public class GeneralAdminPreferencePage extends GeneralPreferencePage implements IE4AdminPreferencePage {
27

    
28
    ICdmRepository controller = null;
29
    CdmPreference isShowSpecimenPref = null;
30
    /**
31
     * {@inheritDoc}
32
     */
33

    
34

    
35
    @Override
36
    public boolean performOk() {
37

    
38
        if (!isApply()){
39
            return true;
40
        }
41
       if (controller != null){
42
           IPreferenceService service = controller.getPreferenceService();
43
           CdmPreference pref;
44
           if (isShowIOMenu == null){
45
               service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowImportExportMenu));
46
           }else{
47
               pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowImportExportMenu, Boolean.toString(this.isShowIOMenu));
48
               pref.setAllowOverride(isAllowOverrideShowIOMenu);
49
               service.set(pref);
50
           }
51

    
52
           if(isShowCheckListPerspective == null){
53
               service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowChecklistPerspective));
54
           }else{
55
               pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowChecklistPerspective, Boolean.toString(this.isShowCheckListPerspective));
56
               pref.setAllowOverride(isAllowOverrideShowCheckListPerspective);
57
               service.set(pref);
58
           }
59

    
60
           if(isShowCheckListPerspective == null){
61
               service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowTaxonNodeWizard));
62
           }else{
63
               pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowTaxonNodeWizard, Boolean.toString(this.isShowTaxonNodeWizard));
64
               pref.setAllowOverride(isAllowOverrideShowTaxonNodeWizard);
65
               service.set(pref);
66
           }
67
           PreferencesUtil.updateDBPreferences();
68

    
69

    
70
       }
71
       return true;
72
   }
73
    @Override
74
    protected void getValues(){
75
        isAdminPreference = true;
76

    
77
        controller = CdmStore.getCurrentApplicationConfiguration();
78
        if (controller != null){
79
          IPreferenceService service = controller.getPreferenceService();
80
          PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowImportExportMenu);
81
          CdmPreference pref = service.find(key);
82
          if (pref != null){
83
              isShowIOMenu = Boolean.valueOf(pref.getValue());
84
              isAllowOverrideShowIOMenu = pref.isAllowOverride();
85
          }else{
86
              isShowIOMenu = null;
87
              isAllowOverrideShowIOMenu = true;
88
          }
89

    
90
//          key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowMediaView);
91
//          pref = service.find(key);
92
//          if (pref != null){
93
//              isShowMediaView = Boolean.valueOf(pref.getValue());
94
//              isAllowOverrideShowMediaView = pref.isAllowOverride();
95
//          }else{
96
//              isShowMediaView = Boolean.valueOf(PreferencePredicate.ShowMediaView.getDefaultValue().toString());
97
//              isAllowOverrideShowMediaView = true;
98
//          }
99

    
100
          key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowChecklistPerspective);
101
          pref = service.find(key);
102
          if (pref != null){
103
              isShowCheckListPerspective = Boolean.valueOf(pref.getValue());
104
              isAllowOverrideShowCheckListPerspective = pref.isAllowOverride();
105
          }else{
106
              isShowCheckListPerspective = null;
107
              isAllowOverrideShowCheckListPerspective = true;
108
          }
109

    
110
          key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowTaxonNodeWizard);
111
          pref = service.find(key);
112
          if (pref != null){
113
              isShowTaxonNodeWizard = Boolean.valueOf(pref.getValue());
114
              isAllowOverrideShowTaxonNodeWizard = pref.isAllowOverride();
115
          }else{
116
              isShowTaxonNodeWizard = null;
117
              isAllowOverrideShowTaxonNodeWizard = true;
118
          }
119
      }
120

    
121
    }
122

    
123
    @Override
124
    protected void performDefaults() {
125
        isShowIOMenu = null;
126
        showIOMenuButton.select(0);
127

    
128
        isShowCheckListPerspective = null;
129
        showChecklistPerspectiveButton.select(0);
130

    
131

    
132
        isShowTaxonNodeWizard = null;
133
        showTaxonNodeWizardButton.select(0);
134

    
135
        isAllowOverrideShowIOMenu = true;
136

    
137
        allowOverrideShowIOMenuButton.setSelection(isAllowOverrideShowIOMenu);
138
        isAllowOverrideShowCheckListPerspective = true;
139
        allowOverrideShowChecklistButton.setSelection(isAllowOverrideShowCheckListPerspective);
140
        isAllowOverrideShowTaxonNodeWizard = true;
141
        allowOverrideShowTaxonNodeWizardButton.setSelection(isAllowOverrideShowTaxonNodeWizard);
142
        super.performDefaults();
143
    }
144

    
145
}
(7-7/18)