Add navigation settings, fix page generation
This commit is contained in:
28
CHDataManagement/Page Elements/GenericPage.swift
Normal file
28
CHDataManagement/Page Elements/GenericPage.swift
Normal file
@@ -0,0 +1,28 @@
|
||||
import Foundation
|
||||
|
||||
struct GenericPage {
|
||||
|
||||
let header: PageHeader
|
||||
|
||||
let additionalFooter: String
|
||||
|
||||
let insertedContent: (inout String) -> Void
|
||||
|
||||
init(header: PageHeader,
|
||||
additionalFooter: String,
|
||||
insertedContent: @escaping (inout String) -> Void) {
|
||||
self.header = header
|
||||
self.additionalFooter = additionalFooter
|
||||
self.insertedContent = insertedContent
|
||||
}
|
||||
|
||||
var content: String {
|
||||
var result = ""
|
||||
header.populate(&result) // Opens <html><body><main>
|
||||
insertedContent(&result)
|
||||
result += "</main>" // Close <main>
|
||||
result += additionalFooter
|
||||
result += "</body></html>" // Close <body><html>
|
||||
return result
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user