JS related stuff
parent
f67581056a
commit
76b5d83d8c
2
pom.xml
2
pom.xml
|
|
@ -230,7 +230,7 @@
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>com.github.eirslett</groupId>
|
<groupId>com.github.eirslett</groupId>
|
||||||
<artifactId>frontend-maven-plugin</artifactId>
|
<artifactId>frontend-maven-plugin</artifactId>
|
||||||
<version>1.10.0</version>
|
<version>1.12.1</version>
|
||||||
</plugin>
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>com.github.spotbugs</groupId>
|
<groupId>com.github.spotbugs</groupId>
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -20,8 +20,7 @@
|
||||||
"webpack-cli": "^4.8.0"
|
"webpack-cli": "^4.8.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@librecms/ccm-cms": "7.0.0",
|
"@librecms/ccm-cms-editor": "^7.0.0-SNAPSHOT"
|
||||||
"install": "^0.13.0"
|
|
||||||
},
|
},
|
||||||
"targets": {
|
"targets": {
|
||||||
"main": false
|
"main": false
|
||||||
|
|
|
||||||
|
|
@ -171,7 +171,7 @@
|
||||||
<goal>install-node-and-npm</goal>
|
<goal>install-node-and-npm</goal>
|
||||||
</goals>
|
</goals>
|
||||||
<configuration>
|
<configuration>
|
||||||
<nodeVersion>v14.17.0</nodeVersion>
|
<nodeVersion>v16.14.2</nodeVersion>
|
||||||
</configuration>
|
</configuration>
|
||||||
</execution>
|
</execution>
|
||||||
<execution>
|
<execution>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import { CmsEditorBuilder, CmsEditor} from "@librecms/ccm-cms";
|
import { CmsEditorBuilder, CmsEditor} from "@librecms/ccm-cms-editor";
|
||||||
|
|
||||||
document.addEventListener("DOMContentLoaded", (event) => {
|
document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
const editorElem = document.querySelector("#sciproject-description-editor");
|
const editorElem = document.querySelector("#sciproject-description-editor");
|
||||||
|
|
@ -48,4 +48,4 @@ document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
} else {
|
} else {
|
||||||
console.error("Editor element not found.")
|
console.error("Editor element not found.")
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import { CmsEditorBuilder, CmsEditor} from "@librecms/ccm-cms";
|
import { CmsEditorBuilder, CmsEditor} from "@librecms/ccm-cms-editor";
|
||||||
|
|
||||||
document.addEventListener("DOMContentLoaded", (event) => {
|
document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
const editorElem = document.querySelector("#sciproject-fundingtext-editor");
|
const editorElem = document.querySelector("#sciproject-fundingtext-editor");
|
||||||
|
|
@ -48,4 +48,4 @@ document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
} else {
|
} else {
|
||||||
console.error("Editor element not found.")
|
console.error("Editor element not found.")
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,4 @@
|
||||||
import { } from "@librecms/ccm-cms";
|
import { CmsEditorBuilder, CmsEditor} from "@librecms/ccm-cms-editor";
|
||||||
|
|
||||||
import { CmsEditorBuilder, CmsEditor} from "@librecms/ccm-cms";
|
|
||||||
|
|
||||||
document.addEventListener("DOMContentLoaded", (event) => {
|
document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
const editorElem = document.querySelector("#sciproject-funding-volume-editor");
|
const editorElem = document.querySelector("#sciproject-funding-volume-editor");
|
||||||
|
|
@ -50,4 +48,4 @@ document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
} else {
|
} else {
|
||||||
console.error("Editor element not found.")
|
console.error("Editor element not found.")
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
|
|
|
||||||
|
|
@ -18,15 +18,12 @@ document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
});
|
});
|
||||||
|
|
||||||
function initMembers(members: HTMLElement): Sortable {
|
function initMembers(members: HTMLElement): Sortable {
|
||||||
return new Sortable(
|
return new Sortable(members, {
|
||||||
members,
|
animation: 150,
|
||||||
{
|
group: "members-list",
|
||||||
animation: 150,
|
handle: ".member-sort-handle",
|
||||||
group: "members-list",
|
onEnd: enableSaveButton,
|
||||||
handle: ".member-sort-handle",
|
});
|
||||||
onEnd: enableSaveButton
|
|
||||||
}
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function enableSaveButton(event: SortableEvent) {
|
function enableSaveButton(event: SortableEvent) {
|
||||||
|
|
@ -43,7 +40,11 @@ function enableSaveButton(event: SortableEvent) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function saveOrder() {
|
function saveOrder() {
|
||||||
const baseUrl = cmsMedia.getAttribute("data-baseUrl");
|
const membersList = document.querySelector(".members-list");
|
||||||
|
if (!membersList) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const baseUrl = membersList.getAttribute("data-baseUrl");
|
||||||
if (!baseUrl) {
|
if (!baseUrl) {
|
||||||
showGeneralError();
|
showGeneralError();
|
||||||
throw Error(
|
throw Error(
|
||||||
|
|
@ -52,7 +53,9 @@ function saveOrder() {
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log("spinner on");
|
console.log("spinner on");
|
||||||
const saveOrderButtons = document.querySelectorAll(".members-save-order-button");
|
const saveOrderButtons = document.querySelectorAll(
|
||||||
|
".members-save-order-button"
|
||||||
|
);
|
||||||
for (let i = 0; i < saveOrderButtons.length; i++) {
|
for (let i = 0; i < saveOrderButtons.length; i++) {
|
||||||
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
||||||
i
|
i
|
||||||
|
|
@ -71,24 +74,24 @@ function saveOrder() {
|
||||||
credentials: "include",
|
credentials: "include",
|
||||||
body: JSON.stringify(membersSortable.toArray()),
|
body: JSON.stringify(membersSortable.toArray()),
|
||||||
headers,
|
headers,
|
||||||
method: "POST"
|
method: "POST",
|
||||||
})
|
})
|
||||||
.then(response => {
|
.then((response) => {
|
||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
for(let i = 0; i < saveOrderButtons.length; i++) {
|
for (let i = 0; i < saveOrderButtons.length; i++) {
|
||||||
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
||||||
i
|
i
|
||||||
] as HTMLButtonElement;
|
] as HTMLButtonElement;
|
||||||
// saveOrderButton.disabled = true;
|
// saveOrderButton.disabled = true;
|
||||||
const saveIcon =
|
const saveIcon =
|
||||||
saveOrderButton.querySelector(".save-icon");
|
saveOrderButton.querySelector(".save-icon");
|
||||||
const spinner =
|
const spinner =
|
||||||
saveOrderButton.querySelector(".save-spinner");
|
saveOrderButton.querySelector(".save-spinner");
|
||||||
saveIcon?.classList.toggle("d-none");
|
saveIcon?.classList.toggle("d-none");
|
||||||
spinner?.classList.toggle("d-none");
|
spinner?.classList.toggle("d-none");
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
showSaveError();
|
showSaveError();
|
||||||
for (let i = 0; i < saveOrderButtons.length; i++) {
|
for (let i = 0; i < saveOrderButtons.length; i++) {
|
||||||
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
||||||
i
|
i
|
||||||
|
|
@ -104,22 +107,22 @@ function saveOrder() {
|
||||||
throw Error(
|
throw Error(
|
||||||
`Failed to save media order. Response status: ${response.status}, statusText: ${response.statusText}`
|
`Failed to save media order. Response status: ${response.status}, statusText: ${response.statusText}`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(error => {
|
.catch((error) => {
|
||||||
showSaveError();
|
showSaveError();
|
||||||
for (let i = 0; i < saveOrderButtons.length; i++) {
|
for (let i = 0; i < saveOrderButtons.length; i++) {
|
||||||
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
const saveOrderButton: HTMLButtonElement = saveOrderButtons[
|
||||||
i
|
i
|
||||||
] as HTMLButtonElement;
|
] as HTMLButtonElement;
|
||||||
saveOrderButton.disabled = false;
|
saveOrderButton.disabled = false;
|
||||||
const saveIcon = saveOrderButton.querySelector(".save-icon");
|
const saveIcon = saveOrderButton.querySelector(".save-icon");
|
||||||
const spinner = saveOrderButton.querySelector(".save-spinner");
|
const spinner = saveOrderButton.querySelector(".save-spinner");
|
||||||
saveIcon?.classList.toggle("d-none");
|
saveIcon?.classList.toggle("d-none");
|
||||||
spinner?.classList.toggle("d-none");
|
spinner?.classList.toggle("d-none");
|
||||||
}
|
}
|
||||||
throw new Error(`Failed to save media order: ${error}`);
|
throw new Error(`Failed to save media order: ${error}`);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function showGeneralError(): void {
|
function showGeneralError(): void {
|
||||||
|
|
@ -145,4 +148,3 @@ function showSaveError(): void {
|
||||||
container.appendChild(alert);
|
container.appendChild(alert);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -101,7 +101,7 @@
|
||||||
<goal>install-node-and-npm</goal>
|
<goal>install-node-and-npm</goal>
|
||||||
</goals>
|
</goals>
|
||||||
<configuration>
|
<configuration>
|
||||||
<nodeVersion>v14.17.0</nodeVersion>
|
<nodeVersion>v16.14.2</nodeVersion>
|
||||||
</configuration>
|
</configuration>
|
||||||
</execution>
|
</execution>
|
||||||
<execution>
|
<execution>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue