api

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Jun 1, 2026 License: AGPL-3.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckPasswd

func CheckPasswd(passwd string) (ok bool)

func ServeHTTP

func ServeHTTP(s *SessionManager, port int)

Types

type AuthorizeParams

type AuthorizeParams struct {
	Session SessionId
	Uid     string
	Passwd  string
}

type CancelReservationParams

type CancelReservationParams struct {
	Session SessionId
	Uid     string
}

type ChangeIdentityParams

type ChangeIdentityParams struct {
	Session       SessionId
	Passwd        string
	NetId         *string
	NetIdPasswd   *string
	PaymentPasswd *string
}

type ChangePasswdParams

type ChangePasswdParams struct {
	Session   SessionId
	OldPasswd string
	NewPasswd string
}

type CheckInvitationParams

type CheckInvitationParams struct {
	Code string
}

type GetReservationsParams

type GetReservationsParams struct {
	Session SessionId
	Page    uint
	Limit   uint
}

type LoginParams

type LoginParams struct {
	User   string
	Passwd string
}

type ParseError

type ParseError struct{}

func (ParseError) Error

func (t ParseError) Error() string

type PlaceReservationParams

type PlaceReservationParams struct {
	Session     SessionId
	Reservation ReservationCompatible
}

type PlaceReservationRespnse

type PlaceReservationRespnse struct {
	Uid               string
	NeedAuthorization bool
}

type ReservationCompatible

type ReservationCompatible struct {
	Date        string
	Site        court_reserver_interface.Site
	Preferences []constant.SingleBookCompatible
	Priority    int
}

type ReservationResponse

type ReservationResponse struct {
	Count  uint
	Result []ReservationResult
}

type ReservationResult

type ReservationResult struct {
	Uid         string
	Reservation ReservationCompatible
	Status      court_reserver_interface.ReservationStatus
}

type Response

type Response struct {
	Success bool
	Message string
	Code    int
	Data    interface{}
}

type RootAdminTokenParams

type RootAdminTokenParams struct {
	Token string
}

type Session

type Session struct {
	Expiry time.Time
	User   *auth.User

} // write-through cache of user_data.csv

type SessionId

type SessionId string

type SessionManager

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

func NewSessionManager

func NewSessionManager(conn *sql.Conn, captcha_solver captcha_solver.CaptchaSolver, court_reserver_plugin *plugins.CourtReserverPlugin, authorization_cache *auth.AuthorizationCache, root_admin_token uuid.UUID) (*SessionManager, error)

func (*SessionManager) Authorize

func (t *SessionManager) Authorize(params *AuthorizeParams) error

func (*SessionManager) ChangeIdentity

func (t *SessionManager) ChangeIdentity(params *ChangeIdentityParams) error

func (*SessionManager) ChangePasswd

func (t *SessionManager) ChangePasswd(params *ChangePasswdParams) error

func (*SessionManager) CheckInvitation

func (t *SessionManager) CheckInvitation(params *CheckInvitationParams) (bool, error)

func (*SessionManager) CheckRootAdminToken

func (t *SessionManager) CheckRootAdminToken(params *RootAdminTokenParams) bool

func (*SessionManager) CreateInvitation

func (t *SessionManager) CreateInvitation(params *RootAdminTokenParams) (string, error)

func (*SessionManager) DeleteReservation

func (t *SessionManager) DeleteReservation(params *CancelReservationParams) error

func (*SessionManager) GetLoginAccount

func (t *SessionManager) GetLoginAccount(params *SessionOnlyParams) (*auth.User, error)

func (*SessionManager) GetReservations

func (t *SessionManager) GetReservations(params *GetReservationsParams) (ReservationResponse, error)

func (*SessionManager) Login

func (t *SessionManager) Login(params *LoginParams) (SessionId, error)

func (*SessionManager) PlaceReservation

func (t *SessionManager) PlaceReservation(params *PlaceReservationParams) (PlaceReservationRespnse, error)

func (*SessionManager) SignOut

func (t *SessionManager) SignOut(params *SessionOnlyParams)

func (*SessionManager) SignUp

func (t *SessionManager) SignUp(params *SignUpParams) (SessionId, error)

func (*SessionManager) Version

func (t *SessionManager) Version() (VersionResponse, error)

func (*SessionManager) WriteAccounts

func (t *SessionManager) WriteAccounts(new_account auth.User, account *auth.User) error

old account must be within the SessionManager

type SessionOnlyParams

type SessionOnlyParams struct {
	Session SessionId
}

type SignUpParams

type SignUpParams struct {
	User           string
	Passwd         string
	NetId          string
	NetIdPasswd    string
	PaymentPasswd  *string
	InvitationCode string
}

type VersionResponse

type VersionResponse struct {
	MainVersion     string
	ReserverVersion *string
}

Jump to

Keyboard shortcuts

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