transport

package
v0.0.0-...-79683fd Latest Latest
Warning

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

Go to latest
Published: Jul 12, 2023 License: MIT Imports: 32 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BoolString

func BoolString(b *bool) string

BoolString is a little hack to make handling tri-state bool in go templates trivial

func InitApp

func InitApp(l *logrus.Entry, conf *config.Config, db *sql.DB, authBotSession, notificationBotSession *discordgo.Session, rsu *resumableuploadservice.ResumableUploadService)

func NoCache

func NoCache(h http.Handler) http.Handler

Types

type App

type App struct {
	Conf    *config.Config
	CC      utils.CookieCutter
	Service *service.SiteService
	// contains filtered or unexported fields
}

App is App

func (*App) GetSecretFromCookie

func (a *App) GetSecretFromCookie(ctx context.Context, r *http.Request) (string, error)

func (*App) GetUserIDFromCookie

func (a *App) GetUserIDFromCookie(r *http.Request) (int64, error)

func (*App) HandleCommentReceiverBatch

func (a *App) HandleCommentReceiverBatch(w http.ResponseWriter, r *http.Request)

func (*App) HandleDeleteUserSessions

func (a *App) HandleDeleteUserSessions(w http.ResponseWriter, r *http.Request)

func (*App) HandleDiscordAuth

func (a *App) HandleDiscordAuth(w http.ResponseWriter, r *http.Request)

func (*App) HandleDiscordCallback

func (a *App) HandleDiscordCallback(w http.ResponseWriter, r *http.Request)

func (*App) HandleDownloadCurationImage

func (a *App) HandleDownloadCurationImage(w http.ResponseWriter, r *http.Request)

func (*App) HandleDownloadFixesFile

func (a *App) HandleDownloadFixesFile(w http.ResponseWriter, r *http.Request)

func (*App) HandleDownloadFlashfreezeRootFile

func (a *App) HandleDownloadFlashfreezeRootFile(w http.ResponseWriter, r *http.Request)

func (*App) HandleDownloadSubmissionBatch

func (a *App) HandleDownloadSubmissionBatch(w http.ResponseWriter, r *http.Request)

func (*App) HandleDownloadSubmissionFile

func (a *App) HandleDownloadSubmissionFile(w http.ResponseWriter, r *http.Request)

func (*App) HandleFixesReceiverResumable

func (a *App) HandleFixesReceiverResumable(w http.ResponseWriter, r *http.Request)

func (*App) HandleFixesSubmitGenericPage

func (a *App) HandleFixesSubmitGenericPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleFixesSubmitGenericPageUploadFilesPage

func (a *App) HandleFixesSubmitGenericPageUploadFilesPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleFixesSubmitPage

func (a *App) HandleFixesSubmitPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleFlashfreezeReceiverResumable

func (a *App) HandleFlashfreezeReceiverResumable(w http.ResponseWriter, r *http.Request)

func (*App) HandleFlashfreezeSubmitPage

func (a *App) HandleFlashfreezeSubmitPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleGetUploadProgress

func (a *App) HandleGetUploadProgress(w http.ResponseWriter, r *http.Request)

func (*App) HandleGetUserStatistics

func (a *App) HandleGetUserStatistics(w http.ResponseWriter, r *http.Request)

func (*App) HandleGetUsers

func (a *App) HandleGetUsers(w http.ResponseWriter, r *http.Request)

func (*App) HandleHelpPage

func (a *App) HandleHelpPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleIndexUnindexedFlashfreeze

func (a *App) HandleIndexUnindexedFlashfreeze(w http.ResponseWriter, r *http.Request)

func (*App) HandleIngestFlashfreeze

func (a *App) HandleIngestFlashfreeze(w http.ResponseWriter, r *http.Request)

func (*App) HandleIngestUnknownFlashfreeze

func (a *App) HandleIngestUnknownFlashfreeze(w http.ResponseWriter, r *http.Request)

HandleIngestUnknownFlashfreeze ingests flashfreeze files which are in the flashfreeze directory, but not in the database. This should not be needed and such files are a result of a bug or human error.

func (*App) HandleInternalPage

func (a *App) HandleInternalPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleLogout

func (a *App) HandleLogout(w http.ResponseWriter, r *http.Request)

func (*App) HandleMySubmissionsPage

func (a *App) HandleMySubmissionsPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleOverrideBot

func (a *App) HandleOverrideBot(w http.ResponseWriter, r *http.Request)

func (*App) HandleProfilePage

func (a *App) HandleProfilePage(w http.ResponseWriter, r *http.Request)

func (*App) HandleReceiveFixesSubmitGeneric

func (a *App) HandleReceiveFixesSubmitGeneric(w http.ResponseWriter, r *http.Request)

func (*App) HandleReceiverResumableTestChunk

func (a *App) HandleReceiverResumableTestChunk(w http.ResponseWriter, r *http.Request)

func (*App) HandleRecomputeSubmissionCacheAll

func (a *App) HandleRecomputeSubmissionCacheAll(w http.ResponseWriter, r *http.Request)

func (*App) HandleRootPage

func (a *App) HandleRootPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleSearchFixesPage

func (a *App) HandleSearchFixesPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleSearchFlashfreezePage

func (a *App) HandleSearchFlashfreezePage(w http.ResponseWriter, r *http.Request)

func (*App) HandleSendRemindersAboutRequestedChanges

func (a *App) HandleSendRemindersAboutRequestedChanges(w http.ResponseWriter, r *http.Request)

func (*App) HandleSoftDeleteComment

func (a *App) HandleSoftDeleteComment(w http.ResponseWriter, r *http.Request)

func (*App) HandleSoftDeleteSubmission

func (a *App) HandleSoftDeleteSubmission(w http.ResponseWriter, r *http.Request)

func (*App) HandleSoftDeleteSubmissionFile

func (a *App) HandleSoftDeleteSubmissionFile(w http.ResponseWriter, r *http.Request)

func (*App) HandleStatisticsPage

func (a *App) HandleStatisticsPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleSubmissionReceiverResumable

func (a *App) HandleSubmissionReceiverResumable(w http.ResponseWriter, r *http.Request)

func (*App) HandleSubmissionsPage

func (a *App) HandleSubmissionsPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleSubmitPage

func (a *App) HandleSubmitPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleUpdateMasterDB

func (a *App) HandleUpdateMasterDB(w http.ResponseWriter, r *http.Request)

func (*App) HandleUpdateNotificationSettings

func (a *App) HandleUpdateNotificationSettings(w http.ResponseWriter, r *http.Request)

func (*App) HandleUpdateSubscriptionSettings

func (a *App) HandleUpdateSubscriptionSettings(w http.ResponseWriter, r *http.Request)

func (*App) HandleUserStatisticsPage

func (a *App) HandleUserStatisticsPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleViewFixesPage

func (a *App) HandleViewFixesPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleViewSubmissionFilesPage

func (a *App) HandleViewSubmissionFilesPage(w http.ResponseWriter, r *http.Request)

func (*App) HandleViewSubmissionPage

func (a *App) HandleViewSubmissionPage(w http.ResponseWriter, r *http.Request)

func (*App) IsUserWithinResourceLimit

func (a *App) IsUserWithinResourceLimit(r *http.Request, uid int64, resourceKey string, resourceAmount int) (bool, error)

IsUserWithinResourceLimit accepts if user has no more than given amount of given resource(s)

func (*App) RenderTemplates

func (a *App) RenderTemplates(ctx context.Context, w http.ResponseWriter, r *http.Request, data interface{}, filenames ...string)

RenderTemplates is a helper for rendering templates

func (*App) RequestData

func (a *App) RequestData(next func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)

func (*App) RequestJSON

func (a *App) RequestJSON(next func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)

func (*App) RequestWeb

func (a *App) RequestWeb(next func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)

func (*App) UserAuthMux

func (a *App) UserAuthMux(next func(http.ResponseWriter, *http.Request), authorizers ...func(*http.Request, int64) (bool, error)) func(http.ResponseWriter, *http.Request)

UserAuthMux takes many authorization middlewares and accepts if any of them does not return error

func (*App) UserCanCommentAction

func (a *App) UserCanCommentAction(r *http.Request, uid int64) (bool, error)

UserCanCommentAction accepts user that has all of requiredRoles and owns given resource(s)

func (*App) UserHasAllRoles

func (a *App) UserHasAllRoles(r *http.Request, uid int64, requiredRoles []string) (bool, error)

UserHasAllRoles accepts user that has at least all requiredRoles

func (*App) UserHasAnyRole

func (a *App) UserHasAnyRole(r *http.Request, uid int64, roles []string) (bool, error)

UserHasAnyRole accepts user that has at least one of requiredRoles

func (*App) UserOwnsResource

func (a *App) UserOwnsResource(r *http.Request, uid int64, resourceKey string) (bool, error)

UserOwnsResource accepts user that owns given resource(s)

type State

type State struct {
	Nonce string `json:"nonce"`
	Dest  string `json:"dest"`
}

type StateKeeper

type StateKeeper struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func (*StateKeeper) Clean

func (sk *StateKeeper) Clean()

func (*StateKeeper) Consume

func (sk *StateKeeper) Consume(b string) (string, bool)

Consume consumes base64-encoded state and returns destination URL

func (*StateKeeper) Generate

func (sk *StateKeeper) Generate(dest string) (string, error)

Generate generates state and returns base64-encoded form

Jump to

Keyboard shortcuts

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