Skip to content
Snippets Groups Projects
Commit 7e5103de authored by Jochem de Goede's avatar Jochem de Goede
Browse files

Updated logic for adding and removing rooms for lab create/edit

parent 6e974234
No related branches found
No related tags found
No related merge requests found
......@@ -161,29 +161,19 @@ public class LabController {
}
@RequestMapping(value = "/course/{id}/lab/create", method = RequestMethod.POST, params = {"addRoom"})
public String createAddRoom(@PathVariable("id") Long id, Lab lab, Model model) {
public String createAddRoom(@PathVariable("id") Long id, @RequestParam("roomName") String name, Lab lab, Model model) {
Course course = getCourse(id);
lab.getRooms().add(new Room(""));
lab.setCourse(course);
Iterable<RequestType> requestTypes = requestTypeRepository.findAll();
model.addAttribute("lab", lab);
model.addAttribute("course", course);
model.addAttribute("requesttypes", requestTypes);
return "lab/create";
if (!name.isEmpty()) {
Room room = new Room(name);
roomRepository.save(room);
lab.getRooms().add(room);
}
@RequestMapping(value = "/course/{id}/lab/create", method = RequestMethod.POST, params = {"removeRoom"})
public String createRemoveRoom(@PathVariable("id") Long id, Lab lab, @RequestParam("removeRoom") int assistant, Model model) {
Course course = getCourse(id);
lab.getRooms().remove(assistant);
lab.setCourse(course);
Iterable<RequestType> requestTypes = requestTypeRepository.findAll();
model.addAttribute("lab", lab);
model.addAttribute("rooms", roomRepository.findAll());
model.addAttribute("course", course);
model.addAttribute("requesttypes", requestTypes);
......@@ -232,7 +222,7 @@ public class LabController {
}
@RequestMapping(value = "/lab/{id}", method = RequestMethod.POST, params = {"addRoom"})
public String addRoom(@PathVariable("id") Long id, Lab labData, Model model) {
public String addRoom(@PathVariable("id") Long id, @RequestParam("roomName") String name, Lab labData, Model model) {
Lab lab = labService.getLab(id);
lab.setDirection(labData.getDirection());
......@@ -240,30 +230,11 @@ public class LabController {
lab.setRooms(labData.getRooms());
lab.setAssignments(labData.getAssignments());
lab.setSlotSelectionOpensAt(labData.getSlotSelectionOpensAt());
lab.getRooms().add(new Room(""));
Iterable<RequestType> requestTypes = requestTypeRepository.findAll();
model.addAttribute("lab", lab);
model.addAttribute("course", lab.getCourse());
model.addAttribute("requesttypes", requestTypes);
model.addAttribute("mentorgroups", firstYearMentorGroupRepository.findAll());
return "lab/edit";
if (!name.isEmpty()) {
Room room = new Room(name);
roomRepository.save(room);
lab.getRooms().add(room);
}
@RequestMapping(value = "/lab/{id}", method = RequestMethod.POST, params = {"removeRoom"})
public String removeRoom(@PathVariable("id") Long id,
Lab labData,
@RequestParam("removeRoom") int assistant,
Model model) {
Lab lab = labService.getLab(id);
lab.setDirection(labData.getDirection());
lab.setSlot(labData.getSlot());
lab.setRooms(labData.getRooms());
lab.setAssignments(labData.getAssignments());
lab.setSlotSelectionOpensAt(labData.getSlotSelectionOpensAt());
lab.getRooms().remove(assistant);
Iterable<RequestType> requestTypes = requestTypeRepository.findAll();
model.addAttribute("lab", lab);
......
......@@ -136,7 +136,7 @@
<div class="col-sm-8">
<select multiple="multiple" class="form-control" id="roomSelect" name="rooms">
<th:block th:each="room : ${rooms}">
<option th:value="${room.id}">[[${room.name}]]</option>
<option th:value="${room.id}" th:selected="${lab.hasRoom(room)}">[[${room.name}]]</option>
</th:block>
</select>
</div>
......@@ -145,7 +145,13 @@
<div class="form-group">
<div class="col-sm-offset-2 col-sm-8">
<button type="submit" class="btn btn-secondary" name="addRoom">Add new room</button>
<div class="form-group">
<label>New Room name</label>
<input type="text" name="roomName" class="form-control" placeholder="Room name..." />
</div>
<button type="submit" class="btn btn-success" name="addRoom"><i class="fa fa-plus"></i> Add room
</button>
</div>
</div>
......
......@@ -116,6 +116,11 @@
<div class="form-group">
<div class="col-sm-offset-2 col-sm-8">
<div class="form-group">
<label>New Room name</label>
<input type="text" name="roomName" class="form-control" placeholder="Room name..." />
</div>
<button type="submit" class="btn btn-success" name="addRoom"><i class="fa fa-plus"></i> Add room
</button>
</div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment