mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-25 09:20:36 +00:00
parent
bab1204db4
commit
dba5d82f86
6 changed files with 94 additions and 0 deletions
|
@ -46,4 +46,16 @@ func TestAPIExposedSettings(t *testing.T) {
|
|||
MirrorsDisabled: setting.Repository.DisableMirrors,
|
||||
HTTPGitDisabled: setting.Repository.DisableHTTPGit,
|
||||
}, repo)
|
||||
|
||||
attachment := new(api.GeneralAttachmentSettings)
|
||||
req = NewRequest(t, "GET", "/api/v1/settings/attachment")
|
||||
resp = MakeRequest(t, req, http.StatusOK)
|
||||
|
||||
DecodeJSON(t, resp, &attachment)
|
||||
assert.EqualValues(t, &api.GeneralAttachmentSettings{
|
||||
Enabled: setting.Attachment.Enabled,
|
||||
AllowedTypes: setting.Attachment.AllowedTypes,
|
||||
MaxFiles: setting.Attachment.MaxFiles,
|
||||
MaxSize: setting.Attachment.MaxSize,
|
||||
}, attachment)
|
||||
}
|
||||
|
|
|
@ -22,3 +22,11 @@ type GeneralAPISettings struct {
|
|||
DefaultGitTreesPerPage int `json:"default_git_trees_per_page"`
|
||||
DefaultMaxBlobSize int64 `json:"default_max_blob_size"`
|
||||
}
|
||||
|
||||
// GeneralAttachmentSettings contains global Attachment settings exposed by API
|
||||
type GeneralAttachmentSettings struct {
|
||||
Enabled bool `json:"enabled"`
|
||||
AllowedTypes string `json:"allowed_types"`
|
||||
MaxSize int64 `json:"max_size"`
|
||||
MaxFiles int `json:"max_files"`
|
||||
}
|
||||
|
|
|
@ -522,6 +522,7 @@ func RegisterRoutes(m *macaron.Macaron) {
|
|||
m.Group("/settings", func() {
|
||||
m.Get("/ui", settings.GetGeneralUISettings)
|
||||
m.Get("/api", settings.GetGeneralAPISettings)
|
||||
m.Get("/attachment", settings.GetGeneralAttachmentSettings)
|
||||
m.Get("/repository", settings.GetGeneralRepoSettings)
|
||||
})
|
||||
|
||||
|
|
|
@ -60,3 +60,21 @@ func GetGeneralRepoSettings(ctx *context.APIContext) {
|
|||
HTTPGitDisabled: setting.Repository.DisableHTTPGit,
|
||||
})
|
||||
}
|
||||
|
||||
// GetGeneralAttachmentSettings returns instance's global settings for Attachment
|
||||
func GetGeneralAttachmentSettings(ctx *context.APIContext) {
|
||||
// swagger:operation GET /settings/Attachment settings getGeneralAttachmentSettings
|
||||
// ---
|
||||
// summary: Get instance's global settings for Attachment
|
||||
// produces:
|
||||
// - application/json
|
||||
// responses:
|
||||
// "200":
|
||||
// "$ref": "#/responses/GeneralAttachmentSettings"
|
||||
ctx.JSON(http.StatusOK, api.GeneralAttachmentSettings{
|
||||
Enabled: setting.Attachment.Enabled,
|
||||
AllowedTypes: setting.Attachment.AllowedTypes,
|
||||
MaxFiles: setting.Attachment.MaxFiles,
|
||||
MaxSize: setting.Attachment.MaxSize,
|
||||
})
|
||||
}
|
||||
|
|
|
@ -26,3 +26,10 @@ type swaggerResponseGeneralAPISettings struct {
|
|||
// in:body
|
||||
Body api.GeneralAPISettings `json:"body"`
|
||||
}
|
||||
|
||||
// GeneralAttachmentSettings
|
||||
// swagger:response GeneralAttachmentSettings
|
||||
type swaggerResponseGeneralAttachmentSettings struct {
|
||||
// in:body
|
||||
Body api.GeneralAttachmentSettings `json:"body"`
|
||||
}
|
||||
|
|
|
@ -8672,6 +8672,23 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"/settings/Attachment": {
|
||||
"get": {
|
||||
"produces": [
|
||||
"application/json"
|
||||
],
|
||||
"tags": [
|
||||
"settings"
|
||||
],
|
||||
"summary": "Get instance's global settings for Attachment",
|
||||
"operationId": "getGeneralAttachmentSettings",
|
||||
"responses": {
|
||||
"200": {
|
||||
"$ref": "#/responses/GeneralAttachmentSettings"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"/settings/api": {
|
||||
"get": {
|
||||
"produces": [
|
||||
|
@ -13021,6 +13038,31 @@
|
|||
},
|
||||
"x-go-package": "code.gitea.io/gitea/modules/structs"
|
||||
},
|
||||
"GeneralAttachmentSettings": {
|
||||
"description": "GeneralAttachmentSettings contains global Attachment settings exposed by API",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"allowed_types": {
|
||||
"type": "string",
|
||||
"x-go-name": "AllowedTypes"
|
||||
},
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"x-go-name": "Enabled"
|
||||
},
|
||||
"max_files": {
|
||||
"type": "integer",
|
||||
"format": "int64",
|
||||
"x-go-name": "MaxFiles"
|
||||
},
|
||||
"max_size": {
|
||||
"type": "integer",
|
||||
"format": "int64",
|
||||
"x-go-name": "MaxSize"
|
||||
}
|
||||
},
|
||||
"x-go-package": "code.gitea.io/gitea/modules/structs"
|
||||
},
|
||||
"GeneralRepoSettings": {
|
||||
"description": "GeneralRepoSettings contains global repository settings exposed by API",
|
||||
"type": "object",
|
||||
|
@ -15247,6 +15289,12 @@
|
|||
"$ref": "#/definitions/GeneralAPISettings"
|
||||
}
|
||||
},
|
||||
"GeneralAttachmentSettings": {
|
||||
"description": "GeneralAttachmentSettings",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/GeneralAttachmentSettings"
|
||||
}
|
||||
},
|
||||
"GeneralRepoSettings": {
|
||||
"description": "GeneralRepoSettings",
|
||||
"schema": {
|
||||
|
|
Loading…
Reference in a new issue