diff --git a/api/subreddits_get_by_name.go b/api/subreddits_get_by_name.go
index 7b46fab..7ba7daf 100644
--- a/api/subreddits_get_by_name.go
+++ b/api/subreddits_get_by_name.go
@@ -37,7 +37,7 @@ type SubredditGetByNameImageParams struct {
Offset int64
OrderBy string
Sort string
- SFW int
+ NSFW int
After time.Time
Device string
}
@@ -103,11 +103,10 @@ func (sgb *SubredditGetByNameImageParams) FillFromQuery(query Queryable) {
sgb.After = time.Now().Add(time.Duration(afterint) * time.Second)
}
- sgb.SFW, _ = strconv.Atoi(query.Get("sfw"))
- if sgb.SFW < 0 {
- sgb.SFW = 0
- } else if sgb.SFW > 1 {
- sgb.SFW = 1
+ if nsfw, err := strconv.Atoi(query.Get("nsfw")); err == nil {
+ sgb.NSFW = nsfw
+ } else {
+ sgb.NSFW = -1
}
}
@@ -132,8 +131,8 @@ func (sgb *SubredditGetByNameImageParams) CountQuery() (expr []bob.Mod[*dialect.
expr = append(expr, models.SelectWhere.Images.CreatedAt.GTE(sgb.After.Unix()))
}
- if sgb.SFW == 1 {
- expr = append(expr, models.SelectWhere.Images.NSFW.EQ(0))
+ if sgb.NSFW >= 0 {
+ expr = append(expr, models.SelectWhere.Images.NSFW.EQ(int32(sgb.NSFW)))
}
return expr
diff --git a/views/subreddits/details/details.templ b/views/subreddits/details/details.templ
deleted file mode 100644
index 698a425..0000000
--- a/views/subreddits/details/details.templ
+++ /dev/null
@@ -1,208 +0,0 @@
-package details
-
-import "github.com/tigorlazuardi/redmage/views"
-import "github.com/tigorlazuardi/redmage/models"
-import "github.com/tigorlazuardi/redmage/views/components"
-import "strconv"
-import "github.com/tigorlazuardi/redmage/api"
-import "fmt"
-import "github.com/tigorlazuardi/redmage/views/icons"
-
-type Data struct {
- Subreddit *models.Subreddit
- Devices models.DeviceSlice
- Images models.ImageSlice
- TotalImages int64
- Error string
- Params api.SubredditGetByNameImageParams
- FlashMessageSuccess string
-}
-
-templ View(c *views.Context, data Data) {
- @components.Doctype() {
- if data.Subreddit != nil {
- @components.Head(c, components.HeadTitle(fmt.Sprintf("Subreddit - %s", data.Subreddit.Name)))
- } else {
- @components.Head(c, components.HeadTitle("Subreddit - 404 NOT FOUND"))
- }
- @components.Body(c) {
- @Content(c, data)
- @components.NotificationContainer() {
- if data.FlashMessageSuccess != "" {
- @components.SuccessNotification(data.FlashMessageSuccess)
- }
- }
- }
- }
-}
-
-templ Content(c *views.Context, data Data) {
- Error: { data.Error }
- } else {
- Subreddit { data.Subreddit.Name }
-
- Total Images:
- { strconv.FormatInt(data.TotalImages, 10) }
-
-
- @FilterBar(c, data)
-
{ showingFromToImages(data) }
- } -} - -func showingFromToImages(data Data) string { - params := data.Params - start := params.Offset + 1 - end := params.Limit + params.Offset - if end > data.TotalImages { - end = data.TotalImages - } - return fmt.Sprintf("Showing from %d to %d", start, end) -} diff --git a/views/subreddits/details/filter.templ b/views/subreddits/details/filter.templ new file mode 100644 index 0000000..09516c1 --- /dev/null +++ b/views/subreddits/details/filter.templ @@ -0,0 +1,92 @@ +package details + +import "github.com/tigorlazuardi/redmage/views" +import "fmt" +import "github.com/tigorlazuardi/redmage/api" +import "strconv" +import "github.com/tigorlazuardi/redmage/models" + +templ FilterBar(c *views.Context, data Data) { +{ showingFromToImages(data) }
+ } +} + +func showingFromToImages(data Data) string { + params := data.Params + start := params.Offset + 1 + end := params.Limit + params.Offset + if end > data.TotalImages { + end = data.TotalImages + } + return fmt.Sprintf("Showing from %d to %d", start, end) +}