Raw
 1package admin
 2
 3import (
 4	"context"
 5	"errors"
 6
 7	"tug/internal/storage"
 8)
 9
10func (s *Service) UnlinkGoogle(ctx context.Context, actor, id string) error {
11	if actor == id {
12		return ProblemSelf
13	}
14	_, _, err := s.store.UnlinkGoogleAudited(ctx, id, "", actor)
15	switch {
16	case err == nil:
17		return nil
18	case errors.Is(err, storage.ErrGoogleNotLinked):
19		return ProblemGoogleNotLinked
20	}
21	return target("unlink google account", err)
22}