Google-Bescheibungen aller Seiten

This commit is contained in:
Simon Martens
2025-03-02 14:19:00 +01:00
parent 5402dc5329
commit a5abdf50d3
27 changed files with 103 additions and 11 deletions

View File

@@ -35,7 +35,10 @@ func RecordsFromInhalte(
record := dbmodels.NewContent(core.NewRecord(collection))
inhalt := inhalte.Inhalte[i]
band, ok := entries[inhalt.Band]
if !ok {
app.Logger().Error("Band not found", "band", inhalt.Band)
continue
}
record.SetEntry(band.Id)
record.SetAnnotation(NormalizeString(inhalt.Anmerkungen))
record.SetMusenalmID(inhalt.ID)
@@ -81,6 +84,7 @@ func RecordsFromInhalte(
}
records = append(records, record)
}
return records, nil
}
@@ -140,6 +144,9 @@ func getImages(path string) map[int][]string {
if !fileInfo.IsDir() {
ext := filepath.Ext(fileInfo.Name())
filename := strings.TrimSuffix(fileInfo.Name(), ext)
if ext != ".jpg" && ext != ".jpeg" && ext != ".png" && ext != ".tiff" {
return nil
}
basesplit := strings.Split(filename, "-")
if len(basesplit) >= 3 {
commaseperatorsplit := strings.Split(basesplit[2], ",")

View File

@@ -77,11 +77,19 @@ func NewIndexTexte(record *core.Record) *IndexTexte {
return i
}
func (t *IndexTexte) Titel() string {
func (t *IndexTexte) Title() string {
return t.GetString(F_TITLE)
}
func (t *IndexTexte) SetTitel(titel string) {
func (t *IndexTexte) SetDescription(s string) {
t.Set(F_DESCRIPTION, s)
}
func (t *IndexTexte) Description() string {
return t.GetString(F_DESCRIPTION)
}
func (t *IndexTexte) SetTitle(titel string) {
t.Set(F_TITLE, titel)
}

View File

@@ -17,6 +17,8 @@ const TEXT = `<div>
<p>Frau Mag. <strong>Rita Robosch</strong><br>Matthaeus Truppe Buchhandlung &amp; Antiquariat<br>Stubenberggasse 7<br>A-8010 Graz<br>Austria<br><a href="mailto:truppe@aon.at">truppe@aon.at</a></p>
</div>`
const BESCHREIBUNG = "Danksagungen an Unterstützer:innen bei der Erfassung von Almanachen und Taschenbüchern."
func init() {
m.Register(func(app core.App) error {
collection, err := app.FindCollectionByNameOrId(
@@ -29,6 +31,7 @@ func init() {
record := pagemodels.NewTextPage(core.NewRecord(collection))
record.SetTitle("Danksagungen")
record.SetText(TEXT)
record.SetDescription(BESCHREIBUNG)
if err := app.Save(record); err != nil {
app.Logger().Error("Failed to save record", "error", err, "record", record)

View File

@@ -12,6 +12,8 @@ import (
m "github.com/pocketbase/pocketbase/migrations"
)
const BESCHREIBUNG = "Musenalm: Verzeichnis deutschsprachiger Almanache des 18. und 19. Jahrhunderts. Dokumentation zur Sortierung und Struktur der Almanache."
const START = `<h3>Sortierung der Reihentitel</h3>
<p>Wir sortieren die Reihentitel nach dem Kopf der Nominalphrase, den wir zu diesem Zweck ggf. an den Anfang stellen und mit Kommas abtrennen.</p>
<p>Somit wird:</p>
@@ -494,6 +496,7 @@ func init() {
record := pagemodels.NewTextPage(core.NewRecord(collection))
record.SetTitle("Dokumentation")
record.SetText(START)
record.SetDescription(BESCHREIBUNG)
if err := app.Save(record); err != nil {
app.Logger().Error("Failed to save record", "error", err, "record", record)

View File

@@ -6,6 +6,8 @@ import (
m "github.com/pocketbase/pocketbase/migrations"
)
const BESCHREIBUNG = "Musenalm: Einführung in das Verzeichnis deutschsprachiger Almanache."
const START = `<h2 class="wp-block-heading">Vorbemerkung</h2>
<p>Dies ist eine Bibliographie der deutschen Almanache und Taschenb&uuml;cher, die neben der Erfassung der Reihen und ihrer Jahrg&auml;nge die Inhalte selbst erkennbar macht. In der Regel werden folgende Merkmale erfa&szlig;t und sind in verschiedenen Suchabfragen und Listen abrufbar:</p>
<ul>
@@ -42,6 +44,7 @@ func init() {
record := pagemodels.NewTextPage(core.NewRecord(collection))
record.SetTitle("Einführung")
record.SetText(START)
record.SetDescription(BESCHREIBUNG)
if err := app.Save(record); err != nil {
app.Logger().Error("Failed to save record", "error", err, "record", record)

View File

@@ -51,7 +51,7 @@ func bilderCollection() *core.Collection {
c.ViewRule = dbmodels.PUBLIC_VIEW_RULE
c.Fields = core.NewFieldsList(
pagemodels.TextField(pagemodels.F_TITLE),
pagemodels.EditorField(pagemodels.F_DESCRIPTION),
pagemodels.TextField(pagemodels.F_DESCRIPTION),
pagemodels.RequiredImageField(pagemodels.F_IMAGE, false),
pagemodels.RequiredImageField(pagemodels.F_PREVIEW, false),
)

View File

@@ -18,6 +18,8 @@ const ABS1 = "<p>Die Epoche der Almanache und Taschenbücher in der deutschsprac
const ABS2 = "Die laufend aktualisierte Datenbank erfasst die Almanache nach <a href='/reihen'>Reihen</a>, <a href='/personen'>Personen</a> und verschiedenen Arten von Beiträgen — Textbeiträgen, Graphiken oder Musikbeiträgen. Umfangreiche <a href='/suche'>Suchfunktionen</a> helfen bei der Erschließung des Materials."
const BESCHREIBUNG = "Musenalm: Verzeichnis deutschsprachiger Almanache des 18. und 19. Jahrhunderts."
func init() {
m.Register(func(app core.App) error {
index_collection, err := app.FindCollectionByNameOrId(
@@ -35,9 +37,10 @@ func init() {
}
text := pagemodels.NewIndexTexte(core.NewRecord(index_collection))
text.SetTitel("MUSENALM")
text.SetTitle("Musenalm")
text.SetAbs1(ABS1)
text.SetAbs2(ABS2)
text.SetDescription(BESCHREIBUNG)
if err := app.Save(text); err != nil {
app.Logger().Error("Failed to save text:", "error", err, "text", text)

View File

@@ -8,6 +8,8 @@ import (
const START = `<p>Martin Sietzen und Dr. Jakob Br&uuml;ssermann<br>Theodor-Springmann-Stiftung<br>Hirschgasse 2 <br><br>69120 Heidelberg<br><a href="mailto:info@musenalm.de">info@musenalm.de</a></p>`
const BESCHREIBUNG = "Musenalm: Verzeichnis deutschsprachiger Almanache des 18. und 19. Jahrhunderts. Kontakt zur Redaktion."
func init() {
m.Register(func(app core.App) error {
collection, err := app.FindCollectionByNameOrId(
@@ -20,6 +22,7 @@ func init() {
record := pagemodels.NewTextPage(core.NewRecord(collection))
record.SetTitle("Kontakt")
record.SetText(START)
record.SetDescription(BESCHREIBUNG)
if err := app.Save(record); err != nil {
app.Logger().Error("Failed to save record", "error", err, "record", record)

View File

@@ -6,6 +6,8 @@ import (
m "github.com/pocketbase/pocketbase/migrations"
)
const BESCHREIBUNG = "Musenalm: Verzeichnis deutschsprachiger Almanache des 18. und 19. Jahrhunderts. Historische Texte zum Almanachwesen."
var text = `<h1>Texte zum Almanachwesen</h1>
<p><em>Joseph Franz von Ratschky:</em> Vorbericht. in: Wiener Musenalmanach. 1779, S. 3-6. [&darr;<a href="/assets/Lesekabinett/ratschky_in_wiener_1779.pdf" target="_blank" rel="noopener">Download</a>]</p>
<p><em>Gottfried August B&uuml;rger:</em> Nothgedrungene Nachrede. in: G&ouml;ttinger Musenalmanach. 1782, S. 184-192. [&darr;<a href="/assets/Lesekabinett/buerger_in_goettinger_1782.pdf" target="_blank" rel="noopener">Download</a>]</p>
@@ -37,6 +39,7 @@ func init() {
page := pagemodels.NewTextPage(r)
page.SetText(text)
page.SetTitle("Lesekabinett")
page.SetDescription(BESCHREIBUNG)
if err := app.Save(r); err != nil {
return err
@@ -44,7 +47,6 @@ func init() {
return nil
}, func(app core.App) error {
collection_t, err := app.FindCollectionByNameOrId(
pagemodels.GeneratePageTableName(pagemodels.P_KABINETT_NAME))
if err == nil && collection_t != nil {

View File

@@ -6,6 +6,8 @@ import (
m "github.com/pocketbase/pocketbase/migrations"
)
const BESCHREIBUNG = "Musenalm: Verzeichnis deutschsprachiger Almanache des 18. und 19. Jahrhunderts. Weiterführende Literatur zum Almanachwesen."
const START = `<h2>Ausstellungs- und Bibliothekskataloge</h2>
<p><span style="font-variant: small-caps;">Baumg&auml;rtel</span>, Ehrfried (Hg.): <em>Die Almanache, Kalender und Taschenb&uuml;cher (1750&ndash;1860) der Landesbibliothek Coburg.</em>&nbsp;Wiesbaden 1970.</p>
<p><span style="font-variant: small-caps;">Bernhardt</span>, Ursula;&nbsp;<span style="font-variant: small-caps;">Reuter-Rautenberg</span>, <span style="text-decoration: none;">Anneliese (Hgg.): </span><em>Bild und Buch. Rheinbl&uuml;then, Moosrosen und Vergi&szlig;meinnicht: Taschenb&uuml;cher f&uuml;r Frauenzimmer von Bildung</em>. Eine Studioausstellung in Zusammenarbeit mit der Badischen Landesbiliothek.&nbsp;Staatliche Kunsthalle Karlsruhe 1995.</p>
@@ -125,6 +127,7 @@ func init() {
record := pagemodels.NewTextPage(core.NewRecord(collection))
record.SetTitle("Literatur")
record.SetText(START)
record.SetDescription(BESCHREIBUNG)
return app.Save(record)
}, func(app core.App) error {

View File

@@ -7,6 +7,8 @@ import (
"github.com/pocketbase/pocketbase/tools/filesystem"
)
const DESCRIPTION = "Musenalm: Verzeichnis deutschsprachiger Almanache des 18. und 19. Jahrhunderts. Reihenverzeichnis."
const START = "<p>Ziel der Musenalm ist die&nbsp;bibliographische Erfassung eines Jahrhunderts deutscher Almanache und Taschenb&uuml;cher;<strong>&nbsp;</strong>das Projekt ist im Aufbau und wird kontinuierlich weitergef&uuml;hrt.</p><p>Verzeichnet werden:</p><ul><li><strong>Reihen </strong>und<strong> B&auml;nde</strong> bekannter Almanache und einzelne Druckauflagen mit ausf&uuml;hrlichen bibliographischen Angaben und kurzer systematisierter&nbsp;<strong>Darstellung ihres strukturellen Aufbaus </strong>&nbsp;(Paginierung, Anordnung der Druckteile, Graphiken und Beilagen),<strong><br></strong></li><li><strong>Beitr&auml;ge literarisch oder musisch ausgerichteter Almanache&nbsp;</strong>einzeln, nach Autor, &Uuml;berschrift und Incipit,<strong> </strong>inklusive<strong> Digitalisate </strong>graphischer und musischer Beitr&auml;ge,</li><li>Beitr&auml;ge vorwiegend&nbsp;<strong>nicht literarischer Almanache</strong>&nbsp;in der Regel durch Wiedergabe des&nbsp;<strong>Inhaltsverzeichnisses.</strong></li></ul><p>Die Bibliographie ist zug&auml;nglich mit umfangreichen Suchfunktionen &uuml;ber:</p><ul><li><strong>Reihentitel der Almanache,</strong></li><li><strong>Abbildungen (Graphiken und Musikbeilagen),</strong></li><li>Personennamen von Herausgebern und Beitr&auml;gern einerseits &uuml;ber normierte<strong> Realnamen </strong>und andererseits &uuml;ber die im Druck erscheinenden Schreibweisen der Personen (auch Pseudonyme)<strong> </strong>als<strong> Autornamen,</strong></li><li><strong>Einzeltitel und Incipit </strong>(w&ouml;rtliche Textanf&auml;nge) von Beitr&auml;gen.</li></ul><p>Die Musenalm ist ein Projekt der Theodor Springmann Stiftung in Heidelberg.</p>"
const START_BILD = "./import/Static-Bilder/musen.png"
@@ -23,6 +25,7 @@ func init() {
record := pagemodels.NewReihen(core.NewRecord(collection))
record.SetTitle("Musenalm")
record.SetText(START)
record.SetDescription(DESCRIPTION)
img, err := filesystem.NewFileFromPath(START_BILD)
if err != nil {

View File

@@ -44,7 +44,7 @@
{{- if $model.result.Entry.Year -}}
<i class="ri-arrow-right-wide-line"></i> <b>{{ $model.result.Entry.Year }}</b>
{{- else -}}
<i class="ri-arrow-right-wide-line"></i> <b>{{ $model.result.Entry.PreferredTitle }}</b>
<i class="ri-arrow-right-wide-line"></i> <b>[o. J.]</b>
{{- end -}}
</div>
<div class="grow"></div>

View File

@@ -1 +1,6 @@
<title>Musenalm - Reihen</title>
{{ if and .result .result.Entry }}
<title>Musenalm &ndash; result.Entry.PreferredTitle</title>
<meta name="description" content="Almanach: {{ .result.Entry.PreferredTitle }}" />
{{ else }}
<title>Musenalm &ndash; Almanach</title>
{{ end }}

View File

@@ -0,0 +1,27 @@
{{ if and .result .result.Content .result.Entry }}
<title>
Musenalm &ndash; {{ .result.Entry.PreferredTitle }},
{{ if .result.Content.TitleStmt -}}
{{ .result.Content.TitleStmt }}
{{ else if .result.Content.Incipit -}}
{{ .result.Content.Incipit }}
{{ else -}}
Nr.
{{ .result.Content.MusenalmID }}
{{- end -}}
</title>
<meta
name="description"
content="Almanach: {{ .result.Entry.PreferredTitle }},
{{ if .result.Content.TitleStmt -}}
{{ .result.Content.TitleStmt }}
{{ else if .result.Content.Incipit -}}
{{ .result.Content.Incipit }}
{{ else -}}
Nr.
{{ .result.Content.MusenalmID }}
{{- end -}}
(Einzelbeitrag)" />
{{ else }}
<title>Musenalm &ndash; Beitrag</title>
{{ end }}

View File

@@ -1 +1 @@
<title>Musenalm</title>
<title>{{ .texte.Title }}</title> <meta name="description" content="{{ .texte.Description }}" />

View File

@@ -2,3 +2,10 @@
{{ .site.title }} &ndash;
{{ if .result -}}{{ .result.Agent.Name }}{{ else -}}Einzelpersonenansicht{{- end -}}
</title>
<meta
name="description"
content="Musenalm: {{ if .result -}}
{{ .result.Agent.Name }}
{{ else -}}
Einzelpersonenansicht
{{- end -}}" />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }}: Personen</title>
<title>{{ .site.title }} &ndash; Personen</title>
<meta name="description" content="Musenalm: Personenverzeichnis A-Z." />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }} &ndash; {{ .record.Title }}</title>
<meta name="description" content="{{ .record.Description }}" />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }} &ndash; {{ .record.Title }}</title>
<meta name="description" content="{{ .record.Description }}" />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }} &ndash; {{ .record.Title }}</title>
<meta name="description" content="{{ .record.Description }}" />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }} &ndash; {{ .record.Title }}</title>
<meta name="description" content="{{ .record.Description }}" />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }} &ndash; {{ .record.Title }}</title>
<meta name="description" content="{{ .record.Description }}" />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }} &ndash; {{ .record.Title }}</title>
<meta name="description" content="{{ .record.Description }}" />

View File

@@ -1 +1,6 @@
<title>Musenalm - Reihen</title>
{{- if .series -}}
<title>Musenalm &ndash; {{ .series.Title }}</title>
<meta name="description" content="Enzelreihe: {{ .series.Title }}" />
{{- else -}}
<title>Musenalm &ndash; Einzelreihe</title>
{{- end -}}

View File

@@ -1 +1,2 @@
<title>{{ .site.title }}: Suche &ndash; Bände</title>
<meta name="description" content="Musenalm: Suche nach Bänden." />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }}: Suche &ndash; Beiträge</title>
<meta name="description" content="Musenalm: Suche nach Beiträgen." />

View File

@@ -1 +1,2 @@
<title>{{ .site.title }}: Suche &ndash; Reihen</title>
<meta name="description" content="Musenalm: Suche nach Reihen." />