ChWebsiteApp/CHDataManagement/Pages/GenericPage.swift
2024-12-13 11:26:34 +01:00

42 lines
1.3 KiB
Swift

import Foundation
struct GenericPage {
let language: ContentLanguage
let title: String
let description: String
let links: [NavigationBar.Link]
let additionalHeaders: String
let additionalFooter: String
let insertedContent: (inout String) -> Void
init(language: ContentLanguage, title: String, description: String, links: [NavigationBar.Link], additionalHeaders: String, additionalFooter: String, insertedContent: @escaping (inout String) -> Void) {
self.language = language
self.title = title
self.description = description
self.links = links
self.additionalHeaders = additionalHeaders
self.additionalFooter = additionalFooter
self.insertedContent = insertedContent
}
var content: String {
var result = ""
result += "<!DOCTYPE html><html lang=\"\(language.rawValue)\">"
result += PageHead(title: title, description: description, additionalHeaders: additionalHeaders).content
result += "<body>"
result += NavigationBar(links: links).content
result += "<div class=\"content\"><div style=\"height: 70px;\"></div>"
insertedContent(&result)
result += "</div>"
result += additionalFooter
result += "</body></html>" // Close content
return result
}
}