diff --git a/openapi.yaml b/openapi.yaml
index 2ff21922f..1065a7751 100644
--- a/openapi.yaml
+++ b/openapi.yaml
@@ -418,6 +418,10 @@ paths:
text: 'Boltzmannstr. 3, EG, 85748 Garching b. München'
- name: Sitzplätze
text: '522'
+ extra:
+ header: Genauere Angaben
+ body: "für Prüfungen: 102 in eng, 71 in weit, 49 in corona"
+
calendar_url: 'https://campus.tum.de/tumonline/tvKalender.wSicht?cOrg=19691&cRes=12559&cReadonly=J'
ranking_factors:
rank_combined: 900
@@ -1155,6 +1159,15 @@ components:
text:
type: string
example: 5602.EG.001
+ extra:
+ type: object
+ properties:
+ header:
+ type: string
+ example: Genauere Angaben
+ body:
+ type: string
+ example: "für Prüfungen: 102 in eng, 71 in weit, 49 in corona"
required:
- name
- text
diff --git a/webclient/src/core.js b/webclient/src/core.js
index 457288c07..679378e0e 100644
--- a/webclient/src/core.js
+++ b/webclient/src/core.js
@@ -168,6 +168,10 @@ navigatum = (() => {
error: {
msg: null,
},
+ modal: {
+ header: null,
+ body: null,
+ },
},
methods: {
searchFocus: function () {
diff --git a/webclient/src/index.html b/webclient/src/index.html
index 2fec9d99a..28e9dfe04 100644
--- a/webclient/src/index.html
+++ b/webclient/src/index.html
@@ -325,9 +325,29 @@
+
+
+
+
diff --git a/webclient/src/views/view/view-view.inc b/webclient/src/views/view/view-view.inc
index 364a98812..305c5d3f6 100644
--- a/webclient/src/views/view/view-view.inc
+++ b/webclient/src/views/view/view-view.inc
@@ -396,7 +396,17 @@
{{ prop.name }} |
- {{ prop.text }} |
+ {{ prop.text }}
+
+ |
${{ _.view_view.info_table.links }}$ |
@@ -440,7 +450,27 @@
{{ prop.name }} |
- {{ prop.text }} |
+ {{ prop.text }}
+
+
+
+
+
+
+ {{ prop.extra.body }}
+
+
+
+
+
+ |
${{ _.view_view.info_table.links }}$ |
diff --git a/webclient/src/views/view/view-view.js b/webclient/src/views/view/view-view.js
index d067c0501..7783f4269 100644
--- a/webclient/src/views/view/view-view.js
+++ b/webclient/src/views/view/view-view.js
@@ -146,6 +146,10 @@ navigatum.registerView("view", {
hideImageShowcase: function () {
this.image.slideshow_open = false;
},
+ showPropExtra: function(propExtra) {
+ navigatum.app.modal.header = propExtra.header;
+ navigatum.app.modal.body = propExtra.body;
+ },
// This is called
// - on initial page load
// - when the view is loaded for the first time
diff --git a/webclient/src/views/view/view-view.scss b/webclient/src/views/view/view-view.scss
index 2f3db856b..00ad65a64 100644
--- a/webclient/src/views/view/view-view.scss
+++ b/webclient/src/views/view/view-view.scss
@@ -398,6 +398,22 @@
&:last-child {
padding-left: 10px;
}
+
+ .popover {
+ .card {
+ box-shadow: 0px 0px 6px rgba(106, 106, 106, 0.08);
+ border: .05rem solid #e1e1e1;
+
+ .card-header {
+ font-weight: bold;
+ }
+ }
+
+ svg {
+ margin-left: 5px;
+ margin-bottom: -2px;
+ }
+ }
}
tr {