aboutsummaryrefslogtreecommitdiff
path: root/renderer/model.go
diff options
context:
space:
mode:
Diffstat (limited to 'renderer/model.go')
-rw-r--r--renderer/model.go54
1 files changed, 42 insertions, 12 deletions
diff --git a/renderer/model.go b/renderer/model.go
index 6f6acc4..4529386 100644
--- a/renderer/model.go
+++ b/renderer/model.go
@@ -4,22 +4,34 @@ import (
"mastodon"
)
+type NavbarTemplateData struct {
+ NotificationCount int
+}
+
+func NewNavbarTemplateData(notificationCount int) *NavbarTemplateData {
+ return &NavbarTemplateData{
+ NotificationCount: notificationCount,
+ }
+}
+
type TimelinePageTemplateData struct {
- Statuses []*mastodon.Status
- HasNext bool
- NextLink string
- HasPrev bool
- PrevLink string
+ Statuses []*mastodon.Status
+ HasNext bool
+ NextLink string
+ HasPrev bool
+ PrevLink string
+ NavbarData *NavbarTemplateData
}
func NewTimelinePageTemplateData(statuses []*mastodon.Status, hasNext bool, nextLink string, hasPrev bool,
- prevLink string) *TimelinePageTemplateData {
+ prevLink string, navbarData *NavbarTemplateData) *TimelinePageTemplateData {
return &TimelinePageTemplateData{
- Statuses: statuses,
- HasNext: hasNext,
- NextLink: nextLink,
- HasPrev: hasPrev,
- PrevLink: prevLink,
+ Statuses: statuses,
+ HasNext: hasNext,
+ NextLink: nextLink,
+ HasPrev: hasPrev,
+ PrevLink: prevLink,
+ NavbarData: navbarData,
}
}
@@ -29,14 +41,32 @@ type ThreadPageTemplateData struct {
PostReply bool
ReplyToID string
ReplyContent string
+ NavbarData *NavbarTemplateData
}
-func NewThreadPageTemplateData(status *mastodon.Status, context *mastodon.Context, postReply bool, replyToID string, replyContent string) *ThreadPageTemplateData {
+func NewThreadPageTemplateData(status *mastodon.Status, context *mastodon.Context, postReply bool, replyToID string, replyContent string, navbarData *NavbarTemplateData) *ThreadPageTemplateData {
return &ThreadPageTemplateData{
Status: status,
Context: context,
PostReply: postReply,
ReplyToID: replyToID,
ReplyContent: replyContent,
+ NavbarData: navbarData,
+ }
+}
+
+type NotificationPageTemplateData struct {
+ Notifications []*mastodon.Notification
+ HasNext bool
+ NextLink string
+ NavbarData *NavbarTemplateData
+}
+
+func NewNotificationPageTemplateData(notifications []*mastodon.Notification, hasNext bool, nextLink string, navbarData *NavbarTemplateData) *NotificationPageTemplateData {
+ return &NotificationPageTemplateData{
+ Notifications: notifications,
+ HasNext: hasNext,
+ NextLink: nextLink,
+ NavbarData: navbarData,
}
}