Documentation
¶
Index ¶
- func BoolString(b *bool) string
- func InitApp(l *logrus.Entry, conf *config.Config, db *sql.DB, ...)
- func NoCache(h http.Handler) http.Handler
- type App
- func (a *App) GetSecretFromCookie(ctx context.Context, r *http.Request) (string, error)
- func (a *App) GetUserIDFromCookie(r *http.Request) (int64, error)
- func (a *App) HandleCommentReceiverBatch(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDeleteUserSessions(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDiscordAuth(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDiscordCallback(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDownloadCurationImage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDownloadFixesFile(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDownloadFlashfreezeRootFile(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDownloadSubmissionBatch(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleDownloadSubmissionFile(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleFixesReceiverResumable(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleFixesSubmitGenericPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleFixesSubmitGenericPageUploadFilesPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleFixesSubmitPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleFlashfreezeReceiverResumable(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleFlashfreezeSubmitPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleGetUploadProgress(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleGetUserStatistics(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleGetUsers(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleHelpPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleIndexUnindexedFlashfreeze(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleIngestFlashfreeze(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleIngestUnknownFlashfreeze(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleInternalPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleLogout(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleMySubmissionsPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleOverrideBot(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleProfilePage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleReceiveFixesSubmitGeneric(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleReceiverResumableTestChunk(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleRecomputeSubmissionCacheAll(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleRootPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSearchFixesPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSearchFlashfreezePage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSendRemindersAboutRequestedChanges(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSoftDeleteComment(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSoftDeleteSubmission(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSoftDeleteSubmissionFile(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleStatisticsPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSubmissionReceiverResumable(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSubmissionsPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleSubmitPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleUpdateMasterDB(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleUpdateNotificationSettings(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleUpdateSubscriptionSettings(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleUserStatisticsPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleViewFixesPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleViewSubmissionFilesPage(w http.ResponseWriter, r *http.Request)
- func (a *App) HandleViewSubmissionPage(w http.ResponseWriter, r *http.Request)
- func (a *App) IsUserWithinResourceLimit(r *http.Request, uid int64, resourceKey string, resourceAmount int) (bool, error)
- func (a *App) RenderTemplates(ctx context.Context, w http.ResponseWriter, r *http.Request, data interface{}, ...)
- func (a *App) RequestData(next func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)
- func (a *App) RequestJSON(next func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)
- func (a *App) RequestWeb(next func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)
- func (a *App) UserAuthMux(next func(http.ResponseWriter, *http.Request), ...) func(http.ResponseWriter, *http.Request)
- func (a *App) UserCanCommentAction(r *http.Request, uid int64) (bool, error)
- func (a *App) UserHasAllRoles(r *http.Request, uid int64, requiredRoles []string) (bool, error)
- func (a *App) UserHasAnyRole(r *http.Request, uid int64, roles []string) (bool, error)
- func (a *App) UserOwnsResource(r *http.Request, uid int64, resourceKey string) (bool, error)
- type State
- type StateKeeper
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BoolString ¶
BoolString is a little hack to make handling tri-state bool in go templates trivial
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 (*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 ¶
UserCanCommentAction accepts user that has all of requiredRoles and owns given resource(s)
func (*App) UserHasAllRoles ¶
UserHasAllRoles accepts user that has at least all requiredRoles
func (*App) UserHasAnyRole ¶
UserHasAnyRole accepts user that has at least one of requiredRoles
type StateKeeper ¶
func (*StateKeeper) Clean ¶
func (sk *StateKeeper) Clean()