aboutsummaryrefslogtreecommitdiff
path: root/cmd/web/controller/htmx/article.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/web/controller/htmx/article.go')
-rw-r--r--cmd/web/controller/htmx/article.go64
1 files changed, 0 insertions, 64 deletions
diff --git a/cmd/web/controller/htmx/article.go b/cmd/web/controller/htmx/article.go
deleted file mode 100644
index c8dd8f4..0000000
--- a/cmd/web/controller/htmx/article.go
+++ /dev/null
@@ -1,64 +0,0 @@
-package HTMXController
-
-import (
- "errors"
- "projecty/cmd/web/model"
- "projecty/internal/authentication"
- "projecty/internal/database"
-
- "github.com/gofiber/fiber/v2"
- "gorm.io/gorm"
-)
-
-func ArticleDetailPage(c *fiber.Ctx) error {
-
- var article model.Article
- isSelf := false
- isFollowed := false
- var authenticatedUser model.User
-
- isAuthenticated, userID := authentication.AuthGet(c)
-
- db := database.Get()
-
- if isAuthenticated {
- db.Model(&authenticatedUser).
- Where("id = ?", userID).
- First(&authenticatedUser)
- }
-
- err := db.Model(&article).
- Where("slug = ?", c.Params("slug")).
- Preload("Favorites").
- Preload("Tags", func(db *gorm.DB) *gorm.DB {
- return db.Order("tags.name asc")
- }).
- Preload("User").
- Find(&article).Error
-
- if err != nil {
- if errors.Is(err, gorm.ErrRecordNotFound) {
- return c.Redirect("/")
- }
- }
-
- if isAuthenticated && article.User.FollowedBy(userID) {
- isFollowed = true
- }
-
- if isAuthenticated && article.User.ID == userID {
- isSelf = true
- }
-
- return c.Render("articles/htmx-article-page", fiber.Map{
- "PageTitle": article.Title,
- "NavBarActive": "none",
- "Article": article,
- "IsOob": false,
- "IsSelf": isSelf,
- "IsFollowed": isFollowed,
- "IsArticleFavorited": article.FavoritedBy(userID),
- "AuthenticatedUser": authenticatedUser,
- "FiberCtx": c,
- }, "layouts/app-htmx")
-}