lib-cvdata/projects.go
2022-01-10 13:01:15 +00:00

61 lines
1.9 KiB
Go

package cvdata
import (
"fmt"
utils "github.com/jesusperez/datautils"
)
type ProjectType struct {
Auth AuthInfoType `yaml:"auth" json:"auth"`
Date string `yaml:"date" json:"date"`
Name string `yaml:"name" json:"name"`
Title string `yaml:"title" json:"title"`
Img string `yaml:"img" json:"img"`
Site string `yaml:"site" json:"site"`
Code string `yaml:"code" json:"code"`
Purpose string `yaml:"purpose" json:"purpose"`
For string `yaml:"for" json:"for"`
Position string `yaml:"position" json:"position"`
License string `yaml:"license" json:"license"`
Demo string `yaml:"demo" json:"demo"`
Capture string `yaml:"capture" json:"capture"`
Description string `yaml:"description" json:"description"`
Features []string `yaml:"features" json:"features"`
Builtwith []string `yaml:"builtwith" json:"builtwith"`
}
type Projects struct {
Projects []ProjectType `yaml:"projects" json:"projects"`
}
type ShowProjectType struct {
Auth AuthInfoType `yaml:"auth" json:"auth"`
Name bool `yaml:"name" json:"name"`
Title bool `yaml:"title" json:"title"`
Img bool `yaml:"img" json:"img"`
Purpose bool `yaml:"purpose" json:"purpose"`
Site bool `yaml:"site" json:"site"`
Code bool `yaml:"code" json:"code"`
Date bool `yaml:"date" json:"date"`
For bool `yaml:"for" json:"for"`
Position bool `yaml:"position" json:"position"`
License bool `yaml:"license" json:"license"`
Demo bool `yaml:"demo" json:"demo"`
Capture bool `yaml:"capture" json:"capture"`
Description bool `yaml:"description" json:"description"`
Features bool `yaml:"features" json:"features"`
Builtwith bool `yaml:"builtwith" json:"builtwith"`
}
func (projects *Projects)Load(path string) ([]ProjectType, error) {
d,file,errpath := utils.DecoderFromFile(path)
if errpath != nil {
return projects.Projects, errpath
}
defer file.Close()
if err := d.Decode(&projects); err != nil {
fmt.Printf("Decode: %v", err)
return projects.Projects, err
}
return projects.Projects, nil
}