diff --git a/src/lib/ConstraintsTable.svelte b/src/lib/ConstraintsTable.svelte
index 0de0be1..777f818 100644
--- a/src/lib/ConstraintsTable.svelte
+++ b/src/lib/ConstraintsTable.svelte
@@ -162,22 +162,41 @@
{/if}
-
{#if exam.constraints && exam.constraints.roomConstraints}
- {#if exam.constraints.roomConstraints.placesWithSocket}
- Plätze mit Steckdosen,
- {/if}
- {#if exam.constraints.roomConstraints.lab}
- Labor,
- {/if}
- {#if exam.constraints.roomConstraints.exahm}
- EXaHM,
- {/if}
- {#if exam.constraints.roomConstraints.seb}
- SafeExamBrowser,
- {/if}
- {/if} |
+
+ {#if exam.constraints && exam.constraints.roomConstraints}
+
+
+ {#if exam.constraints.roomConstraints.allowedRooms && exam.constraints.roomConstraints.allowedRooms.length > 0}
+ {exam.constraints.roomConstraints.allowedRooms},
+ {/if}
+ {#if exam.constraints.roomConstraints.placesWithSocket}
+ Plätze mit Steckdosen,
+ {/if}
+ {#if exam.constraints.roomConstraints.lab}
+ Labor,
+ {/if}
+ {#if exam.constraints.roomConstraints.exahm}
+ EXaHM,
+ {/if}
+ {#if exam.constraints.roomConstraints.seb}
+ SafeExamBrowser,
+ {/if}
+
+ {#if exam.constraints.roomConstraints.kdpJiraURL}
+
+
+
+ {/if}
+
+ {/if}
+ |
{/each}
diff --git a/src/routes/exam/constraints/+page.server.js b/src/routes/exam/constraints/+page.server.js
index 0934f44..7e6f4bc 100644
--- a/src/routes/exam/constraints/+page.server.js
+++ b/src/routes/exam/constraints/+page.server.js
@@ -26,10 +26,14 @@ export async function load({ params }) {
possibleDays
sameSlot
roomConstraints {
+ allowedRooms
placesWithSocket
lab
exahm
seb
+ kdpJiraURL
+ maxStudents
+ comments
}
}
}
diff --git a/src/routes/exam/constraints/[code=integer]/+page.server.js b/src/routes/exam/constraints/[code=integer]/+page.server.js
index 85cb95a..1bb8f3a 100644
--- a/src/routes/exam/constraints/[code=integer]/+page.server.js
+++ b/src/routes/exam/constraints/[code=integer]/+page.server.js
@@ -32,6 +32,7 @@ export async function load({ params }) {
possibleDays
sameSlot
roomConstraints {
+ allowedRooms
placesWithSocket
lab
exahm
@@ -90,10 +91,28 @@ export async function load({ params }) {
const semesterData = await request(env.PLEXAMS_SERVER, semesterQuery);
+ const roomsQuery = gql`
+ query {
+ rooms {
+ name
+ seats
+ handicap
+ lab
+ placesWithSocket
+ needsRequest
+ exahm
+ seb
+ }
+ }
+ `;
+
+ const roomsData = await request(env.PLEXAMS_SERVER, roomsQuery);
+
return {
code: params.code,
exam: dataE.zpaExam,
constraints: dataC.constraintForAncode,
- semesterConfig: semesterData.semesterConfig
+ semesterConfig: semesterData.semesterConfig,
+ rooms: roomsData.rooms
};
}
diff --git a/src/routes/exam/constraints/[code=integer]/+page.svelte b/src/routes/exam/constraints/[code=integer]/+page.svelte
index 78465b7..1c57ef2 100644
--- a/src/routes/exam/constraints/[code=integer]/+page.svelte
+++ b/src/routes/exam/constraints/[code=integer]/+page.svelte
@@ -5,6 +5,7 @@
let constraints = data.constraints;
let exam = data.exam;
let semesterConfig = data.semesterConfig;
+ let rooms = data.rooms;
let days = semesterConfig.days.map((day) => {
return new Date(day.date).toLocaleDateString('de-DE', {
@@ -18,6 +19,7 @@
let constraintsInput = {
notPlannedByMe: false,
online: false,
+ allowedRooms: [],
placesWithSocket: false,
lab: false,
seb: false,
@@ -32,6 +34,7 @@
constraintsInput.notPlannedByMe = constraints.notPlannedByMe;
constraintsInput.online = constraints.online;
if (constraints.roomConstraints) {
+ constraintsInput.allowedRooms = constraints.roomConstraints.allowedRooms || [];
constraintsInput.placesWithSocket = constraints.roomConstraints.placesWithSocket;
constraintsInput.lab = constraints.roomConstraints.lab;
constraintsInput.seb = constraints.roomConstraints.seb;
@@ -171,6 +174,7 @@