aboutsummaryrefslogtreecommitdiff
path: root/static/components
diff options
context:
space:
mode:
Diffstat (limited to 'static/components')
-rw-r--r--static/components/vevent-description.ts22
1 files changed, 18 insertions, 4 deletions
diff --git a/static/components/vevent-description.ts b/static/components/vevent-description.ts
index 03c5355d..b1605d50 100644
--- a/static/components/vevent-description.ts
+++ b/static/components/vevent-description.ts
@@ -2,6 +2,7 @@ export { ComponentDescription }
import { VEvent } from '../vevent'
import { ComponentVEvent } from './vevent'
+import { makeElement } from '../lib'
/*
<vevent-description />
@@ -21,10 +22,23 @@ class ComponentDescription extends ComponentVEvent {
let p = el.dataset.property!;
let d, fmt;
if ((d = data.getProperty(p))) {
- if ((fmt = el.dataset.fmt)) {
- el.textContent = d.format(fmt);
- } else {
- el.textContent = d;
+ switch (p.toLowerCase()) {
+ case 'categories':
+ for (let item of d) {
+ let q = encodeURIComponent(
+ `(member "${item}" (or (prop event (quote CATEGORIES)) (quote ())))`)
+ el.appendChild(makeElement('a', {
+ textContent: item,
+ href: `/search/?q=${q}`,
+ }))
+ }
+ break;
+ default:
+ if ((fmt = el.dataset.fmt)) {
+ el.textContent = d.format(fmt);
+ } else {
+ el.textContent = d;
+ }
}
}
}