Compare commits
2 commits
6a9655543a
...
3e2af3b038
Author | SHA1 | Date | |
---|---|---|---|
3e2af3b038 | |||
b9c3974070 |
2 changed files with 17 additions and 7 deletions
|
@ -3,6 +3,9 @@
|
||||||
Modernization by @kleinesfilmroellchen
|
Modernization by @kleinesfilmroellchen
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
const uriRegex =
|
||||||
|
/(https?:\/\/([-\w\.]+)+(:\d+)?(\/([\w\/\-_\.\:]*(\?\S+)?)?)?)/gi;
|
||||||
|
|
||||||
export default function hackcal(e, p = 1) {
|
export default function hackcal(e, p = 1) {
|
||||||
if (!document.getElementById("dbkcalendar")) return;
|
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
|
// use description as link on summary if it's a valid URL
|
||||||
const summaryItem = entryItem.querySelector(".summary");
|
const summaryItem = entryItem.querySelector(".summary");
|
||||||
|
const possibleUri = uriRegex.exec(event.description)?.[0];
|
||||||
|
const cleanedDescription = event.description.replaceAll(uriRegex, "");
|
||||||
try {
|
try {
|
||||||
const descriptionUri = new URL(event.description);
|
const descriptionUri = new URL(possibleUri);
|
||||||
const descriptionLink = document.createElement("a");
|
const descriptionLink = document.createElement("a");
|
||||||
descriptionLink.href = descriptionUri;
|
descriptionLink.href = descriptionUri;
|
||||||
descriptionLink.target = "_blank";
|
descriptionLink.target = "_blank";
|
||||||
|
@ -50,9 +55,9 @@ export default function hackcal(e, p = 1) {
|
||||||
summaryItem.appendChild(descriptionLink);
|
summaryItem.appendChild(descriptionLink);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
summaryItem.innerText = event.summary;
|
summaryItem.innerText = event.summary;
|
||||||
entryItem.querySelector(".description").innerText =
|
|
||||||
event.description;
|
|
||||||
}
|
}
|
||||||
|
entryItem.querySelector(".description").innerText =
|
||||||
|
cleanedDescription;
|
||||||
|
|
||||||
// self-link location if it's a valid URL
|
// self-link location if it's a valid URL
|
||||||
const locationItem = entryItem.querySelector(".location");
|
const locationItem = entryItem.querySelector(".location");
|
||||||
|
|
|
@ -3,8 +3,8 @@
|
||||||
--main-bg-color: oklch(1% 0 0);
|
--main-bg-color: oklch(1% 0 0);
|
||||||
--main-bg-contrast-color: oklch(40% 0 0);
|
--main-bg-contrast-color: oklch(40% 0 0);
|
||||||
--main-text-color: oklch(92% 0 none);
|
--main-text-color: oklch(92% 0 none);
|
||||||
--main-accent-color: #f9c827;
|
--main-accent-color: oklch(85.23% 0.1662 89.73);
|
||||||
--secondary-accent-color: #ff925f;
|
--secondary-accent-color: oklch(64.41% 0.1673 44.98);
|
||||||
|
|
||||||
/* Tell browser that we support dark and light mode.
|
/* Tell browser that we support dark and light mode.
|
||||||
Allows browser to change UI elements to match the color scheme.
|
Allows browser to change UI elements to match the color scheme.
|
||||||
|
@ -83,6 +83,10 @@ h3 {
|
||||||
font-size: 1.2rem;
|
font-size: 1.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ul > li {
|
||||||
|
margin-top: 0.3em;
|
||||||
|
}
|
||||||
|
|
||||||
/* page header */
|
/* page header */
|
||||||
|
|
||||||
#space-image {
|
#space-image {
|
||||||
|
@ -105,7 +109,7 @@ header {
|
||||||
"logo . nav nav"
|
"logo . nav nav"
|
||||||
"logo . space-text space-image" min-content
|
"logo . space-text space-image" min-content
|
||||||
"logo . . ." min-content /
|
"logo . . ." min-content /
|
||||||
minmax(min-content, 25vw) 1fr auto minmax(0, min-content);
|
minmax(min-content, 25vw) 1fr auto 11vh;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|
||||||
* {
|
* {
|
||||||
|
@ -337,8 +341,9 @@ footer {
|
||||||
margin-top: 0.2em;
|
margin-top: 0.2em;
|
||||||
|
|
||||||
em {
|
em {
|
||||||
background-color: var(--main-accent-color);
|
background-color: var(--secondary-accent-color);
|
||||||
padding: 0 0.25em;
|
padding: 0 0.25em;
|
||||||
|
margin-right: 0.2em;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: var(--main-bg-color);
|
color: var(--main-bg-color);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue