mirror of
https://github.com/go-gitea/gitea
synced 2025-07-22 18:28:37 +00:00
Allow Gogs to run from a suburl behind a reverse proxy. e.g. http://mydomain.com/gogs/
Conflicts: modules/setting/setting.go Conflicts: templates/repo/release/list.tmpl templates/user/dashboard/dashboard.tmpl Conflicts: routers/repo/setting.go
This commit is contained in:
@@ -143,7 +143,7 @@ func Dashboard(ctx *middleware.Context) {
|
||||
} else {
|
||||
ctx.Flash.Success(success)
|
||||
}
|
||||
ctx.Redirect("/admin")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin")
|
||||
return
|
||||
}
|
||||
|
||||
|
@@ -14,6 +14,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/base"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -99,7 +100,7 @@ func NewAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
|
||||
}
|
||||
|
||||
log.Trace("Authentication created by admin(%s): %s", ctx.User.Name, form.AuthName)
|
||||
ctx.Redirect("/admin/auths")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/auths")
|
||||
}
|
||||
|
||||
func EditAuthSource(ctx *middleware.Context) {
|
||||
@@ -180,7 +181,7 @@ func EditAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
|
||||
|
||||
log.Trace("Authentication changed by admin(%s): %s", ctx.User.Name, form.AuthName)
|
||||
ctx.Flash.Success(ctx.Tr("admin.auths.update_success"))
|
||||
ctx.Redirect("/admin/auths/" + ctx.Params(":authid"))
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/auths/" + ctx.Params(":authid"))
|
||||
}
|
||||
|
||||
func DeleteAuthSource(ctx *middleware.Context) {
|
||||
@@ -200,12 +201,12 @@ func DeleteAuthSource(ctx *middleware.Context) {
|
||||
switch err {
|
||||
case models.ErrAuthenticationUserUsed:
|
||||
ctx.Flash.Error("form.still_own_user")
|
||||
ctx.Redirect("/admin/auths/" + ctx.Params(":authid"))
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/auths/" + ctx.Params(":authid"))
|
||||
default:
|
||||
ctx.Handle(500, "DelLoginSource", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
log.Trace("Authentication deleted by admin(%s): %s", ctx.User.Name, a.Name)
|
||||
ctx.Redirect("/admin/auths")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/auths")
|
||||
}
|
||||
|
@@ -14,6 +14,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/base"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -120,7 +121,7 @@ func NewUserPost(ctx *middleware.Context, form auth.RegisterForm) {
|
||||
return
|
||||
}
|
||||
log.Trace("Account created by admin(%s): %s", ctx.User.Name, u.Name)
|
||||
ctx.Redirect("/admin/users")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/users")
|
||||
}
|
||||
|
||||
func EditUser(ctx *middleware.Context) {
|
||||
@@ -197,7 +198,7 @@ func EditUserPost(ctx *middleware.Context, form auth.AdminEditUserForm) {
|
||||
|
||||
ctx.Data["User"] = u
|
||||
ctx.Flash.Success(ctx.Tr("admin.users.update_profile_success"))
|
||||
ctx.Redirect("/admin/users/" + ctx.Params(":userid"))
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/users/" + ctx.Params(":userid"))
|
||||
}
|
||||
|
||||
func DeleteUser(ctx *middleware.Context) {
|
||||
@@ -217,12 +218,12 @@ func DeleteUser(ctx *middleware.Context) {
|
||||
switch err {
|
||||
case models.ErrUserOwnRepos:
|
||||
ctx.Flash.Error(ctx.Tr("admin.users.still_own_repo"))
|
||||
ctx.Redirect("/admin/users/" + ctx.Params(":userid"))
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/users/" + ctx.Params(":userid"))
|
||||
default:
|
||||
ctx.Handle(500, "DeleteUser", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
log.Trace("Account deleted by admin(%s): %s", ctx.User.Name, u.Name)
|
||||
ctx.Redirect("/admin/users")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/admin/users")
|
||||
}
|
||||
|
@@ -33,7 +33,7 @@ func Home(ctx *middleware.Context) {
|
||||
// Check auto-login.
|
||||
uname := ctx.GetCookie(setting.CookieUserName)
|
||||
if len(uname) != 0 {
|
||||
ctx.Redirect("/user/login")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/login")
|
||||
return
|
||||
}
|
||||
|
||||
|
@@ -253,5 +253,5 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
|
||||
|
||||
log.Info("First-time run install finished!")
|
||||
ctx.Flash.Success(ctx.Tr("install.install_success"))
|
||||
ctx.Redirect("/user/login")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/login")
|
||||
}
|
||||
|
@@ -11,6 +11,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/base"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -86,7 +87,7 @@ func MembersAction(ctx *middleware.Context) {
|
||||
if ctx.Params(":action") != "leave" {
|
||||
ctx.Redirect(ctx.Org.OrgLink + "/members")
|
||||
} else {
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -10,6 +10,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/base"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -82,5 +83,5 @@ func CreatePost(ctx *middleware.Context, form auth.CreateOrgForm) {
|
||||
}
|
||||
log.Trace("Organization created: %s", org.Name)
|
||||
|
||||
ctx.Redirect("/org/" + form.OrgName + "/dashboard")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/org/" + form.OrgName + "/dashboard")
|
||||
}
|
||||
|
@@ -11,6 +11,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/base"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -48,7 +49,7 @@ func SettingsPost(ctx *middleware.Context, form auth.UpdateOrgSettingForm) {
|
||||
} else if err = models.ChangeUserName(org, form.OrgUserName); err != nil {
|
||||
if err == models.ErrUserNameIllegal {
|
||||
ctx.Flash.Error(ctx.Tr("form.illegal_username"))
|
||||
ctx.Redirect("/org/" + org.LowerName + "/settings")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/org/" + org.LowerName + "/settings")
|
||||
return
|
||||
} else {
|
||||
ctx.Handle(500, "ChangeUserName", err)
|
||||
@@ -72,7 +73,7 @@ func SettingsPost(ctx *middleware.Context, form auth.UpdateOrgSettingForm) {
|
||||
}
|
||||
log.Trace("Organization setting updated: %s", org.Name)
|
||||
ctx.Flash.Success(ctx.Tr("org.settings.update_setting_success"))
|
||||
ctx.Redirect("/org/" + org.Name + "/settings")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/org/" + org.Name + "/settings")
|
||||
}
|
||||
|
||||
func SettingsDelete(ctx *middleware.Context) {
|
||||
@@ -86,13 +87,13 @@ func SettingsDelete(ctx *middleware.Context) {
|
||||
switch err {
|
||||
case models.ErrUserOwnRepos:
|
||||
ctx.Flash.Error(ctx.Tr("form.org_still_own_repo"))
|
||||
ctx.Redirect("/org/" + org.LowerName + "/settings/delete")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/org/" + org.LowerName + "/settings/delete")
|
||||
default:
|
||||
ctx.Handle(500, "DeleteOrganization", err)
|
||||
}
|
||||
} else {
|
||||
log.Trace("Organization deleted: %s", ctx.User.Name)
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
}
|
||||
return
|
||||
}
|
||||
|
@@ -159,8 +159,8 @@ func Diff(ctx *middleware.Context) {
|
||||
ctx.Data["Diff"] = diff
|
||||
ctx.Data["Parents"] = parents
|
||||
ctx.Data["DiffNotAvailable"] = diff.NumFiles() == 0
|
||||
ctx.Data["SourcePath"] = "/" + path.Join(userName, repoName, "src", commitId)
|
||||
ctx.Data["RawPath"] = "/" + path.Join(userName, repoName, "raw", commitId)
|
||||
ctx.Data["SourcePath"] = setting.AppRootSubUrl + "/" + path.Join(userName, repoName, "src", commitId)
|
||||
ctx.Data["RawPath"] = setting.AppRootSubUrl + "/" + path.Join(userName, repoName, "raw", commitId)
|
||||
ctx.HTML(200, DIFF)
|
||||
}
|
||||
|
||||
|
@@ -54,8 +54,8 @@ func Issues(ctx *middleware.Context) {
|
||||
isShowClosed := ctx.Query("state") == "closed"
|
||||
|
||||
if viewType != "all" && !ctx.IsSigned {
|
||||
ctx.SetCookie("redirect_to", "/"+url.QueryEscape(ctx.Req.RequestURI))
|
||||
ctx.Redirect("/user/login")
|
||||
ctx.SetCookie("redirect_to", "/"+url.QueryEscape(setting.AppRootSubUrl + ctx.Req.RequestURI))
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/login")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -312,7 +312,7 @@ func CreateIssuePost(ctx *middleware.Context, form auth.CreateIssueForm) {
|
||||
}
|
||||
log.Trace("%d Issue created: %d", ctx.Repo.Repository.Id, issue.Id)
|
||||
|
||||
send(200, fmt.Sprintf("/%s/%s/issues/%d", ctx.Params(":username"), ctx.Params(":reponame"), issue.Index), nil)
|
||||
send(200, fmt.Sprintf("%s/%s/%s/issues/%d", setting.AppRootSubUrl, ctx.Params(":username"), ctx.Params(":reponame"), issue.Index), nil)
|
||||
}
|
||||
|
||||
func checkLabels(labels, allLabels []*models.Label) {
|
||||
|
@@ -18,6 +18,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/git"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -95,7 +96,7 @@ func CreatePost(ctx *middleware.Context, form auth.CreateRepoForm) {
|
||||
form.Gitignore, form.License, form.Private, false, form.InitReadme)
|
||||
if err == nil {
|
||||
log.Trace("Repository created: %s/%s", ctxUser.Name, form.RepoName)
|
||||
ctx.Redirect("/" + ctxUser.Name + "/" + form.RepoName)
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/" + ctxUser.Name + "/" + form.RepoName)
|
||||
return
|
||||
} else if err == models.ErrRepoAlreadyExist {
|
||||
ctx.Data["Err_RepoName"] = true
|
||||
@@ -179,7 +180,7 @@ func MigratePost(ctx *middleware.Context, form auth.MigrateRepoForm) {
|
||||
form.Mirror, url)
|
||||
if err == nil {
|
||||
log.Trace("Repository migrated: %s/%s", ctxUser.Name, form.RepoName)
|
||||
ctx.Redirect("/" + ctxUser.Name + "/" + form.RepoName)
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/" + ctxUser.Name + "/" + form.RepoName)
|
||||
return
|
||||
} else if err == models.ErrRepoAlreadyExist {
|
||||
ctx.Data["Err_RepoName"] = true
|
||||
|
@@ -97,7 +97,7 @@ func SettingsPost(ctx *middleware.Context, form auth.RepoSettingForm) {
|
||||
}
|
||||
|
||||
ctx.Flash.Success(ctx.Tr("repo.settings.update_settings_success"))
|
||||
ctx.Redirect(fmt.Sprintf("/%s/%s/settings", ctx.Repo.Owner.Name, ctx.Repo.Repository.Name))
|
||||
ctx.Redirect(fmt.Sprintf("%s/%s/%s/settings", setting.AppRootSubUrl, ctx.Repo.Owner.Name, ctx.Repo.Repository.Name))
|
||||
case "transfer":
|
||||
if ctx.Repo.Repository.Name != form.RepoName {
|
||||
ctx.RenderWithErr(ctx.Tr("form.enterred_invalid_repo_name"), SETTINGS_OPTIONS, nil)
|
||||
@@ -122,7 +122,7 @@ func SettingsPost(ctx *middleware.Context, form auth.RepoSettingForm) {
|
||||
}
|
||||
log.Trace("Repository transfered: %s/%s -> %s", ctx.Repo.Owner.Name, ctx.Repo.Repository.Name, newOwner)
|
||||
ctx.Flash.Success(ctx.Tr("repo.settings.transfer_succeed"))
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
case "delete":
|
||||
if ctx.Repo.Repository.Name != form.RepoName {
|
||||
ctx.RenderWithErr(ctx.Tr("form.enterred_invalid_repo_name"), SETTINGS_OPTIONS, nil)
|
||||
@@ -151,9 +151,9 @@ func SettingsPost(ctx *middleware.Context, form auth.RepoSettingForm) {
|
||||
}
|
||||
log.Trace("Repository deleted: %s/%s", ctx.Repo.Owner.Name, ctx.Repo.Repository.Name)
|
||||
if ctx.Repo.Owner.IsOrganization() {
|
||||
ctx.Redirect("/org/" + ctx.Repo.Owner.Name + "/dashboard")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/org/" + ctx.Repo.Owner.Name + "/dashboard")
|
||||
} else {
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -167,7 +167,7 @@ func SettingsCollaboration(ctx *middleware.Context) {
|
||||
if ctx.Req.Method == "POST" {
|
||||
name := strings.ToLower(ctx.Query("collaborator"))
|
||||
if len(name) == 0 || ctx.Repo.Owner.LowerName == name {
|
||||
ctx.Redirect(ctx.Req.URL.Path)
|
||||
ctx.Redirect(setting.AppRootSubUrl + ctx.Req.URL.Path)
|
||||
return
|
||||
}
|
||||
has, err := models.HasAccess(name, repoLink, models.WRITABLE)
|
||||
@@ -175,7 +175,7 @@ func SettingsCollaboration(ctx *middleware.Context) {
|
||||
ctx.Handle(500, "HasAccess", err)
|
||||
return
|
||||
} else if has {
|
||||
ctx.Redirect(ctx.Req.URL.Path)
|
||||
ctx.Redirect(setting.AppRootSubUrl + ctx.Req.URL.Path)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -183,7 +183,7 @@ func SettingsCollaboration(ctx *middleware.Context) {
|
||||
if err != nil {
|
||||
if err == models.ErrUserNotExist {
|
||||
ctx.Flash.Error(ctx.Tr("form.user_not_exist"))
|
||||
ctx.Redirect(ctx.Req.URL.Path)
|
||||
ctx.Redirect(setting.AppRootSubUrl + ctx.Req.URL.Path)
|
||||
} else {
|
||||
ctx.Handle(500, "GetUserByName", err)
|
||||
}
|
||||
@@ -204,7 +204,7 @@ func SettingsCollaboration(ctx *middleware.Context) {
|
||||
}
|
||||
|
||||
ctx.Flash.Success(ctx.Tr("repo.settings.add_collaborator_success"))
|
||||
ctx.Redirect(ctx.Req.URL.Path)
|
||||
ctx.Redirect(setting.AppRootSubUrl + ctx.Req.URL.Path)
|
||||
return
|
||||
}
|
||||
|
||||
|
@@ -82,7 +82,7 @@ func SignIn(ctx *middleware.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
}
|
||||
|
||||
func SignInPost(ctx *middleware.Context, form auth.SignInForm) {
|
||||
@@ -140,7 +140,7 @@ func SignInPost(ctx *middleware.Context, form auth.SignInForm) {
|
||||
return
|
||||
}
|
||||
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
}
|
||||
|
||||
func SignOut(ctx *middleware.Context) {
|
||||
@@ -151,7 +151,7 @@ func SignOut(ctx *middleware.Context) {
|
||||
ctx.Session.Delete("socialEmail")
|
||||
ctx.SetCookie(setting.CookieUserName, "", -1)
|
||||
ctx.SetCookie(setting.CookieRememberName, "", -1)
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
}
|
||||
|
||||
func oauthSignUp(ctx *middleware.Context, sid int64) {
|
||||
@@ -288,7 +288,7 @@ func SignUpPost(ctx *middleware.Context, cpt *captcha.Captcha, form auth.Registe
|
||||
return
|
||||
}
|
||||
|
||||
ctx.Redirect("/user/login")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/login")
|
||||
}
|
||||
|
||||
func Activate(ctx *middleware.Context) {
|
||||
@@ -335,7 +335,7 @@ func Activate(ctx *middleware.Context) {
|
||||
|
||||
ctx.Session.Set("uid", user.Id)
|
||||
ctx.Session.Set("uname", user.Name)
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -437,7 +437,7 @@ func ResetPasswdPost(ctx *middleware.Context) {
|
||||
}
|
||||
|
||||
log.Trace("User password reset: %s", u.Name)
|
||||
ctx.Redirect("/user/login")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/login")
|
||||
return
|
||||
}
|
||||
|
||||
|
@@ -13,6 +13,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/base"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -126,7 +127,7 @@ func Profile(ctx *middleware.Context) {
|
||||
uname := ctx.Params(":username")
|
||||
// Special handle for FireFox requests favicon.ico.
|
||||
if uname == "favicon.ico" {
|
||||
ctx.Redirect("/img/favicon.png")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/img/favicon.png")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -141,7 +142,7 @@ func Profile(ctx *middleware.Context) {
|
||||
}
|
||||
|
||||
if u.IsOrganization() {
|
||||
ctx.Redirect("/org/" + u.Name)
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/org/" + u.Name)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -181,7 +182,7 @@ func Email2User(ctx *middleware.Context) {
|
||||
}
|
||||
return
|
||||
}
|
||||
ctx.Redirect("/user/" + u.Name)
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/" + u.Name)
|
||||
}
|
||||
|
||||
const (
|
||||
|
@@ -14,6 +14,7 @@ import (
|
||||
"github.com/gogits/gogs/modules/base"
|
||||
"github.com/gogits/gogs/modules/log"
|
||||
"github.com/gogits/gogs/modules/middleware"
|
||||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -55,7 +56,7 @@ func SettingsPost(ctx *middleware.Context, form auth.UpdateProfileForm) {
|
||||
} else if err = models.ChangeUserName(ctx.User, form.UserName); err != nil {
|
||||
if err == models.ErrUserNameIllegal {
|
||||
ctx.Flash.Error(ctx.Tr("form.illegal_username"))
|
||||
ctx.Redirect("/user/settings")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings")
|
||||
return
|
||||
} else {
|
||||
ctx.Handle(500, "ChangeUserName", err)
|
||||
@@ -78,7 +79,7 @@ func SettingsPost(ctx *middleware.Context, form auth.UpdateProfileForm) {
|
||||
}
|
||||
log.Trace("User setting updated: %s", ctx.User.Name)
|
||||
ctx.Flash.Success(ctx.Tr("settings.update_profile_success"))
|
||||
ctx.Redirect("/user/settings")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings")
|
||||
}
|
||||
|
||||
func SettingsPassword(ctx *middleware.Context) {
|
||||
@@ -119,7 +120,7 @@ func SettingsPasswordPost(ctx *middleware.Context, form auth.ChangePasswordForm)
|
||||
ctx.Flash.Success(ctx.Tr("settings.change_password_success"))
|
||||
}
|
||||
|
||||
ctx.Redirect("/user/settings/password")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings/password")
|
||||
}
|
||||
|
||||
func SettingsSSHKeys(ctx *middleware.Context) {
|
||||
@@ -160,7 +161,7 @@ func SettingsSSHKeysPost(ctx *middleware.Context, form auth.AddSSHKeyForm) {
|
||||
ctx.Handle(500, "DeletePublicKey", err)
|
||||
} else {
|
||||
log.Trace("SSH key deleted: %s", ctx.User.Name)
|
||||
ctx.Redirect("/user/settings/ssh")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings/ssh")
|
||||
}
|
||||
return
|
||||
}
|
||||
@@ -177,7 +178,7 @@ func SettingsSSHKeysPost(ctx *middleware.Context, form auth.AddSSHKeyForm) {
|
||||
|
||||
if ok, err := models.CheckPublicKeyString(cleanContent); !ok {
|
||||
ctx.Flash.Error(ctx.Tr("form.invalid_ssh_key", err.Error()))
|
||||
ctx.Redirect("/user/settings/ssh")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings/ssh")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -196,7 +197,7 @@ func SettingsSSHKeysPost(ctx *middleware.Context, form auth.AddSSHKeyForm) {
|
||||
} else {
|
||||
log.Trace("SSH key added: %s", ctx.User.Name)
|
||||
ctx.Flash.Success(ctx.Tr("settings.add_key_success"))
|
||||
ctx.Redirect("/user/settings/ssh")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings/ssh")
|
||||
return
|
||||
}
|
||||
}
|
||||
@@ -217,7 +218,7 @@ func SettingsSocial(ctx *middleware.Context) {
|
||||
return
|
||||
}
|
||||
ctx.Flash.Success(ctx.Tr("settings.unbind_success"))
|
||||
ctx.Redirect("/user/settings/social")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings/social")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -248,13 +249,13 @@ func SettingsDelete(ctx *middleware.Context) {
|
||||
switch err {
|
||||
case models.ErrUserOwnRepos:
|
||||
ctx.Flash.Error(ctx.Tr("form.still_own_repo"))
|
||||
ctx.Redirect("/user/settings/delete")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/user/settings/delete")
|
||||
default:
|
||||
ctx.Handle(500, "DeleteUser", err)
|
||||
}
|
||||
} else {
|
||||
log.Trace("Account deleted: %s", ctx.User.Name)
|
||||
ctx.Redirect("/")
|
||||
ctx.Redirect(setting.AppRootSubUrl + "/")
|
||||
}
|
||||
return
|
||||
}
|
||||
|
@@ -22,7 +22,7 @@ import (
|
||||
func extractPath(next string) string {
|
||||
n, err := url.Parse(next)
|
||||
if err != nil {
|
||||
return "/"
|
||||
return setting.AppRootSubUrl + "/"
|
||||
}
|
||||
return n.Path
|
||||
}
|
||||
@@ -88,7 +88,7 @@ func SocialSignIn(ctx *middleware.Context) {
|
||||
return
|
||||
}
|
||||
case models.ErrOauth2NotAssociated:
|
||||
next = "/user/sign_up"
|
||||
next = setting.AppRootSubUrl + "/user/sign_up"
|
||||
default:
|
||||
ctx.Handle(500, "social.SocialSignIn(GetOauth2)", err)
|
||||
return
|
||||
|
Reference in New Issue
Block a user