forked from mirror/gitea
Compare commits
7 Commits
fcc11253ac
...
24a8d54bfb
Author | SHA1 | Date | |
---|---|---|---|
qwerty287 | 24a8d54bfb | ||
Galen Suen | fbadc1a198 | ||
zeripath | 72d82c5b6f | ||
mscherer | 04c55e97a2 | ||
Gabriel Vasile | 2e8fc5b034 | ||
GiteaBot | 789d251ae4 | ||
mscherer | 1f0dab2116 |
|
@ -267,10 +267,10 @@ func main() {
|
|||
logVerbose("batch cmd: %s %v", subCmd, substArgs)
|
||||
switch subCmd {
|
||||
case "gitea-fmt":
|
||||
cmdErrors = append(cmdErrors, passThroughCmd("gofmt", substArgs))
|
||||
if containsString(subArgs, "-w") {
|
||||
cmdErrors = append(cmdErrors, giteaFormatGoImports(files))
|
||||
}
|
||||
cmdErrors = append(cmdErrors, passThroughCmd("gofmt", substArgs))
|
||||
case "misspell":
|
||||
cmdErrors = append(cmdErrors, passThroughCmd("misspell", substArgs))
|
||||
default:
|
||||
|
|
|
@ -247,7 +247,7 @@ The following configuration set `Content-Type: application/vnd.android.package-a
|
|||
- `HTTP_ADDR`: **0.0.0.0**: HTTP listen address.
|
||||
- If `PROTOCOL` is set to `fcgi`, Gitea will listen for FastCGI requests on TCP socket
|
||||
defined by `HTTP_ADDR` and `HTTP_PORT` configuration settings.
|
||||
- If `PROTOCOL` is set to `unix` or `fcgi+unix`, this should be the name of the Unix socket file to use.
|
||||
- If `PROTOCOL` is set to `unix` or `fcgi+unix`, this should be the name of the Unix socket file to use. Relative paths will be made absolute against the AppWorkPath.
|
||||
- `HTTP_PORT`: **3000**: HTTP listen port.
|
||||
- If `PROTOCOL` is set to `fcgi`, Gitea will listen for FastCGI requests on TCP socket
|
||||
defined by `HTTP_ADDR` and `HTTP_PORT` configuration settings.
|
||||
|
|
|
@ -583,6 +583,10 @@ func NewContext() {
|
|||
sec := Cfg.Section("server")
|
||||
AppName = Cfg.Section("").Key("APP_NAME").MustString("Gitea: Git with a cup of tea")
|
||||
|
||||
Domain = sec.Key("DOMAIN").MustString("localhost")
|
||||
HTTPAddr = sec.Key("HTTP_ADDR").MustString("0.0.0.0")
|
||||
HTTPPort = sec.Key("HTTP_PORT").MustString("3000")
|
||||
|
||||
Protocol = HTTP
|
||||
switch sec.Key("PROTOCOL").String() {
|
||||
case "https":
|
||||
|
@ -605,6 +609,9 @@ func NewContext() {
|
|||
log.Fatal("Failed to parse unixSocketPermission: %s", UnixSocketPermissionRaw)
|
||||
}
|
||||
UnixSocketPermission = uint32(UnixSocketPermissionParsed)
|
||||
if !filepath.IsAbs(HTTPAddr) {
|
||||
HTTPAddr = filepath.Join(AppWorkPath, HTTPAddr)
|
||||
}
|
||||
case "unix":
|
||||
Protocol = UnixSocket
|
||||
UnixSocketPermissionRaw := sec.Key("UNIX_SOCKET_PERMISSION").MustString("666")
|
||||
|
@ -613,6 +620,9 @@ func NewContext() {
|
|||
log.Fatal("Failed to parse unixSocketPermission: %s", UnixSocketPermissionRaw)
|
||||
}
|
||||
UnixSocketPermission = uint32(UnixSocketPermissionParsed)
|
||||
if !filepath.IsAbs(HTTPAddr) {
|
||||
HTTPAddr = filepath.Join(AppWorkPath, HTTPAddr)
|
||||
}
|
||||
}
|
||||
EnableLetsEncrypt = sec.Key("ENABLE_LETSENCRYPT").MustBool(false)
|
||||
LetsEncryptTOS = sec.Key("LETSENCRYPT_ACCEPTTOS").MustBool(false)
|
||||
|
@ -626,9 +636,6 @@ func NewContext() {
|
|||
SSLMaximumVersion = sec.Key("SSL_MAX_VERSION").MustString("")
|
||||
SSLCurvePreferences = sec.Key("SSL_CURVE_PREFERENCES").Strings(",")
|
||||
SSLCipherSuites = sec.Key("SSL_CIPHER_SUITES").Strings(",")
|
||||
Domain = sec.Key("DOMAIN").MustString("localhost")
|
||||
HTTPAddr = sec.Key("HTTP_ADDR").MustString("0.0.0.0")
|
||||
HTTPPort = sec.Key("HTTP_PORT").MustString("3000")
|
||||
GracefulRestartable = sec.Key("ALLOW_GRACEFUL_RESTARTS").MustBool(true)
|
||||
GracefulHammerTime = sec.Key("GRACEFUL_HAMMER_TIME").MustDuration(60 * time.Second)
|
||||
StartupTimeout = sec.Key("STARTUP_TIMEOUT").MustDuration(0 * time.Second)
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
package upload
|
||||
|
||||
import (
|
||||
"mime"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"path"
|
||||
|
@ -31,7 +32,6 @@ func (err ErrFileTypeForbidden) Error() string {
|
|||
return "This file extension or type is not allowed to be uploaded."
|
||||
}
|
||||
|
||||
var mimeTypeSuffixRe = regexp.MustCompile(`;.*$`)
|
||||
var wildcardTypeRe = regexp.MustCompile(`^[a-z]+/\*$`)
|
||||
|
||||
// Verify validates whether a file is allowed to be uploaded.
|
||||
|
@ -51,7 +51,11 @@ func Verify(buf []byte, fileName string, allowedTypesStr string) error {
|
|||
}
|
||||
|
||||
fullMimeType := http.DetectContentType(buf)
|
||||
mimeType := strings.TrimSpace(mimeTypeSuffixRe.ReplaceAllString(fullMimeType, ""))
|
||||
mimeType, _, err := mime.ParseMediaType(fullMimeType)
|
||||
if err != nil {
|
||||
log.Warn("Detected attachment type could not be parsed %s", fullMimeType)
|
||||
return ErrFileTypeForbidden{Type: fullMimeType}
|
||||
}
|
||||
extension := strings.ToLower(path.Ext(fileName))
|
||||
|
||||
// https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers
|
||||
|
|
|
@ -155,6 +155,8 @@ lfs_path=Ruta raĂz de Git LFS
|
|||
lfs_path_helper=Los archivos almacenados con Git LFS se almacenarán en este directorio. DĂ©jelo vacĂo para deshabilitarlo.
|
||||
run_user=Ejecutar como usuario
|
||||
run_user_helper=Introduzca el nombre de usuario del sistema operativo sobre el que está ejecutando Gitea. Tenga en cuenta que este usuario debe tener acceso a la ruta a la raĂz de los repositorios.
|
||||
domain=Dominio del Servidor
|
||||
domain_helper=Dominio o direcciĂłn de host para el servidor.
|
||||
ssh_port=Puerto de servidor SSH
|
||||
ssh_port_helper=NĂşmero de puerto en el que está escuchando su servidor SSH. DĂ©jelo vacĂo para deshabilitarlo.
|
||||
http_port=Puerto de escucha HTTP de Gitea
|
||||
|
@ -519,7 +521,9 @@ website=Página web
|
|||
location=LocalizaciĂłn
|
||||
update_theme=Actualizar tema
|
||||
update_profile=Actualizar perfil
|
||||
update_language=Actualizar idioma
|
||||
update_language_not_found=El idioma '%s' no está disponible.
|
||||
update_language_success=El idioma ha sido actualizado.
|
||||
update_profile_success=Tu perfil ha sido actualizado.
|
||||
change_username=Su nombre de usuario ha sido cambiado.
|
||||
change_username_prompt=Nota: los cambios de nombre de usuario también cambian la URL de su cuenta.
|
||||
|
@ -895,6 +899,7 @@ migrate.clone_address_desc=La URL HTTP(S) o de Git 'clone' de un repositorio exi
|
|||
migrate.github_token_desc=Puedes poner uno o más tokens con comas separadas aquĂ para hacer migrar más rápido debido al lĂmite de velocidad de Github API. PRECAUCIĂ“N: Abusar esta caracterĂstica puede violar la polĂtica del proveedor de servicios y llevar a bloquear la cuenta.
|
||||
migrate.clone_local_path=o una ruta local del servidor
|
||||
migrate.permission_denied=No te está permitido importar repositorios locales.
|
||||
migrate.permission_denied_blocked=No puede importar desde hosts no permitidos, por favor pida al administrador que marque ALLOWED_DOMAINS/ALLOW_LOCALNETWORKS/BLOCKED_DOMAINS configuraciĂłn.
|
||||
migrate.invalid_local_path=La ruta local es inválida. No existe o no es un directorio.
|
||||
migrate.invalid_lfs_endpoint=El punto final de LFS no es válido.
|
||||
migrate.failed=MigraciĂłn fallida: %v
|
||||
|
@ -905,12 +910,14 @@ migrate.migrate=Migrar desde %s
|
|||
migrate.migrating=Migrando desde <b>%s</b>...
|
||||
migrate.migrating_failed=La migraciĂłn desde <b>%s</b> ha fallado.
|
||||
migrate.migrating_failed.error=Error: %s
|
||||
migrate.migrating_failed_no_addr=MigraciĂłn fallida.
|
||||
migrate.github.description=Migrar datos desde github.com u otra instancia de Github.
|
||||
migrate.git.description=Migrar un repositorio sĂłlo desde cualquier servicio Git.
|
||||
migrate.gitlab.description=Migrar datos de gitlab.com u otra instancia de GitLab.
|
||||
migrate.gitea.description=Migrar datos de gitea.com u otra instancia de Gitea.
|
||||
migrate.gogs.description=Migrar datos de notabug.org u otra instancia de Gogs.
|
||||
migrate.onedev.description=Migrar datos desde code.onedev.io u otra instancia de OneDev.
|
||||
migrate.gitbucket.description=Migrar datos de instancias de GitBucket.
|
||||
migrate.migrating_git=Migrando datos de Git
|
||||
migrate.migrating_topics=Migrando Temas
|
||||
migrate.migrating_milestones=Migrando Hitos
|
||||
|
@ -939,6 +946,7 @@ clone_this_repo=Clonar este repositorio
|
|||
create_new_repo_command=Crear un nuevo repositorio desde lĂnea de comandos
|
||||
push_exist_repo=Hacer push de un repositorio existente desde lĂnea de comandos
|
||||
empty_message=Este repositorio no contiene ningĂşn contenido.
|
||||
broken_message=Los datos de git subyacentes a este repositorio no pueden ser leĂdos. Contacte con el administrador de esta instancia o elimine este repositorio.
|
||||
|
||||
code=CĂłdigo
|
||||
code.desc=Acceder cĂłdigo fuente, archivos, commits, y ramas.
|
||||
|
@ -1165,6 +1173,9 @@ issues.add_assignee_at='fue asignado por <b>%s</b> %s'
|
|||
issues.remove_assignee_at=`fue desasignado por <b>%s</b> %s`
|
||||
issues.remove_self_assignment=`eliminado su asignaciĂłn %s`
|
||||
issues.change_title_at=`cambiĂł el tĂtulo de <b><strike>%s</strike></b> a <b>%s</b> %s`
|
||||
issues.change_ref_at=`cambiĂł referencia de <b><strike>%s</strike></b> a <b>%s</b> %s`
|
||||
issues.remove_ref_at=`eliminĂł la referencia <b>%s</b> %s`
|
||||
issues.add_ref_at=`añadió la referencia <b>%s</b> %s`
|
||||
issues.delete_branch_at=`rama eliminada <b>%s</b> %s`
|
||||
issues.open_tab=%d abiertas
|
||||
issues.close_tab=%d cerradas
|
||||
|
@ -1398,10 +1409,12 @@ pulls.compare_changes_desc=Seleccione la rama en la que se fusiona y la rama a r
|
|||
pulls.compare_base=fusionar en
|
||||
pulls.compare_compare=recuperar de
|
||||
pulls.switch_comparison_type=Cambiar tipo de comparaciĂłn
|
||||
pulls.switch_head_and_base=Intercambiar cabeza y base
|
||||
pulls.filter_branch=Filtrar rama
|
||||
pulls.no_results=Sin resultados.
|
||||
pulls.nothing_to_compare=Estas ramas son iguales. No hay necesidad para crear un pull request.
|
||||
pulls.nothing_to_compare_and_allow_empty_pr=Estas ramas son iguales. Este PR estará vacĂo.
|
||||
pulls.has_pull_request=`Ya existe un pull request entre estas ramas: <a href="%[1]s">%[2]s#%[3]d</a>`
|
||||
pulls.create=Crear Pull Request
|
||||
pulls.title_desc=desea fusionar %[1]d commits de <code>%[2]s</code> en <code id="branch_target">%[3]s</code>
|
||||
pulls.merged_title_desc=fusionados %[1]d commits de <code>%[2]s</code> en <code>%[3]s</code> %[4]s
|
||||
|
@ -1919,6 +1932,8 @@ settings.require_signed_commits=Requiere commits firmados
|
|||
settings.require_signed_commits_desc=Rechazar push en esta rama si los commits no están firmados o no son verificables.
|
||||
settings.protect_protected_file_patterns=Patrones de archivos protegidos (separados con punto y coma '\;'):
|
||||
settings.protect_protected_file_patterns_desc=Archivos protegidos que no están permitidos a ser cambiados directamente incluso si el usuario tiene permiso para agregar, editar o borrar archivos en esta rama. Múltiples patrones pueden separarse usando punto y coma ('\;'). Vea la documentación de <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> para la sintaxis de patrones. Ejemplos: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
|
||||
settings.protect_unprotected_file_patterns=Patrones de archivos sin protecciĂłn (separados con punto y coma '\;'):
|
||||
settings.protect_unprotected_file_patterns_desc=Archivos sin protecciĂłn que se pueden cambiar directamente si el usuario tiene acceso de escritura, evitando la restricciĂłn push. MĂşltiples patrones pueden separarse usando punto y coma ('\;'). Vea la documentaciĂłn de <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> para la sintaxis de patrones. Ejemplos: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
|
||||
settings.add_protected_branch=Activar protecciĂłn
|
||||
settings.delete_protected_branch=Desactivar protecciĂłn
|
||||
settings.update_protect_branch_success=La protecciĂłn de la rama '%s' ha sido actualizada.
|
||||
|
@ -1992,6 +2007,7 @@ settings.lfs_pointers.inRepo=En repositorio
|
|||
settings.lfs_pointers.exists=Existe en almacén
|
||||
settings.lfs_pointers.accessible=Accesible al usuario
|
||||
settings.lfs_pointers.associateAccessible=Asociar %d OID accesibles
|
||||
settings.rename_branch_failed_exist=No se puede renombrar la rama porque la rama destino %s ya existe.
|
||||
settings.rename_branch_failed_not_exist=No se puede renombrar la rama %s porque no existe.
|
||||
settings.rename_branch_success=La rama %s se renombrĂł correctamente a %s.
|
||||
settings.rename_branch_from=nombre de la rama vieja
|
||||
|
@ -2028,6 +2044,7 @@ diff.file_suppressed=La diferencia del archivo ha sido suprimido porque es demas
|
|||
diff.file_suppressed_line_too_long=Las diferiencias del archivo han sido suprimidas porque una o mas lineas son muy largas
|
||||
diff.too_many_files=Algunos archivos no se mostraron porque demasiados archivos han cambiado en esta diferencia
|
||||
diff.show_more=Ver más
|
||||
diff.load=Cargar Diff
|
||||
diff.generated=generado
|
||||
diff.vendored=vendido
|
||||
diff.comment.placeholder=Deja un comentario
|
||||
|
@ -2377,6 +2394,7 @@ users.list_status_filter.reset=Reiniciar
|
|||
users.list_status_filter.is_active=Activo
|
||||
users.list_status_filter.not_active=Inactivo
|
||||
users.list_status_filter.is_admin=Administrador
|
||||
users.list_status_filter.not_admin=Sin Admin
|
||||
users.list_status_filter.is_restricted=Restringido
|
||||
users.list_status_filter.not_restricted=No restringido
|
||||
users.list_status_filter.is_prohibit_login=Prohibido el inicio de sesiĂłn
|
||||
|
@ -2487,6 +2505,7 @@ auths.oauth2_authURL=URL de AutorizaciĂłn
|
|||
auths.oauth2_profileURL=URL del perfil
|
||||
auths.oauth2_emailURL=URL de correo
|
||||
auths.skip_local_two_fa=Omitir 2FA local
|
||||
auths.skip_local_two_fa_helper=Dejar sin ajustar significa que los usuarios locales con una configuración 2FA tendrán que pasar 2FA para iniciar sesión
|
||||
auths.oauth2_tenant=Tenant
|
||||
auths.enable_auto_register=Hablilitar Auto-Registro
|
||||
auths.sspi_auto_create_users=Crear usuarios automáticamente
|
||||
|
@ -2535,6 +2554,7 @@ config.app_ver=VersiĂłn de Gitea
|
|||
config.app_url=URL base de Gitea
|
||||
config.custom_conf=Ruta del fichero de configuraciĂłn
|
||||
config.custom_file_root_path=Ruta raĂz de los archivos personalizada
|
||||
config.domain=Dominio del Servidor
|
||||
config.offline_mode=Modo offline
|
||||
config.disable_router_log=Deshabilitar Log del Router
|
||||
config.run_user=Ejecutar como usuario
|
||||
|
@ -2550,6 +2570,7 @@ config.reverse_auth_user=AutenticaciĂłn Inversa de Usuario
|
|||
config.ssh_config=ConfiguraciĂłn SSH
|
||||
config.ssh_enabled=Habilitado
|
||||
config.ssh_start_builtin_server=Utilizar servidor integrado
|
||||
config.ssh_domain=Dominio del servidor SSH
|
||||
config.ssh_port=Puerto
|
||||
config.ssh_listen_port=Puerto de escucha
|
||||
config.ssh_root_path=Ruta raĂz
|
||||
|
@ -2746,14 +2767,32 @@ notices.delete_success=Los avisos del sistema se han eliminado.
|
|||
[action]
|
||||
create_repo=creĂł el repositorio <a href="%s">%s</a>
|
||||
rename_repo=repositorio renombrado de <code>%[1]s</code> a <a href="%[2]s">%[3]s</a>
|
||||
commit_repo=hizo push a <a href="%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a>
|
||||
create_issue=`abriĂł la incidencia <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_issue=`cerrĂł la incidencia <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
reopen_issue=`reabriĂł la incidencia <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
create_pull_request=`creĂł el pull request <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_pull_request=`cerrĂł el pull request <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
reopen_pull_request=`reabriĂł el pull request <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
comment_issue=`comentĂł en la incidencia <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
comment_pull=`comentĂł en el pull request <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
merge_pull_request=`fusionĂł el pull request <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
transfer_repo=transfiriĂł el repositorio <code>%s</code> a <a href="%s">%s</a>
|
||||
push_tag=hizĂł push la etiqueta <a href="%[2]s">%[3]s</a> a <a href="%[1]s">%[4]s</a>
|
||||
delete_tag=etiqueta eliminada %[2]s de <a href="%[1]s">%[3]s</a>
|
||||
delete_branch=rama %[2]s eliminada, de <a href="%[1]s">%[3]s</a>
|
||||
compare_branch=Comparar
|
||||
compare_commits=Comparar %d commits
|
||||
compare_commits_general=Comparar commits
|
||||
mirror_sync_push=sincronizó cambios a <a href="%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a> desde réplica
|
||||
mirror_sync_create=sincronizó la nueva referencia <a href="%[2]s">%[3]s</a> a <a href="%[1]s">%[4]s</a> de réplica
|
||||
mirror_sync_delete=sincronizada y eliminada referencia <code>%[2]s</code> en <a href="%[1]s">%[3]s</a> desde réplica
|
||||
approve_pull_request=`aprobĂł <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
reject_pull_request=`sugiriĂł cambios para <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
publish_release=`se lanzĂł <a href="%[2]s"> "%[4]s" </a> en <a href="%[1]s">%[3]s</a>`
|
||||
review_dismissed=`descartĂł la revisiĂłn de <b>%[4]s</b> para <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
review_dismissed_reason=Motivo:
|
||||
create_branch=creĂł rama <a href="%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a>
|
||||
starred_repo=destacĂł <a href="%[1]s">%[2]s</a>
|
||||
watched_repo=comenzĂł a seguir <a href="%[1]s">%[2]s</a>
|
||||
|
||||
|
|
|
@ -955,7 +955,6 @@ func NewIssuePost(ctx *context.Context) {
|
|||
ctx.Data["NewIssueChooseTemplate"] = len(ctx.IssueTemplatesFromDefaultBranch()) > 0
|
||||
ctx.Data["RequireHighlightJS"] = true
|
||||
ctx.Data["RequireSimpleMDE"] = true
|
||||
ctx.Data["ReadOnly"] = false
|
||||
ctx.Data["PullRequestWorkInProgressPrefixes"] = setting.Repository.PullRequest.WorkInProgressPrefixes
|
||||
ctx.Data["IsAttachmentEnabled"] = setting.Attachment.Enabled
|
||||
upload.AddUploadContext(ctx, "comment")
|
||||
|
@ -1630,7 +1629,6 @@ func ViewIssue(ctx *context.Context) {
|
|||
ctx.Data["Participants"] = participants
|
||||
ctx.Data["NumParticipants"] = len(participants)
|
||||
ctx.Data["Issue"] = issue
|
||||
ctx.Data["ReadOnly"] = false
|
||||
ctx.Data["SignInLink"] = setting.AppSubURL + "/user/login?redirect_to=" + url.QueryEscape(ctx.Data["Link"].(string))
|
||||
ctx.Data["IsIssuePoster"] = ctx.IsSigned && issue.IsPoster(ctx.User.ID)
|
||||
ctx.Data["HasIssuesOrPullsWritePermission"] = ctx.Repo.CanWriteIssuesOrPulls(issue.IsPull)
|
||||
|
|
|
@ -681,13 +681,14 @@ func SignInOAuthCallback(ctx *context.Context) {
|
|||
return
|
||||
}
|
||||
u = &user_model.User{
|
||||
Name: getUserName(&gothUser),
|
||||
FullName: gothUser.Name,
|
||||
Email: gothUser.Email,
|
||||
IsActive: !setting.OAuth2Client.RegisterEmailConfirm,
|
||||
LoginType: login.OAuth2,
|
||||
LoginSource: loginSource.ID,
|
||||
LoginName: gothUser.UserID,
|
||||
Name: getUserName(&gothUser),
|
||||
FullName: gothUser.Name,
|
||||
Email: gothUser.Email,
|
||||
IsActive: !setting.OAuth2Client.RegisterEmailConfirm,
|
||||
LoginType: login.OAuth2,
|
||||
LoginSource: loginSource.ID,
|
||||
LoginName: gothUser.UserID,
|
||||
IsRestricted: setting.Service.DefaultUserIsRestricted,
|
||||
}
|
||||
|
||||
if !createAndHandleCreatedUser(ctx, base.TplName(""), nil, u, &gothUser, setting.OAuth2Client.AccountLinking != setting.OAuth2AccountLinkingDisabled) {
|
||||
|
|
|
@ -232,10 +232,16 @@ func RegisterRoutes(m *web.Route) {
|
|||
// Routers.
|
||||
// for health check
|
||||
m.Get("/", Home)
|
||||
m.Get("/.well-known/openid-configuration", user.OIDCWellKnown)
|
||||
if setting.Federation.Enabled {
|
||||
m.Get("/.well-known/nodeinfo", NodeInfoLinks)
|
||||
}
|
||||
m.Group("/.well-known", func() {
|
||||
m.Get("/openid-configuration", user.OIDCWellKnown)
|
||||
if setting.Federation.Enabled {
|
||||
m.Get("/nodeinfo", NodeInfoLinks)
|
||||
}
|
||||
m.Get("/change-password", func(w http.ResponseWriter, req *http.Request) {
|
||||
http.Redirect(w, req, "/user/settings/account", http.StatusTemporaryRedirect)
|
||||
})
|
||||
})
|
||||
|
||||
m.Group("/explore", func() {
|
||||
m.Get("", func(ctx *context.Context) {
|
||||
ctx.Redirect(setting.AppSubURL + "/explore/repos")
|
||||
|
|
|
@ -11,12 +11,12 @@ import (
|
|||
"code.gitea.io/gitea/models/login"
|
||||
user_model "code.gitea.io/gitea/models/user"
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
"code.gitea.io/gitea/services/auth/source/oauth2"
|
||||
"code.gitea.io/gitea/services/auth/source/smtp"
|
||||
|
||||
_ "code.gitea.io/gitea/services/auth/source/db" // register the sources (and below)
|
||||
_ "code.gitea.io/gitea/services/auth/source/ldap" // register the ldap source
|
||||
"code.gitea.io/gitea/services/auth/source/oauth2"
|
||||
_ "code.gitea.io/gitea/services/auth/source/pam" // register the pam source
|
||||
"code.gitea.io/gitea/services/auth/source/smtp"
|
||||
_ "code.gitea.io/gitea/services/auth/source/pam" // register the pam source
|
||||
_ "code.gitea.io/gitea/services/auth/source/sspi" // register the sspi source
|
||||
)
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@
|
|||
{{$.CsrfTokenHtml}}
|
||||
</form>
|
||||
|
||||
<div class="ui {{if .ReadOnly}}disabled{{end}} floating filter select-branch dropdown" data-no-results="{{.i18n.Tr "repo.pulls.no_results"}}">
|
||||
<div class="ui {{if not .HasIssuesOrPullsWritePermission}}disabled{{end}} floating filter select-branch dropdown" data-no-results="{{.i18n.Tr "repo.pulls.no_results"}}">
|
||||
<div class="ui basic small button">
|
||||
<span class="text branch-name">{{if .Issue.Ref}}{{$.RefEndName}}{{else}}{{.i18n.Tr "repo.issues.no_ref"}}{{end}}</span>
|
||||
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
||||
{{if .HasIssuesOrPullsWritePermission}}{{svg "octicon-triangle-down" 14 "dropdown icon"}}{{end}}
|
||||
</div>
|
||||
<div class="menu">
|
||||
<div class="ui icon search input">
|
||||
|
|
Loading…
Reference in New Issue