diff --git a/src/main/java/org/olat/course/nodes/ViteroCourseNode.java b/src/main/java/org/olat/course/nodes/ViteroCourseNode.java index 8f3090726c3dd7d50af42ce0224ee545c7aa165f..c23586faed430605577b56a54e00bbe3311d358a 100644 --- a/src/main/java/org/olat/course/nodes/ViteroCourseNode.java +++ b/src/main/java/org/olat/course/nodes/ViteroCourseNode.java @@ -42,7 +42,6 @@ import org.olat.course.editor.NodeEditController; import org.olat.course.editor.StatusDescription; import org.olat.course.nodes.vitero.ViteroEditController; import org.olat.course.nodes.vitero.ViteroPeekViewController; -import org.olat.course.nodes.vitero.ViteroRunController; import org.olat.course.run.navigation.NodeRunConstructionResult; import org.olat.course.run.userview.NodeEvaluation; import org.olat.course.run.userview.UserCourseEnvironment; @@ -99,7 +98,7 @@ public class ViteroCourseNode extends AbstractAccessableCourseNode { Controller runCtr; Roles roles = ureq.getUserSession().getRoles(); if (roles.isGuestOnly()) { - Translator trans = Util.createPackageTranslator(ViteroRunController.class, ureq.getLocale()); + Translator trans = Util.createPackageTranslator(ViteroPeekViewController.class, ureq.getLocale()); String title = trans.translate("guestnoaccess.title"); String message = trans.translate("guestnoaccess.message"); runCtr = MessageUIFactory.createInfoMessage(ureq, wControl, title, message); @@ -124,7 +123,7 @@ public class ViteroCourseNode extends AbstractAccessableCourseNode { Long resourceId = userCourseEnv.getCourseEnvironment().getCourseResourceableId(); OLATResourceable ores = OresHelper.createOLATResourceableInstance(CourseModule.class, resourceId); String courseTitle = userCourseEnv.getCourseEnvironment().getCourseTitle(); - runCtr = new ViteroBookingsRunController(ureq, wControl, null, ores, courseTitle, moderator); + runCtr = new ViteroBookingsRunController(ureq, wControl, null, ores, getIdent(), courseTitle, moderator); } Controller controller = TitledWrapperHelper.getWrapper(ureq, wControl, runCtr, this, "o_vitero_icon"); return new NodeRunConstructionResult(controller); @@ -132,7 +131,7 @@ public class ViteroCourseNode extends AbstractAccessableCourseNode { @Override public Controller createPeekViewRunController(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, NodeEvaluation ne) { - return new ViteroPeekViewController(ureq, wControl, userCourseEnv); + return new ViteroPeekViewController(ureq, wControl, userCourseEnv, getIdent()); } @Override @@ -165,6 +164,6 @@ public class ViteroCourseNode extends AbstractAccessableCourseNode { ViteroManager provider = (ViteroManager)CoreSpringFactory.getBean("viteroManager"); // remove meeting OLATResourceable ores = OresHelper.createOLATResourceableInstance(course.getResourceableTypeName(), course.getResourceableId()); - provider.deleteAll(null, ores); + provider.deleteAll(null, ores, getIdent()); } } \ No newline at end of file diff --git a/src/main/java/org/olat/course/nodes/vitero/ViteroEditController.java b/src/main/java/org/olat/course/nodes/vitero/ViteroEditController.java index 18b6e843b14bb5f23a7c9e43996175a644939da5..eca8d698bc265404768e1d75525af66830fd41c3 100644 --- a/src/main/java/org/olat/course/nodes/vitero/ViteroEditController.java +++ b/src/main/java/org/olat/course/nodes/vitero/ViteroEditController.java @@ -74,7 +74,7 @@ public class ViteroEditController extends ActivateableTabbableDefaultController listenTo(accessibilityCondContr); OLATResourceable ores = OresHelper.createOLATResourceableInstance(course.getResourceableTypeName(), course.getResourceableId()); - editForm = new ViteroBookingsEditController(ureq, wControl, null, ores, course.getCourseTitle()); + editForm = new ViteroBookingsEditController(ureq, wControl, null, ores, courseNode.getIdent(), course.getCourseTitle()); listenTo(editForm); editVc = createVelocityContainer("edit"); diff --git a/src/main/java/org/olat/course/nodes/vitero/ViteroPeekViewController.java b/src/main/java/org/olat/course/nodes/vitero/ViteroPeekViewController.java index 95c4e28923616ec86ca62201bcf429006601aa6c..b553ff3df28ce878f9002d5b284c119cd668a006 100644 --- a/src/main/java/org/olat/course/nodes/vitero/ViteroPeekViewController.java +++ b/src/main/java/org/olat/course/nodes/vitero/ViteroPeekViewController.java @@ -54,7 +54,8 @@ import org.olat.modules.vitero.ui.ViteroBookingDataModel; public class ViteroPeekViewController extends BasicController { - public ViteroPeekViewController(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv) { + public ViteroPeekViewController(UserRequest ureq, WindowControl wControl, + UserCourseEnvironment userCourseEnv, String subIdentifier) { super(ureq, wControl); ViteroManager viteroManager = (ViteroManager)CoreSpringFactory.getBean("viteroManager"); @@ -63,7 +64,7 @@ public class ViteroPeekViewController extends BasicController { List<ViteroBooking> bookings; try { - bookings = viteroManager.getBookings(null, ores); + bookings = viteroManager.getBookings(null, ores, subIdentifier); List<ViteroBooking> myBookings = viteroManager.getBookingInFutures(getIdentity()); FilterBookings.filterMyFutureBookings(bookings, myBookings); Collections.sort(bookings, new StartBookingComparator()); diff --git a/src/main/java/org/olat/course/nodes/vitero/ViteroRunController.java b/src/main/java/org/olat/course/nodes/vitero/ViteroRunController.java deleted file mode 100644 index df336929eba2e32f9e0ddffb118e464a726c237b..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/course/nodes/vitero/ViteroRunController.java +++ /dev/null @@ -1,61 +0,0 @@ -/** - * <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> - * 12.10.2011 by frentix GmbH, http://www.frentix.com - * <p> - */ -package org.olat.course.nodes.vitero; - -import org.olat.core.gui.UserRequest; -import org.olat.core.gui.components.Component; -import org.olat.core.gui.control.Event; -import org.olat.core.gui.control.WindowControl; -import org.olat.core.gui.control.controller.BasicController; -import org.olat.core.id.OLATResourceable; -import org.olat.modules.vitero.ui.ViteroBookingsRunController; - -/** - * - * Description:<br> - * - * <P> - * Initial Date: 6 oct. 2011 <br> - * - * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com - */ -public class ViteroRunController extends BasicController { - - private final ViteroBookingsRunController bookingsController; - - public ViteroRunController(UserRequest ureq, WindowControl wControl, OLATResourceable ores) { - super(ureq, wControl); - - bookingsController = new ViteroBookingsRunController(ureq, wControl, null, ores, "Test", false); - listenTo(bookingsController); - - putInitialPanel(bookingsController.getInitialComponent()); - } - - @Override - protected void event(UserRequest ureq, Component source, Event event) { - // nothing to do - } - - @Override - protected void doDispose() { - // nothing to do - } -} \ No newline at end of file diff --git a/src/main/java/org/olat/modules/vitero/manager/ViteroManager.java b/src/main/java/org/olat/modules/vitero/manager/ViteroManager.java index 874f597c7d170b59edee9cc57770a6acac815480..8130939f0fff6677b51120fc0aee70301f6b021a 100644 --- a/src/main/java/org/olat/modules/vitero/manager/ViteroManager.java +++ b/src/main/java/org/olat/modules/vitero/manager/ViteroManager.java @@ -962,7 +962,7 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { return booking; } - public ViteroStatus createBooking(BusinessGroup group, OLATResourceable ores, ViteroBooking vBooking) + public ViteroStatus createBooking(BusinessGroup group, OLATResourceable ores, String subIdentifier, ViteroBooking vBooking) throws VmsNotAvailableException { Bookingtype booking = getBookingById(vBooking.getBookingId()); if(booking != null) { @@ -1022,7 +1022,7 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { return new ViteroStatus(ErrorCode.moduleCollision); } vBooking.setBookingId(bookingId); - getOrCreateProperty(group, ores, vBooking); + getOrCreateProperty(group, ores, subIdentifier, vBooking); return new ViteroStatus(); } catch(AxisFault f) { ErrorCode code = handleAxisFault(f); @@ -1049,7 +1049,7 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { * @return * @throws VmsNotAvailableException */ - public ViteroBooking updateBooking(BusinessGroup group, OLATResourceable ores, ViteroBooking vBooking) + public ViteroBooking updateBooking(BusinessGroup group, OLATResourceable ores, String subIdentifier, ViteroBooking vBooking) throws VmsNotAvailableException { Bookingtype bookingType = getBookingById(vBooking.getBookingId()); if(bookingType == null) { @@ -1061,7 +1061,7 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { //set the vms values update(vBooking, booking); //update the property - updateProperty(group, ores, vBooking); + updateProperty(group, ores, subIdentifier, vBooking); return vBooking; } @@ -1097,7 +1097,7 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { } } - public void deleteAll(BusinessGroup group, OLATResourceable ores) { + public void deleteAll(BusinessGroup group, OLATResourceable ores, String subIdentifier) { try { List<Property> properties = propertyManager.listProperties(null, group, ores, VMS_CATEGORY, null); for(Property property:properties) { @@ -1107,15 +1107,19 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { } } catch (VmsNotAvailableException e) { logError("", e); - markAsZombie(group, ores); + markAsZombie(group, ores, subIdentifier); } } - private final void markAsZombie(BusinessGroup group, OLATResourceable ores) { + private final void markAsZombie(BusinessGroup group, OLATResourceable ores, String subIdentifier) { List<Property> properties = propertyManager.listProperties(null, group, ores, VMS_CATEGORY, null); for(Property property:properties) { - property.setName(VMS_CATEGORY_ZOMBIE); - propertyManager.updateProperty(property); + String propIdentifier = property.getStringValue(); + if((subIdentifier == null && propIdentifier == null) + || (subIdentifier != null && subIdentifier.equals(propIdentifier))) { + property.setName(VMS_CATEGORY_ZOMBIE); + propertyManager.updateProperty(property); + } } } @@ -1152,19 +1156,25 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { * @param ores The OLAT resourceable (of the course) (optional) * @return */ - public List<ViteroBooking> getBookings(BusinessGroup group, OLATResourceable ores) + public List<ViteroBooking> getBookings(BusinessGroup group, OLATResourceable ores, String subIdentifier) throws VmsNotAvailableException { List<Property> properties = propertyManager.listProperties(null, group, ores, VMS_CATEGORY, null); List<ViteroBooking> bookings = new ArrayList<ViteroBooking>(); for(Property property:properties) { - String bookingStr = property.getTextValue(); - ViteroBooking booking = deserializeViteroBooking(bookingStr); - Bookingtype bookingType = getBookingById(booking.getBookingId()); - if(bookingType != null) { - Booking vmsBooking = bookingType.getBooking(); - booking.setProperty(property); - update(booking, vmsBooking); - bookings.add(booking); + String propIdentifier = property.getStringValue(); + if((propIdentifier == null || subIdentifier == null) + || (subIdentifier != null + && (propIdentifier == null || subIdentifier.equals(propIdentifier)) + )) { + String bookingStr = property.getTextValue(); + ViteroBooking booking = deserializeViteroBooking(bookingStr); + Bookingtype bookingType = getBookingById(booking.getBookingId()); + if(bookingType != null) { + Booking vmsBooking = bookingType.getBooking(); + booking.setProperty(property); + update(booking, vmsBooking); + bookings.add(booking); + } } } return bookings; @@ -1298,7 +1308,7 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { SecurityHeader.addAdminSecurityHeader(login, password, licenceWs); LicenceServiceStub.GetModulesForCustomerRequest licenceRequest = new LicenceServiceStub.GetModulesForCustomerRequest(); - licenceRequest.setCustomerid(viteroModule.getCustomerId()); + licenceRequest.setCustomerid(customerId); LicenceServiceStub.GetModulesForCustomerResponse response = licenceWs.getModulesForCustomer(licenceRequest); LicenceServiceStub.Modulestype modules = response.getGetModulesForCustomerResponse(); @@ -1409,24 +1419,24 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { } //Properties - private final Property getProperty(final BusinessGroup group, final OLATResourceable courseResource, final ViteroBooking booking) { + private final Property getProperty(BusinessGroup group, OLATResourceable courseResource, ViteroBooking booking) { String propertyName = Integer.toString(booking.getBookingId()); return propertyManager.findProperty(null, group, courseResource, VMS_CATEGORY, propertyName); } - private final Property getOrCreateProperty(final BusinessGroup group, final OLATResourceable courseResource, final ViteroBooking booking) { + private final Property getOrCreateProperty(BusinessGroup group, OLATResourceable courseResource, String subIdentifier, ViteroBooking booking) { Property property = getProperty(group, courseResource, booking); if(property == null) { - property = createProperty(group, courseResource, booking); + property = createProperty(group, courseResource, subIdentifier, booking); propertyManager.saveProperty(property); } return property; } - private final Property updateProperty(final BusinessGroup group, final OLATResourceable courseResource, ViteroBooking booking) { + private final Property updateProperty(BusinessGroup group, OLATResourceable courseResource, String subIdentifier, ViteroBooking booking) { Property property = getProperty(group, courseResource, booking); if(property == null) { - property = createProperty(group, courseResource, booking); + property = createProperty(group, courseResource, subIdentifier, booking); propertyManager.saveProperty(property); } else { String serialized = serializeViteroBooking(booking); @@ -1436,11 +1446,11 @@ public class ViteroManager extends BasicManager implements UserDataDeletable { return property; } - private final Property createProperty(final BusinessGroup group, final OLATResourceable courseResource, ViteroBooking booking) { + private final Property createProperty(final BusinessGroup group, final OLATResourceable courseResource, String subIdentifier, ViteroBooking booking) { String serialized = serializeViteroBooking(booking); String bookingId = Integer.toString(booking.getBookingId()); Long groupId = new Long(booking.getGroupId()); - return propertyManager.createPropertyInstance(null, group, courseResource, VMS_CATEGORY, bookingId, null, groupId, null, serialized); + return propertyManager.createPropertyInstance(null, group, courseResource, VMS_CATEGORY, bookingId, null, groupId, subIdentifier, serialized); } private final void deleteProperty(ViteroBooking vBooking) { diff --git a/src/main/java/org/olat/modules/vitero/ui/SignColumnDescriptor.java b/src/main/java/org/olat/modules/vitero/ui/SignColumnDescriptor.java index dc01cdd23f9a7eda968eeab8d245cc487f493cc1..0301b89d1bb8017f4f505db7029ac27fa9e5492a 100644 --- a/src/main/java/org/olat/modules/vitero/ui/SignColumnDescriptor.java +++ b/src/main/java/org/olat/modules/vitero/ui/SignColumnDescriptor.java @@ -68,6 +68,7 @@ public class SignColumnDescriptor extends DefaultColumnDescriptor { switch(sign) { case signin: sb.append(translator.translate("signin")); break; case signout: sb.append(translator.translate("signout")); break; + default:{ /*do nothing */} } } } diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroAdminBookingMembersController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroAdminBookingMembersController.java index bc5a1b1aaa3f4dbd4a42b6051e30da457e50a636..a681ced731715b7c7f317a3e7e40fe1371efdaa8 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroAdminBookingMembersController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroAdminBookingMembersController.java @@ -122,7 +122,7 @@ public class ViteroAdminBookingMembersController extends BasicController { int row = e.getRowId(); ViteroUser identity = (ViteroUser)tableCtr.getTableDataModel().getObject(row); if("signout".equals(e.getActionId())) { - signOut(ureq, Collections.singletonList(identity)); + signOut(Collections.singletonList(identity)); } } else if(event instanceof TableMultiSelectEvent) { TableMultiSelectEvent e = (TableMultiSelectEvent)event; @@ -132,7 +132,7 @@ public class ViteroAdminBookingMembersController extends BasicController { identities.add(identity); } if("signout".equals(e.getAction())) { - signOut(ureq, identities); + signOut(identities); } } @@ -140,7 +140,7 @@ public class ViteroAdminBookingMembersController extends BasicController { super.event(ureq, source, event); } - private void signOut(UserRequest ureq, List<ViteroUser> members) { + private void signOut(List<ViteroUser> members) { try { for(ViteroUser member:members) { if(viteroManager.removeFromRoom(booking, member.getUserId())) { @@ -197,6 +197,7 @@ public class ViteroAdminBookingMembersController extends BasicController { case firstName: return identity.getFirstName(); case lastName: return identity.getLastName(); case email: return identity.getEmail(); + default: {/* do nothing */} } return null; } diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingEditController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingEditController.java index 1f736274a46a1e4620d4c44540aa0cd8fc8840fa..43c385ec9ba7f839dfa77cb7f3b4786b5d2fe3b9 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingEditController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingEditController.java @@ -71,14 +71,17 @@ public class ViteroBookingEditController extends FormBasicController { private final BusinessGroup group; private final OLATResourceable ores; + private final String subIdentifier; private final ViteroBooking booking; private final ViteroManager viteroManager; - public ViteroBookingEditController(UserRequest ureq, WindowControl wControl, BusinessGroup group, OLATResourceable ores, ViteroBooking booking) { + public ViteroBookingEditController(UserRequest ureq, WindowControl wControl, BusinessGroup group, OLATResourceable ores, + String subIdentifier, ViteroBooking booking) { super(ureq, wControl); this.group = group; this.ores = ores; + this.subIdentifier = subIdentifier; this.booking = booking; viteroManager = (ViteroManager)CoreSpringFactory.getBean("viteroManager"); @@ -157,7 +160,7 @@ public class ViteroBookingEditController extends FormBasicController { } private boolean isRoomSizeAvailable(int roomSize) { - String roomSizeStr = Integer.toString(booking.getRoomSize()); + String roomSizeStr = Integer.toString(roomSize); for(int i=roomSizes.length; i-->0; ) { if(roomSizes[i].equals(roomSizeStr)) { return true; @@ -261,7 +264,7 @@ public class ViteroBookingEditController extends FormBasicController { try { if(booking.getBookingId() >= 0) { - ViteroBooking updatedBooking = viteroManager.updateBooking(group, ores, booking); + ViteroBooking updatedBooking = viteroManager.updateBooking(group, ores, subIdentifier, booking); if(updatedBooking != null) { showInfo("booking.ok"); fireEvent(ureq, Event.DONE_EVENT); @@ -269,7 +272,7 @@ public class ViteroBookingEditController extends FormBasicController { showError("error.unkown"); } } else { - ViteroStatus status = viteroManager.createBooking(group, ores, booking); + ViteroStatus status = viteroManager.createBooking(group, ores, subIdentifier, booking); if(status.isOk()) { showInfo("booking.ok"); fireEvent(ureq, Event.DONE_EVENT); diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsAdminController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsAdminController.java index 528c87df923728307f112497b6702348f2aa36fd..3e48b2d6fe377ada7c66dc34874fbc414807c382 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsAdminController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsAdminController.java @@ -128,7 +128,7 @@ public class ViteroBookingsAdminController extends BasicController { } else if(source == dialogCtr) { if (DialogBoxUIFactory.isOkEvent(event)) { ViteroBooking booking = (ViteroBooking)dialogCtr.getUserObject(); - deleteBooking(ureq, booking); + deleteBooking(booking); } } else if (source == cmc ) { removeAsListenerAndDispose(infoController); @@ -180,7 +180,7 @@ public class ViteroBookingsAdminController extends BasicController { } } - protected void deleteBooking(UserRequest ureq, ViteroBooking booking) { + protected void deleteBooking(ViteroBooking booking) { try { if( viteroManager.deleteBooking(booking)) { showInfo("delete.ok"); @@ -202,7 +202,7 @@ public class ViteroBookingsAdminController extends BasicController { protected void reloadModel() { try { - List<ViteroBooking> bookings = viteroManager.getBookings(null, null); + List<ViteroBooking> bookings = viteroManager.getBookings(null, null, null); ViteroBookingDataModel tableModel = new ViteroBookingDataModel(bookings); tableCtr.setTableDataModel(tableModel); } catch (VmsNotAvailableException e) { diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsController.java index d00c4507c029f4be062b4d7baf2265d7154ace57..43b18956f61894c76c175034a3db9ec5a8effecc 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsController.java @@ -62,14 +62,16 @@ public class ViteroBookingsController extends BasicController { private final BusinessGroup group; private final OLATResourceable ores; + private final String subIdentifier; private final ViteroManager viteroManager; public ViteroBookingsController(UserRequest ureq, WindowControl wControl, - BusinessGroup group, OLATResourceable ores) { + BusinessGroup group, OLATResourceable ores, String subIdentifier) { super(ureq, wControl); this.ores = ores; this.group = group; + this.subIdentifier = subIdentifier; viteroManager = (ViteroManager) CoreSpringFactory.getBean("viteroManager"); TableGuiConfiguration tableConfig = new TableGuiConfiguration(); @@ -136,7 +138,7 @@ public class ViteroBookingsController extends BasicController { protected void loadModel() { try { - List<ViteroBooking> bookings = viteroManager.getBookings(group, ores); + List<ViteroBooking> bookings = viteroManager.getBookings(group, ores, subIdentifier); List<ViteroBooking> myBookings = viteroManager.getBookingInFutures(getIdentity()); FilterBookings.filterMyFutureBookings(bookings, myBookings); Collections.sort(bookings, new StartBookingComparator()); diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsEditController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsEditController.java index 2225e4b7e8eef4fe0f8c1ab9e73d44ec5f277a1c..c7d846794e634cd42668c19ce733f14725489ea5 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsEditController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsEditController.java @@ -74,13 +74,16 @@ public class ViteroBookingsEditController extends FormBasicController { private final String resourceName; private final BusinessGroup group; private final OLATResourceable ores; + private final String subIdentifier; private final ViteroManager viteroManager; - public ViteroBookingsEditController(UserRequest ureq, WindowControl wControl, BusinessGroup group, OLATResourceable ores, String resourceName) { + public ViteroBookingsEditController(UserRequest ureq, WindowControl wControl, BusinessGroup group, OLATResourceable ores, + String subIdentifier, String resourceName) { super(ureq, wControl, "edit"); this.group = group; this.ores = ores; + this.subIdentifier = subIdentifier; this.resourceName = resourceName; viteroManager = (ViteroManager)CoreSpringFactory.getBean("viteroManager"); @@ -105,7 +108,7 @@ public class ViteroBookingsEditController extends FormBasicController { protected void reloadModel() { try { bookingDisplays.clear(); - List<ViteroBooking> bookings = viteroManager.getBookings(group, ores); + List<ViteroBooking> bookings = viteroManager.getBookings(group, ores, subIdentifier); int i=0; for(ViteroBooking booking:bookings) { BookingDisplay display = new BookingDisplay(booking); @@ -172,7 +175,7 @@ public class ViteroBookingsEditController extends FormBasicController { } else if(source == dialogCtr) { if (DialogBoxUIFactory.isOkEvent(event)) { ViteroBooking booking = (ViteroBooking)dialogCtr.getUserObject(); - deleteBooking(ureq, booking); + deleteBooking(booking); } } else if (source == warningGroupCtr) { removeAsListenerAndDispose(warningGroupCtr); @@ -221,7 +224,7 @@ public class ViteroBookingsEditController extends FormBasicController { } } - protected void deleteBooking(UserRequest ureq, ViteroBooking booking) { + protected void deleteBooking(ViteroBooking booking) { try { if(viteroManager.deleteBooking(booking)) { showInfo("delete.ok"); @@ -253,7 +256,7 @@ public class ViteroBookingsEditController extends FormBasicController { protected void editBooking(UserRequest ureq, ViteroBooking viteroBooking) { removeAsListenerAndDispose(bookingController); - bookingController = new ViteroBookingEditController(ureq, getWindowControl(), group, ores, viteroBooking); + bookingController = new ViteroBookingEditController(ureq, getWindowControl(), group, ores, subIdentifier, viteroBooking); listenTo(bookingController); removeAsListenerAndDispose(cmc); diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsRunController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsRunController.java index 04afd75c5061874e242cf20d41126fa6aacd6f7a..a4b4ac571ac541ad689b33011c9d441ff7d3a2d9 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsRunController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroBookingsRunController.java @@ -54,14 +54,16 @@ public class ViteroBookingsRunController extends BasicController { private final BusinessGroup group; private final OLATResourceable ores; + private final String subIdentifier; private final String resourceName; public ViteroBookingsRunController(UserRequest ureq, WindowControl wControl, BusinessGroup group, OLATResourceable ores, - String resourceName, boolean admin) { + String subIdentifier, String resourceName, boolean admin) { super(ureq, wControl); this.group = group; this.ores = ores; + this.subIdentifier = subIdentifier; this.resourceName = resourceName; if(ureq.getUserSession().getRoles().isGuestOnly()) { @@ -80,7 +82,7 @@ public class ViteroBookingsRunController extends BasicController { putInitialPanel(mainVC); } else { - bookingsController = new ViteroBookingsController(ureq, wControl,group, ores); + bookingsController = new ViteroBookingsController(ureq, wControl,group, ores, subIdentifier); listenTo(bookingsController); putInitialPanel(bookingsController.getInitialComponent()); } @@ -109,7 +111,7 @@ public class ViteroBookingsRunController extends BasicController { private void doOpenBookings(UserRequest ureq) { if(bookingsController == null) { - bookingsController = new ViteroBookingsController(ureq, getWindowControl(), group, ores); + bookingsController = new ViteroBookingsController(ureq, getWindowControl(), group, ores, subIdentifier); listenTo(bookingsController); } mainVC.put("segmentCmp", bookingsController.getInitialComponent()); @@ -117,7 +119,7 @@ public class ViteroBookingsRunController extends BasicController { private void doOpenAdmin(UserRequest ureq) { if(adminController == null) { - adminController = new ViteroBookingsEditController(ureq, getWindowControl(), group, ores, resourceName); + adminController = new ViteroBookingsEditController(ureq, getWindowControl(), group, ores, subIdentifier, resourceName); listenTo(adminController); } mainVC.put("segmentCmp", adminController.getInitialComponent()); diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroConfigurationController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroConfigurationController.java index 407979a20753133bc74c69e1e6c9999bfb49e34f..b00e8a54379d8337b6b2b3251ce9422dd5efcb89 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroConfigurationController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroConfigurationController.java @@ -243,7 +243,7 @@ public class ViteroConfigurationController extends FormBasicController { viteroModule.setEnabled(enabled); } else if(source == checkLink) { if(validateURL()) { - checkConnection(ureq); + checkConnection(); } } else if(source == checkUserLink) { if(validateURL()) { @@ -271,7 +271,7 @@ public class ViteroConfigurationController extends FormBasicController { } } - protected boolean checkConnection(UserRequest ureq) { + protected boolean checkConnection() { String url = urlEl.getValue(); String login = loginEl.getValue(); String password = passwordEl.getValue(); diff --git a/src/main/java/org/olat/modules/vitero/ui/ViteroUserToGroupController.java b/src/main/java/org/olat/modules/vitero/ui/ViteroUserToGroupController.java index 3688058ba1b3d9b62d77e1461014e419a4ec256f..73e97ccd39c3f3c0ebba9cca255356b03a625ead 100644 --- a/src/main/java/org/olat/modules/vitero/ui/ViteroUserToGroupController.java +++ b/src/main/java/org/olat/modules/vitero/ui/ViteroUserToGroupController.java @@ -149,9 +149,9 @@ public class ViteroUserToGroupController extends BasicController { int row = e.getRowId(); Identity identity = (Identity)tableCtr.getTableDataModel().getObject(row); if("signin".equals(e.getActionId())) { - signIn(ureq, Collections.singletonList(identity)); + signIn(Collections.singletonList(identity)); } else if("signout".equals(e.getActionId())) { - signOut(ureq, Collections.singletonList(identity)); + signOut(Collections.singletonList(identity)); } } else if(event instanceof TableMultiSelectEvent) { TableMultiSelectEvent e = (TableMultiSelectEvent)event; @@ -161,9 +161,9 @@ public class ViteroUserToGroupController extends BasicController { identities.add(identity); } if("signin".equals(e.getAction())) { - signIn(ureq, identities); + signIn(identities); } else if("signout".equals(e.getAction())) { - signOut(ureq, identities); + signOut(identities); } else if("reload".equals(e.getAction())) { loadModel(); } @@ -173,7 +173,7 @@ public class ViteroUserToGroupController extends BasicController { super.event(ureq, source, event); } - private void signIn(UserRequest ureq, List<Identity> identities) { + private void signIn(List<Identity> identities) { try { ResourceMembers members = ((UserToGroupDataModel)tableCtr.getTableDataModel()).getMembers(); @@ -194,7 +194,7 @@ public class ViteroUserToGroupController extends BasicController { } } - private void signOut(UserRequest ureq, List<Identity> identities) { + private void signOut(List<Identity> identities) { try { for(Identity identity:identities) { if(viteroManager.removeFromRoom(booking, identity)) {