diff --git a/database/10_topicTables.sql b/database/10_topicTables.sql
index d0ec4cf8..dfe2cb8d 100644
--- a/database/10_topicTables.sql
+++ b/database/10_topicTables.sql
@@ -4,7 +4,8 @@ CREATE TABLE IF NOT EXISTS sentencetopics (
sentence_id BIGINT,
topicinstance_id BIGINT, -- refers to topicvaluebase.id
topiclabel VARCHAR(255), -- refers to topicvaluebase.value
- thetast DOUBLE PRECISION
+ thetast DOUBLE PRECISION,
+ model_id BIGINT
);
CREATE TABLE IF NOT EXISTS documenttopicsraw (
document_id BIGINT,
diff --git a/docker-compose.yaml b/docker-compose.yaml
index c8b383ab..97e1468a 100644
--- a/docker-compose.yaml
+++ b/docker-compose.yaml
@@ -98,6 +98,7 @@ services:
- app_net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
+ start_period: 5s
interval: 5s
timeout: 5s
start_interval: 1s
diff --git a/uce.portal/resources/templates/corpus/components/documents.ftl b/uce.portal/resources/templates/corpus/components/documents.ftl
index 0f5afd33..5c9080b9 100644
--- a/uce.portal/resources/templates/corpus/components/documents.ftl
+++ b/uce.portal/resources/templates/corpus/components/documents.ftl
@@ -3,6 +3,50 @@
<#assign searchId = "">
<#include '*/search/components/documentCardContent.ftl' >
+
+
+
+
+
+
+
-#list>
\ No newline at end of file
+#list>
+
+
\ No newline at end of file
diff --git a/uce.portal/resources/templates/corpus/corpusInspector.ftl b/uce.portal/resources/templates/corpus/corpusInspector.ftl
index 484c6790..e453b716 100644
--- a/uce.portal/resources/templates/corpus/corpusInspector.ftl
+++ b/uce.portal/resources/templates/corpus/corpusInspector.ftl
@@ -17,6 +17,27 @@
+
+
+ Upload documents
+
+
+
+ Delete this corpus
+
+
diff --git a/uce.portal/resources/templates/css/corpus-inspector.css b/uce.portal/resources/templates/css/corpus-inspector.css
index e3d5367b..fae4b47b 100644
--- a/uce.portal/resources/templates/css/corpus-inspector.css
+++ b/uce.portal/resources/templates/css/corpus-inspector.css
@@ -84,4 +84,13 @@
width: 100%;
border-bottom: lightgray 1px solid;
padding:16px;
+}
+.corpus-inspector .annotation-entry:not(:has(input[type="checkbox"]:checked)) > div {
+ background: #e3e3e3;
+ border: 1px solid #cfcfcf !important;
+ border-radius: 6px;
+}
+
+.corpus-inspector .annotation-entry:not(:has(input[type="checkbox"]:checked)) > div label {
+ color: #666;
}
\ No newline at end of file
diff --git a/uce.portal/resources/templates/css/document-reader.css b/uce.portal/resources/templates/css/document-reader.css
index 1e6c42f5..ae60e0d2 100644
--- a/uce.portal/resources/templates/css/document-reader.css
+++ b/uce.portal/resources/templates/css/document-reader.css
@@ -655,7 +655,9 @@ body {
}
.tab-content .tab-pane.active {
- display: block;
+ display: flex;
+ flex-direction: column;
+ height: calc(100vh - 50px);
}
.side-bar.visualization-expanded {
width: 150vw !important;
@@ -665,7 +667,7 @@ body {
.tab-pane .visualization-wrapper {
display: flex;
flex-direction: column;
- height: 100%;
+ flex: 1;
position: relative;
}
.visualization-wrapper .visualization-content {
@@ -710,15 +712,16 @@ body {
/* Bottom Navigation */
.tab-pane .viz-bottom-nav {
- position: fixed;
- right: 0%;
- bottom: 30px;
- transform: translateX(-50%);
- width: auto;
- min-width: 320px;
- max-width: 200vw;
+ position: absolute;
+ bottom: 80px;
+ left: 16px;
+ width: max-content;
+ max-width: calc(100% - 32px);
+ align-self: flex-end;
display: flex;
- justify-content: space-around;
+ justify-content: center;
+ gap: 10px;
+ overflow: visible;
border-radius: 24px;
box-shadow: 0 4px 24px rgba(0,0,0,0.12);
background: #fff;
@@ -776,7 +779,7 @@ body {
outline: none;
}
-#vp-3, #vp-4, #vp-5, #vp-2, #vp-1 {
+#vp-4, #vp-5, #vp-2, #vp-1, #vp-6 {
display: flex;
align-items: center;
justify-content: center;
@@ -784,8 +787,20 @@ body {
overflow: hidden;
position: relative;
}
+#vp-3 {
+ display: flex;
+ flex-direction: column;
+ height: 100%;
+}
+#vp-3 > div[id$="-body"] {
+ flex: 1;
+}
+#vp-3 > .d-flex {
+ width: 100%;
+ padding: 0;
+}
.key-topic-settings-panel {
position: absolute;
top: 160px;
@@ -951,6 +966,7 @@ body {
border-radius: 4px;
cursor: pointer;
padding: 0;
+}
.paragraph .paragraph-header {
border-radius: 16px;
@@ -964,5 +980,77 @@ body {
background-color: white;
color: var(--prime);
border: 1px solid var(--prime);
+}
+
+ /* --- Dropdown Navigation Erweiterung (Hover) --- */
+ .tab-pane .viz-bottom-nav.viz-dropdown-nav{
+ justify-content: flex-start;
+ overflow: visible;
+ gap: 10px;
+ overflow: visible; /* wichtig, damit Menüs nicht abgeschnitten werden */
+ }
+
+ .tab-pane .viz-nav-group{
+ position: relative;
+ }
+
+ /* Parent-Buttons bleiben optisch wie .viz-nav-btn */
+ .tab-pane .viz-nav-parent{
+ width: auto; /* nicht auf 100% ziehen, sonst werden Gruppen riesig */
+ padding: 8px 14px;
+ display: inline-flex;
+ align-items: center;
+ gap: 8px;
+ }
+
+ /* Dropdown-Menü */
+ .tab-pane .viz-nav-menu{
+ display: none;
+ position: absolute;
+ left: 0;
+ bottom: calc(100% + 10px); /* klappt nach oben auf */
+ min-width: 240px;
+ background: #fff;
+ border: 1px solid #e0e0e0;
+ border-radius: 14px;
+ box-shadow: 0 10px 25px rgba(0,0,0,0.12);
+ padding: 6px;
+ z-index: 9999;
+ }
+
+ /* Öffnen per Hover */
+ .tab-pane .viz-nav-group:hover .viz-nav-menu{
+ display: block;
+ }
+
+ /* Menü-Items */
+ .tab-pane .viz-nav-item{
+ display: block;
+ padding: 8px 10px;
+ border-radius: 10px;
+ text-decoration: none;
+ color: #555;
+ font-weight: 600;
+ cursor: pointer;
+ white-space: nowrap;
+ }
+
+ .tab-pane .viz-nav-item:hover{
+ background: rgba(0,0,0,0.06);
+ }
+
+ /* Optional: Disabled */
+ .tab-pane .viz-nav-item.viz-disabled{
+ opacity: 0.6;
+ cursor: not-allowed;
+ }
-}
\ No newline at end of file
+ /* Optional: kleiner “Puffer”, damit Menü nicht sofort schließt */
+ .tab-pane .viz-nav-menu::before{
+ content: "";
+ position: absolute;
+ left: 0;
+ right: 0;
+ bottom: -10px;
+ height: 10px;
+ }
\ No newline at end of file
diff --git a/uce.portal/resources/templates/css/site.css b/uce.portal/resources/templates/css/site.css
index c4edeeb0..1e189c9f 100644
--- a/uce.portal/resources/templates/css/site.css
+++ b/uce.portal/resources/templates/css/site.css
@@ -1147,6 +1147,13 @@ nav .selected-nav-btn.text::before {
border-color: var(--prime) !important;
}
+/* lighter blue for already checked checkboxes/flags (Import Modal) */
+.custom-control-input:checked:disabled ~ .custom-control-label::before {
+ background-color: #6da2bc !important;
+ border-color: #6da2bc !important;
+ opacity: 1 !important;
+}
+
/*Custom button switches */
/* UCE Map styles */
@@ -1240,3 +1247,27 @@ nav .selected-nav-btn.text::before {
}
/* UCE Map styles end */
+
+/* Import Loading Bar Styles */
+#importProgressWrapper{
+ display: none;
+ position: fixed;
+ bottom: 20px;
+ right: 20px;
+ width: 300px;
+ z-index: 1050;
+}
+
+#importProgressWrapper:hover #allImportsList{
+ display: block !important;
+}
+
+#allImportsList{
+ display: none;
+ position: absolute;
+ bottom: 100%;
+ right: 0;
+ width: 300px;
+ max-height: 400px;
+ overflow-y: auto;
+}
diff --git a/uce.portal/resources/templates/index.ftl b/uce.portal/resources/templates/index.ftl
index 4523a6ac..9793ce68 100644
--- a/uce.portal/resources/templates/index.ftl
+++ b/uce.portal/resources/templates/index.ftl
@@ -221,6 +221,7 @@
#if>
+
@@ -503,6 +504,23 @@
+<#--Import Loading Box -->
+
+