summaryrefslogtreecommitdiffstats
path: root/routers
diff options
context:
space:
mode:
Diffstat (limited to 'routers')
-rw-r--r--routers/admin/admin.go27
-rw-r--r--routers/admin/auth.go (renamed from routers/admin/auths.go)23
-rw-r--r--routers/admin/user.go48
-rw-r--r--routers/dashboard.go7
-rw-r--r--routers/dev/template.go3
-rw-r--r--routers/install.go26
-rw-r--r--routers/repo/repo.go2
7 files changed, 85 insertions, 51 deletions
diff --git a/routers/admin/admin.go b/routers/admin/admin.go
index 1567a3001a..140e1e9f63 100644
--- a/routers/admin/admin.go
+++ b/routers/admin/admin.go
@@ -20,6 +20,16 @@ import (
"github.com/gogits/gogs/modules/setting"
)
+const (
+ DASHBOARD base.TplName = "admin/dashboard"
+ USERS base.TplName = "admin/users"
+ REPOS base.TplName = "admin/repos"
+ AUTHS base.TplName = "admin/auths"
+ CONFIG base.TplName = "admin/config"
+ MONITOR_PROCESS base.TplName = "admin/monitor/process"
+ MONITOR_CRON base.TplName = "admin/monitor/cron"
+)
+
var startTime = time.Now()
var sysStatus struct {
@@ -140,7 +150,7 @@ func Dashboard(ctx *middleware.Context) {
ctx.Data["Stats"] = models.GetStatistic()
updateSystemStatus()
ctx.Data["SysStatus"] = sysStatus
- ctx.HTML(200, "admin/dashboard")
+ ctx.HTML(200, DASHBOARD)
}
func Users(ctx *middleware.Context) {
@@ -150,10 +160,10 @@ func Users(ctx *middleware.Context) {
var err error
ctx.Data["Users"], err = models.GetUsers(200, 0)
if err != nil {
- ctx.Handle(500, "admin.Users", err)
+ ctx.Handle(500, "admin.Users(GetUsers)", err)
return
}
- ctx.HTML(200, "admin/users")
+ ctx.HTML(200, USERS)
}
func Repositories(ctx *middleware.Context) {
@@ -166,7 +176,7 @@ func Repositories(ctx *middleware.Context) {
ctx.Handle(500, "admin.Repositories", err)
return
}
- ctx.HTML(200, "admin/repos")
+ ctx.HTML(200, REPOS)
}
func Auths(ctx *middleware.Context) {
@@ -179,7 +189,7 @@ func Auths(ctx *middleware.Context) {
ctx.Handle(500, "admin.Auths", err)
return
}
- ctx.HTML(200, "admin/auths")
+ ctx.HTML(200, AUTHS)
}
func Config(ctx *middleware.Context) {
@@ -235,7 +245,7 @@ func Config(ctx *middleware.Context) {
}
ctx.Data["Loggers"] = loggers
- ctx.HTML(200, "admin/config")
+ ctx.HTML(200, CONFIG)
}
func Monitor(ctx *middleware.Context) {
@@ -247,11 +257,10 @@ func Monitor(ctx *middleware.Context) {
case "process":
ctx.Data["PageIsMonitorProcess"] = true
ctx.Data["Processes"] = process.Processes
- ctx.HTML(200, "admin/monitor/process")
+ ctx.HTML(200, MONITOR_PROCESS)
default:
ctx.Data["PageIsMonitorCron"] = true
ctx.Data["Entries"] = cron.ListEntries()
- ctx.HTML(200, "admin/monitor/cron")
+ ctx.HTML(200, MONITOR_CRON)
}
-
}
diff --git a/routers/admin/auths.go b/routers/admin/auth.go
index e0b9971481..ff6c0325b6 100644
--- a/routers/admin/auths.go
+++ b/routers/admin/auth.go
@@ -18,12 +18,17 @@ import (
"github.com/gogits/gogs/modules/middleware"
)
+const (
+ AUTH_NEW base.TplName = "admin/auth/new"
+ AUTH_EDIT base.TplName = "admin/auth/edit"
+)
+
func NewAuthSource(ctx *middleware.Context) {
ctx.Data["Title"] = "New Authentication"
ctx.Data["PageIsAuths"] = true
ctx.Data["LoginTypes"] = models.LoginTypes
ctx.Data["SMTPAuths"] = models.SMTPAuths
- ctx.HTML(200, "admin/auths/new")
+ ctx.HTML(200, AUTH_NEW)
}
func NewAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
@@ -33,7 +38,7 @@ func NewAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
ctx.Data["SMTPAuths"] = models.SMTPAuths
if ctx.HasError() {
- ctx.HTML(200, "admin/auths/new")
+ ctx.HTML(200, AUTH_NEW)
return
}
@@ -74,7 +79,7 @@ func NewAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
}
if err := models.CreateSource(source); err != nil {
- ctx.Handle(500, "admin.auths.NewAuth", err)
+ ctx.Handle(500, "admin.auths.NewAuth(CreateSource)", err)
return
}
@@ -97,11 +102,11 @@ func EditAuthSource(ctx *middleware.Context, params martini.Params) {
}
u, err := models.GetLoginSourceById(id)
if err != nil {
- ctx.Handle(500, "admin.user.EditUser", err)
+ ctx.Handle(500, "admin.user.EditUser(GetLoginSourceById)", err)
return
}
ctx.Data["Source"] = u
- ctx.HTML(200, "admin/auths/edit")
+ ctx.HTML(200, AUTH_EDIT)
}
func EditAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
@@ -111,7 +116,7 @@ func EditAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
ctx.Data["SMTPAuths"] = models.SMTPAuths
if ctx.HasError() {
- ctx.HTML(200, "admin/auths/edit")
+ ctx.HTML(200, AUTH_EDIT)
return
}
@@ -153,7 +158,7 @@ func EditAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
}
if err := models.UpdateSource(&u); err != nil {
- ctx.Handle(500, "admin.auths.EditAuth", err)
+ ctx.Handle(500, "admin.auths.EditAuth(UpdateSource)", err)
return
}
@@ -175,7 +180,7 @@ func DeleteAuthSource(ctx *middleware.Context, params martini.Params) {
a, err := models.GetLoginSourceById(id)
if err != nil {
- ctx.Handle(500, "admin.auths.DeleteAuth", err)
+ ctx.Handle(500, "admin.auths.DeleteAuth(GetLoginSourceById)", err)
return
}
@@ -185,7 +190,7 @@ func DeleteAuthSource(ctx *middleware.Context, params martini.Params) {
ctx.Flash.Error("This authentication still has used by some users, you should move them and then delete again.")
ctx.Redirect("/admin/auths/" + params["authid"])
default:
- ctx.Handle(500, "admin.auths.DeleteAuth", err)
+ ctx.Handle(500, "admin.auths.DeleteAuth(DelLoginSource)", err)
}
return
}
diff --git a/routers/admin/user.go b/routers/admin/user.go
index 596fe7b1d8..d1bbb48068 100644
--- a/routers/admin/user.go
+++ b/routers/admin/user.go
@@ -5,8 +5,6 @@
package admin
import (
- "fmt"
- "strconv"
"strings"
"github.com/go-martini/martini"
@@ -18,16 +16,21 @@ import (
"github.com/gogits/gogs/modules/middleware"
)
+const (
+ USER_NEW base.TplName = "admin/user/new"
+ USER_EDIT base.TplName = "admin/user/edit"
+)
+
func NewUser(ctx *middleware.Context) {
ctx.Data["Title"] = "New Account"
ctx.Data["PageIsUsers"] = true
auths, err := models.GetAuths()
if err != nil {
- ctx.Handle(500, "admin.user.NewUser", err)
+ ctx.Handle(500, "admin.user.NewUser(GetAuths)", err)
return
}
ctx.Data["LoginSources"] = auths
- ctx.HTML(200, "admin/users/new")
+ ctx.HTML(200, USER_NEW)
}
func NewUserPost(ctx *middleware.Context, form auth.RegisterForm) {
@@ -35,7 +38,7 @@ func NewUserPost(ctx *middleware.Context, form auth.RegisterForm) {
ctx.Data["PageIsUsers"] = true
if ctx.HasError() {
- ctx.HTML(200, "admin/users/new")
+ ctx.HTML(200, USER_NEW)
return
}
@@ -55,25 +58,25 @@ func NewUserPost(ctx *middleware.Context, form auth.RegisterForm) {
}
if len(form.LoginType) > 0 {
+ // NOTE: need rewrite.
fields := strings.Split(form.LoginType, "-")
- tp, _ := strconv.Atoi(fields[0])
+ tp, _ := base.StrTo(fields[0]).Int()
u.LoginType = models.LoginType(tp)
- u.LoginSource, _ = strconv.ParseInt(fields[1], 10, 64)
+ u.LoginSource, _ = base.StrTo(fields[1]).Int64()
u.LoginName = form.LoginName
- fmt.Println(u.LoginType, u.LoginSource, u.LoginName)
}
var err error
if u, err = models.RegisterUser(u); err != nil {
switch err {
case models.ErrUserAlreadyExist:
- ctx.RenderWithErr("Username has been already taken", "admin/users/new", &form)
+ ctx.RenderWithErr("Username has been already taken", USER_NEW, &form)
case models.ErrEmailAlreadyUsed:
- ctx.RenderWithErr("E-mail address has been already used", "admin/users/new", &form)
+ ctx.RenderWithErr("E-mail address has been already used", USER_NEW, &form)
case models.ErrUserNameIllegal:
- ctx.RenderWithErr(models.ErrRepoNameIllegal.Error(), "admin/users/new", &form)
+ ctx.RenderWithErr(models.ErrRepoNameIllegal.Error(), USER_NEW, &form)
default:
- ctx.Handle(500, "admin.user.NewUser", err)
+ ctx.Handle(500, "admin.user.NewUser(RegisterUser)", err)
}
return
}
@@ -96,18 +99,18 @@ func EditUser(ctx *middleware.Context, params martini.Params) {
u, err := models.GetUserById(int64(uid))
if err != nil {
- ctx.Handle(500, "admin.user.EditUser", err)
+ ctx.Handle(500, "admin.user.EditUser(GetUserById)", err)
return
}
ctx.Data["User"] = u
auths, err := models.GetAuths()
if err != nil {
- ctx.Handle(500, "admin.user.NewUser", err)
+ ctx.Handle(500, "admin.user.NewUser(GetAuths)", err)
return
}
ctx.Data["LoginSources"] = auths
- ctx.HTML(200, "admin/users/edit")
+ ctx.HTML(200, USER_EDIT)
}
func EditUserPost(ctx *middleware.Context, params martini.Params, form auth.AdminEditUserForm) {
@@ -116,13 +119,18 @@ func EditUserPost(ctx *middleware.Context, params martini.Params, form auth.Admi
uid, err := base.StrTo(params["userid"]).Int()
if err != nil {
- ctx.Handle(404, "admin.user.EditUser", err)
+ ctx.Handle(404, "admin.user.EditUserPost", err)
return
}
u, err := models.GetUserById(int64(uid))
if err != nil {
- ctx.Handle(500, "admin.user.EditUser", err)
+ ctx.Handle(500, "admin.user.EditUserPost(GetUserById)", err)
+ return
+ }
+
+ if ctx.HasError() {
+ ctx.HTML(200, USER_EDIT)
return
}
@@ -134,7 +142,7 @@ func EditUserPost(ctx *middleware.Context, params martini.Params, form auth.Admi
u.IsActive = form.Active
u.IsAdmin = form.Admin
if err := models.UpdateUser(u); err != nil {
- ctx.Handle(500, "admin.user.EditUser", err)
+ ctx.Handle(500, "admin.user.EditUserPost(UpdateUser)", err)
return
}
log.Trace("%s User profile updated by admin(%s): %s", ctx.Req.RequestURI,
@@ -152,13 +160,13 @@ func DeleteUser(ctx *middleware.Context, params martini.Params) {
//log.Info("delete")
uid, err := base.StrTo(params["userid"]).Int()
if err != nil {
- ctx.Handle(404, "admin.user.EditUser", err)
+ ctx.Handle(404, "admin.user.DeleteUser", err)
return
}
u, err := models.GetUserById(int64(uid))
if err != nil {
- ctx.Handle(500, "admin.user.EditUser", err)
+ ctx.Handle(500, "admin.user.DeleteUser(GetUserById)", err)
return
}
diff --git a/routers/dashboard.go b/routers/dashboard.go
index 438d03794b..d65c403c5f 100644
--- a/routers/dashboard.go
+++ b/routers/dashboard.go
@@ -6,11 +6,16 @@ package routers
import (
"github.com/gogits/gogs/models"
+ "github.com/gogits/gogs/modules/base"
"github.com/gogits/gogs/modules/middleware"
"github.com/gogits/gogs/modules/setting"
"github.com/gogits/gogs/routers/user"
)
+const (
+ HOME base.TplName = "home"
+)
+
func Home(ctx *middleware.Context) {
if ctx.IsSigned {
user.Dashboard(ctx)
@@ -40,7 +45,7 @@ func Home(ctx *middleware.Context) {
}
}
ctx.Data["Repos"] = repos
- ctx.HTML(200, "home")
+ ctx.HTML(200, HOME)
}
func NotFound(ctx *middleware.Context) {
diff --git a/routers/dev/template.go b/routers/dev/template.go
index 5e84d76edb..da477c94c0 100644
--- a/routers/dev/template.go
+++ b/routers/dev/template.go
@@ -8,6 +8,7 @@ import (
"github.com/go-martini/martini"
"github.com/gogits/gogs/models"
+ "github.com/gogits/gogs/modules/base"
"github.com/gogits/gogs/modules/middleware"
"github.com/gogits/gogs/modules/setting"
)
@@ -22,5 +23,5 @@ func TemplatePreview(ctx *middleware.Context, params martini.Params) {
ctx.Data["ActiveCodeLives"] = setting.Service.ActiveCodeLives / 60
ctx.Data["ResetPwdCodeLives"] = setting.Service.ResetPwdCodeLives / 60
ctx.Data["CurDbValue"] = ""
- ctx.HTML(200, params["_1"])
+ ctx.HTML(200, base.TplName(params["_1"]))
}
diff --git a/routers/install.go b/routers/install.go
index c2eee88a5a..6ce7c98026 100644
--- a/routers/install.go
+++ b/routers/install.go
@@ -26,6 +26,10 @@ import (
"github.com/gogits/gogs/modules/social"
)
+const (
+ INSTALL base.TplName = "install"
+)
+
func checkRunMode() {
switch setting.Cfg.MustValue("", "RUN_MODE") {
case "prod":
@@ -72,6 +76,7 @@ func renderDbOption(ctx *middleware.Context) {
ctx.Data["DbOptions"] = []string{"MySQL", "PostgreSQL", "SQLite3"}
}
+// @router /install [get]
func Install(ctx *middleware.Context, form auth.InstallForm) {
if setting.InstallLock {
ctx.Handle(404, "install.Install", errors.New("Installation is prohibited"))
@@ -119,12 +124,12 @@ func Install(ctx *middleware.Context, form auth.InstallForm) {
ctx.Data["CurDbOption"] = curDbOp
auth.AssignForm(form, ctx.Data)
- ctx.HTML(200, "install")
+ ctx.HTML(200, INSTALL)
}
func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
if setting.InstallLock {
- ctx.Handle(404, "install.Install", errors.New("Installation is prohibited"))
+ ctx.Handle(404, "install.InstallPost", errors.New("Installation is prohibited"))
return
}
@@ -135,12 +140,12 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
ctx.Data["CurDbOption"] = form.Database
if ctx.HasError() {
- ctx.HTML(200, "install")
+ ctx.HTML(200, INSTALL)
return
}
if _, err := exec.LookPath("git"); err != nil {
- ctx.RenderWithErr("Fail to test 'git' command: "+err.Error(), "install", &form)
+ ctx.RenderWithErr("Fail to test 'git' command: "+err.Error(), INSTALL, &form)
return
}
@@ -158,18 +163,19 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
// Set test engine.
var x *xorm.Engine
if err := models.NewTestEngine(x); err != nil {
+ // NOTE: should use core.QueryDriver (github.com/go-xorm/core)
if strings.Contains(err.Error(), `Unknown database type: sqlite3`) {
ctx.RenderWithErr("Your release version does not support SQLite3, please download the official binary version "+
- "from http://gogs.io/docs/installation/install_from_binary.md, NOT the gobuild version.", "install", &form)
+ "from http://gogs.io/docs/installation/install_from_binary.md, NOT the gobuild version.", INSTALL, &form)
} else {
- ctx.RenderWithErr("Database setting is not correct: "+err.Error(), "install", &form)
+ ctx.RenderWithErr("Database setting is not correct: "+err.Error(), INSTALL, &form)
}
return
}
// Test repository root path.
if err := os.MkdirAll(form.RepoRootPath, os.ModePerm); err != nil {
- ctx.RenderWithErr("Repository root path is invalid: "+err.Error(), "install", &form)
+ ctx.RenderWithErr("Repository root path is invalid: "+err.Error(), INSTALL, &form)
return
}
@@ -180,7 +186,7 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
}
// Does not check run user when the install lock is off.
if form.RunUser != curUser {
- ctx.RenderWithErr("Run user isn't the current user: "+form.RunUser+" -> "+curUser, "install", &form)
+ ctx.RenderWithErr("Run user isn't the current user: "+form.RunUser+" -> "+curUser, INSTALL, &form)
return
}
@@ -214,7 +220,7 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
os.MkdirAll("custom/conf", os.ModePerm)
if err := goconfig.SaveConfigFile(setting.Cfg, path.Join(setting.CustomPath, "conf/app.ini")); err != nil {
- ctx.RenderWithErr("Fail to save configuration: "+err.Error(), "install", &form)
+ ctx.RenderWithErr("Fail to save configuration: "+err.Error(), INSTALL, &form)
return
}
@@ -225,7 +231,7 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
IsAdmin: true, IsActive: true}); err != nil {
if err != models.ErrUserAlreadyExist {
setting.InstallLock = false
- ctx.RenderWithErr("Admin account setting is invalid: "+err.Error(), "install", &form)
+ ctx.RenderWithErr("Admin account setting is invalid: "+err.Error(), INSTALL, &form)
return
}
log.Info("Admin account already exist")
diff --git a/routers/repo/repo.go b/routers/repo/repo.go
index 6db453007c..6154eede38 100644
--- a/routers/repo/repo.go
+++ b/routers/repo/repo.go
@@ -318,7 +318,7 @@ func basicDecode(encoded string) (user string, name string, err error) {
func authRequired(ctx *middleware.Context) {
ctx.ResponseWriter.Header().Set("WWW-Authenticate", "Basic realm=\".\"")
ctx.Data["ErrorMsg"] = "no basic auth and digit auth"
- ctx.HTML(401, fmt.Sprintf("status/401"))
+ ctx.HTML(401, base.TplName("status/401"))
}
func Action(ctx *middleware.Context, params martini.Params) {