Project

General

Profile

« Previous | Next » 

Revision 8a7e7d33

Added by Katja Luther over 4 years ago

fix preferences and term issues

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/GeneralTermPreference.java
45 45
import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage;
46 46
import eu.etaxonomy.taxeditor.preference.wizard.CheckBoxTreeComposite;
47 47
import eu.etaxonomy.taxeditor.store.CdmStore;
48
import eu.etaxonomy.taxeditor.store.TermStore;
49 48

  
50 49
/**
51 50
 * @author k.luther
......
212 211
        if (listValue.isEmpty()){
213 212
            List<DefinedTermBase> terms = CdmStore.getTermManager().getAllTerms(type, null);
214 213
            for (DefinedTermBase term: terms){
215
                termlist.add(TermDto.fromTerm(term, true));
214
                if (!(term instanceof eu.etaxonomy.cdm.model.description.Character)){
215
                    termlist.add(TermDto.fromTerm(term, true));
216
                }
216 217
            }
217 218
        }
218 219

  
......
324 325
        if (vocabularies.size() == 1){
325 326
            CdmStore.getTermManager().setPreferredTermsByDto(preferredTermDtos, vocabularies.get(0));
326 327
        }else{
327
            CdmStore.getTermManager().setPreferredTerms(preferredTerms, TermStore.getTerms(type, null));
328
            CdmStore.getTermManager().setPreferredTermsByType(preferredTerms, type);
329
        }
330
        PreferencesUtil.firePreferencesChanged(this.getClass());
331
        return true;
332
    }
333

  
334
    protected boolean performOkAdmin() {
335
        Object[] checkedElements = treeComposite.getViewer().getCheckedElements();
336
        List<UUID> listUIIDChecked = new ArrayList<>();
337
        List<DefinedTermBase> preferredTerms = new ArrayList<>();
338
        for (Object o : checkedElements) {
339
            if(o instanceof TermDto){
340
                TermDto termDto = (TermDto) o;
341
                listUIIDChecked.add(termDto.getUuid());
342
                preferredTerms.add(CdmStore.getService(ITermService.class).load(termDto.getUuid()));
343
            }
344
        }
345
        String saveCheckedElements = StringUtils.join(listUIIDChecked, ";"); //$NON-NLS-1$
346
        if (StringUtils.isBlank(saveCheckedElements)){
347
            saveCheckedElements = null;
348
        }
349
        CdmPreference savePref = CdmPreference.NewTaxEditorInstance(predicate, saveCheckedElements);
350
        String text = this.useLocalOrAdmin.getText();
351
        if (text.equals(LocalOrDefaultEnum.Database.getLabel()) ){
352
            savePref.setAllowOverride(false);
353
        }else if (text.equals(LocalOrDefaultEnum.AllowOverride.getLabel())){
354
            savePref.setAllowOverride(true);
328 355
        }
356

  
357
        PreferencesUtil.setPreferenceToDB(savePref);
358
        PreferencesUtil.updateDBPreferences();
329 359
        PreferencesUtil.firePreferencesChanged(this.getClass());
330 360
        return true;
331 361
    }
362

  
332 363
}

Also available in: Unified diff