code: func validateNewAvatar(w http.ResponseWriter, label string, u *user.User) bool {
  	if !user.IsValidLabel(label) {
  		http.Error(w, http.StatusText(http.StatusBadRequest), http.StatusBadRequest)
  		return false
  	}
  
  	if isReservedAvatarLabel(label) {
  		writeErrorResponse(w, http.StatusConflict, "reserved_label")
  		return false
  	}
  
  	if _, err := u.GetAvatarByLabel(label); err == nil {
  		writeErrorResponse(w, http.StatusConflict, "duplicate_label")
  		return false
  	}
  
  	// count the amount of avatars we already have
  	if !(getUserAvatarCount(u) < maxAvatarAmount) {
  		log.Debug("User has reached the max amount of avatars to upload")
  		writeErrorResponse(w, http.StatusConflict, "max_avatar_amount")
  		return false
  	}
  	return true
  }
docs: // validateNewAvatar validates the label of a new avatar and whether the user can
  // still add avatars. Returns false if validation fails and an error has been written