package eu.dnetlib.client.user;

import com.github.gwtbootstrap.client.ui.Tab;
import com.github.gwtbootstrap.client.ui.TabPanel;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.Widget;
import eu.dnetlib.shared.EligiblePresentAndFutureProjects;

/**
 * Created by stefania on 4/6/15.
 */
public class EligibleProjectsInfoWidget implements IsWidget {

    private FlowPanel eligibleProjectsInfoPanel = new FlowPanel();

    private TabPanel eligibleProjectsTabPanel = new TabPanel();
    private Tab currentEligibleProjectsTab = new Tab();
    private Tab futureEligibleProjectsTab = new Tab();

    private CurrentEligibleProjectsInfoElement currentEligibleProjectsInfoElement;
    private FutureEligibleProjectsInfoElement futureEligibleProjectsInfoElement;

    public EligibleProjectsInfoWidget(EligiblePresentAndFutureProjects eligiblePresentAndFutureProjects) {

        currentEligibleProjectsInfoElement = new CurrentEligibleProjectsInfoElement(eligiblePresentAndFutureProjects.getPresentEligibleProjects());
        currentEligibleProjectsInfoElement.addStyleName("tabInner");

        futureEligibleProjectsInfoElement = new FutureEligibleProjectsInfoElement(eligiblePresentAndFutureProjects.getFutureEligibleProjects());
        futureEligibleProjectsInfoElement.addStyleName("tabInner");

        eligibleProjectsTabPanel.add(currentEligibleProjectsTab);
        eligibleProjectsTabPanel.add(futureEligibleProjectsTab);

        eligibleProjectsTabPanel.setTabPosition("above");
        eligibleProjectsTabPanel.addStyleName("tabPanel");

        currentEligibleProjectsTab.setActive(true);
        currentEligibleProjectsTab.setHeading("CURRENT ELIGIBLE PROJECTS");
        currentEligibleProjectsTab.add(currentEligibleProjectsInfoElement.asWidget());

        futureEligibleProjectsTab.setHeading("FUTURE ELIGIBLE PROJECTS");
        futureEligibleProjectsTab.add(futureEligibleProjectsInfoElement.asWidget());

        eligibleProjectsInfoPanel.add(eligibleProjectsTabPanel);
    }

    @Override
    public Widget asWidget() {
        return eligibleProjectsInfoPanel;
    }
}
