package invitations import "time" const InvitationTTL = 7 * 24 * time.Hour type Invitation struct { ID string `bson:"_id"` Email string `bson:"email,omitempty"` OrgID string `bson:"orgId"` SpaceID string `bson:"spaceId"` OwnerID string `bson:"ownerId"` // Invitation owner Role string `bson:"role"` CreatedAt *time.Time `bson:"createdAt"` ValidUntil *time.Time `bson:"validUntil"` Uses int `bson:"uses"` MaxUses int `bson:"max_uses"` } func (i Invitation) Clone() *Invitation { return &Invitation{ ID: i.ID, Email: i.Email, OrgID: i.OrgID, SpaceID: i.SpaceID, OwnerID: i.OwnerID, Role: i.Role, CreatedAt: i.CreatedAt, ValidUntil: i.ValidUntil, Uses: i.Uses, MaxUses: i.MaxUses, } } func (i Invitation) GetSpaceID() string { return i.SpaceID }