package app import ( "database/sql" "git.ctrlz.es/mgdelacroix/craban/model" ) func (a *App) CreateGame(name string, userID int) (*model.Game, error) { return a.Store.Game().Create(name, userID) } func (a *App) AddMember(gameID, userID int, role string) (*model.GameMember, error) { return a.Store.Game().AddMember(gameID, userID, role) } func (a *App) GetGameForUser(gameID, userID int) (*model.Game, error) { game, err := a.Store.Game().GetByID(gameID) if err != nil { return nil, err } // ToDo: create a helper like userIsMember or // userHasPermissionToGame instead of checking ownership if game.UserID != userID { return nil, nil } return game, nil } func (a *App) ListGames() ([]*model.Game, error) { games, err := a.Store.Game().List() if err == sql.ErrNoRows { return []*model.Game{}, nil } return games, err } func (a *App) ListGamesForUser(userID int) ([]*model.Game, error) { games, err := a.Store.Game().ListForUser(userID) if err == sql.ErrNoRows { return []*model.Game{}, nil } return games, err }