parent
							
								
									2894efaf46
								
							
						
					
					
						commit
						708eed5817
					
				
					 6 changed files with 62 additions and 14 deletions
				
			
		|  | @ -42,11 +42,15 @@ func (c *CharacteristicBase) validate() types.ValidationError { | |||
| 	cv := make(types.ValidationError, 0) | ||||
| 
 | ||||
| 	if c.CharacteristicName == "" { | ||||
| 		cv["Name"] = []string{helpers.MustProvideAValue} | ||||
| 		cv = append(cv, types.NewValidationError( | ||||
| 			"characteristicName", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if c.CharacteristicTypeID == 0 { | ||||
| 		cv["Characteristic Type"] = []string{helpers.MustProvideAValue} | ||||
| 		cv = append(cv, types.NewValidationError( | ||||
| 			"characteristicType", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if len(cv) > 0 { | ||||
|  |  | |||
|  | @ -43,11 +43,21 @@ func (m *MeasurementBase) validate() types.ValidationError { | |||
| 	mv := make(types.ValidationError, 0) | ||||
| 
 | ||||
| 	if m.StrainID == 0 { | ||||
| 		mv["Strain"] = []string{helpers.MustProvideAValue} | ||||
| 		mv = append(mv, types.NewValidationError( | ||||
| 			"strain", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if m.CharacteristicID == 0 { | ||||
| 		mv["Characteristic"] = []string{helpers.MustProvideAValue} | ||||
| 		mv = append(mv, types.NewValidationError( | ||||
| 			"characteristic", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if m.TextMeasurementTypeID.Valid == false && m.TxtValue.Valid == false && m.NumValue.Valid == false { | ||||
| 		mv = append(mv, types.NewValidationError( | ||||
| 			"value", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if len(mv) > 0 { | ||||
|  | @ -119,7 +129,9 @@ func (m *Measurement) UnmarshalJSON(b []byte) error { | |||
| 		id, err := GetTextMeasurementTypeID(v) | ||||
| 		if err != nil { | ||||
| 			if err == sql.ErrNoRows { | ||||
| 				measurement.TxtValue = types.NullString{sql.NullString{String: v, Valid: true}} | ||||
| 				if v != "" { | ||||
| 					measurement.TxtValue = types.NullString{sql.NullString{String: v, Valid: true}} | ||||
| 				} | ||||
| 			} else { | ||||
| 				return err | ||||
| 			} | ||||
|  |  | |||
|  | @ -43,11 +43,15 @@ func (s *SpeciesBase) validate() types.ValidationError { | |||
| 	sv := make(types.ValidationError, 0) | ||||
| 
 | ||||
| 	if s.GenusID == 0 { | ||||
| 		sv["Genus"] = []string{helpers.MustProvideAValue} | ||||
| 		sv = append(sv, types.NewValidationError( | ||||
| 			"genus", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if s.SpeciesName == "" { | ||||
| 		sv["Species"] = []string{helpers.MustProvideAValue} | ||||
| 		sv = append(sv, types.NewValidationError( | ||||
| 			"speciesName", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if len(sv) > 0 { | ||||
|  |  | |||
|  | @ -43,11 +43,15 @@ func (s *StrainBase) validate() types.ValidationError { | |||
| 	sv := make(types.ValidationError, 0) | ||||
| 
 | ||||
| 	if s.SpeciesID == 0 { | ||||
| 		sv["Species"] = []string{helpers.MustProvideAValue} | ||||
| 		sv = append(sv, types.NewValidationError( | ||||
| 			"species", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if s.StrainName == "" { | ||||
| 		sv["Name"] = []string{helpers.MustProvideAValue} | ||||
| 		sv = append(sv, types.NewValidationError( | ||||
| 			"strainName", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if len(sv) > 0 { | ||||
|  |  | |||
|  | @ -43,20 +43,28 @@ func (u *UserBase) validate() types.ValidationError { | |||
| 	uv := make(types.ValidationError, 0) | ||||
| 
 | ||||
| 	if u.Name == "" { | ||||
| 		uv["Name"] = []string{helpers.MustProvideAValue} | ||||
| 		uv = append(uv, types.NewValidationError( | ||||
| 			"name", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	if u.Email == "" { | ||||
| 		uv["Email"] = []string{helpers.MustProvideAValue} | ||||
| 		uv = append(uv, types.NewValidationError( | ||||
| 			"email", | ||||
| 			helpers.MustProvideAValue)) | ||||
| 	} | ||||
| 
 | ||||
| 	regex, _ := regexp.Compile(`(\w[-._\w]*\w@\w[-._\w]*\w\.\w{2,3})`) | ||||
| 	if u.Email != "" && !regex.MatchString(u.Email) { | ||||
| 		uv["Email"] = []string{"Must provide a valid email address"} | ||||
| 		uv = append(uv, types.NewValidationError( | ||||
| 			"email", | ||||
| 			"Must provide a valid email address")) | ||||
| 	} | ||||
| 
 | ||||
| 	if len(u.Password) < 8 { | ||||
| 		uv["Password"] = []string{"Password must be at least 8 characters"} | ||||
| 		uv = append(uv, types.NewValidationError( | ||||
| 			"password", | ||||
| 			"Password must be at least 8 characters")) | ||||
| 	} | ||||
| 
 | ||||
| 	if len(uv) > 0 { | ||||
|  |  | |||
		Reference in a new issue
	
	 Matthew Dillon
						Matthew Dillon