21 lines
503 B
Go
21 lines
503 B
Go
package useCases
|
|
|
|
import "RenewCMS/internal/domain/invite"
|
|
|
|
func findManageableInvite(inviteRepository invite.Repository, id uint32) (invite.Invite, error) {
|
|
invites, err := inviteRepository.GetAll()
|
|
if err != nil {
|
|
return invite.Invite{}, err
|
|
}
|
|
for _, existing := range invites {
|
|
if existing.ID != id {
|
|
continue
|
|
}
|
|
if existing.AcceptedAt != nil {
|
|
return invite.Invite{}, invite.ErrInviteAlreadyAccepted
|
|
}
|
|
return existing, nil
|
|
}
|
|
return invite.Invite{}, invite.ErrInviteNotFound
|
|
}
|