donor

package
v0.0.0-...-897bb11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 24, 2023 License: MIT Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	None handleOpt = 1 << iota
	RequireSession
	CanGoBack
)
View Source
const (
	WantToSignLpa     = "want-to-sign"
	WantToApplyForLpa = "want-to-apply"
)

Variables

This section is empty.

Functions

func Register

func Register(
	rootMux *http.ServeMux,
	logger Logger,
	tmpls template.Templates,
	sessionStore SessionStore,
	donorStore DonorStore,
	oneLoginClient OneLoginClient,
	addressClient AddressClient,
	appPublicURL string,
	payClient PayClient,
	yotiClient YotiClient,
	shareCodeSender ShareCodeSender,
	witnessCodeSender WitnessCodeSender,
	errorHandler page.ErrorHandler,
	notFoundHandler page.Handler,
	certificateProviderStore CertificateProviderStore,
	uidClient UidClient,
	s3Client *s3.Client,
	evidenceBucketName string,
	notifyClient NotifyClient,
	evidenceReceivedStore EvidenceReceivedStore,
)

Types

type AddressClient

type AddressClient interface {
	LookupPostcode(ctx context.Context, postcode string) ([]place.Address, error)
}

type CertificateProviderStore

type CertificateProviderStore interface {
	GetAny(ctx context.Context) (*actor.CertificateProviderProvidedDetails, error)
}

type DonorStore

type DonorStore interface {
	Create(context.Context) (*page.Lpa, error)
	GetAll(context.Context) ([]*page.Lpa, error)
	Get(context.Context) (*page.Lpa, error)
	Put(context.Context, *page.Lpa) error
}

type EvidenceReceivedStore

type EvidenceReceivedStore interface {
	Get(context.Context) (bool, error)
}

type GetDonorStore

type GetDonorStore interface {
	Get(context.Context) (*page.Lpa, error)
}

type Handler

type Handler func(data page.AppData, w http.ResponseWriter, r *http.Request, details *page.Lpa) error

func ApplicationReason

func ApplicationReason(tmpl template.Template, donorStore DonorStore) Handler

func AreYouApplyingForADifferentFeeType

func AreYouApplyingForADifferentFeeType(tmpl template.Template, payer Payer, donorStore DonorStore) Handler

func CanEvidenceBeUploaded

func CanEvidenceBeUploaded(tmpl template.Template) Handler

func CertificateProviderAddress

func CertificateProviderAddress(logger Logger, tmpl template.Template, addressClient AddressClient, donorStore DonorStore) Handler

func CertificateProviderDetails

func CertificateProviderDetails(tmpl template.Template, donorStore DonorStore) Handler

func CheckYourLpa

func CheckYourLpa(tmpl template.Template, donorStore DonorStore, shareCodeSender ShareCodeSender, notifyClient NotifyClient, certificateProviderStore CertificateProviderStore) Handler

func ChooseAttorneys

func ChooseAttorneys(tmpl template.Template, donorStore DonorStore, uuidString func() string) Handler

func ChooseAttorneysAddress

func ChooseAttorneysAddress(logger Logger, tmpl template.Template, addressClient AddressClient, donorStore DonorStore) Handler

func ChooseAttorneysSummary

func ChooseAttorneysSummary(tmpl template.Template) Handler

func ChoosePeopleToNotify

func ChoosePeopleToNotify(tmpl template.Template, donorStore DonorStore, uuidString func() string) Handler

func ChoosePeopleToNotifyAddress

func ChoosePeopleToNotifyAddress(logger Logger, tmpl template.Template, addressClient AddressClient, donorStore DonorStore) Handler

func ChoosePeopleToNotifySummary

func ChoosePeopleToNotifySummary(tmpl template.Template) Handler

func ChooseReplacementAttorneys

func ChooseReplacementAttorneys(tmpl template.Template, donorStore DonorStore, uuidString func() string) Handler

func ChooseReplacementAttorneysAddress

func ChooseReplacementAttorneysAddress(logger Logger, tmpl template.Template, addressClient AddressClient, donorStore DonorStore) Handler

func ChooseReplacementAttorneysSummary

func ChooseReplacementAttorneysSummary(tmpl template.Template) Handler

func DoYouWantToNotifyPeople

func DoYouWantToNotifyPeople(tmpl template.Template, donorStore DonorStore) Handler

func EnterTrustCorporation

func EnterTrustCorporation(tmpl template.Template, donorStore DonorStore) Handler

func EnterTrustCorporationAddress

func EnterTrustCorporationAddress(logger Logger, tmpl template.Template, addressClient AddressClient, donorStore DonorStore) Handler

func Guidance

func Guidance(tmpl template.Template) Handler

func HowDoYouKnowYourCertificateProvider

func HowDoYouKnowYourCertificateProvider(tmpl template.Template, donorStore DonorStore) Handler

func HowLongHaveYouKnownCertificateProvider

func HowLongHaveYouKnownCertificateProvider(tmpl template.Template, donorStore DonorStore) Handler

func HowShouldAttorneysMakeDecisions

func HowShouldAttorneysMakeDecisions(tmpl template.Template, donorStore DonorStore) Handler

func HowShouldReplacementAttorneysMakeDecisions

func HowShouldReplacementAttorneysMakeDecisions(tmpl template.Template, donorStore DonorStore) Handler

func HowShouldReplacementAttorneysStepIn

func HowShouldReplacementAttorneysStepIn(tmpl template.Template, donorStore DonorStore) Handler

func HowToSendEvidence

func HowToSendEvidence(tmpl template.Template, payer Payer) Handler

func HowWouldCertificateProviderPreferToCarryOutTheirRole

func HowWouldCertificateProviderPreferToCarryOutTheirRole(tmpl template.Template, donorStore DonorStore) Handler

func IdentityWithOneLogin

func IdentityWithOneLogin(logger Logger, oneLoginClient OneLoginClient, store sesh.Store, randomString func(int) string) Handler

func IdentityWithOneLoginCallback

func IdentityWithOneLoginCallback(tmpl template.Template, oneLoginClient OneLoginClient, sessionStore sessions.Store, donorStore DonorStore) Handler

func IdentityWithTodo

func IdentityWithTodo(tmpl template.Template, donorStore DonorStore, now func() time.Time, identityOption identity.Option) Handler

func IdentityWithYoti

func IdentityWithYoti(tmpl template.Template, sessionStore SessionStore, yotiClient YotiClient) Handler

func IdentityWithYotiCallback

func IdentityWithYotiCallback(tmpl template.Template, yotiClient YotiClient, donorStore DonorStore) Handler

func LifeSustainingTreatment

func LifeSustainingTreatment(tmpl template.Template, donorStore DonorStore) Handler

func LpaDetailsSaved

func LpaDetailsSaved(tmpl template.Template) Handler

func LpaProgress

func LpaProgress(tmpl template.Template, certificateProviderStore CertificateProviderStore) Handler

func LpaType

func LpaType(tmpl template.Template, donorStore DonorStore) Handler

func PaymentConfirmation

func PaymentConfirmation(logger Logger, tmpl template.Template, payClient PayClient, donorStore DonorStore, sessionStore sessions.Store) Handler

func PreviousApplicationNumber

func PreviousApplicationNumber(tmpl template.Template, donorStore DonorStore) Handler

func ProvideAddressToSendEvidenceForm

func ProvideAddressToSendEvidenceForm(logger Logger, tmpl template.Template, addressClient AddressClient, donorStore DonorStore) Handler

func RemoveAttorney

func RemoveAttorney(logger Logger, tmpl template.Template, donorStore DonorStore) Handler

func RemovePersonToNotify

func RemovePersonToNotify(logger Logger, tmpl template.Template, donorStore DonorStore) Handler

func RemoveReplacementAttorney

func RemoveReplacementAttorney(logger Logger, tmpl template.Template, donorStore DonorStore) Handler

func ResendWitnessCode

func ResendWitnessCode(tmpl template.Template, witnessCodeSender WitnessCodeSender, now func() time.Time) Handler

func Restrictions

func Restrictions(tmpl template.Template, donorStore DonorStore) Handler

func SelectYourIdentityOptions

func SelectYourIdentityOptions(tmpl template.Template, donorStore DonorStore, pageIndex int) Handler

func SignYourLpa

func SignYourLpa(tmpl template.Template, donorStore DonorStore) Handler

func TaskList

func TaskList(tmpl template.Template, evidenceReceivedStore EvidenceReceivedStore) Handler

func UploadEvidence

func UploadEvidence(tmpl template.Template, donorStore DonorStore, s3Client S3Client, bucketName string, payer Payer) Handler

func WantReplacementAttorneys

func WantReplacementAttorneys(tmpl template.Template, donorStore DonorStore) Handler

func WhenCanTheLpaBeUsed

func WhenCanTheLpaBeUsed(tmpl template.Template, donorStore DonorStore) Handler

func WhichFeeTypeAreYouApplyingFor

func WhichFeeTypeAreYouApplyingFor(tmpl template.Template, donorStore DonorStore) Handler

func WhoIsTheLpaFor

func WhoIsTheLpaFor(tmpl template.Template, donorStore DonorStore) Handler

func WitnessingAsCertificateProvider

func WitnessingAsCertificateProvider(tmpl template.Template, donorStore DonorStore, shareCodeSender ShareCodeSender, now func() time.Time, certificateProviderStore CertificateProviderStore) Handler

func WitnessingYourSignature

func WitnessingYourSignature(tmpl template.Template, witnessCodeSender WitnessCodeSender) Handler

func YourAddress

func YourAddress(logger Logger, tmpl template.Template, addressClient AddressClient, donorStore DonorStore) Handler

func YourChosenIdentityOptions

func YourChosenIdentityOptions(tmpl template.Template) Handler

func YourDetails

func YourDetails(tmpl template.Template, donorStore DonorStore, sessionStore sessions.Store) Handler

type Localizer

type Localizer interface {
	Format(string, map[string]any) string
	T(string) string
	Count(messageID string, count int) string
	FormatCount(messageID string, count int, data map[string]interface{}) string
	ShowTranslationKeys() bool
	SetShowTranslationKeys(s bool)
	Possessive(s string) string
	Concat([]string, string) string
}

type Logger

type Logger interface {
	Print(v ...interface{})
}

type LpaDetailsSavedData

type LpaDetailsSavedData struct {
	App          page.AppData
	Lpa          *page.Lpa
	IsFirstCheck bool
	Errors       validation.List
}

type NotifyClient

type NotifyClient interface {
	Email(ctx context.Context, email notify.Email) (string, error)
	Sms(ctx context.Context, sms notify.Sms) (string, error)
	TemplateID(id notify.Template) string
}

type OneLoginClient

type OneLoginClient interface {
	AuthCodeURL(state, nonce, locale string, identity bool) string
	Exchange(ctx context.Context, code, nonce string) (idToken, accessToken string, err error)
	UserInfo(ctx context.Context, accessToken string) (onelogin.UserInfo, error)
	ParseIdentityClaim(ctx context.Context, userInfo onelogin.UserInfo) (identity.UserData, error)
}

type PayClient

type PayClient interface {
	CreatePayment(body pay.CreatePaymentBody) (pay.CreatePaymentResponse, error)
	GetPayment(paymentId string) (pay.GetPaymentResponse, error)
}

type Payer

type Payer interface {
	Pay(page.AppData, http.ResponseWriter, *http.Request, *page.Lpa) error
}

type RequestSigner

type RequestSigner interface {
	Sign(context.Context, *http.Request, string) error
}

type S3Client

type S3Client interface {
	PutObject(context.Context, *s3.PutObjectInput, ...func(*s3.Options)) (*s3.PutObjectOutput, error)
}

type SessionStore

type SessionStore interface {
	Get(r *http.Request, name string) (*sessions.Session, error)
	New(r *http.Request, name string) (*sessions.Session, error)
	Save(r *http.Request, w http.ResponseWriter, s *sessions.Session) error
}

type ShareCodeSender

type ShareCodeSender interface {
	SendCertificateProvider(ctx context.Context, template notify.Template, appData page.AppData, identity bool, lpa *page.Lpa) error
	SendAttorneys(ctx context.Context, appData page.AppData, lpa *page.Lpa) error
}

type Template

type Template func(io.Writer, interface{}) error

type UidClient

type UidClient interface {
	CreateCase(context.Context, *uid.CreateCaseRequestBody) (uid.CreateCaseResponse, error)
}

type WitnessCodeSender

type WitnessCodeSender interface {
	Send(context.Context, *page.Lpa, page.Localizer) error
}

type YotiClient

type YotiClient interface {
	IsTest() bool
	SdkID() string
	ScenarioID() string
	User(string) (identity.UserData, error)
}

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL