Project

General

Profile

1
package eu.dnetlib.client.fundingrequest.newrequest;
2

    
3
import com.github.gwtbootstrap.client.ui.Alert;
4
import com.github.gwtbootstrap.client.ui.AlertBlock;
5
import com.github.gwtbootstrap.client.ui.constants.AlertType;
6
import com.google.gwt.core.client.GWT;
7
import com.google.gwt.user.client.ui.FlowPanel;
8
import com.google.gwt.user.client.ui.HTML;
9
import com.google.gwt.user.client.ui.IsWidget;
10
import com.google.gwt.user.client.ui.Widget;
11
import eu.dnetlib.client.GoldOAConstants;
12
import eu.dnetlib.goldoa.domain.Eligibility;
13

    
14
/**
15
 * Created by stefania on 3/11/15.
16
 */
17
public class EligibilityDisplayWidget implements IsWidget {
18

    
19
    private FlowPanel eligibilityDisplayPanel = new FlowPanel();
20

    
21
    private HTML eligibilityInfo = new HTML();
22
    private Alert errorLabel = new Alert();
23

    
24
    private GoldOAConstants goldOAConstants = GWT.create(GoldOAConstants.class);
25

    
26
    public EligibilityDisplayWidget(Eligibility eligibility) {
27

    
28
        if(eligibility==null) {
29

    
30
            errorLabel.setText(goldOAConstants.errorGettingEligibility());
31
            errorLabel.addStyleName("eligibilityInfo");
32
            errorLabel.setType(AlertType.ERROR);
33
            errorLabel.setClose(false);
34

    
35
            eligibilityDisplayPanel.add(errorLabel);
36

    
37
        } else {
38

    
39
            eligibilityInfo.addStyleName("alert");
40
            eligibilityInfo.addStyleName("eligibilityInfo");
41

    
42
            String contents = "";
43

    
44
            switch (eligibility.getStatus()) {
45

    
46
                case OK:    contents += "<span class=\"strong\">Status - Eligible</span>";
47
                            for(String message : eligibility.getMessages())
48
                                contents += "<br>" + message;
49

    
50
                            eligibilityInfo.setHTML(contents);
51
                            eligibilityInfo.addStyleName("alert-success");
52
                    break;
53

    
54
                case IFFY:  contents += "<span class=\"strong\">Status - Moderator intervention required</span>";
55
                            for(String message : eligibility.getMessages())
56
                                contents += "<br>" + message;
57

    
58
                            eligibilityInfo.setHTML(contents);
59
                            eligibilityInfo.addStyleName("alert-warning");
60
                    break;
61

    
62
                case NONO:  contents += "<span class=\"strong\">Status - Not Eligible</span>";
63
                            for(String message : eligibility.getMessages())
64
                                contents += "<br>" + message;
65

    
66
                            eligibilityInfo.setHTML(contents);
67
                            eligibilityInfo.addStyleName("alert-error");
68
                    break;
69
            }
70

    
71
            eligibilityDisplayPanel.add(eligibilityInfo);
72
        }
73

    
74
    }
75

    
76
    @Override
77
    public Widget asWidget() {
78
        return eligibilityDisplayPanel;
79
    }
80
}
(2-2/8)