Anzeige scheint OK

This commit is contained in:
2025-07-27 14:11:19 +02:00
parent 3fbfd73da4
commit 91df300e47
3 changed files with 181 additions and 21 deletions
+8 -1
View File
@@ -1324,10 +1324,17 @@ func GetAvailableSkills(c *gin.Context) {
// Hole alle verfügbaren Fertigkeiten aus der gsmaster Datenbank, aber filtere Placeholder aus
var allSkills []gsmaster.Skill
if err := database.DB.Where("name != ?", "Placeholder").Find(&allSkills).Error; err != nil {
allSkills, err := gsmaster.SelectSkills("", "")
if err != nil {
respondWithError(c, http.StatusInternalServerError, "Failed to retrieve skills from gsmaster")
return
}
/*if err := database.DB.Where("name != ?", "Placeholder").Find(&allSkills).Error; err != nil {
respondWithError(c, http.StatusInternalServerError, "Failed to retrieve skills")
return
}
*/
// Erstelle eine Map der bereits gelernten Fertigkeiten
learnedSkills := make(map[string]bool)
+27
View File
@@ -163,6 +163,33 @@ func (object *Skill) FirstId(value uint) error {
return nil
}
func (object *Skill) Select(fieldName string, value string) ([]Skill, error) {
gameSystem := "midgard"
var skills []Skill
err := database.DB.Find(&skills, "game_system=? AND name != 'Placeholder' AND "+fieldName+" = ?", gameSystem, value).Error
if err != nil {
return nil, err
}
return skills, nil
}
func SelectSkills(fieldName string, value string) ([]Skill, error) {
gameSystem := "midgard"
var skills []Skill
if fieldName == "" {
err := database.DB.Find(&skills, "game_system=? AND name != 'Placeholder'", gameSystem).Error
if err != nil {
return nil, err
}
} else {
err := database.DB.Find(&skills, "game_system=? AND name != 'Placeholder' AND "+fieldName+" = ?", gameSystem, value).Error
if err != nil {
return nil, err
}
}
return skills, nil
}
func (object *Skill) Save() error {
err := database.DB.Save(&object).Error
if err != nil {