|
|
@@ -17,35 +17,36 @@ const (
|
|
|
|
|
|
// User represents a user in the system.
|
|
|
type User struct {
|
|
|
- ID int64 `json:"id"`
|
|
|
- Username string `json:"username"`
|
|
|
- Password string `json:"password,omitempty"`
|
|
|
- IsAdmin bool `json:"is_admin"`
|
|
|
- Theme string `json:"theme"`
|
|
|
- Language string `json:"language"`
|
|
|
- Timezone string `json:"timezone"`
|
|
|
- EntryDirection string `json:"entry_sorting_direction"`
|
|
|
- EntryOrder string `json:"entry_sorting_order"`
|
|
|
- Stylesheet string `json:"stylesheet"`
|
|
|
- CustomJS string `json:"custom_js"`
|
|
|
- GoogleID string `json:"google_id"`
|
|
|
- OpenIDConnectID string `json:"openid_connect_id"`
|
|
|
- EntriesPerPage int `json:"entries_per_page"`
|
|
|
- KeyboardShortcuts bool `json:"keyboard_shortcuts"`
|
|
|
- ShowReadingTime bool `json:"show_reading_time"`
|
|
|
- EntrySwipe bool `json:"entry_swipe"`
|
|
|
- GestureNav string `json:"gesture_nav"`
|
|
|
- LastLoginAt *time.Time `json:"last_login_at"`
|
|
|
- DisplayMode string `json:"display_mode"`
|
|
|
- DefaultReadingSpeed int `json:"default_reading_speed"`
|
|
|
- CJKReadingSpeed int `json:"cjk_reading_speed"`
|
|
|
- DefaultHomePage string `json:"default_home_page"`
|
|
|
- CategoriesSortingOrder string `json:"categories_sorting_order"`
|
|
|
- MarkReadOnView bool `json:"mark_read_on_view"`
|
|
|
- MediaPlaybackRate float64 `json:"media_playback_rate"`
|
|
|
- BlockFilterEntryRules string `json:"block_filter_entry_rules"`
|
|
|
- KeepFilterEntryRules string `json:"keep_filter_entry_rules"`
|
|
|
- ExternalFontHosts string `json:"external_font_hosts"`
|
|
|
+ ID int64 `json:"id"`
|
|
|
+ Username string `json:"username"`
|
|
|
+ Password string `json:"password,omitempty"`
|
|
|
+ IsAdmin bool `json:"is_admin"`
|
|
|
+ Theme string `json:"theme"`
|
|
|
+ Language string `json:"language"`
|
|
|
+ Timezone string `json:"timezone"`
|
|
|
+ EntryDirection string `json:"entry_sorting_direction"`
|
|
|
+ EntryOrder string `json:"entry_sorting_order"`
|
|
|
+ Stylesheet string `json:"stylesheet"`
|
|
|
+ CustomJS string `json:"custom_js"`
|
|
|
+ GoogleID string `json:"google_id"`
|
|
|
+ OpenIDConnectID string `json:"openid_connect_id"`
|
|
|
+ EntriesPerPage int `json:"entries_per_page"`
|
|
|
+ KeyboardShortcuts bool `json:"keyboard_shortcuts"`
|
|
|
+ ShowReadingTime bool `json:"show_reading_time"`
|
|
|
+ EntrySwipe bool `json:"entry_swipe"`
|
|
|
+ GestureNav string `json:"gesture_nav"`
|
|
|
+ LastLoginAt *time.Time `json:"last_login_at"`
|
|
|
+ DisplayMode string `json:"display_mode"`
|
|
|
+ DefaultReadingSpeed int `json:"default_reading_speed"`
|
|
|
+ CJKReadingSpeed int `json:"cjk_reading_speed"`
|
|
|
+ DefaultHomePage string `json:"default_home_page"`
|
|
|
+ CategoriesSortingOrder string `json:"categories_sorting_order"`
|
|
|
+ MarkReadOnView bool `json:"mark_read_on_view"`
|
|
|
+ MediaPlaybackRate float64 `json:"media_playback_rate"`
|
|
|
+ BlockFilterEntryRules string `json:"block_filter_entry_rules"`
|
|
|
+ KeepFilterEntryRules string `json:"keep_filter_entry_rules"`
|
|
|
+ ExternalFontHosts string `json:"external_font_hosts"`
|
|
|
+ AlwaysOpenExternalLinks bool `json:"always_open_external_links"`
|
|
|
}
|
|
|
|
|
|
func (u User) String() string {
|
|
|
@@ -63,33 +64,34 @@ type UserCreationRequest struct {
|
|
|
|
|
|
// UserModificationRequest represents the request to update a user.
|
|
|
type UserModificationRequest struct {
|
|
|
- Username *string `json:"username"`
|
|
|
- Password *string `json:"password"`
|
|
|
- IsAdmin *bool `json:"is_admin"`
|
|
|
- Theme *string `json:"theme"`
|
|
|
- Language *string `json:"language"`
|
|
|
- Timezone *string `json:"timezone"`
|
|
|
- EntryDirection *string `json:"entry_sorting_direction"`
|
|
|
- EntryOrder *string `json:"entry_sorting_order"`
|
|
|
- Stylesheet *string `json:"stylesheet"`
|
|
|
- CustomJS *string `json:"custom_js"`
|
|
|
- GoogleID *string `json:"google_id"`
|
|
|
- OpenIDConnectID *string `json:"openid_connect_id"`
|
|
|
- EntriesPerPage *int `json:"entries_per_page"`
|
|
|
- KeyboardShortcuts *bool `json:"keyboard_shortcuts"`
|
|
|
- ShowReadingTime *bool `json:"show_reading_time"`
|
|
|
- EntrySwipe *bool `json:"entry_swipe"`
|
|
|
- GestureNav *string `json:"gesture_nav"`
|
|
|
- DisplayMode *string `json:"display_mode"`
|
|
|
- DefaultReadingSpeed *int `json:"default_reading_speed"`
|
|
|
- CJKReadingSpeed *int `json:"cjk_reading_speed"`
|
|
|
- DefaultHomePage *string `json:"default_home_page"`
|
|
|
- CategoriesSortingOrder *string `json:"categories_sorting_order"`
|
|
|
- MarkReadOnView *bool `json:"mark_read_on_view"`
|
|
|
- MediaPlaybackRate *float64 `json:"media_playback_rate"`
|
|
|
- BlockFilterEntryRules *string `json:"block_filter_entry_rules"`
|
|
|
- KeepFilterEntryRules *string `json:"keep_filter_entry_rules"`
|
|
|
- ExternalFontHosts *string `json:"external_font_hosts"`
|
|
|
+ Username *string `json:"username"`
|
|
|
+ Password *string `json:"password"`
|
|
|
+ IsAdmin *bool `json:"is_admin"`
|
|
|
+ Theme *string `json:"theme"`
|
|
|
+ Language *string `json:"language"`
|
|
|
+ Timezone *string `json:"timezone"`
|
|
|
+ EntryDirection *string `json:"entry_sorting_direction"`
|
|
|
+ EntryOrder *string `json:"entry_sorting_order"`
|
|
|
+ Stylesheet *string `json:"stylesheet"`
|
|
|
+ CustomJS *string `json:"custom_js"`
|
|
|
+ GoogleID *string `json:"google_id"`
|
|
|
+ OpenIDConnectID *string `json:"openid_connect_id"`
|
|
|
+ EntriesPerPage *int `json:"entries_per_page"`
|
|
|
+ KeyboardShortcuts *bool `json:"keyboard_shortcuts"`
|
|
|
+ ShowReadingTime *bool `json:"show_reading_time"`
|
|
|
+ EntrySwipe *bool `json:"entry_swipe"`
|
|
|
+ GestureNav *string `json:"gesture_nav"`
|
|
|
+ DisplayMode *string `json:"display_mode"`
|
|
|
+ DefaultReadingSpeed *int `json:"default_reading_speed"`
|
|
|
+ CJKReadingSpeed *int `json:"cjk_reading_speed"`
|
|
|
+ DefaultHomePage *string `json:"default_home_page"`
|
|
|
+ CategoriesSortingOrder *string `json:"categories_sorting_order"`
|
|
|
+ MarkReadOnView *bool `json:"mark_read_on_view"`
|
|
|
+ MediaPlaybackRate *float64 `json:"media_playback_rate"`
|
|
|
+ BlockFilterEntryRules *string `json:"block_filter_entry_rules"`
|
|
|
+ KeepFilterEntryRules *string `json:"keep_filter_entry_rules"`
|
|
|
+ ExternalFontHosts *string `json:"external_font_hosts"`
|
|
|
+ AlwaysOpenExternalLinks *bool `json:"always_open_external_links"`
|
|
|
}
|
|
|
|
|
|
// Users represents a list of users.
|