Check page state for overviews
This commit is contained in:
@ -23,7 +23,11 @@ struct OverviewSectionGenerator {
|
||||
var content = [OverviewSectionTemplate.Key : String]()
|
||||
content[.url] = relativeUrl
|
||||
content[.title] = metadata.title
|
||||
content[.items] = sectionContent(section: section, in: parent, language: language, shownItemCount: sectionItemCount)
|
||||
content[.items] = generator.generateContent(
|
||||
items: section.itemsForOverview(sectionItemCount),
|
||||
parent: parent,
|
||||
language: language,
|
||||
style: section.thumbnailStyle)
|
||||
content[.more] = metadata.moreLinkText
|
||||
|
||||
return multipleSectionsTemplate.generate(content)
|
||||
@ -33,21 +37,11 @@ struct OverviewSectionGenerator {
|
||||
|
||||
func generate(section: Element, language: String) -> String {
|
||||
var content = [OverviewSectionCleanTemplate.Key : String]()
|
||||
content[.items] = sectionContent(section: section, in: section, language: language, shownItemCount: nil)
|
||||
return singleSectionsTemplate.generate(content)
|
||||
}
|
||||
|
||||
private func sectionContent(section: Element, in parent: Element, language: String, shownItemCount: Int?) -> String {
|
||||
let sectionItems: [Element]
|
||||
if let shownItemCount = shownItemCount {
|
||||
sectionItems = Array(section.sortedItems.prefix(shownItemCount))
|
||||
} else {
|
||||
sectionItems = section.sortedItems
|
||||
}
|
||||
return generator.generateContent(
|
||||
items: sectionItems,
|
||||
parent: parent,
|
||||
content[.items] = generator.generateContent(
|
||||
items: section.itemsForOverview(),
|
||||
parent: section,
|
||||
language: language,
|
||||
style: section.thumbnailStyle)
|
||||
return singleSectionsTemplate.generate(content)
|
||||
}
|
||||
}
|
||||
|
@ -14,13 +14,18 @@ struct ThumbnailListGenerator {
|
||||
}
|
||||
|
||||
private func itemContent(_ item: Element, parent: Element, language: String, style: ThumbnailStyle) -> String {
|
||||
let fullPageUrl = item.fullPageUrl(for: language)
|
||||
let relativePageUrl = parent.relativePathToFileWithPath(fullPageUrl)
|
||||
let fullThumbnailPath = item.thumbnailFilePath(for: language)
|
||||
let relativeImageUrl = parent.relativePathToFileWithPath(fullThumbnailPath)
|
||||
|
||||
|
||||
var content = [ThumbnailKey : String]()
|
||||
content[.url] = "href=\"\(relativePageUrl)\""
|
||||
|
||||
if item.state.hasThumbnailLink {
|
||||
#warning("If page in language is missing, link to different language")
|
||||
let fullPageUrl = item.fullPageUrl(for: language)
|
||||
let relativePageUrl = parent.relativePathToFileWithPath(fullPageUrl)
|
||||
content[.url] = "href=\"\(relativePageUrl)\""
|
||||
}
|
||||
|
||||
content[.image] = relativeImageUrl
|
||||
content[.title] = item.title(for: language)
|
||||
#warning("Generate thumbnail suffix")
|
||||
|
Reference in New Issue
Block a user