parent
9b36644a31
commit
a482a083bf
14 changed files with 13 additions and 86 deletions
|
@ -72,9 +72,6 @@ func (c CharacteristicService) List(val *url.Values, claims *types.Claims) (type
|
|||
Measurements: measurements,
|
||||
Strains: strains,
|
||||
Species: species,
|
||||
Meta: &models.CharacteristicMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
},
|
||||
}
|
||||
|
||||
return &payload, nil
|
||||
|
@ -191,9 +188,7 @@ func (c CharacteristicService) Create(e *types.Entity, genus string, claims *typ
|
|||
}
|
||||
|
||||
payload.Characteristic = characteristic
|
||||
payload.Meta = &models.CharacteristicMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -50,9 +50,6 @@ func (s SpeciesService) List(val *url.Values, claims *types.Claims) (types.Entit
|
|||
payload := payloads.ManySpecies{
|
||||
Species: species,
|
||||
Strains: strains,
|
||||
Meta: &models.SpeciesMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
},
|
||||
}
|
||||
|
||||
return &payload, nil
|
||||
|
@ -73,9 +70,6 @@ func (s SpeciesService) Get(id int64, genus string, claims *types.Claims) (types
|
|||
payload := payloads.Species{
|
||||
Species: species,
|
||||
Strains: strains,
|
||||
Meta: &models.SpeciesMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
},
|
||||
}
|
||||
|
||||
return &payload, nil
|
||||
|
@ -116,9 +110,6 @@ func (s SpeciesService) Update(id int64, e *types.Entity, genus string, claims *
|
|||
|
||||
payload.Species = species
|
||||
payload.Strains = strains
|
||||
payload.Meta = &models.SpeciesMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
@ -151,9 +142,6 @@ func (s SpeciesService) Create(e *types.Entity, genus string, claims *types.Clai
|
|||
// Note, no strains when new species
|
||||
|
||||
payload.Species = species
|
||||
payload.Meta = &models.SpeciesMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -85,9 +85,6 @@ func (s StrainService) List(val *url.Values, claims *types.Claims) (types.Entity
|
|||
Species: species,
|
||||
Measurements: measurements,
|
||||
Characteristics: characteristics,
|
||||
Meta: &models.StrainMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
},
|
||||
}
|
||||
|
||||
return &payload, nil
|
||||
|
@ -141,9 +138,6 @@ func (s StrainService) Get(id int64, genus string, claims *types.Claims) (types.
|
|||
Species: &manySpecies,
|
||||
Characteristics: characteristics,
|
||||
Measurements: measurements,
|
||||
Meta: &models.StrainMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
},
|
||||
}
|
||||
|
||||
return &payload, nil
|
||||
|
@ -179,9 +173,6 @@ func (s StrainService) Update(id int64, e *types.Entity, genus string, claims *t
|
|||
|
||||
payload.Strain = strain
|
||||
payload.Species = &manySpecies
|
||||
payload.Meta = &models.StrainMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
@ -213,9 +204,6 @@ func (s StrainService) Create(e *types.Entity, genus string, claims *types.Claim
|
|||
|
||||
payload.Strain = strain
|
||||
payload.Species = &manySpecies
|
||||
payload.Meta = &models.StrainMeta{
|
||||
CanAdd: helpers.CanAdd(claims),
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
|
|
@ -57,9 +57,6 @@ func (u UserService) List(val *url.Values, claims *types.Claims) (types.Entity,
|
|||
|
||||
payload := payloads.Users{
|
||||
Users: users,
|
||||
Meta: &models.UserMeta{
|
||||
CanAdd: claims.Role == "A",
|
||||
},
|
||||
}
|
||||
return &payload, nil
|
||||
}
|
||||
|
@ -79,9 +76,6 @@ func (u UserService) Get(id int64, dummy string, claims *types.Claims) (types.En
|
|||
|
||||
payload := payloads.User{
|
||||
User: user,
|
||||
Meta: &models.UserMeta{
|
||||
CanAdd: claims.Role == "A",
|
||||
},
|
||||
}
|
||||
return &payload, nil
|
||||
}
|
||||
|
|
|
@ -88,11 +88,6 @@ func GetClaims(r *http.Request) types.Claims {
|
|||
return claims
|
||||
}
|
||||
|
||||
// CanAdd is an authorization helper for adding new entities
|
||||
func CanAdd(claims *types.Claims) bool {
|
||||
return claims.Role == "A" || claims.Role == "W"
|
||||
}
|
||||
|
||||
// CanEdit is an authorization helper for editing entities
|
||||
func CanEdit(claims *types.Claims, author int64) bool {
|
||||
return claims.Sub == author || claims.Role == "A"
|
||||
|
|
|
@ -85,11 +85,6 @@ type Characteristic struct {
|
|||
// Characteristics are multiple characteristic entities
|
||||
type Characteristics []*Characteristic
|
||||
|
||||
// CharacteristicMeta stashes some metadata related to the entity
|
||||
type CharacteristicMeta struct {
|
||||
CanAdd bool `json:"canAdd"`
|
||||
}
|
||||
|
||||
// ListCharacteristics returns all characteristics
|
||||
func ListCharacteristics(opt helpers.ListOptions, claims *types.Claims) (*Characteristics, error) {
|
||||
var vals []interface{}
|
||||
|
|
|
@ -166,11 +166,6 @@ func (m *Measurement) Value() string {
|
|||
// Measurements are multiple measurement entities
|
||||
type Measurements []*Measurement
|
||||
|
||||
// MeasurementMeta stashes some metadata related to the entity
|
||||
type MeasurementMeta struct {
|
||||
CanAdd bool `json:"canAdd"`
|
||||
}
|
||||
|
||||
// ListMeasurements returns all measurements
|
||||
func ListMeasurements(opt helpers.MeasurementListOptions, claims *types.Claims) (*Measurements, error) {
|
||||
var vals []interface{}
|
||||
|
|
|
@ -89,11 +89,6 @@ type Species struct {
|
|||
// ManySpecies is multiple species entities.
|
||||
type ManySpecies []*Species
|
||||
|
||||
// SpeciesMeta stashes some metadata related to the entity.
|
||||
type SpeciesMeta struct {
|
||||
CanAdd bool `json:"canAdd"`
|
||||
}
|
||||
|
||||
// GenusIDFromName looks up the genus' ID.
|
||||
func GenusIDFromName(genusName string) (int64, error) {
|
||||
var genusID struct{ ID int64 }
|
||||
|
|
|
@ -92,11 +92,6 @@ type Strain struct {
|
|||
// Strains are multiple strain entities.
|
||||
type Strains []*Strain
|
||||
|
||||
// StrainMeta stashes some metadata related to the entity.
|
||||
type StrainMeta struct {
|
||||
CanAdd bool `json:"canAdd"`
|
||||
}
|
||||
|
||||
// SpeciesName returns a strain's species name.
|
||||
func (s StrainBase) SpeciesName() string {
|
||||
var species SpeciesBase
|
||||
|
|
|
@ -104,11 +104,6 @@ type UserValidation struct {
|
|||
// Users are multiple user entities.
|
||||
type Users []*User
|
||||
|
||||
// UserMeta stashes some metadata related to the entity.
|
||||
type UserMeta struct {
|
||||
CanAdd bool `json:"canAdd"`
|
||||
}
|
||||
|
||||
// DbAuthenticate authenticates a user.
|
||||
// For thermokarst/jwt: authentication callback
|
||||
func DbAuthenticate(email string, password string) error {
|
||||
|
|
|
@ -9,21 +9,19 @@ import (
|
|||
// Characteristic is a payload that sideloads all of the necessary entities for
|
||||
// a particular characteristic.
|
||||
type Characteristic struct {
|
||||
Characteristic *models.Characteristic `json:"characteristic"`
|
||||
Measurements *models.Measurements `json:"measurements"`
|
||||
Strains *models.Strains `json:"strains"`
|
||||
Species *models.ManySpecies `json:"species"`
|
||||
Meta *models.CharacteristicMeta `json:"meta"`
|
||||
Characteristic *models.Characteristic `json:"characteristic"`
|
||||
Measurements *models.Measurements `json:"measurements"`
|
||||
Strains *models.Strains `json:"strains"`
|
||||
Species *models.ManySpecies `json:"species"`
|
||||
}
|
||||
|
||||
// Characteristics is a payload that sideloads all of the necessary entities for
|
||||
// multiple characteristics.
|
||||
type Characteristics struct {
|
||||
Characteristics *models.Characteristics `json:"characteristics"`
|
||||
Measurements *models.Measurements `json:"measurements"`
|
||||
Strains *models.Strains `json:"strains"`
|
||||
Species *models.ManySpecies `json:"species"`
|
||||
Meta *models.CharacteristicMeta `json:"meta"`
|
||||
Characteristics *models.Characteristics `json:"characteristics"`
|
||||
Measurements *models.Measurements `json:"measurements"`
|
||||
Strains *models.Strains `json:"strains"`
|
||||
Species *models.ManySpecies `json:"species"`
|
||||
}
|
||||
|
||||
// Marshal satisfies the CRUD interfaces.
|
||||
|
|
|
@ -9,9 +9,8 @@ import (
|
|||
// Species is a payload that sideloads all of the necessary entities for a
|
||||
// particular species.
|
||||
type Species struct {
|
||||
Species *models.Species `json:"species"`
|
||||
Strains *models.Strains `json:"strains"`
|
||||
Meta *models.SpeciesMeta `json:"meta"`
|
||||
Species *models.Species `json:"species"`
|
||||
Strains *models.Strains `json:"strains"`
|
||||
}
|
||||
|
||||
// ManySpecies is a payload that sideloads all of the necessary entities for
|
||||
|
@ -19,7 +18,6 @@ type Species struct {
|
|||
type ManySpecies struct {
|
||||
Species *models.ManySpecies `json:"species"`
|
||||
Strains *models.Strains `json:"strains"`
|
||||
Meta *models.SpeciesMeta `json:"meta"`
|
||||
}
|
||||
|
||||
// Marshal satisfies the CRUD interfaces.
|
||||
|
|
|
@ -13,7 +13,6 @@ type Strain struct {
|
|||
Species *models.ManySpecies `json:"species"`
|
||||
Characteristics *models.Characteristics `json:"characteristics"`
|
||||
Measurements *models.Measurements `json:"measurements"`
|
||||
Meta *models.StrainMeta `json:"meta"`
|
||||
}
|
||||
|
||||
// Strains is a payload that sideloads all of the necessary entities for
|
||||
|
@ -23,7 +22,6 @@ type Strains struct {
|
|||
Species *models.ManySpecies `json:"species"`
|
||||
Characteristics *models.Characteristics `json:"characteristics"`
|
||||
Measurements *models.Measurements `json:"measurements"`
|
||||
Meta *models.StrainMeta `json:"meta"`
|
||||
}
|
||||
|
||||
// Marshal satisfies the CRUD interfaces.
|
||||
|
|
|
@ -9,15 +9,13 @@ import (
|
|||
// User is a payload that sideloads all of the necessary entities for a
|
||||
// particular user.
|
||||
type User struct {
|
||||
User *models.User `json:"user"`
|
||||
Meta *models.UserMeta `json:"meta"`
|
||||
User *models.User `json:"user"`
|
||||
}
|
||||
|
||||
// Users is a payload that sideloads all of the necessary entities for
|
||||
// multiple users.
|
||||
type Users struct {
|
||||
Users *models.Users `json:"users"`
|
||||
Meta *models.UserMeta `json:"meta"`
|
||||
Users *models.Users `json:"users"`
|
||||
}
|
||||
|
||||
// Marshal satisfies the CRUD interfaces.
|
||||
|
|
Reference in a new issue