package de.flower.rmt.ui.page.calendar;
import de.flower.common.ui.panel.BasePanel;
import de.flower.rmt.model.db.entity.CalItem;
import de.flower.rmt.util.Dates;
import org.apache.wicket.datetime.markup.html.basic.DateLabel;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.CompoundPropertyModel;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.PropertyModel;
import org.apache.wicket.model.ResourceModel;
import java.util.Date;
/**
* @author flowerrrr
*/
public class CalItemDetailsPanel extends BasePanel<CalItem> {
public CalItemDetailsPanel(final String id, final IModel<CalItem> model) {
super(id, new CompoundPropertyModel<CalItem>(model));
add(new Label("user.fullname"));
// panel is always created when model-value changes. can access model object in constructor.
add(new Label("type", new ResourceModel(CalItem.Type.getResourceKey(model.getObject().getType()))));
add(new Label("summary"));
add(DateLabel.forDatePattern("startDate", new PropertyModel<Date>(getModel(), "startDateTime.toDate()"), Dates.DATE_LONG));
add(DateLabel.forDatePattern("startTime", new PropertyModel<Date>(getModel(), "startDateTime.toDate()"), Dates.TIME_SHORT).setVisible(!model.getObject().isAllDay()));
add(DateLabel.forDatePattern("endDate", new PropertyModel<Date>(getModel(), "endDateTime.toDate()"), Dates.DATE_LONG));
add(DateLabel.forDatePattern("endTime", new PropertyModel<Date>(getModel(), "endDateTime.toDate()"), Dates.TIME_SHORT).setVisible(!model.getObject().isAllDay()));
}
}