Drop metadata attr

Fixes #26
This commit is contained in:
Matthew Dillon 2015-11-13 13:08:08 -07:00
parent 9b36644a31
commit a482a083bf
14 changed files with 13 additions and 86 deletions

View file

@ -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
}

View file

@ -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
}

View file

@ -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
}

View file

@ -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
}

View file

@ -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"

View file

@ -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{}

View file

@ -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{}

View file

@ -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 }

View file

@ -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

View file

@ -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 {

View file

@ -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.

View file

@ -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.

View file

@ -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.

View file

@ -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.