diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleteFormEvent.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleteFormEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..aacf143beefb8e2b4b3aeaee828b3bd97014ccf8 --- /dev/null +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleteFormEvent.java @@ -0,0 +1,44 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.core.gui.components.form.flexible.impl.elements; + +import org.olat.core.gui.components.form.flexible.FormItem; +import org.olat.core.gui.components.form.flexible.impl.FormEvent; + +/** + * + * Initial date: 12 août 2020<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class AutoCompleteFormEvent extends FormEvent { + + private static final long serialVersionUID = -2589906437153168517L; + private final String key; + + public AutoCompleteFormEvent(String command, FormItem source, String key) { + super(command, source); + this.key = key; + } + + public String getKey() { + return key; + } +} diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterComponent.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterComponent.java index 9965b5bdd06368a7be34dfa5bbc2a44269f15c57..74e4294c1ce6297b15a1d67b31e0803c4421f156 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterComponent.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterComponent.java @@ -63,6 +63,7 @@ public class AutoCompleterComponent extends FormBaseComponentImpl { autoCompleter.setKey(key); autoCompleter.setValue(value); fireEvent(ureq, new AutoCompleteEvent(AutoCompleteEvent.SELECT_EVENT, key)); + autoCompleter.dispatchFormRequest(ureq); } } diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterImpl.java index 78c72f3835d3a50ca296d9d469bbc1c0920baaf1..b9af4a44c00212223515a81aef502e56c4646fde 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterImpl.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AutoCompleterImpl.java @@ -96,14 +96,27 @@ public class AutoCompleterImpl extends AbstractTextElement implements AutoComple } } + @Override public int getMinLength() { return minLength; } + @Override public void setMinLength(int minLength) { this.minLength = minLength; } + @Override + public void dispatchFormRequest(UserRequest ureq) { + String cmd = ureq.getParameter("cid"); + if("select".equals(cmd)) { + String uKey = ureq.getParameter("key"); + setKey(uKey); + setValue(ureq.getParameter("value")); + getRootForm().fireFormEvent(ureq, new AutoCompleteFormEvent(AutoCompleteEvent.SELECT_EVENT, this, uKey)); + } + } + @Override public void evalFormRequest(UserRequest ureq) { String paramId = component.getFormDispatchId(); diff --git a/src/main/java/org/olat/modules/lecture/ui/EditLectureBlockController.java b/src/main/java/org/olat/modules/lecture/ui/EditLectureBlockController.java index aefbe7d9df71f723bfe2d83125652f40b82639ae..e6ff57bcbcc4b5568da69100e9cb1bdf94e81735 100644 --- a/src/main/java/org/olat/modules/lecture/ui/EditLectureBlockController.java +++ b/src/main/java/org/olat/modules/lecture/ui/EditLectureBlockController.java @@ -104,7 +104,6 @@ public class EditLectureBlockController extends FormBasicController { private List<Identity> teachers; private List<GroupBox> groupBox; private String[] teacherKeys; - private String[] teacherValues; private final boolean lectureManagementManaged; private final List<LocationHistory> locations; @@ -205,7 +204,7 @@ public class EditLectureBlockController extends FormBasicController { } allPossibleTeachers = new ArrayList<>(new HashSet<>(allPossibleTeachers)); teacherKeys = new String[allPossibleTeachers.size() + 1]; - teacherValues = new String[allPossibleTeachers.size() + 1]; + String[] teacherValues = new String[allPossibleTeachers.size() + 1]; for(int i=allPossibleTeachers.size() + 1; i-->1; ) { Identity coach = allPossibleTeachers.get(i - 1); teacherKeys[i] = coach.getKey().toString(); @@ -396,8 +395,6 @@ public class EditLectureBlockController extends FormBasicController { } lectureBlock.setStartDate(dateEl.getDate()); lectureBlock.setEndDate(dateEl.getSecondDate()); - System.out.println(dateEl.getDate()); - System.out.println(dateEl.getSecondDate()); int plannedLectures = Integer.parseInt(plannedLecturesEl.getSelectedKey()); lectureBlock.setPlannedLecturesNumber(plannedLectures);