in openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java [369:449]
protected void onInitialize() {
add(feedback.setOutputMarkupId(true));
//General
add(ownerPanel.add(owner));
boolean showGroups = AuthLevelUtil.hasAdminLevel(getRights()) || AuthLevelUtil.hasGroupAdminLevel(getRights());
groups.getSettings().setDropdownParent(AppointmentDialog.this.getMarkupId());
add(rdi.add(new AjaxFormChoiceComponentUpdatingBehavior() {
private static final long serialVersionUID = 1L;
@Override
protected void onUpdate(AjaxRequestTarget target) {
boolean groupsEnabled = InviteeType.GROUP == rdi.getModelObject();
target.add(groups.setEnabled(groupsEnabled), attendees.setEnabled(!groupsEnabled));
}
}));
groupContainer.add(
groups.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true)
, new Radio<>("group", Model.of(InviteeType.GROUP))
);
if (showGroups) {
groups.add(AjaxFormComponentUpdatingBehavior.onUpdate(EVT_CHANGE, target -> {
// added to update model
})).setEnabled(false);
}
attendees.getSettings().setDropdownParent(AppointmentDialog.this.getMarkupId());
rdi.add(attendees.add(AjaxFormComponentUpdatingBehavior.onUpdate(EVT_CHANGE, target -> {
// added to update model
}))
, groupContainer.setVisible(showGroups)
);
rdi.add(new Radio<>("user", Model.of(InviteeType.USER)));
add(new TextField<String>("location"));
OmWysiwygToolbar toolbar = new OmWysiwygToolbar("toolbarContainer");
add(toolbar);
add(new WysiwygEditor("description", toolbar));
//room
add(new AjaxCheckBox("createRoom", new PropertyModel<>(this, "createRoom")) {
private static final long serialVersionUID = 1L;
@Override
protected void onUpdate(AjaxRequestTarget target) {
createRoom = getConvertedInput();
target.add(createRoomBlock.setEnabled(createRoom), groom.setEnabled(!createRoom));
}
}.setVisible(myRoomsAllowed));
add(createRoomBlock.add(roomType, new CheckBox("moderated")).setEnabled(createRoom).setVisible(myRoomsAllowed).setOutputMarkupId(true));
groom.setRequired(true).setEnabled(!createRoom).setOutputMarkupId(true);
add(sipContainer.setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true));
sipContainer.add(new Label("room.confno", "")).setVisible(false);
//Advanced
add(new DropDownChoice<>(
"reminder"
, List.of(Reminder.values())
, new LambdaChoiceRenderer<>(Reminder::name, art -> getString("appointment.reminder." + art.name()))
));
add(new AjaxCheckBox("passwordProtected") {
private static final long serialVersionUID = 1L;
@Override
protected void onUpdate(AjaxRequestTarget target) {
AppointmentForm.this.getModelObject().setPasswordProtected(getConvertedInput());
pwd.setEnabled(AppointmentForm.this.getModelObject().isPasswordProtected());
target.add(pwd);
}
});
pwd.setEnabled(getModelObject().isPasswordProtected());
pwd.setOutputMarkupId(true);
add(pwd);
add(cals.setNullValid(true).setLabel(Model.of("calendar")).setOutputMarkupId(true));
groups.setLabel(new ResourceModel("126"));
add(new RequiredTextField<String>("title").setLabel(new ResourceModel("572")));
add(start.setLabel(new ResourceModel("label.start")).setRequired(true)
, end.setLabel(new ResourceModel("label.end")).setRequired(true)
, groom.setLabel(new ResourceModel("406")));
super.onInitialize();
}