models

package
v0.0.54 Latest Latest
Warning

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

Go to latest
Published: Oct 19, 2024 License: GPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ErrIncidentIsNotSet  = "incident is not set"
	ErrIncidentTypeError = "incident type error"
)
View Source
const (
	IncidentType_IllegalAccessAttempt            = 1
	IncidentType_FakeToken                       = 2
	IncidentType_VerificationCodeMismatch        = 3
	IncidentType_DoubleLogInAttempt              = 4
	IncidentType_PreSessionHacking               = 5
	IncidentType_CaptchaAnswerMismatch           = 6
	IncidentType_PasswordMismatch                = 7
	IncidentType_PasswordChangeHacking           = 8
	IncidentType_EmailChangeHacking              = 9
	IncidentType_FakeIPA                         = 10
	IncidentType_ReadingNotificationOfOtherUsers = 11
	IncidentType_WrongDKey                       = 12
)
View Source
const (
	Module_ACM  = Module(1)
	Module_GWM  = Module(2)
	Module_MM   = Module(3)
	Module_NM   = Module(4)
	Module_RCS  = Module(5)
	Module_SM   = Module(6)
	Module_SMTP = Module(7)
)
View Source
const (
	CookieName_Token = "token"
)
View Source
const (
	IncidentTypesCount = 12
)

Variables

This section is empty.

Functions

func CheckIncident added in v0.0.39

func CheckIncident(inc *Incident) (err error)

func NewArrayFromScannableSource

func NewArrayFromScannableSource[T any](src IScannableSequence) (values []T, err error)

func NewNonNullValueFromScannableSource added in v0.0.39

func NewNonNullValueFromScannableSource[T any](src IScannable) (T, error)

func NewValueFromScannableSource

func NewValueFromScannableSource[T any](src IScannable) (*T, error)

Types

type CaptchaAnswer added in v0.0.54

type CaptchaAnswer = cmb.Text

type CaptchaId added in v0.0.54

type CaptchaId = cmb.Text

type Email added in v0.0.54

type Email = cmb.Text

type IApplication

type IApplication interface {
	Use() error
}

type IPAS added in v0.0.54

type IPAS = cmb.Text

IPAS is an Internet Protocol Address String.

type IScannable

type IScannable interface {
	Scan(dest ...any) error
}

type IScannableSequence

type IScannableSequence interface {
	IScannable
	Next() bool // = HasNextValue()
}

type IServer

type IServer interface {
	Start() error
	ReportStart()
	Stop() error
	GetStopChannel() *chan bool
	UseConstructor(ISettings) (IServer, error)
	GetSubRoutinesWG() *sync.WaitGroup
	GetMustStopAB() *atomic.Bool
}

type ISettings

type ISettings interface {
	Check() error
	UseConstructor(string, *ver.Versioneer) (ISettings, error)
}

type Incident added in v0.0.39

type Incident struct {
	Id      cmb.Id
	Module  Module
	Type    IncidentType
	Time    time.Time
	Email   Email
	UserIPA net.IP
}

type IncidentType added in v0.0.39

type IncidentType byte

func (IncidentType) IsValid added in v0.0.39

func (it IncidentType) IsValid() (ok bool)

type Module added in v0.0.39

type Module byte

type Name added in v0.0.54

type Name = cmb.Text

type Password added in v0.0.54

type Password = cmb.Text

type Path added in v0.0.54

type Path = cmb.Text

func NormalisePath added in v0.0.8

func NormalisePath(path Path) Path

type RequestId added in v0.0.54

type RequestId = cmb.Text

type ScheduledFn added in v0.0.40

type ScheduledFn = func() error

type Scheduler added in v0.0.40

type Scheduler struct {
	// contains filtered or unexported fields
}

func NewScheduler added in v0.0.40

func NewScheduler(srv IServer, funcs60 []ScheduledFn) (s *Scheduler)

func (*Scheduler) Run added in v0.0.40

func (s *Scheduler) Run()

type StepNumber added in v0.0.54

type StepNumber = cmb.Count

type UserParameters

type UserParameters struct {
	Id                cmb.Id     `json:"id"`
	PreRegTime        *time.Time `json:"preRegTime,omitempty"`
	Email             Email      `json:"email,omitempty"`
	Name              Name       `json:"name,omitempty"`
	ApprovalTime      *time.Time `json:"approvalTime,omitempty"`
	RegTime           *time.Time `json:"regTime,omitempty"`
	Roles             *UserRoles `json:"roles,omitempty"`
	LastBadLogInTime  *time.Time `json:"lastBadLogInTime,omitempty"`
	BanTime           *time.Time `json:"banTime,omitempty"`
	LastBadActionTime *time.Time `json:"lastBadActionTime,omitempty"`
}

func NewUserParameters

func NewUserParameters() (up *UserParameters)

func NewUserParametersFromScannableSource

func NewUserParametersFromScannableSource(src IScannable) (up *UserParameters, err error)

type UserRoles

type UserRoles struct {
	IsAdministrator cmb.Flag `json:"isAdministrator"`
	IsModerator     cmb.Flag `json:"isModerator"`
	IsAuthor        cmb.Flag `json:"isAuthor"`
	IsWriter        cmb.Flag `json:"isWriter"`
	IsReader        cmb.Flag `json:"isReader"`
	CanLogIn        cmb.Flag `json:"canLogIn"`
}

func NewUserRoles

func NewUserRoles() (ur *UserRoles)

func NewUserRolesFromScannableSource

func NewUserRolesFromScannableSource(src IScannable) (ur *UserRoles, err error)

type VerificationCode added in v0.0.54

type VerificationCode = cmb.Text

type WebTokenString added in v0.0.54

type WebTokenString = cmb.Text

func GetToken

func GetToken(req *http.Request) (token *WebTokenString, err error)

GetToken tries to read a token. If a token is not found, null is returned.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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