Package org.openfaces.demo.beans.calendar

Source Code of org.openfaces.demo.beans.calendar.CalendarBean

/*
* OpenFaces - JSF Component Library 2.0
* Copyright (C) 2007-2013, TeamDev Ltd.
* licensing@openfaces.org
* Unless agreed in writing the contents of this file are subject to
* the GNU Lesser General Public License Version 2.1 (the "LGPL" License).
* This library is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* Please visit http://openfaces.org/licensing/ for more details.
*/

package org.openfaces.demo.beans.calendar;

import org.openfaces.component.select.TabSetItem;

import javax.faces.component.html.HtmlOutputText;
import javax.faces.context.FacesContext;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Locale;

public class CalendarBean implements Serializable {
    private Date fromDate;
    private Date toDate;
    private List<TabSetItem> locales = new ArrayList<TabSetItem>();
    private LocaleItem selectedLocaleItem;

    public CalendarBean() {
        fromDate = getNextMonday().getTime();
        Calendar tempToDate = getNextMonday();
        tempToDate.add(Calendar.DAY_OF_YEAR, 14);
        toDate = tempToDate.getTime();
        List<LocaleItem> locales = calendarLocales();
        for (LocaleItem localeItem : locales) {
            TabSetItem tabSetItem = new TabSetItem();
            HtmlOutputText component = (HtmlOutputText) FacesContext.getCurrentInstance().getApplication().createComponent(HtmlOutputText.COMPONENT_TYPE);
            component.setValue(localeItem.toString());
            tabSetItem.getChildren().add(component);
            tabSetItem.setItemValue(localeItem);
            this.locales.add(tabSetItem);
        }
        selectedLocaleItem = locales.get(0);
    }

    public static List<LocaleItem> calendarLocales() {
        List<LocaleItem> locales = new ArrayList<LocaleItem>();
        locales.add(new LocaleItem("English", Locale.ENGLISH, "Today", "None"));
        locales.add(new LocaleItem("French", Locale.FRENCH, "Aujourd'hui", "Aucun"));
        locales.add(new LocaleItem("German", Locale.GERMAN, "Heute", "Kein"));
        locales.add(new LocaleItem("Italian", Locale.ITALY, "Oggi", "Nessun"));
        locales.add(new LocaleItem("Japanese", Locale.JAPAN, "\u4ECA\u65E5", "\u524A\u9664"));
        locales.add(new LocaleItem("Russian", new Locale("ru"), "\u0421\u0435\u0433\u043E\u0434\u043D\u044F", "\u0421\u0431\u0440\u043E\u0441"));
        locales.add(new LocaleItem("Arabic", new Locale("ar"), "\u0645\u0648\u064A\u0644\u0627", "\u0644\u0627\u0634\u0626"));
        return locales;
    }

    public void setFromDate(Date fromDate) {
        this.fromDate = fromDate;
    }

    public void setToDate(Date toDate) {
        this.toDate = toDate;
    }

    private Calendar getNextMonday() {
        Calendar tempFromDate = Calendar.getInstance();
        int currentDayOfWeek = tempFromDate.get(Calendar.DAY_OF_WEEK);
        if (Calendar.MONDAY != currentDayOfWeek) {
            if (currentDayOfWeek == Calendar.TUESDAY)
                tempFromDate.add(Calendar.DAY_OF_MONTH, 6);

            if (currentDayOfWeek == Calendar.WEDNESDAY)
                tempFromDate.add(Calendar.DAY_OF_MONTH, 5);

            if (currentDayOfWeek == Calendar.THURSDAY)
                tempFromDate.add(Calendar.DAY_OF_MONTH, 4);

            if (currentDayOfWeek == Calendar.FRIDAY)
                tempFromDate.add(Calendar.DAY_OF_MONTH, 3);

            if (currentDayOfWeek == Calendar.SATURDAY)
                tempFromDate.add(Calendar.DAY_OF_MONTH, 2);

            if (currentDayOfWeek == Calendar.SUNDAY)
                tempFromDate.add(Calendar.DAY_OF_MONTH, 1);
        }
        return tempFromDate;
    }

    public Date getFromDate() {
        return fromDate;
    }

    public Date getToDate() {
        return toDate;
    }

    public Date getIntroductionFromDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 1);
        return c.getTime();
    }

    public void setIntroductionFromDate(Date date) {
    }

    public Date getLecturesFromDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 2);
        return c.getTime();
    }

    public Date getPracticeFromDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 13);
        return c.getTime();
    }

    public Date getExaminationFromDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 24);
        return c.getTime();
    }

    public Date getIntroductionToDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 1);
        return c.getTime();
    }

    public Date getLecturesToDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 12);
        return c.getTime();
    }

    public Date getPracticeToDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 23);
        return c.getTime();
    }

    public Date getExaminationToDate() {
        Calendar c = Calendar.getInstance();
        c.set(2007, 9, 30);
        return c.getTime();
    }

    public List<TabSetItem> getLocales() {
        return locales;
    }

    public Locale getSelectedLocale() {
        return getSelectedLocaleItem().getLocale();
    }

    public LocaleItem getSelectedLocaleItem() {
        return selectedLocaleItem;
    }

    public void setSelectedLocaleItem(LocaleItem selectedLocaleItem) {
        this.selectedLocaleItem = selectedLocaleItem;
    }

    public String getCurrentTodayText() {
        return selectedLocaleItem != null ? selectedLocaleItem.getTodayText() : "";
    }

    public String getCurrentNoneText() {
        return selectedLocaleItem != null ? selectedLocaleItem.getNoneText() : "";
    }


}
TOP

Related Classes of org.openfaces.demo.beans.calendar.CalendarBean

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.