有没有办法改变富裕:日历假期

时间:2013-01-15 08:35:47

标签: css richfaces

我需要在rich:calendar组件中更改假期。默认情况下,组件将节假日显示为" Sunday"和"星期六"。

以下是为突出显示假期而定义的样式类。

.rich-calendar-holly
{
background-color: #FFEBDA;
}

我希望这种风格在周五和周六而不是周六和周日工作。有人可以建议我如何实现丰富的表面?是否有可用于设置假期的属性?

提前致谢。

1 个答案:

答案 0 :(得分:2)

您可以定义自定义CalendarDataModel,以便它返回星期五和星期六的某个css类,例如

public class CalendarModelItem implements CalendarDataModelItem {
   //rest of code
   private String styleClass;
   public void setStyleClass(String styleClass) { this.styleClass = styleClass; }
   public String getStyleClass() { return styleClass; }
   //rest of code
}

public class CalendarModel implements CalendarDataModel {
    //rest of code
    public CalendarDataModelItem[] getData(Date[] dateArray) {
       CalendarDataModelItem[] modelItems = new CalendarModelItem[dateArray.length];
       Calendar c = Calendar.getInstance();
       for (Date d : dateArray) {                
            c.setTime(d);
            CalendarModelItem modelItem = new CalendarModelItem();
            if (calendar.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY || calendar.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) {
                modelItem.setStyleClass("weekend");
            } else {
                modelItem.setStyleClass("");
            }
            modelItems[i] = modelItem;
       }
       return modelItems;
    }
    //rest of code
}

定义您的自定义css类并通过rich-calendar-holly重置格式

.rich-calendar-holly{
 background-color:white;
 color:black;
}
.weekend {
 background-color: #FFEBDA;
}

然后在日历组件中使用它

<rich:calendar ... dataModel="#{calendarModel}" />