Documentation ¶
Index ¶
- Constants
- func APIContexter() macaron.Handler
- func AuthenticateByToken(ctx context.Context, token string) (*db.User, error)
- func Contexter() macaron.Handler
- func GitHookService() macaron.Handler
- func HandleOrgAssignment(c *Context, args ...bool)
- func InjectParamsUser() macaron.Handler
- func OrgAssignment(args ...bool) macaron.Handler
- func RepoAssignment(pages ...bool) macaron.Handler
- func RepoRef() macaron.Handler
- func RequireRepoAdmin() macaron.Handler
- func RequireRepoWriter() macaron.Handler
- func ServeGoGet() macaron.Handler
- func Toggle(options *ToggleOptions) macaron.Handler
- type APIContext
- func (c *APIContext) Error(err error, msg string)
- func (c *APIContext) ErrorStatus(status int, err error)
- func (c *APIContext) Errorf(err error, format string, args ...any)
- func (c *APIContext) NoContent()
- func (c *APIContext) NotFound()
- func (c *APIContext) NotFoundOrError(err error, msg string)
- func (c *APIContext) SetLinkHeader(total, pageSize int)
- type APIOrganization
- type Context
- func (c *Context) Error(err error, msg string)
- func (c *Context) Errorf(err error, format string, args ...any)
- func (c *Context) FormErr(names ...string)
- func (c *Context) GetErrMsg() string
- func (c *Context) HTML(status int, name string)
- func (c *Context) HasApiError() bool
- func (c *Context) HasError() bool
- func (c *Context) HasValue(name string) bool
- func (c *Context) JSONSuccess(data any)
- func (c *Context) NotFound()
- func (c *Context) NotFoundOrError(err error, msg string)
- func (c *Context) NotFoundOrErrorf(err error, format string, args ...any)
- func (c *Context) PageIs(name string)
- func (c *Context) PlainText(status int, msg string)
- func (c *Context) RawRedirect(location string, status ...int)
- func (c *Context) RawTitle(title string)
- func (c *Context) Redirect(location string, status ...int)
- func (c *Context) RedirectSubpath(location string, status ...int)
- func (c *Context) RenderWithErr(msg, tpl string, f any)
- func (c *Context) Require(name string)
- func (c *Context) RequireAutosize()
- func (c *Context) RequireDropzone()
- func (c *Context) RequireHighlightJS()
- func (c *Context) RequireSimpleMDE()
- func (c *Context) ServeContent(name string, r io.ReadSeeker, params ...any)
- func (c *Context) Success(name string)
- func (c *Context) Title(locale string)
- func (c *Context) UserID() int64
- type Organization
- type ParamsUser
- type PullRequest
- type Repository
- func (r *Repository) CanEnableEditor() bool
- func (r *Repository) Editorconfig() (*editorconfig.Editorconfig, error)
- func (r *Repository) HasAccess() bool
- func (r *Repository) IsAdmin() bool
- func (r *Repository) IsOwner() bool
- func (r *Repository) IsWriter() bool
- func (r *Repository) MakeURL(location any) string
- func (r *Repository) PullRequestURL(baseBranch, headBranch string) string
- type ToggleOptions
Constants ¶
const DocURL = "https://github.com/gogs/docs-api"
FIXME: move this constant to github.com/gogs/go-gogs-client
Variables ¶
This section is empty.
Functions ¶
func APIContexter ¶
func APIContexter() macaron.Handler
func AuthenticateByToken ¶ added in v0.13.0
AuthenticateByToken attempts to authenticate a user by the given access token. It returns db.ErrAccessTokenNotExist when the access token does not exist.
func Contexter ¶
func Contexter() macaron.Handler
Contexter initializes a classic context for a request.
func GitHookService ¶
func GitHookService() macaron.Handler
GitHookService checks if repository Git hooks service has been enabled.
func HandleOrgAssignment ¶
func InjectParamsUser ¶
func InjectParamsUser() macaron.Handler
InjectParamsUser returns a handler that retrieves target user based on URL parameter ':username', and injects it as *ParamsUser.
func OrgAssignment ¶
func OrgAssignment(args ...bool) macaron.Handler
func RepoRef ¶
func RepoRef() macaron.Handler
RepoRef handles repository reference name including those contain `/`.
func RequireRepoAdmin ¶
func RequireRepoAdmin() macaron.Handler
func RequireRepoWriter ¶
func RequireRepoWriter() macaron.Handler
func ServeGoGet ¶ added in v0.12.2
func ServeGoGet() macaron.Handler
ServeGoGet does quick responses for appropriate go-get meta with status OK regardless of whether the user has access to the repository, or the repository does exist at all. This is particular a workaround for "go get" command which does not respect .netrc file.
func Toggle ¶
func Toggle(options *ToggleOptions) macaron.Handler
Types ¶
type APIContext ¶
type APIContext struct { *Context // TODO: Reduce to only needed fields instead of full shadow // Base URL for the version of API endpoints, e.g. https://try.gogs.io/api/v1 BaseURL string Org *APIOrganization }
func (*APIContext) Error ¶
func (c *APIContext) Error(err error, msg string)
Error renders the 500 response.
func (*APIContext) ErrorStatus ¶
func (c *APIContext) ErrorStatus(status int, err error)
ErrorStatus renders error with given status code.
func (*APIContext) Errorf ¶
func (c *APIContext) Errorf(err error, format string, args ...any)
Errorf renders the 500 response with formatted message.
func (*APIContext) NotFoundOrError ¶
func (c *APIContext) NotFoundOrError(err error, msg string)
NotFoundOrError use error check function to determine if the error is about not found. It responses with 404 status code for not found error, or error context description for logging purpose of 500 server error.
func (*APIContext) SetLinkHeader ¶
func (c *APIContext) SetLinkHeader(total, pageSize int)
SetLinkHeader sets pagination link header by given total number and page size.
type Context ¶
type Context struct { *macaron.Context Cache cache.Cache Flash *session.Flash Session session.Store Link string // Current request URL User *db.User IsLogged bool IsBasicAuth bool IsTokenAuth bool Repo *Repository Org *Organization // contains filtered or unexported fields }
Context represents context of a request.
func (*Context) HasApiError ¶
HasError returns true if error occurs in form validation.
func (*Context) JSONSuccess ¶
JSONSuccess responses JSON with status http.StatusOK.
func (*Context) NotFoundOrError ¶
NotFoundOrError responses with 404 page for not found error and 500 page otherwise.
func (*Context) NotFoundOrErrorf ¶
NotFoundOrErrorf is same as NotFoundOrError but with formatted message.
func (*Context) RawRedirect ¶
RawRedirect simply calls underlying Redirect method with no escape.
func (*Context) Redirect ¶
Redirect responses redirection with given location and status. It escapes special characters in the location string.
func (*Context) RedirectSubpath ¶
RedirectSubpath responses redirection with given location and status. It prepends setting.Server.Subpath to the location string.
func (*Context) RenderWithErr ¶
RenderWithErr used for page has form validation but need to prompt error to users.
func (*Context) RequireAutosize ¶
func (c *Context) RequireAutosize()
func (*Context) RequireDropzone ¶
func (c *Context) RequireDropzone()
func (*Context) RequireHighlightJS ¶
func (c *Context) RequireHighlightJS()
func (*Context) RequireSimpleMDE ¶
func (c *Context) RequireSimpleMDE()
func (*Context) ServeContent ¶
func (c *Context) ServeContent(name string, r io.ReadSeeker, params ...any)
type Organization ¶
type ParamsUser ¶
ParamsUser is the wrapper type of the target user defined by URL parameter, namely ':username'.
type PullRequest ¶
type PullRequest struct { BaseRepo *db.Repository Allowed bool SameRepo bool HeadInfo string // [<user>:]<branch> }
type Repository ¶
type Repository struct { AccessMode db.AccessMode IsWatching bool IsViewBranch bool IsViewTag bool IsViewCommit bool Repository *db.Repository Owner *db.User Commit *git.Commit Tag *git.Tag GitRepo *git.Repository BranchName string TagName string TreePath string CommitID string RepoLink string CloneLink repoutil.CloneLink CommitsCount int64 Mirror *db.Mirror PullRequest *PullRequest }
func (*Repository) CanEnableEditor ¶
func (r *Repository) CanEnableEditor() bool
CanEnableEditor returns true if repository is editable and user has proper access level.
func (*Repository) Editorconfig ¶
func (r *Repository) Editorconfig() (*editorconfig.Editorconfig, error)
Editorconfig returns the ".editorconfig" definition if found in the HEAD of the default branch.
func (*Repository) HasAccess ¶
func (r *Repository) HasAccess() bool
HasAccess returns true if the current user has at least read access for this repository
func (*Repository) IsAdmin ¶
func (r *Repository) IsAdmin() bool
IsAdmin returns true if current user has admin or higher access of repository.
func (*Repository) IsOwner ¶
func (r *Repository) IsOwner() bool
IsOwner returns true if current user is the owner of repository.
func (*Repository) IsWriter ¶
func (r *Repository) IsWriter() bool
IsWriter returns true if current user has write or higher access of repository.
func (*Repository) MakeURL ¶
func (r *Repository) MakeURL(location any) string
MakeURL accepts a string or url.URL as argument and returns escaped URL prepended with repository URL.
func (*Repository) PullRequestURL ¶
func (r *Repository) PullRequestURL(baseBranch, headBranch string) string
PullRequestURL returns URL for composing a pull request. This function does not check if the repository can actually compose a pull request.