Tweaked project structure (#88)

This commit is contained in:
Thomas Miceli
2023-09-03 00:30:57 +02:00
committed by GitHub
parent 25316d7bf2
commit a7b346d8df
25 changed files with 122 additions and 116 deletions

View File

@ -7,7 +7,7 @@ import (
"github.com/google/uuid"
"github.com/labstack/echo/v4"
"github.com/thomiceli/opengist/internal/config"
"github.com/thomiceli/opengist/internal/models"
"github.com/thomiceli/opengist/internal/db"
"gorm.io/gorm"
"html/template"
"net/url"
@ -23,7 +23,7 @@ func gistInit(next echo.HandlerFunc) echo.HandlerFunc {
gistName = strings.TrimSuffix(gistName, ".git")
gist, err := models.GetGist(userName, gistName)
gist, err := db.GetGist(userName, gistName)
if err != nil {
return notFound("Gist not found")
}
@ -97,7 +97,7 @@ func gistSoftInit(next echo.HandlerFunc) echo.HandlerFunc {
gistName = strings.TrimSuffix(gistName, ".git")
gist, _ := models.GetGist(userName, gistName)
gist, _ := db.GetGist(userName, gistName)
setData(ctx, "gist", gist)
return next(ctx)
@ -128,7 +128,7 @@ func allGists(ctx echo.Context) error {
setData(ctx, "sort", sort)
setData(ctx, "order", orderText)
var gists []*models.Gist
var gists []*db.Gist
var currentUserId uint
if userLogged != nil {
currentUserId = userLogged.ID
@ -144,12 +144,12 @@ func allGists(ctx echo.Context) error {
setData(ctx, "searchQuery", ctx.QueryParam("q"))
setData(ctx, "searchQueryUrl", template.URL("&q="+ctx.QueryParam("q")))
urlPage = "search"
gists, err = models.GetAllGistsFromSearch(currentUserId, ctx.QueryParam("q"), pageInt-1, sort, order)
gists, err = db.GetAllGistsFromSearch(currentUserId, ctx.QueryParam("q"), pageInt-1, sort, order)
} else if strings.HasSuffix(urlctx, "all") {
setData(ctx, "htmlTitle", "All gists")
setData(ctx, "mode", "all")
urlPage = "all"
gists, err = models.GetAllGistsForCurrentUser(currentUserId, pageInt-1, sort, order)
gists, err = db.GetAllGistsForCurrentUser(currentUserId, pageInt-1, sort, order)
}
} else {
liked := false
@ -165,9 +165,9 @@ func allGists(ctx echo.Context) error {
return errorRes(500, "Error matching regexp", err)
}
var fromUser *models.User
var fromUser *db.User
fromUser, err = models.GetUserByUsername(fromUserStr)
fromUser, err = db.GetUserByUsername(fromUserStr)
if err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
return notFound("User not found")
@ -176,19 +176,19 @@ func allGists(ctx echo.Context) error {
}
setData(ctx, "fromUser", fromUser)
if countFromUser, err := models.CountAllGistsFromUser(fromUser.ID, currentUserId); err != nil {
if countFromUser, err := db.CountAllGistsFromUser(fromUser.ID, currentUserId); err != nil {
return errorRes(500, "Error counting gists", err)
} else {
setData(ctx, "countFromUser", countFromUser)
}
if countLiked, err := models.CountAllGistsLikedByUser(fromUser.ID, currentUserId); err != nil {
if countLiked, err := db.CountAllGistsLikedByUser(fromUser.ID, currentUserId); err != nil {
return errorRes(500, "Error counting liked gists", err)
} else {
setData(ctx, "countLiked", countLiked)
}
if countForked, err := models.CountAllGistsForkedByUser(fromUser.ID, currentUserId); err != nil {
if countForked, err := db.CountAllGistsForkedByUser(fromUser.ID, currentUserId); err != nil {
return errorRes(500, "Error counting forked gists", err)
} else {
setData(ctx, "countForked", countForked)
@ -198,17 +198,17 @@ func allGists(ctx echo.Context) error {
urlPage = fromUserStr + "/liked"
setData(ctx, "htmlTitle", "All gists liked by "+fromUserStr)
setData(ctx, "mode", "liked")
gists, err = models.GetAllGistsLikedByUser(fromUser.ID, currentUserId, pageInt-1, sort, order)
gists, err = db.GetAllGistsLikedByUser(fromUser.ID, currentUserId, pageInt-1, sort, order)
} else if forked {
urlPage = fromUserStr + "/forked"
setData(ctx, "htmlTitle", "All gists forked by "+fromUserStr)
setData(ctx, "mode", "forked")
gists, err = models.GetAllGistsForkedByUser(fromUser.ID, currentUserId, pageInt-1, sort, order)
gists, err = db.GetAllGistsForkedByUser(fromUser.ID, currentUserId, pageInt-1, sort, order)
} else {
urlPage = fromUserStr
setData(ctx, "htmlTitle", "All gists from "+fromUserStr)
setData(ctx, "mode", "fromUser")
gists, err = models.GetAllGistsFromUser(fromUser.ID, currentUserId, pageInt-1, sort, order)
gists, err = db.GetAllGistsFromUser(fromUser.ID, currentUserId, pageInt-1, sort, order)
}
}
@ -225,7 +225,7 @@ func allGists(ctx echo.Context) error {
}
func gistIndex(ctx echo.Context) error {
gist := getData(ctx, "gist").(*models.Gist)
gist := getData(ctx, "gist").(*db.Gist)
revision := ctx.Param("revision")
if revision == "" {
@ -250,7 +250,7 @@ func gistIndex(ctx echo.Context) error {
}
func revisions(ctx echo.Context) error {
gist := getData(ctx, "gist").(*models.Gist)
gist := getData(ctx, "gist").(*db.Gist)
userName := gist.User.Username
gistName := gist.Uuid
@ -273,7 +273,7 @@ func revisions(ctx echo.Context) error {
emailsSet[strings.ToLower(commit.AuthorEmail)] = struct{}{}
}
emailsUsers, err := models.GetUsersFromEmails(emailsSet)
emailsUsers, err := db.GetUsersFromEmails(emailsSet)
if err != nil {
return errorRes(500, "Error fetching users emails", err)
}
@ -302,13 +302,13 @@ func processCreate(ctx echo.Context) error {
return errorRes(400, "Bad request", err)
}
dto := new(models.GistDTO)
var gist *models.Gist
dto := new(db.GistDTO)
var gist *db.Gist
if isCreate {
setData(ctx, "htmlTitle", "Create a new gist")
} else {
gist = getData(ctx, "gist").(*models.Gist)
gist = getData(ctx, "gist").(*db.Gist)
setData(ctx, "htmlTitle", "Edit "+gist.Title)
}
@ -316,7 +316,7 @@ func processCreate(ctx echo.Context) error {
return errorRes(400, "Cannot bind data", err)
}
dto.Files = make([]models.FileDTO, 0)
dto.Files = make([]db.FileDTO, 0)
fileCounter := 0
for i := 0; i < len(ctx.Request().PostForm["content"]); i++ {
name := ctx.Request().PostForm["name"][i]
@ -332,7 +332,7 @@ func processCreate(ctx echo.Context) error {
return errorRes(400, "Invalid character unescaped", err)
}
dto.Files = append(dto.Files, models.FileDTO{
dto.Files = append(dto.Files, db.FileDTO{
Filename: strings.Trim(name, " "),
Content: escapedValue,
})
@ -414,7 +414,7 @@ func processCreate(ctx echo.Context) error {
}
func toggleVisibility(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
gist.Private = (gist.Private + 1) % 3
if err := gist.Update(); err != nil {
@ -426,7 +426,7 @@ func toggleVisibility(ctx echo.Context) error {
}
func deleteGist(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
err := gist.DeleteRepository()
if err != nil {
@ -442,7 +442,7 @@ func deleteGist(ctx echo.Context) error {
}
func like(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
currentUser := getUserLogged(ctx)
hasLiked, err := currentUser.HasLiked(gist)
@ -468,7 +468,7 @@ func like(ctx echo.Context) error {
}
func fork(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
currentUser := getUserLogged(ctx)
alreadyForked, err := gist.GetForkParent(currentUser)
@ -490,7 +490,7 @@ func fork(ctx echo.Context) error {
return errorRes(500, "Error creating an UUID", err)
}
newGist := &models.Gist{
newGist := &db.Gist{
Uuid: strings.Replace(uuidGist.String(), "-", "", -1),
Title: gist.Title,
Preview: gist.Preview,
@ -519,7 +519,7 @@ func fork(ctx echo.Context) error {
}
func rawFile(ctx echo.Context) error {
gist := getData(ctx, "gist").(*models.Gist)
gist := getData(ctx, "gist").(*db.Gist)
file, err := gist.File(ctx.Param("revision"), ctx.Param("file"), false)
if err != nil {
@ -534,7 +534,7 @@ func rawFile(ctx echo.Context) error {
}
func downloadFile(ctx echo.Context) error {
gist := getData(ctx, "gist").(*models.Gist)
gist := getData(ctx, "gist").(*db.Gist)
file, err := gist.File(ctx.Param("revision"), ctx.Param("file"), false)
if err != nil {
@ -558,7 +558,7 @@ func downloadFile(ctx echo.Context) error {
}
func edit(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
files, err := gist.Files("HEAD")
if err != nil {
@ -572,7 +572,7 @@ func edit(ctx echo.Context) error {
}
func downloadZip(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
var revision = ctx.Param("revision")
files, err := gist.Files(revision)
@ -617,7 +617,7 @@ func downloadZip(ctx echo.Context) error {
}
func likes(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
pageInt := getPage(ctx)
@ -636,7 +636,7 @@ func likes(ctx echo.Context) error {
}
func forks(ctx echo.Context) error {
var gist = getData(ctx, "gist").(*models.Gist)
var gist = getData(ctx, "gist").(*db.Gist)
pageInt := getPage(ctx)
currentUser := getUserLogged(ctx)