Browse Source

Fix Certificate and Embeds

Yoginth 7 years ago
parent
commit
1f86d89884
3 changed files with 18 additions and 6 deletions
  1. 4 2
      routes/user/certificate.go
  2. 4 4
      routes/user/embed.go
  3. 10 0
      routes/user/profile.go

+ 4 - 2
routes/user/certificate.go

@@ -2,14 +2,16 @@ package user
 
 import (
 	"gitote/gitote/pkg/context"
+	"strings"
 )
 
 const (
 	INTERNCERTIFICATE = "misc/internscert"
 )
 
-func InternCertificate(c *context.Context, puser *context.ParamsUser) {
-	c.Data["Owner"] = puser
+func InternCertificate(c *context.Context) {
+	ctxUser := GetUserByName(c, strings.TrimSuffix(c.Params(":username"), ""))
+	c.Data["Owner"] = ctxUser
 
 	c.HTML(200, INTERNCERTIFICATE)
 }

+ 4 - 4
routes/user/embed.go

@@ -2,16 +2,16 @@ package user
 
 import (
 	"gitote/gitote/pkg/context"
+	"strings"
 )
 
 const (
 	EMBED = "embed/user"
 )
 
-func Embed(c *context.Context, puser *context.ParamsUser) {
-	c.Title(puser.DisplayName())
-	c.PageIs("PageIsUserProfile")
-	c.Data["Owner"] = puser
+func Embed(c *context.Context) {
+	ctxUser := GetUserByName(c, strings.TrimSuffix(c.Params(":username"), ""))
+	c.Data["Owner"] = ctxUser
 
 	c.HTML(200, EMBED)
 }

+ 10 - 0
routes/user/profile.go

@@ -3,6 +3,7 @@ package user
 import (
 	"fmt"
 	"gitote/gitote/models"
+	"gitote/gitote/models/errors"
 	"gitote/gitote/pkg/context"
 	"gitote/gitote/pkg/setting"
 	"gitote/gitote/pkg/tool"
@@ -17,6 +18,15 @@ const (
 	STARS     = "user/meta/stars"
 )
 
+func GetUserByName(c *context.Context, name string) *models.User {
+	user, err := models.GetUserByName(name)
+	if err != nil {
+		c.NotFoundOrServerError("GetUserByName", errors.IsUserNotExist, err)
+		return nil
+	}
+	return user
+}
+
 func Profile(c *context.Context, puser *context.ParamsUser) {
 	isShowKeys := false
 	if strings.HasSuffix(c.Params(":username"), ".keys") {