diff --git a/Library/Widgets/Calendar.md b/Library/Widgets/Calendar.md
index 8dae9f3..417f9b8 100644
--- a/Library/Widgets/Calendar.md
+++ b/Library/Widgets/Calendar.md
@@ -11,17 +11,15 @@ function generate_calendar(calendarID, year, month)
-- A specified year and month will always display that calendar.
if year == 0 and month == 0 then
local wantedMonth = clientStore.get("calendar:" .. calendarID)
+ editor.flashNotification(wantedMonth)
-- Calculate year and month from the current date plus a month offset.
if wantedMonth == nil then
- wantedMonth = tonumber(os.date("%Y")) * 12 + tonumber(os.date("%m"))
+ wantedMonth = tonumber(os.date("%Y")) * 12 + (tonumber(os.date("%m"))-1)
end
year = (wantedMonth - (wantedMonth % 12)) / 12
- month = wantedMonth % 12
- if month == 0 then
- month = 1
- end
+ month = wantedMonth % 12 + 1
end
-
+
local events = query[[
from index.tag "event"
where
@@ -73,12 +71,12 @@ function generate_calendar(calendarID, year, month)
for _, e in pairs(events) do
local datematch = e.at.match(
string.format("^%d-%02d-%02d( +[0-9]+:[0-9]+)?", year, month, day))
- if #datematch >= 2 and not datematch[2] then
+ if datematch and #datematch >= 2 and not datematch[2] then
cellcontent = cellcontent .. string.format(
[[%s
]],
e.ref, e.name
)
- elseif #datematch >= 2 and datematch[2] then
+ elseif datematch and #datematch >= 2 and datematch[2] then
cellcontent = cellcontent .. string.format(
[[
@@ -166,75 +164,72 @@ end
```space-style
.calendartable {
border-collapse: collapse;
- /* width: 500px; */
+
+ table {
+ border-color: var(--panel-border-color);
+ border: 2px solid #444;
+ border-collapse: collapse;
+
+ th {
+ width: 14%;
+ padding: 3px;
+ text-align: left;
+ background-color: var(--panel-background-color);
+ color: #852624;
+ border: 1px solid #aaa;
+ }
+
+ td {
+ width: 14%;
+ padding: 3px;
+ text-align: left;
+ vertical-align: top;
+ border: 1px solid #aaa;
+
+ &.today {
+ background-color: #f6f3c2;
+ }
+ }
+ }
+
+ a {
+ text-decoration-line: none;
+ color: var(--root-color);
+
+ &.mark {
+ text-decoration-line: none;
+ color: var(--ui-accent-text-color);
+ }
+ }
+
+ span.extramarker {
+ background-color: yellow;
+ }
+
+ .event {
+ background-color: #2ca05a;
+ color: #fff;
+ border-radius: 4px;
+ padding: 4px 8px;
+ margin-top: 8px;
+ max-width: 200px;
+ white-space: normal;
+ overflow-wrap: normal !important;
+ word-break: normal !important;
+
+ &.all-day {
+ background-color: #852624;
+ }
+
+ .time {
+ font-weight: bold;
+ }
+ }
+
+ .month-prev,
+ .month-next,
+ .month-now {
+ cursor: pointer;
+ }
}
-
-.calendartable table {
- border-color: var(--panel-border-color);
- border: 2px solid #444;
- border-collapse: collapse;
-}
-
-.calendartable th {
- width: 14%;
- padding: 3px;
- text-align: left;
- background-color: var(--panel-background-color);
- color: #852624;
- border: 1px solid #aaa;
-}
-
-
-.calendartable td {
- width: 14%;
- padding: 3px;
- text-align: left;
- vertical-align: top;
- border: 1px solid #aaa;
-}
-
-.calendartable td.today {
- background-color: #f6f3c2;
-}
-
-.calendartable a {
- text-decoration-line: none;
- color: var(--root-color);
-}
-
-.calendartable a.mark {
- text-decoration-line: none;
- color: var(--ui-accent-text-color);
-}
-
-.calendartable span.extramarker {
- background-color: yellow;
-}
-
-.calendartable .event {
- background-color: #2ca05a;
- color: #fff;
- border-radius: 4px;
- padding: 4px 8px;
- margin-top: 8px;
- max-width: 200px;
- white-space: normal;
- overflow-wrap: normal !important;
- word-break: normal !important;
-}
-
-.calendartable .event.all-day {
- background-color: #852624;
-}
-
-.calendartable .event .time {
- font-weight: bold;
-}
-
-.calendartable .month-prev,
-.calendartable .month-next,
-.calendartable .month-now {
- cursor: pointer;
-}
-
```
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..ac043f3
--- /dev/null
+++ b/README.md
@@ -0,0 +1,31 @@
+# Calendar
+
+```lua
+generate_calendar(idString, fixedYear, fixedMonth)
+```
+
+## Aktuell månad
+Genererar en kalender med dagens datum, eller sparar senaste månaden med namnet "foo". Genereras en till kalender med samma namn visar den samma månad.
+
+```lua
+generate_calendar("foo", 0, 0)
+```
+
+## Specifik månad
+För att visa en kalender med enbart september 2025:
+```lua
+generate_calendar("fixed:1", 2025, 9)
+```
+
+## Events
+
+Events läggs till med:
+```plaintext
+* En text för eventet [at: 2025-09-10] #event
+```
+
+eller
+
+```plaintext
+* En text för eventet [at: 2025-09-10 08:00] #event
+```
\ No newline at end of file