From 163aeac8209ef7c53b81dc575ee6856c8e8ea158 Mon Sep 17 00:00:00 2001 From: Simon Martens Date: Tue, 13 Jan 2026 16:23:09 +0100 Subject: [PATCH] help names --- migrations/03_field_help.go | 368 ++++++++++++++++++++++++++++ migrations/1736700000_field_help.go | 262 -------------------- 2 files changed, 368 insertions(+), 262 deletions(-) create mode 100644 migrations/03_field_help.go delete mode 100644 migrations/1736700000_field_help.go diff --git a/migrations/03_field_help.go b/migrations/03_field_help.go new file mode 100644 index 0000000..613013b --- /dev/null +++ b/migrations/03_field_help.go @@ -0,0 +1,368 @@ +package migrations + +import ( + "github.com/Theodor-Springmann-Stiftung/musenalm/dbmodels" + "github.com/pocketbase/pocketbase/core" + m "github.com/pocketbase/pocketbase/migrations" +) + +type FieldHelp struct { + TableName string + FieldName string + Help string + Description string +} + +type FieldHelpEntry struct { + FieldName string + Help string + Description string +} + +type FieldHelpTable struct { + TableName string + Common []FieldHelpEntry + Entries []FieldHelpEntry + Help string + Description string +} + +var fieldHelpSeed = []FieldHelpTable{ + { + TableName: dbmodels.PLACES_TABLE, + Help: "Liste aller verfügbaren Orte", + Description: "Diese Tabelle enthält alle Orte, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Orten und Ortsnamen verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diesen Datensatz"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieses Datensatzes"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieses Datensatzes"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen und Hinweise zu diesem Datensatz"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung und zum Bearbeitungsstatus"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.EDITOR_FIELD, Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, + {FieldName: dbmodels.MUSENALMID_FIELD, Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, + {FieldName: dbmodels.EDITSTATE_FIELD, Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, + {FieldName: dbmodels.PLACES_NAME_FIELD, Help: "Ortsname", Description: "Name des Ortes"}, + {FieldName: dbmodels.PLACES_FICTIONAL_FIELD, Help: "Fiktiv", Description: "Ist dieser Ort fiktiv?"}, + {FieldName: dbmodels.PLACES_PSEUDONYMS_FIELD, Help: "Pseudonyme", Description: "Alternative Namen oder Pseudonyme für diesen Ort"}, + {FieldName: dbmodels.URI_FIELD, Help: "URI", Description: "Uniform Resource Identifier (externe Referenz)"}, + }, + }, + { + TableName: dbmodels.AGENTS_TABLE, + Help: "Liste aller verfügbaren Personen und Körperschaften", + Description: "Diese Tabelle enthält alle Personen und Körperschaften, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Personen und Körperschaften verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diesen Datensatz"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieses Datensatzes"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieses Datensatzes"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen und Hinweise zu diesem Datensatz"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung und zum Bearbeitungsstatus"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.EDITOR_FIELD, Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, + {FieldName: dbmodels.MUSENALMID_FIELD, Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, + {FieldName: dbmodels.EDITSTATE_FIELD, Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, + {FieldName: dbmodels.AGENTS_NAME_FIELD, Help: "Name", Description: "Name der Person oder Körperschaft"}, + {FieldName: dbmodels.AGENTS_CORP_FIELD, Help: "Körperschaft", Description: "Handelt es sich um eine Körperschaft (Organisation)?"}, + {FieldName: dbmodels.AGENTS_FICTIONAL_FIELD, Help: "Fiktiv", Description: "Ist diese Person/Körperschaft fiktiv?"}, + {FieldName: dbmodels.AGENTS_BIOGRAPHICAL_DATA_FIELD, Help: "Biografische Daten", Description: "Lebensdaten und biografische Informationen"}, + {FieldName: dbmodels.AGENTS_PROFESSION_FIELD, Help: "Beruf", Description: "Beruf oder Tätigkeit der Person"}, + {FieldName: dbmodels.AGENTS_PSEUDONYMS_FIELD, Help: "Pseudonyme", Description: "Pseudonyme und alternative Namen"}, + {FieldName: dbmodels.REFERENCES_FIELD, Help: "Referenzen", Description: "Verweise auf externe Quellen und Nachschlagewerke"}, + {FieldName: dbmodels.URI_FIELD, Help: "URI", Description: "Uniform Resource Identifier (externe Referenz)"}, + }, + }, + { + TableName: dbmodels.SERIES_TABLE, + Help: "Liste aller verfügbaren Reihentitel", + Description: "Diese Tabelle enthält alle Reihentitel, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Reihentiteln verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diesen Datensatz"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieses Datensatzes"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieses Datensatzes"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen und Hinweise zu diesem Datensatz"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung und zum Bearbeitungsstatus"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.EDITOR_FIELD, Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, + {FieldName: dbmodels.MUSENALMID_FIELD, Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, + {FieldName: dbmodels.EDITSTATE_FIELD, Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, + {FieldName: dbmodels.SERIES_TITLE_FIELD, Help: "Reihentitel", Description: "Titel der Reihe"}, + {FieldName: dbmodels.SERIES_PSEUDONYMS_FIELD, Help: "Alternative Titel", Description: "Alternative Titel und Schreibweisen"}, + {FieldName: dbmodels.REFERENCES_FIELD, Help: "Referenzen", Description: "Verweise auf externe Quellen und Nachschlagewerke"}, + {FieldName: dbmodels.SERIES_FREQUENCY_FIELD, Help: "Erscheinungsweise", Description: "Frequenz und Rhythmus der Veröffentlichung"}, + }, + }, + { + TableName: dbmodels.ENTRIES_TABLE, + Help: "Bibliographische Einträge aller verfügaben und gesuchten Almanache", + Description: "Diese Tabelle enthält alle Einträge, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Einträgen verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diesen Datensatz"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieses Datensatzes"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieses Datensatzes"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen und Hinweise zu diesem Datensatz"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung und zum Bearbeitungsstatus"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.EDITOR_FIELD, Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, + {FieldName: dbmodels.MUSENALMID_FIELD, Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, + {FieldName: dbmodels.EDITSTATE_FIELD, Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, + {FieldName: dbmodels.META_FIELD, Help: "Feldmetadaten", Description: "Metadaten zur Bearbeitung einzelner Felder"}, + {FieldName: dbmodels.PREFERRED_TITLE_FIELD, Help: "Bevorzugter Titel", Description: "Haupttitel des Almanachs"}, + {FieldName: dbmodels.VARIANT_TITLE_FIELD, Help: "Titelvariation", Description: "Alternative Titelform"}, + {FieldName: dbmodels.PARALLEL_TITLE_FIELD, Help: "Paralleltitel", Description: "Titel in anderer Sprache oder Schrift"}, + {FieldName: dbmodels.TITLE_STMT_FIELD, Help: "Titelangabe", Description: "Vollständige Titelangabe vom Titelblatt"}, + {FieldName: dbmodels.SUBTITLE_STMT_FIELD, Help: "Untertitel", Description: "Untertitel und Titelzusätze"}, + {FieldName: dbmodels.INCIPIT_STMT_FIELD, Help: "Incipit", Description: "Textanfang (erste Zeilen)"}, + {FieldName: dbmodels.RESPONSIBILITY_STMT_FIELD, Help: "Verantwortlichkeitsangabe", Description: "Angaben zu Autor, Herausgeber, etc."}, + {FieldName: dbmodels.PUBLICATION_STMT_FIELD, Help: "Verlagsangabe", Description: "Verlag und Veröffentlichungsangaben"}, + {FieldName: dbmodels.PLACE_STMT_FIELD, Help: "Verlagsort", Description: "Ort der Veröffentlichung"}, + {FieldName: dbmodels.YEAR_FIELD, Help: "Erscheinungsjahr", Description: "Jahr der Veröffentlichung"}, + {FieldName: dbmodels.LANGUAGE_FIELD, Help: "Sprache", Description: "Sprache(n) des Almanachs"}, + {FieldName: dbmodels.CONTENT_TYPE_FIELD, Help: "Inhaltstyp", Description: "Art des Inhalts (Text, Musik, Bild, etc.)"}, + {FieldName: dbmodels.EXTENT_FIELD, Help: "Umfang", Description: "Seitenzahl und physischer Umfang"}, + {FieldName: dbmodels.DIMENSIONS_FIELD, Help: "Abmessungen", Description: "Physische Abmessungen des Objekts"}, + {FieldName: dbmodels.NUMBERING_FIELD, Help: "Nummerierung", Description: "Position im Inhaltsverzeichnis"}, + {FieldName: dbmodels.MEDIA_TYPE_FIELD, Help: "Medientyp", Description: "Art des Mediums (ohne Hilfsmittel, audio, etc.)"}, + {FieldName: dbmodels.CARRIER_TYPE_FIELD, Help: "Datenträgertyp", Description: "Art des physischen Trägers"}, + {FieldName: dbmodels.REFERENCES_FIELD, Help: "Referenzen", Description: "Nachweise in Bibliografien und Katalogen"}, + {FieldName: dbmodels.PLACES_TABLE, Help: "Verknüpfte Orte", Description: "Orte, die mit diesem Almanach verbunden sind"}, + {FieldName: dbmodels.MUSENALM_DEPRECATED_FIELD, Help: "Veraltete Daten", Description: "Frühere Datenversionen aus dem alten System"}, + }, + }, + { + TableName: dbmodels.CONTENTS_TABLE, + Help: "Liste aller digitalisierten Beiträge", + Description: "Diese Tabelle enthält alle digitalisierten Beiträge, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Inhaltsbeiträgen verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diesen Datensatz"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieses Datensatzes"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieses Datensatzes"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen und Hinweise zu diesem Datensatz"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung und zum Bearbeitungsstatus"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.EDITOR_FIELD, Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, + {FieldName: dbmodels.MUSENALMID_FIELD, Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, + {FieldName: dbmodels.EDITSTATE_FIELD, Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, + {FieldName: dbmodels.ENTRIES_TABLE, Help: "Zugehöriger Band", Description: "Band, in dem dieser Inhalt erscheint"}, + {FieldName: dbmodels.PREFERRED_TITLE_FIELD, Help: "Bevorzugter Titel", Description: "Haupttitel des Beitrags"}, + {FieldName: dbmodels.VARIANT_TITLE_FIELD, Help: "Titelvariation", Description: "Alternative Titelform"}, + {FieldName: dbmodels.PARALLEL_TITLE_FIELD, Help: "Paralleltitel", Description: "Titel in anderer Sprache oder Schrift"}, + {FieldName: dbmodels.TITLE_STMT_FIELD, Help: "Titelangabe", Description: "Vollständige Titelangabe"}, + {FieldName: dbmodels.SUBTITLE_STMT_FIELD, Help: "Untertitel", Description: "Untertitel und Titelzusätze"}, + {FieldName: dbmodels.INCIPIT_STMT_FIELD, Help: "Incipit", Description: "Textanfang (erste Zeilen)"}, + {FieldName: dbmodels.RESPONSIBILITY_STMT_FIELD, Help: "Verantwortlichkeitsangabe", Description: "Angaben zu Autor, Illustrator, etc."}, + {FieldName: dbmodels.PUBLICATION_STMT_FIELD, Help: "Publikationsangabe", Description: "Angaben zur Erstveröffentlichung"}, + {FieldName: dbmodels.PLACE_STMT_FIELD, Help: "Ortsangabe", Description: "Ortsangaben im Kontext des Beitrags"}, + {FieldName: dbmodels.YEAR_FIELD, Help: "Jahr", Description: "Jahr des Beitrags"}, + {FieldName: dbmodels.LANGUAGE_FIELD, Help: "Sprache", Description: "Sprache(n) des Beitrags"}, + {FieldName: dbmodels.CONTENT_TYPE_FIELD, Help: "Inhaltstyp", Description: "Art des Inhalts (Gedicht, Prosa, Graphik, etc.)"}, + {FieldName: dbmodels.EXTENT_FIELD, Help: "Umfang", Description: "Seitenumfang des Beitrags"}, + {FieldName: dbmodels.DIMENSIONS_FIELD, Help: "Abmessungen", Description: "Physische Abmessungen (bei Graphiken)"}, + {FieldName: dbmodels.NUMBERING_FIELD, Help: "Nummerierung", Description: "Position im Inhaltsverzeichnis"}, + {FieldName: dbmodels.MUSENALM_INHALTE_TYPE_FIELD, Help: "Objekttyp", Description: "Kategorie des Inhaltsobjekts (Gedicht, Graphik, etc.)"}, + {FieldName: dbmodels.MUSENALM_PAGINATION_FIELD, Help: "Paginierung", Description: "Seitennummerierung (römisch, arabisch, etc.)"}, + {FieldName: dbmodels.SCAN_FIELD, Help: "Digitalisate", Description: "Verknüpfte Scans und Abbildungen"}, + }, + }, + { + TableName: dbmodels.ITEMS_TABLE, + Help: "Liste aller digitalisierten Exemplare", + Description: "Diese Tabelle enthält alle digitalisierten Exemplare, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Exemplare verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diesen Datensatz"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieses Datensatzes"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieses Datensatzes"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen und Hinweise zu diesem Datensatz"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung und zum Bearbeitungsstatus"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.EDITOR_FIELD, Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, + {FieldName: dbmodels.EDITSTATE_FIELD, Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, + {FieldName: dbmodels.ENTRIES_TABLE, Help: "Zugehöriger Band", Description: "Band, zu dem dieses Exemplar gehört"}, + {FieldName: dbmodels.ITEMS_IDENTIFIER_FIELD, Help: "Signatur", Description: "Bibliothekssignatur oder Kennzeichen"}, + {FieldName: dbmodels.ITEMS_LOCATION_FIELD, Help: "Standort", Description: "Aufbewahrungsort des Exemplars"}, + {FieldName: dbmodels.ITEMS_OWNER_FIELD, Help: "Besitzer", Description: "Eigentümer oder besitzende Institution"}, + {FieldName: dbmodels.ITEMS_MEDIA_FIELD, Help: "Medien", Description: "Zugehörige Mediendateien"}, + {FieldName: dbmodels.SCAN_FIELD, Help: "Digitalisate", Description: "Verknüpfte Scans des Exemplars"}, + {FieldName: dbmodels.ITEMS_CONDITION_FIELD, Help: "Zustand", Description: "Erhaltungszustand und Besonderheiten"}, + {FieldName: dbmodels.URI_FIELD, Help: "URI", Description: "Uniform Resource Identifier (externe Referenz)"}, + }, + }, + { + TableName: "R_" + dbmodels.ENTRIES_TABLE + "_" + dbmodels.AGENTS_TABLE, + Help: "Liste aller Verknüpfungen von Einträgen und Personen/Körperschaften", + Description: "Diese Tabelle enthält alle Verknüpfungen von Einträgen und Personen/Körperschaften, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Verknüpfungen verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diese Relation"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieser Relation"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieser Relation"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen zu dieser Relation"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.ENTRIES_TABLE, Help: "Band", Description: "Verknüpfter Almanachband"}, + {FieldName: dbmodels.AGENTS_TABLE, Help: "Person/Körperschaft", Description: "Verknüpfte Person oder Körperschaft"}, + {FieldName: dbmodels.RELATION_TYPE_FIELD, Help: "Relationstyp", Description: "Art der Beziehung (Autor, Herausgeber, etc.)"}, + {FieldName: dbmodels.RELATION_CONJECTURE_FIELD, Help: "Vermutung", Description: "Ist diese Zuordnung eine Vermutung?"}, + {FieldName: dbmodels.RELATION_UNCERTAIN_FIELD, Help: "Unsicher", Description: "Ist diese Zuordnung unsicher?"}, + }, + }, + { + TableName: "R_" + dbmodels.CONTENTS_TABLE + "_" + dbmodels.AGENTS_TABLE, + Help: "Liste aller Verknüpfungen von Inhaltsbeiträgen und Personen/Körperschaften", + Description: "Diese Tabelle enthält alle Verknüpfungen von Inhaltsbeiträgen und Personen/Körperschaften, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Verknüpfungen verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diese Relation"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieser Relation"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieser Relation"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen zu dieser Relation"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.CONTENTS_TABLE, Help: "Inhalt", Description: "Verknüpfter Inhaltsbeitrag"}, + {FieldName: dbmodels.AGENTS_TABLE, Help: "Person/Körperschaft", Description: "Verknüpfte Person oder Körperschaft"}, + {FieldName: dbmodels.RELATION_TYPE_FIELD, Help: "Relationstyp", Description: "Art der Beziehung (Autor, Stecher, etc.)"}, + {FieldName: dbmodels.RELATION_CONJECTURE_FIELD, Help: "Vermutung", Description: "Ist diese Zuordnung eine Vermutung?"}, + {FieldName: dbmodels.RELATION_UNCERTAIN_FIELD, Help: "Unsicher", Description: "Ist diese Zuordnung unsicher?"}, + }, + }, + { + TableName: "R_" + dbmodels.ENTRIES_TABLE + "_" + dbmodels.SERIES_TABLE, + Help: "Liste aller Verknüpfungen von Einträgen und Reihentiteln", + Description: "Diese Tabelle enthält alle Verknüpfungen von Einträgen und Reihentiteln, die in der Musenalm-Datenbank verwendet werden. Diese Liste wird für die Erstellung von Verknüpfungen verwendet.", + Common: []FieldHelpEntry{ + {FieldName: dbmodels.ID_FIELD, Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diese Relation"}, + {FieldName: dbmodels.CREATED_FIELD, Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieser Relation"}, + {FieldName: dbmodels.UPDATED_FIELD, Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieser Relation"}, + {FieldName: dbmodels.ANNOTATION_FIELD, Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen zu dieser Relation"}, + {FieldName: dbmodels.COMMENT_FIELD, Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung"}, + }, + Entries: []FieldHelpEntry{ + {FieldName: dbmodels.ENTRIES_TABLE, Help: "Band", Description: "Verknüpfter Almanachband"}, + {FieldName: dbmodels.SERIES_TABLE, Help: "Reihe", Description: "Verknüpfter Reihentitel"}, + {FieldName: dbmodels.RELATION_TYPE_FIELD, Help: "Relationstyp", Description: "Art der Beziehung (Bevorzugter Titel, Alternative, etc.)"}, + {FieldName: dbmodels.RELATION_CONJECTURE_FIELD, Help: "Vermutung", Description: "Ist diese Zuordnung eine Vermutung?"}, + {FieldName: dbmodels.RELATION_UNCERTAIN_FIELD, Help: "Unsicher", Description: "Ist diese Zuordnung unsicher?"}, + }, + }, +} + +func init() { + m.Register(func(app core.App) error { + collection, err := app.FindCollectionByNameOrId(dbmodels.HTML_TABLE) + if err != nil { + app.Logger().Error("Could not find HTML table!", "error", err) + return err + } + + fieldHelps := getAllFieldHelps() + + for _, fh := range fieldHelps { + if fh.FieldName != "" { + // Create help entry + helpRecord := core.NewRecord(collection) + helpRecord.Set(dbmodels.KEY_FIELD, "help."+fh.TableName+"."+fh.FieldName) + helpRecord.Set(dbmodels.HTML_FIELD, fh.Help) + if err := app.Save(helpRecord); err != nil { + app.Logger().Error("Failed to save help record", "error", err, "key", helpRecord.GetString(dbmodels.KEY_FIELD)) + } + + // Create description entry + descRecord := core.NewRecord(collection) + descRecord.Set(dbmodels.KEY_FIELD, "description."+fh.TableName+"."+fh.FieldName) + descRecord.Set(dbmodels.HTML_FIELD, fh.Description) + if err := app.Save(descRecord); err != nil { + app.Logger().Error("Failed to save description record", "error", err, "key", descRecord.GetString(dbmodels.KEY_FIELD)) + } + } else { + helpRecord := core.NewRecord(collection) + helpRecord.Set(dbmodels.KEY_FIELD, "help."+fh.TableName) + helpRecord.Set(dbmodels.HTML_FIELD, fh.Help) + if err := app.Save(helpRecord); err != nil { + app.Logger().Error("Failed to save help record", "error", err, "key", helpRecord.GetString(dbmodels.KEY_FIELD)) + } + + descRecord := core.NewRecord(collection) + descRecord.Set(dbmodels.KEY_FIELD, "description."+fh.TableName) + descRecord.Set(dbmodels.HTML_FIELD, fh.Description) + if err := app.Save(descRecord); err != nil { + app.Logger().Error("Failed to save description record", "error", err, "key", descRecord.GetString(dbmodels.KEY_FIELD)) + } + } + } + + return nil + }, func(app core.App) error { + collection, err := app.FindCollectionByNameOrId(dbmodels.HTML_TABLE) + if err != nil { + return err + } + + fieldHelps := getAllFieldHelps() + + for _, fh := range fieldHelps { + if fh.FieldName != "" { + // Delete help entries + helpKey := "help." + fh.TableName + "." + fh.FieldName + helpRecord, _ := app.FindFirstRecordByData(collection.Id, dbmodels.KEY_FIELD, helpKey) + if helpRecord != nil { + app.Delete(helpRecord) + } + + // Delete description entries + descKey := "description." + fh.TableName + "." + fh.FieldName + descRecord, _ := app.FindFirstRecordByData(collection.Id, dbmodels.KEY_FIELD, descKey) + if descRecord != nil { + app.Delete(descRecord) + } + } else { + helpkey := "help." + fh.TableName + desckey := "description." + fh.TableName + helpRecord, _ := app.FindFirstRecordByData(collection.Id, dbmodels.KEY_FIELD, helpkey) + if helpRecord != nil { + app.Delete(helpRecord) + } + descRecord, _ := app.FindFirstRecordByData(collection.Id, dbmodels.KEY_FIELD, desckey) + if descRecord != nil { + app.Delete(descRecord) + } + } + } + + return nil + }) +} + +func getAllFieldHelps() []FieldHelp { + helps := make([]FieldHelp, 0) + for _, table := range fieldHelpSeed { + helps = append(helps, FieldHelp{ + TableName: table.TableName, + Help: table.Help, + Description: table.Description, + }) + for _, entry := range table.Common { + helps = append(helps, FieldHelp{ + TableName: table.TableName, + FieldName: entry.FieldName, + Help: entry.Help, + Description: entry.Description, + }) + } + for _, entry := range table.Entries { + helps = append(helps, FieldHelp{ + TableName: table.TableName, + FieldName: entry.FieldName, + Help: entry.Help, + Description: entry.Description, + }) + } + } + + return helps +} diff --git a/migrations/1736700000_field_help.go b/migrations/1736700000_field_help.go deleted file mode 100644 index 507d07a..0000000 --- a/migrations/1736700000_field_help.go +++ /dev/null @@ -1,262 +0,0 @@ -package migrations - -import ( - "github.com/Theodor-Springmann-Stiftung/musenalm/dbmodels" - "github.com/pocketbase/pocketbase/core" - m "github.com/pocketbase/pocketbase/migrations" -) - -type FieldHelp struct { - TableName string - FieldName string - Help string - Description string -} - -func init() { - m.Register(func(app core.App) error { - collection, err := app.FindCollectionByNameOrId(dbmodels.HTML_TABLE) - if err != nil { - app.Logger().Error("Could not find HTML table!", "error", err) - return err - } - - fieldHelps := getAllFieldHelps() - - for _, fh := range fieldHelps { - // Create help entry - helpRecord := core.NewRecord(collection) - helpRecord.Set(dbmodels.KEY_FIELD, "help."+fh.TableName+"."+fh.FieldName) - helpRecord.Set(dbmodels.HTML_FIELD, fh.Help) - if err := app.Save(helpRecord); err != nil { - app.Logger().Error("Failed to save help record", "error", err, "key", helpRecord.GetString(dbmodels.KEY_FIELD)) - } - - // Create description entry - descRecord := core.NewRecord(collection) - descRecord.Set(dbmodels.KEY_FIELD, "description."+fh.TableName+"."+fh.FieldName) - descRecord.Set(dbmodels.HTML_FIELD, fh.Description) - if err := app.Save(descRecord); err != nil { - app.Logger().Error("Failed to save description record", "error", err, "key", descRecord.GetString(dbmodels.KEY_FIELD)) - } - } - - return nil - }, func(app core.App) error { - collection, err := app.FindCollectionByNameOrId(dbmodels.HTML_TABLE) - if err != nil { - return err - } - - fieldHelps := getAllFieldHelps() - - for _, fh := range fieldHelps { - // Delete help entries - helpKey := "help." + fh.TableName + "." + fh.FieldName - helpRecord, _ := app.FindFirstRecordByData(collection.Id, dbmodels.KEY_FIELD, helpKey) - if helpRecord != nil { - app.Delete(helpRecord) - } - - // Delete description entries - descKey := "description." + fh.TableName + "." + fh.FieldName - descRecord, _ := app.FindFirstRecordByData(collection.Id, dbmodels.KEY_FIELD, descKey) - if descRecord != nil { - app.Delete(descRecord) - } - } - - return nil - }) -} - -func getAllFieldHelps() []FieldHelp { - helps := []FieldHelp{} - - // Common fields for all tables - commonFields := []FieldHelp{ - {FieldName: "id", Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diesen Datensatz"}, - {FieldName: "created", Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieses Datensatzes"}, - {FieldName: "updated", Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieses Datensatzes"}, - {FieldName: "annotation", Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen und Hinweise zu diesem Datensatz"}, - {FieldName: "edit_comment", Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung und zum Bearbeitungsstatus"}, - } - - // Places table - for _, cf := range commonFields { - cf.TableName = dbmodels.PLACES_TABLE - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: dbmodels.PLACES_TABLE, FieldName: "editor", Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, - {TableName: dbmodels.PLACES_TABLE, FieldName: "musenalm_id", Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, - {TableName: dbmodels.PLACES_TABLE, FieldName: "edit_state", Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, - {TableName: dbmodels.PLACES_TABLE, FieldName: "name", Help: "Ortsname", Description: "Name des Ortes"}, - {TableName: dbmodels.PLACES_TABLE, FieldName: "fictional", Help: "Fiktiv", Description: "Ist dieser Ort fiktiv?"}, - {TableName: dbmodels.PLACES_TABLE, FieldName: "pseudonyms", Help: "Pseudonyme", Description: "Alternative Namen oder Pseudonyme für diesen Ort"}, - {TableName: dbmodels.PLACES_TABLE, FieldName: "uri", Help: "URI", Description: "Uniform Resource Identifier (externe Referenz)"}, - }...) - - // Agents table - for _, cf := range commonFields { - cf.TableName = dbmodels.AGENTS_TABLE - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: dbmodels.AGENTS_TABLE, FieldName: "editor", Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "musenalm_id", Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "edit_state", Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "name", Help: "Name", Description: "Name der Person oder Körperschaft"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "corporate_body", Help: "Körperschaft", Description: "Handelt es sich um eine Körperschaft (Organisation)?"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "fictional", Help: "Fiktiv", Description: "Ist diese Person/Körperschaft fiktiv?"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "biographical_data", Help: "Biografische Daten", Description: "Lebensdaten und biografische Informationen"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "profession", Help: "Beruf", Description: "Beruf oder Tätigkeit der Person"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "pseudonyms", Help: "Pseudonyme", Description: "Pseudonyme und alternative Namen"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "refs", Help: "Referenzen", Description: "Verweise auf externe Quellen und Nachschlagewerke"}, - {TableName: dbmodels.AGENTS_TABLE, FieldName: "uri", Help: "URI", Description: "Uniform Resource Identifier (externe Referenz)"}, - }...) - - // Series table - for _, cf := range commonFields { - cf.TableName = dbmodels.SERIES_TABLE - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: dbmodels.SERIES_TABLE, FieldName: "editor", Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, - {TableName: dbmodels.SERIES_TABLE, FieldName: "musenalm_id", Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, - {TableName: dbmodels.SERIES_TABLE, FieldName: "edit_state", Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, - {TableName: dbmodels.SERIES_TABLE, FieldName: "title", Help: "Reihentitel", Description: "Titel der Reihe"}, - {TableName: dbmodels.SERIES_TABLE, FieldName: "pseudonyms", Help: "Alternative Titel", Description: "Alternative Titel und Schreibweisen"}, - {TableName: dbmodels.SERIES_TABLE, FieldName: "refs", Help: "Referenzen", Description: "Verweise auf externe Quellen und Nachschlagewerke"}, - {TableName: dbmodels.SERIES_TABLE, FieldName: "frequency", Help: "Erscheinungsweise", Description: "Frequenz und Rhythmus der Veröffentlichung"}, - }...) - - // Entries table - for _, cf := range commonFields { - cf.TableName = dbmodels.ENTRIES_TABLE - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "editor", Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "musenalm_id", Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "edit_state", Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "edit_fielddata", Help: "Feldmetadaten", Description: "Metadaten zur Bearbeitung einzelner Felder"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "preferred_title", Help: "Bevorzugter Titel", Description: "Haupttitel des Almanachs"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "variant_title", Help: "Titelvariation", Description: "Alternative Titelform"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "parallel_title", Help: "Paralleltitel", Description: "Titel in anderer Sprache oder Schrift"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "title_statement", Help: "Titelangabe", Description: "Vollständige Titelangabe vom Titelblatt"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "subtitle_statement", Help: "Untertitel", Description: "Untertitel und Titelzusätze"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "incipit_statement", Help: "Incipit", Description: "Textanfang (erste Zeilen)"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "responsibility_statement", Help: "Verantwortlichkeitsangabe", Description: "Angaben zu Autor, Herausgeber, etc."}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "publication_statement", Help: "Verlagsangabe", Description: "Verlag und Veröffentlichungsangaben"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "place_statement", Help: "Verlagsort", Description: "Ort der Veröffentlichung"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "year", Help: "Erscheinungsjahr", Description: "Jahr der Veröffentlichung"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "language", Help: "Sprache", Description: "Sprache(n) des Almanachs"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "content_type", Help: "Inhaltstyp", Description: "Art des Inhalts (Text, Musik, Bild, etc.)"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "extent", Help: "Umfang", Description: "Seitenzahl und physischer Umfang"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "dimensions", Help: "Abmessungen", Description: "Physische Abmessungen des Objekts"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "edition", Help: "Ausgabebezeichnung", Description: "Auflage oder Ausgabe"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "media_type", Help: "Medientyp", Description: "Art des Mediums (ohne Hilfsmittel, audio, etc.)"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "carrier_type", Help: "Datenträgertyp", Description: "Art des physischen Trägers"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "refs", Help: "Referenzen", Description: "Nachweise in Bibliografien und Katalogen"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "places", Help: "Verknüpfte Orte", Description: "Orte, die mit diesem Almanach verbunden sind"}, - {TableName: dbmodels.ENTRIES_TABLE, FieldName: "musenalm_deprecated", Help: "Veraltete Daten", Description: "Frühere Datenversionen aus dem alten System"}, - }...) - - // Contents table - for _, cf := range commonFields { - cf.TableName = dbmodels.CONTENTS_TABLE - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "editor", Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "musenalm_id", Help: "Musenalm ID", Description: "Interne Musenalm-Identifikationsnummer"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "edit_state", Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "entries", Help: "Zugehöriger Band", Description: "Band, in dem dieser Inhalt erscheint"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "preferred_title", Help: "Bevorzugter Titel", Description: "Haupttitel des Beitrags"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "variant_title", Help: "Titelvariation", Description: "Alternative Titelform"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "parallel_title", Help: "Paralleltitel", Description: "Titel in anderer Sprache oder Schrift"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "title_statement", Help: "Titelangabe", Description: "Vollständige Titelangabe"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "subtitle_statement", Help: "Untertitel", Description: "Untertitel und Titelzusätze"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "incipit_statement", Help: "Incipit", Description: "Textanfang (erste Zeilen)"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "responsibility_statement", Help: "Verantwortlichkeitsangabe", Description: "Angaben zu Autor, Illustrator, etc."}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "publication_statement", Help: "Publikationsangabe", Description: "Angaben zur Erstveröffentlichung"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "place_statement", Help: "Ortsangabe", Description: "Ortsangaben im Kontext des Beitrags"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "year", Help: "Jahr", Description: "Jahr des Beitrags"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "language", Help: "Sprache", Description: "Sprache(n) des Beitrags"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "content_type", Help: "Inhaltstyp", Description: "Art des Inhalts (Gedicht, Prosa, Graphik, etc.)"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "extent", Help: "Umfang", Description: "Seitenumfang des Beitrags"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "dimensions", Help: "Abmessungen", Description: "Physische Abmessungen (bei Graphiken)"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "numbering", Help: "Nummerierung", Description: "Position im Inhaltsverzeichnis"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "musenalm_type", Help: "Objekttyp", Description: "Kategorie des Inhaltsobjekts (Gedicht, Graphik, etc.)"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "musenalm_pagination", Help: "Paginierung", Description: "Seitennummerierung (römisch, arabisch, etc.)"}, - {TableName: dbmodels.CONTENTS_TABLE, FieldName: "scans", Help: "Digitalisate", Description: "Verknüpfte Scans und Abbildungen"}, - }...) - - // Items table - for _, cf := range commonFields { - cf.TableName = dbmodels.ITEMS_TABLE - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: dbmodels.ITEMS_TABLE, FieldName: "editor", Help: "Bearbeiter", Description: "Person, die diesen Datensatz bearbeitet hat"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "edit_state", Help: "Bearbeitungsstatus", Description: "Aktueller Status der Bearbeitung"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "entries", Help: "Zugehöriger Band", Description: "Band, zu dem dieses Exemplar gehört"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "identifier", Help: "Signatur", Description: "Bibliothekssignatur oder Kennzeichen"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "location", Help: "Standort", Description: "Aufbewahrungsort des Exemplars"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "owner", Help: "Besitzer", Description: "Eigentümer oder besitzende Institution"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "media", Help: "Medien", Description: "Zugehörige Mediendateien"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "scans", Help: "Digitalisate", Description: "Verknüpfte Scans des Exemplars"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "condition", Help: "Zustand", Description: "Erhaltungszustand und Besonderheiten"}, - {TableName: dbmodels.ITEMS_TABLE, FieldName: "uri", Help: "URI", Description: "Uniform Resource Identifier (externe Referenz)"}, - }...) - - // R_entries_agents table - relationCommonFields := []FieldHelp{ - {FieldName: "id", Help: "Eindeutige Identifikationsnummer", Description: "Systemgenerierte eindeutige ID für diese Relation"}, - {FieldName: "created", Help: "Erstellungsdatum", Description: "Zeitpunkt der Erstellung dieser Relation"}, - {FieldName: "updated", Help: "Aktualisierungsdatum", Description: "Zeitpunkt der letzten Änderung dieser Relation"}, - {FieldName: "annotation", Help: "Anmerkungen", Description: "Zusätzliche Anmerkungen zu dieser Relation"}, - {FieldName: "edit_comment", Help: "Bearbeitungskommentar", Description: "Kommentare zur Bearbeitung"}, - } - - for _, cf := range relationCommonFields { - cf.TableName = "R_entries_agents" - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: "R_entries_agents", FieldName: "entries", Help: "Band", Description: "Verknüpfter Almanachband"}, - {TableName: "R_entries_agents", FieldName: "agents", Help: "Person/Körperschaft", Description: "Verknüpfte Person oder Körperschaft"}, - {TableName: "R_entries_agents", FieldName: "type", Help: "Relationstyp", Description: "Art der Beziehung (Autor, Herausgeber, etc.)"}, - {TableName: "R_entries_agents", FieldName: "conjecture", Help: "Vermutung", Description: "Ist diese Zuordnung eine Vermutung?"}, - {TableName: "R_entries_agents", FieldName: "uncertain", Help: "Unsicher", Description: "Ist diese Zuordnung unsicher?"}, - }...) - - // R_contents_agents table - for _, cf := range relationCommonFields { - cf.TableName = "R_contents_agents" - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: "R_contents_agents", FieldName: "contents", Help: "Inhalt", Description: "Verknüpfter Inhaltsbeitrag"}, - {TableName: "R_contents_agents", FieldName: "agents", Help: "Person/Körperschaft", Description: "Verknüpfte Person oder Körperschaft"}, - {TableName: "R_contents_agents", FieldName: "type", Help: "Relationstyp", Description: "Art der Beziehung (Autor, Stecher, etc.)"}, - {TableName: "R_contents_agents", FieldName: "conjecture", Help: "Vermutung", Description: "Ist diese Zuordnung eine Vermutung?"}, - {TableName: "R_contents_agents", FieldName: "uncertain", Help: "Unsicher", Description: "Ist diese Zuordnung unsicher?"}, - }...) - - // R_entries_series table - for _, cf := range relationCommonFields { - cf.TableName = "R_entries_series" - helps = append(helps, cf) - } - helps = append(helps, []FieldHelp{ - {TableName: "R_entries_series", FieldName: "entries", Help: "Band", Description: "Verknüpfter Almanachband"}, - {TableName: "R_entries_series", FieldName: "series", Help: "Reihe", Description: "Verknüpfter Reihentitel"}, - {TableName: "R_entries_series", FieldName: "type", Help: "Relationstyp", Description: "Art der Beziehung (Bevorzugter Titel, Alternative, etc.)"}, - {TableName: "R_entries_series", FieldName: "conjecture", Help: "Vermutung", Description: "Ist diese Zuordnung eine Vermutung?"}, - {TableName: "R_entries_series", FieldName: "uncertain", Help: "Unsicher", Description: "Ist diese Zuordnung unsicher?"}, - }...) - - return helps -}