bloat/renderer/model.go

73 lines
1.9 KiB
Go
Raw Normal View History

2019-12-13 18:08:26 +00:00
package renderer
import (
"mastodon"
)
2019-12-15 17:37:58 +00:00
type NavbarTemplateData struct {
NotificationCount int
}
func NewNavbarTemplateData(notificationCount int) *NavbarTemplateData {
return &NavbarTemplateData{
NotificationCount: notificationCount,
}
}
2019-12-13 18:08:26 +00:00
type TimelinePageTemplateData struct {
2019-12-15 17:37:58 +00:00
Statuses []*mastodon.Status
HasNext bool
NextLink string
HasPrev bool
PrevLink string
NavbarData *NavbarTemplateData
2019-12-13 18:08:26 +00:00
}
func NewTimelinePageTemplateData(statuses []*mastodon.Status, hasNext bool, nextLink string, hasPrev bool,
2019-12-15 17:37:58 +00:00
prevLink string, navbarData *NavbarTemplateData) *TimelinePageTemplateData {
2019-12-13 18:08:26 +00:00
return &TimelinePageTemplateData{
2019-12-15 17:37:58 +00:00
Statuses: statuses,
HasNext: hasNext,
NextLink: nextLink,
HasPrev: hasPrev,
PrevLink: prevLink,
NavbarData: navbarData,
2019-12-13 18:08:26 +00:00
}
}
type ThreadPageTemplateData struct {
2019-12-18 22:14:02 +00:00
Statuses []*mastodon.Status
PostReply bool
ReplyToID string
ReplyContent string
2019-12-18 22:14:02 +00:00
ReplyMap map[string][]mastodon.ReplyInfo
2019-12-15 17:37:58 +00:00
NavbarData *NavbarTemplateData
2019-12-13 18:08:26 +00:00
}
2019-12-18 22:14:02 +00:00
func NewThreadPageTemplateData(statuses []*mastodon.Status, postReply bool, replyToID string, replyContent string, replyMap map[string][]mastodon.ReplyInfo, navbarData *NavbarTemplateData) *ThreadPageTemplateData {
2019-12-13 18:08:26 +00:00
return &ThreadPageTemplateData{
2019-12-18 22:14:02 +00:00
Statuses: statuses,
PostReply: postReply,
ReplyToID: replyToID,
ReplyContent: replyContent,
2019-12-18 22:14:02 +00:00
ReplyMap: replyMap,
2019-12-15 17:37:58 +00:00
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,
2019-12-13 18:08:26 +00:00
}
}