diff --git a/src/MyWebLog.Data/Converters.fs b/src/MyWebLog.Data/Converters.fs
index 2b70e97..c360ac5 100644
--- a/src/MyWebLog.Data/Converters.fs
+++ b/src/MyWebLog.Data/Converters.fs
@@ -15,7 +15,10 @@ module Json =
override _.WriteJson(writer: JsonWriter, value: AutoHtmxType, _: JsonSerializer) =
writer.WriteValue(string value)
override _.ReadJson(reader: JsonReader, _: Type, _: AutoHtmxType, _: bool, _: JsonSerializer) =
- (string >> AutoHtmxType.Parse) reader.Value
+ // Backups prior to v3 will still have true/false for this field
+ match reader.TokenType with
+ | JsonToken.Boolean -> if reader.Value :?> bool then AutoHtmx else NoAutoHtmx
+ | _ -> (string >> AutoHtmxType.Parse) reader.Value
/// Converter for the type
type CategoryIdConverter() =
diff --git a/src/MyWebLog.Tests/Data/ConvertersTests.fs b/src/MyWebLog.Tests/Data/ConvertersTests.fs
index dd69c98..accfad0 100644
--- a/src/MyWebLog.Tests/Data/ConvertersTests.fs
+++ b/src/MyWebLog.Tests/Data/ConvertersTests.fs
@@ -14,9 +14,13 @@ let autoHtmxTypeConverterTests = testList "AutoHtmxTypeConverter" [
let after = JsonConvert.SerializeObject(AutoHtmax, opts)
Expect.equal after "\"Max\"" "Auto htmx type serialized incorrectly"
}
- test "succeeds when deserializing" {
+ test "succeeds when deserializing a string" {
let after = JsonConvert.DeserializeObject("\"Yes\"", opts)
- Expect.equal after AutoHtmx "Auto htmx type not serialized incorrectly"
+ Expect.equal after AutoHtmx "Auto htmx type deserialized incorrectly"
+ }
+ test "succeeds when deserializing a boolean value" {
+ let after = JsonConvert.DeserializeObject("false", opts)
+ Expect.equal after NoAutoHtmx "Auto htmx type deserialized incorrectly"
}
]
@@ -30,7 +34,7 @@ let categoryIdConverterTests = testList "CategoryIdConverter" [
}
test "succeeds when deserializing" {
let after = JsonConvert.DeserializeObject("\"test-cat-id\"", opts)
- Expect.equal after (CategoryId "test-cat-id") "Category ID not serialized incorrectly"
+ Expect.equal after (CategoryId "test-cat-id") "Category ID deserialized incorrectly"
}
]
diff --git a/src/MyWebLog/Handlers/Helpers.fs b/src/MyWebLog/Handlers/Helpers.fs
index 1a37357..d84fbab 100644
--- a/src/MyWebLog/Handlers/Helpers.fs
+++ b/src/MyWebLog/Handlers/Helpers.fs
@@ -68,10 +68,6 @@ open Giraffe
open Giraffe.Htmx
open Giraffe.ViewEngine
-/// htmx script tag
-let private htmxScript (webLog: WebLog) =
- $""""""
-
/// Get the current user messages, and commit the session so that they are preserved
let private getCurrentMessages ctx = task {
let! messages = messages ctx