multiple calendar / display fixes

This commit is contained in:
kleines Filmröllchen 2025-10-12 21:57:06 +02:00
parent 6a9655543a
commit b9c3974070
Signed by: filmroellchen
SSH key fingerprint: SHA256:UMhcHaeI+VGsiUL2Drpw3aj1iRiQUlx8nxZqUPvoaVw
2 changed files with 14 additions and 4 deletions

View file

@ -3,6 +3,9 @@
Modernization by @kleinesfilmroellchen
*/
const uriRegex =
/(https?:\/\/([-\w\.]+)+(:\d+)?(\/([\w\/\-_\.\:]*(\?\S+)?)?)?)/gi;
export default function hackcal(e, p = 1) {
if (!document.getElementById("dbkcalendar")) return;
@ -41,8 +44,10 @@ export default function hackcal(e, p = 1) {
// use description as link on summary if it's a valid URL
const summaryItem = entryItem.querySelector(".summary");
const possibleUri = uriRegex.exec(event.description)?.[0];
const cleanedDescription = event.description.replaceAll(uriRegex, "");
try {
const descriptionUri = new URL(event.description);
const descriptionUri = new URL(possibleUri);
const descriptionLink = document.createElement("a");
descriptionLink.href = descriptionUri;
descriptionLink.target = "_blank";
@ -50,9 +55,9 @@ export default function hackcal(e, p = 1) {
summaryItem.appendChild(descriptionLink);
} catch (e) {
summaryItem.innerText = event.summary;
entryItem.querySelector(".description").innerText =
event.description;
}
entryItem.querySelector(".description").innerText =
cleanedDescription;
// self-link location if it's a valid URL
const locationItem = entryItem.querySelector(".location");

View file

@ -83,6 +83,10 @@ h3 {
font-size: 1.2rem;
}
ul > li {
margin-top: 0.3em;
}
/* page header */
#space-image {
@ -105,7 +109,7 @@ header {
"logo . nav nav"
"logo . space-text space-image" min-content
"logo . . ." min-content /
minmax(min-content, 25vw) 1fr auto minmax(0, min-content);
minmax(min-content, 25vw) 1fr auto 11vh;
overflow: hidden;
* {
@ -339,6 +343,7 @@ footer {
em {
background-color: var(--main-accent-color);
padding: 0 0.25em;
margin-right: 0.2em;
font-style: normal;
font-weight: bold;
color: var(--main-bg-color);