protected void formInnerEvent(UserRequest ureq, FormItem source, FormEvent event) {
if (event instanceof FormEvent) {
FormEvent fe = (FormEvent) event;
FormItem sourceItem = fe.getFormItemSource();
if (source instanceof FormLink) {
FormLink link = (FormLink)source;
if (link.getName().equals(ADD_FIELD_LINK)) {
if (customFields.size() < MAX_NBR_CUSTOM_FIELDS) {
// Add new custom-field
int indexNewCustomField = customFields.size();
customFields.add(new CustomField("","",false));
// first remove existing submit button, add it again at the end
flc.remove(formSubmit);
createFormElemente( this.flc, indexNewCustomField, customFields.get(indexNewCustomField));
formSubmit = uifactory.addFormSubmitButton("save", this.flc);
} else {
this.showInfo("info.max.nbr.custom.fields");
}
} else {
int deleteElementNumber = ((Integer)link.getUserObject()).intValue();
getLogger().debug("remove customfield #=" + deleteElementNumber);
CustomField customField = customFields.remove(deleteElementNumber);
initFormElements(flc);
}
}