35 lines
713 B
Go
Raw Normal View History

2019-06-03 09:32:43 +00:00
package arn
import (
"github.com/aerogo/aero"
"github.com/aerogo/api"
)
// Force interface implementations
var (
2019-09-08 23:46:43 +00:00
_ Identifiable = (*UserFollows)(nil)
2019-06-03 09:32:43 +00:00
_ IDCollection = (*UserFollows)(nil)
_ api.Editable = (*UserFollows)(nil)
)
// Actions
func init() {
API.RegisterActions("UserFollows", []*api.Action{
// Add follow
AddAction(),
// Remove follow
RemoveAction(),
})
}
// Authorize returns an error if the given API request is not authorized.
func (list *UserFollows) Authorize(ctx aero.Context, action string) error {
return AuthorizeIfLoggedInAndOwnData(ctx, "id")
}
// Save saves the follow list in the database.
func (list *UserFollows) Save() {
DB.Set("UserFollows", list.UserID, list)
}