aboutsummaryrefslogtreecommitdiff
path: root/model
diff options
context:
space:
mode:
Diffstat (limited to 'model')
-rw-r--r--model/app.go21
-rw-r--r--model/session.go60
-rw-r--r--model/settings.go33
3 files changed, 40 insertions, 74 deletions
diff --git a/model/app.go b/model/app.go
deleted file mode 100644
index 8f172c8..0000000
--- a/model/app.go
+++ /dev/null
@@ -1,21 +0,0 @@
-package model
-
-import (
- "errors"
-)
-
-var (
- ErrAppNotFound = errors.New("app not found")
-)
-
-type App struct {
- InstanceDomain string `json:"instance_domain"`
- InstanceURL string `json:"instance_url"`
- ClientID string `json:"client_id"`
- ClientSecret string `json:"client_secret"`
-}
-
-type AppRepo interface {
- Add(app App) (err error)
- Get(instanceDomain string) (app App, err error)
-}
diff --git a/model/session.go b/model/session.go
index 5ff079b..6ada4aa 100644
--- a/model/session.go
+++ b/model/session.go
@@ -1,28 +1,48 @@
package model
-import (
- "errors"
-)
-
-var (
- ErrSessionNotFound = errors.New("session not found")
-)
-
type Session struct {
- ID string `json:"id"`
- UserID string `json:"user_id"`
- InstanceDomain string `json:"instance_domain"`
- AccessToken string `json:"access_token"`
- CSRFToken string `json:"csrf_token"`
- Settings Settings `json:"settings"`
-}
-
-type SessionRepo interface {
- Add(session Session) (err error)
- Get(sessionID string) (session Session, err error)
- Remove(sessionID string)
+ ID string `json:"id,omitempty"`
+ UserID string `json:"uid,omitempty"`
+ Instance string `json:"ins,omitempty"`
+ ClientID string `json:"cid,omitempty"`
+ ClientSecret string `json:"cs,omitempty"`
+ AccessToken string `json:"at,omitempty"`
+ CSRFToken string `json:"csrf,omitempty"`
+ Settings Settings `json:"sett,omitempty"`
}
func (s Session) IsLoggedIn() bool {
return len(s.AccessToken) > 0
}
+
+type Settings struct {
+ DefaultVisibility string `json:"dv,omitempty"`
+ DefaultFormat string `json:"df,omitempty"`
+ CopyScope bool `json:"cs,omitempty"`
+ ThreadInNewTab bool `json:"tnt,omitempty"`
+ HideAttachments bool `json:"ha,omitempty"`
+ MaskNSFW bool `json:"mn,omitempty"`
+ NotificationInterval int `json:"ni,omitempty"`
+ FluorideMode bool `json:"fm,omitempty"`
+ DarkMode bool `json:"dm,omitempty"`
+ AntiDopamineMode bool `json:"adm,omitempty"`
+ HideUnsupportedNotifs bool `json:"hun,omitempty"`
+ CSS string `json:"css,omitempty"`
+}
+
+func NewSettings() *Settings {
+ return &Settings{
+ DefaultVisibility: "public",
+ DefaultFormat: "",
+ CopyScope: true,
+ ThreadInNewTab: false,
+ HideAttachments: false,
+ MaskNSFW: true,
+ NotificationInterval: 0,
+ FluorideMode: false,
+ DarkMode: false,
+ AntiDopamineMode: false,
+ HideUnsupportedNotifs: false,
+ CSS: "",
+ }
+}
diff --git a/model/settings.go b/model/settings.go
deleted file mode 100644
index 1f83c75..0000000
--- a/model/settings.go
+++ /dev/null
@@ -1,33 +0,0 @@
-package model
-
-type Settings struct {
- DefaultVisibility string `json:"default_visibility"`
- DefaultFormat string `json:"default_format"`
- CopyScope bool `json:"copy_scope"`
- ThreadInNewTab bool `json:"thread_in_new_tab"`
- HideAttachments bool `json:"hide_attachments"`
- MaskNSFW bool `json:"mask_nfsw"`
- NotificationInterval int `json:"notifications_interval"`
- FluorideMode bool `json:"fluoride_mode"`
- DarkMode bool `json:"dark_mode"`
- AntiDopamineMode bool `json:"anti_dopamine_mode"`
- HideUnsupportedNotifs bool `json:"hide_unsupported_notifs"`
- CSS string `json:"css"`
-}
-
-func NewSettings() *Settings {
- return &Settings{
- DefaultVisibility: "public",
- DefaultFormat: "",
- CopyScope: true,
- ThreadInNewTab: false,
- HideAttachments: false,
- MaskNSFW: true,
- NotificationInterval: 0,
- FluorideMode: false,
- DarkMode: false,
- AntiDopamineMode: false,
- HideUnsupportedNotifs: false,
- CSS: "",
- }
-}