Project

General

Profile

« Previous | Next » 

Revision daa29c68

Added by Katja Luther about 3 years ago

ref #9340: add sec check for move synonym to another taxon

View differences:

eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/Messages.java
332 332
    public static String ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Parent;
333 333
    public static String ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Select;
334 334
    public static String ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Keep;
335
    public static String MoveSynonymToAcceptedHandler_Select_Sec_Reference_Handling_message;
335 336

  
336 337

  
337 338
    static {
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages.properties
305 305
NameFactsDataView_Lable=Name Facts
306 306
DeleteDescriptiveDatasetHandler_Exception_Message=Descriptive Dataset could not be deleted.
307 307
DeleteDescriptiveDatasetHandler_Warning_Message=Deletion was successful but with warnings. 
308
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Handling_message=Select secundum reference
309
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Handling_title=The secundum reference of the selected parent is different to the secundum of the synonym. Please select which secundum should be used for the accepted taxon.
308
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Handling_title=Select secundum reference
309
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Handling_message=The secundum reference of the selected parent is different to the secundum of the synonym. Please select which secundum should be used for the accepted taxon.
310 310
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Parent=Parent secundum
311 311
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Select=Select new
312 312
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Keep=Keep secundum
313
ChangeSynonymToAcceptedHandler_Different_Publish_Flag=The selected parent taxon and the new taxon have different pubish flags. Maybe one of them should be adapted.
313
ChangeSynonymToAcceptedHandler_Different_Publish_Flag=The selected parent taxon and the new taxon have different pubish flags. Maybe one of them should be adapted.
314
MoveSynonymToAcceptedHandler_Select_Sec_Reference_Handling_message= Secundum reference of synonym and new accepted taxon are different. Please select the reference used as secundum.
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages_de.properties
306 306
DeleteDescriptiveDatasetHandler_Warning_Message=Das L?schen war erfolgreich, es gibt aber Warnungen.
307 307
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Handling_message=Auswahl der Sekundum Referenz
308 308
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Handling_title=Die Sekundum Referenzen des gew?hlten Eltern und des alten akzeptierten Taxons unterscheiden sich, bitte w?hlen Sie welche Sekundum Referenz f?r das neue Synonym verwendet werden soll
309
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Parent=Eltern Secundum
309
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Parent=Eltern Sekundum
310 310
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Select=Neue ausw?hlen
311 311
ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Keep=Secundum beibehalten
312
ChangeSynonymToAcceptedHandler_Different_Publish_Flag=Das gew?hlte Elterntaxon und das neue Taxon haben unterschiedliche Publikationsstatus. Eventuell sollten sie angepasst werden.
312
ChangeSynonymToAcceptedHandler_Different_Publish_Flag=Das gew?hlte Elterntaxon und das neue Taxon haben unterschiedliche Publikationsstatus. Eventuell sollten sie angepasst werden.
313
MoveSynonymToAcceptedHandler_Select_Sec_Reference_Handling_message=Die Sekundum Referenz des Synonyms und des neuen akzeptierten Taxons unterscheiden sich, bitte w?hlen Sie, welche Referenz verwendet werden soll.
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/e4/handler/MoveSynonymToAnotherAcceptedTaxonHandlerE4.java
20 20
import org.eclipse.jface.viewers.IStructuredSelection;
21 21
import org.eclipse.swt.widgets.Shell;
22 22

  
23
import eu.etaxonomy.cdm.model.metadata.SecReferenceHandlingEnum;
24
import eu.etaxonomy.cdm.model.reference.Reference;
23 25
import eu.etaxonomy.cdm.model.taxon.Synonym;
24 26
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
25 27
import eu.etaxonomy.taxeditor.editor.EditorUtil;
......
31 33
import eu.etaxonomy.taxeditor.model.AbstractUtility;
32 34
import eu.etaxonomy.taxeditor.model.MessagingUtils;
33 35
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
36
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
37
import eu.etaxonomy.taxeditor.ui.dialog.selection.ReferenceSelectionDialog;
34 38
import eu.etaxonomy.taxeditor.ui.dialog.selection.TaxonNodeSelectionDialog;
35 39

  
36 40
public class MoveSynonymToAnotherAcceptedTaxonHandlerE4 implements IPostOperationEnabled{
......
82 86

  
83 87

  
84 88
		newParentNode = TaxonNodeSelectionDialog.select(shell, Messages.MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON, excludeTaxa,  input.getTaxonNode(), input.getTaxonNode().getClassification().getUuid());
89
		SecReferenceHandlingEnum secHandling = PreferencesUtil.getSecReferenceHandlingPreference();
90
        UUID newSecUuid = null;
91

  
92
        Reference synSecRef = synonym.getSec();
93
        Reference parentSecRef = newParentNode.getTaxon() != null? newParentNode.getTaxon().getSec():null;
94
        if ((synSecRef != parentSecRef && secHandling.equals(SecReferenceHandlingEnum.KeepWhenSame) )|| secHandling.equals(SecReferenceHandlingEnum.WarningSelect)){
95

  
96
            if ((parentSecRef != synSecRef && secHandling.equals(SecReferenceHandlingEnum.KeepWhenSame) )|| secHandling.equals(SecReferenceHandlingEnum.WarningSelect)){
97
                int result = MessagingUtils.confirmDialog(Messages.ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Handling_title, Messages.MoveSynonymToAcceptedHandler_Select_Sec_Reference_Handling_message,
98
                        new String[]{Messages.ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Keep, Messages.ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Parent, Messages.ChangeSynonymToAcceptedHandler_Select_Sec_Reference_Select});
99
                if (result == 2){
100
                    Reference sec = ReferenceSelectionDialog.select(shell, null);
101
                    newSecUuid = sec != null? sec.getUuid(): null;
102
                }else if (result == 1){
103
                    newSecUuid = parentSecRef != null? parentSecRef.getUuid(): null;
104
                }else if (result == 0){
105
                    newSecUuid = synSecRef != null? synSecRef.getUuid(): null;
106
                }else{
107
                    return ;
108
                }
109

  
110
            }
85 111

  
112
        }
86 113
		if (synonym.isPublish() != newParentNode.getTaxon().isPublish()){
87 114
            MessagingUtils.warningDialog("Publish flag", this,Messages.ChangeSynonymToAcceptedHandler_Different_Publish_Flag);
88 115
        }

Also available in: Unified diff