CV/model.go
Dan Anglin 04162a27bc
feat: ability to specify a current employment
This commit allows the user to specify a company that they are currently
employed at.

Changes include:

- add present field to the Duration type.
- add durationToString function to output the duration type as a
formatted string.
- if the present field is used and the value is either 'true' or 'yes'
(case insensitive) this will be reflected on the CV.
- add durationToString to fmap.
- updated CV template to use the durationToString function.
2020-08-03 22:32:26 +01:00

52 lines
1.4 KiB
Go

package main
type Cv struct {
FirstName string `json:"firstName"`
LastName string `json:"lastName"`
JobTitle string `json:"jobTitle"`
Contact Contact `json:"contact"`
Links Links `json:"links"`
Summary []string `json:"summary"`
Technologies []Technologies `json:"technologies"`
Employment []Experience `json:"employment"`
Education []Experience `json:"education"`
Interests []string `json:"interests"`
}
type Contact struct {
Email string `json:"email"`
Phone string `json:"phone"`
Location string `json:"location"`
}
type Links struct {
GitLab string `json:"gitlab"`
GitHub string `json:"github"`
Website string `json:"website,omitempty"`
}
type Technologies struct {
Category string `json:"category"`
Values []string `json:"values"`
}
type Experience struct {
Company string `json:"company,omitempty"`
School string `json:"school,omitempty"`
Location string `json:"location"`
JobTitle string `json:"jobTitle,omitempty"`
Qualification string `json:"qualification,omitempty"`
Duration Duration `json:"duration"`
Details []string `json:"details"`
}
type Duration struct {
Start Date `json:"start"`
End Date `json:"end"`
Present string `json:"present"`
}
type Date struct {
Year string `json:"year"`
Month string `json:"month"`
}