From 95fa95fb72d5d4d466229f0b3ff0000c776c8cc5 Mon Sep 17 00:00:00 2001 From: Girik1105 Date: Fri, 24 Oct 2025 13:22:20 -0700 Subject: [PATCH 1/3] [VSPC-281] Fixed external links position --- .../main/webapp/WEB-INF/views/exhibition/module.html | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html b/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html index dcc9d59c3..14482d8b2 100644 --- a/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html +++ b/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html @@ -574,11 +574,11 @@ -
-
External Resources:
-
- - [[${link.getLabel()}]] -
-
+
+
External Resources:
+
- + [[${link.getLabel()}]] +
+
\ No newline at end of file From b41d572d81db136b1edc2cef4405874df1af5c7f Mon Sep 17 00:00:00 2001 From: Girik1105 Date: Wed, 7 Jan 2026 16:28:57 -0700 Subject: [PATCH 2/3] [VSPC-281] Made external links into a sticky sidebar in slides --- .../WEB-INF/views/exhibition/module.html | 30 ++++-- .../resources/extra/Module_1_slideshow_1.css | 93 +++++++++++++++++++ 2 files changed, 117 insertions(+), 6 deletions(-) diff --git a/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html b/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html index 14482d8b2..871db590a 100644 --- a/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html +++ b/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html @@ -126,6 +126,10 @@ elem.msRequestFullscreen(); } $("#Module_1").append('
') + var sidebar = document.querySelector('.external-resources-sidebar'); + if (sidebar) { + sidebar.style.zIndex = '9999'; + } } function exitFullScreen() @@ -133,6 +137,10 @@ $(".exitfullscreen").remove(); $(".imgFullScreen").show(); $("#Module_1").css('overflow-y','visible') + var sidebar = document.querySelector('.external-resources-sidebar'); + if (sidebar) { + sidebar.style.zIndex = '105'; + } if (document.exitFullscreen) { document.exitFullscreen(); } else if (document.webkitExitFullscreen) { /* Safari */ @@ -225,6 +233,22 @@

[[${module.name}]]

+ +
+
External Resources
+ +
+

[[${currentSlideCon.name}]]

@@ -574,11 +598,5 @@
-
-
External Resources:
-
- - [[${link.getLabel()}]] -
-
\ No newline at end of file diff --git a/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css b/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css index 7cb14739d..f0b3ca98b 100644 --- a/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css +++ b/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css @@ -226,4 +226,97 @@ a, a:hover, a:focus { [class*="Group_7_Class"] { width: 98%; } +} + +/* External Resources Sidebar */ +.external-resources-sidebar { + position: fixed; + right: 1%; + top: 20%; + width: 280px; + max-height: 60vh; + background-color: white; + border: 1px solid #C7C7C7; + border-radius: 8px; + box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15); + z-index: 105; + padding: 20px; + overflow-y: auto; + overflow-x: hidden; +} + +.external-resources-title { + margin: 0 0 15px 0; + font-size: 16px; + font-weight: 600; + color: #121212; + border-bottom: 2px solid var(--secondary); + padding-bottom: 8px; +} + +.external-resources-content { + display: flex; + flex-direction: column; + gap: 10px; +} + +.external-resource-item { + margin: 0; + padding: 0; +} + +.external-resource-link { + display: flex; + align-items: center; + padding: 8px 10px; + color: var(--primary); + text-decoration: none; + border-radius: 5px; + font-size: 14px; + line-height: 1.4; + word-wrap: break-word; + transition: all 0.3s ease; +} + +.external-resource-link:hover { + background-color: #F2F2F2; + color: var(--primary); + text-decoration: underline; +} + +/* Scrollbar styling */ +.external-resources-sidebar::-webkit-scrollbar { + width: 6px; +} + +.external-resources-sidebar::-webkit-scrollbar-track { + background: #f1f1f1; + border-radius: 3px; +} + +.external-resources-sidebar::-webkit-scrollbar-thumb { + background: #C7C7C7; + border-radius: 3px; +} + +.external-resources-sidebar::-webkit-scrollbar-thumb:hover { + background: #999; +} + +/* Responsive Design */ +@media only screen and (max-width: 1200px) { + .external-resources-sidebar { + position: static; + width: 57%; + max-height: none; + margin: 30px auto; + right: auto; + top: auto; + } +} + +@media only screen and (max-width: 800px) { + .external-resources-sidebar { + width: 90%; + } } \ No newline at end of file From 1bce23f960e4c3fc3d96e7236b4f05240652249c Mon Sep 17 00:00:00 2001 From: Girik1105 Date: Thu, 12 Feb 2026 09:46:27 -0700 Subject: [PATCH 3/3] [VSPC-281] Added a side button which opens a modal of external links --- .../WEB-INF/views/exhibition/module.html | 52 ++++++++++--- .../resources/extra/Module_1_slideshow_1.css | 73 ++----------------- 2 files changed, 48 insertions(+), 77 deletions(-) diff --git a/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html b/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html index 871db590a..7f38c5767 100644 --- a/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html +++ b/vspace/src/main/webapp/WEB-INF/views/exhibition/module.html @@ -153,10 +153,18 @@ function showModuleMapModal(){ $("#moduleOverviewModal").show(); } - + function closeModal(){ $("#moduleOverviewModal").hide(); } + + function showExternalLinksModal(){ + $("#externalLinksModal").show(); + } + + function closeExternalLinksModal(){ + $("#externalLinksModal").hide(); + } @@ -233,18 +241,38 @@

[[${module.name}]]

- + + + +
-
External Resources
-
-
- - - [[${link.getLabel()}]] - + id="externalLinksModal" class="modal" role="dialog"> +
diff --git a/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css b/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css index f0b3ca98b..aa53c6740 100644 --- a/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css +++ b/vspace/src/main/webapp/resources/extra/Module_1_slideshow_1.css @@ -228,36 +228,16 @@ a, a:hover, a:focus { } } -/* External Resources Sidebar */ -.external-resources-sidebar { - position: fixed; - right: 1%; - top: 20%; - width: 280px; - max-height: 60vh; - background-color: white; - border: 1px solid #C7C7C7; - border-radius: 8px; - box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15); - z-index: 105; - padding: 20px; - overflow-y: auto; - overflow-x: hidden; -} - -.external-resources-title { - margin: 0 0 15px 0; - font-size: 16px; - font-weight: 600; - color: #121212; - border-bottom: 2px solid var(--secondary); - padding-bottom: 8px; +/* External Links Button */ +.external_links_btn_class:hover .tooltiptext { + visibility: visible; } +/* External Links Modal Content */ .external-resources-content { display: flex; flex-direction: column; - gap: 10px; + gap: 5px; } .external-resource-item { @@ -268,55 +248,18 @@ a, a:hover, a:focus { .external-resource-link { display: flex; align-items: center; - padding: 8px 10px; + padding: 10px 12px; color: var(--primary); text-decoration: none; border-radius: 5px; - font-size: 14px; + font-size: 15px; line-height: 1.4; word-wrap: break-word; - transition: all 0.3s ease; + transition: all 0.2s ease; } .external-resource-link:hover { background-color: #F2F2F2; color: var(--primary); text-decoration: underline; -} - -/* Scrollbar styling */ -.external-resources-sidebar::-webkit-scrollbar { - width: 6px; -} - -.external-resources-sidebar::-webkit-scrollbar-track { - background: #f1f1f1; - border-radius: 3px; -} - -.external-resources-sidebar::-webkit-scrollbar-thumb { - background: #C7C7C7; - border-radius: 3px; -} - -.external-resources-sidebar::-webkit-scrollbar-thumb:hover { - background: #999; -} - -/* Responsive Design */ -@media only screen and (max-width: 1200px) { - .external-resources-sidebar { - position: static; - width: 57%; - max-height: none; - margin: 30px auto; - right: auto; - top: auto; - } -} - -@media only screen and (max-width: 800px) { - .external-resources-sidebar { - width: 90%; - } } \ No newline at end of file