diff options
author | 2023-08-10 19:46:45 -0700 | |
---|---|---|
committer | 2023-08-10 20:29:34 -0700 | |
commit | 168a870c025bfef6efdeb46e166e79a16093c157 (patch) | |
tree | 4d8ab69c7e3ef03a7ade06e7b5e5053429a64c3b /internal/ui/form/integration.go | |
parent | c2349032552891745cbbc3d2a9e772845a0239f4 (diff) | |
download | v2-168a870c025bfef6efdeb46e166e79a16093c157.tar.gz v2-168a870c025bfef6efdeb46e166e79a16093c157.tar.zst v2-168a870c025bfef6efdeb46e166e79a16093c157.zip |
Move internal packages to an internal folder
For reference: https://go.dev/doc/go1.4#internalpackages
Diffstat (limited to 'internal/ui/form/integration.go')
-rw-r--r-- | internal/ui/form/integration.go | 175 |
1 files changed, 175 insertions, 0 deletions
diff --git a/internal/ui/form/integration.go b/internal/ui/form/integration.go new file mode 100644 index 00000000..9e60d6fd --- /dev/null +++ b/internal/ui/form/integration.go @@ -0,0 +1,175 @@ +// SPDX-FileCopyrightText: Copyright The Miniflux Authors. All rights reserved. +// SPDX-License-Identifier: Apache-2.0 + +package form // import "miniflux.app/v2/internal/ui/form" + +import ( + "net/http" + + "miniflux.app/v2/internal/model" +) + +// IntegrationForm represents user integration settings form. +type IntegrationForm struct { + PinboardEnabled bool + PinboardToken string + PinboardTags string + PinboardMarkAsUnread bool + InstapaperEnabled bool + InstapaperUsername string + InstapaperPassword string + FeverEnabled bool + FeverUsername string + FeverPassword string + GoogleReaderEnabled bool + GoogleReaderUsername string + GoogleReaderPassword string + WallabagEnabled bool + WallabagOnlyURL bool + WallabagURL string + WallabagClientID string + WallabagClientSecret string + WallabagUsername string + WallabagPassword string + NotionEnabled bool + NotionPageID string + NotionToken string + NunuxKeeperEnabled bool + NunuxKeeperURL string + NunuxKeeperAPIKey string + EspialEnabled bool + EspialURL string + EspialAPIKey string + EspialTags string + ReadwiseEnabled bool + ReadwiseAPIKey string + PocketEnabled bool + PocketAccessToken string + PocketConsumerKey string + TelegramBotEnabled bool + TelegramBotToken string + TelegramBotChatID string + LinkdingEnabled bool + LinkdingURL string + LinkdingAPIKey string + LinkdingTags string + LinkdingMarkAsUnread bool + MatrixBotEnabled bool + MatrixBotUser string + MatrixBotPassword string + MatrixBotURL string + MatrixBotChatID string + AppriseEnabled bool + AppriseURL string + AppriseServicesURL string +} + +// Merge copy form values to the model. +func (i IntegrationForm) Merge(integration *model.Integration) { + integration.PinboardEnabled = i.PinboardEnabled + integration.PinboardToken = i.PinboardToken + integration.PinboardTags = i.PinboardTags + integration.PinboardMarkAsUnread = i.PinboardMarkAsUnread + integration.InstapaperEnabled = i.InstapaperEnabled + integration.InstapaperUsername = i.InstapaperUsername + integration.InstapaperPassword = i.InstapaperPassword + integration.FeverEnabled = i.FeverEnabled + integration.FeverUsername = i.FeverUsername + integration.GoogleReaderEnabled = i.GoogleReaderEnabled + integration.GoogleReaderUsername = i.GoogleReaderUsername + integration.WallabagEnabled = i.WallabagEnabled + integration.WallabagOnlyURL = i.WallabagOnlyURL + integration.WallabagURL = i.WallabagURL + integration.WallabagClientID = i.WallabagClientID + integration.WallabagClientSecret = i.WallabagClientSecret + integration.WallabagUsername = i.WallabagUsername + integration.WallabagPassword = i.WallabagPassword + integration.NotionEnabled = i.NotionEnabled + integration.NotionPageID = i.NotionPageID + integration.NotionToken = i.NotionToken + integration.NunuxKeeperEnabled = i.NunuxKeeperEnabled + integration.NunuxKeeperURL = i.NunuxKeeperURL + integration.NunuxKeeperAPIKey = i.NunuxKeeperAPIKey + integration.EspialEnabled = i.EspialEnabled + integration.EspialURL = i.EspialURL + integration.EspialAPIKey = i.EspialAPIKey + integration.EspialTags = i.EspialTags + integration.ReadwiseEnabled = i.ReadwiseEnabled + integration.ReadwiseAPIKey = i.ReadwiseAPIKey + integration.PocketEnabled = i.PocketEnabled + integration.PocketAccessToken = i.PocketAccessToken + integration.PocketConsumerKey = i.PocketConsumerKey + integration.TelegramBotEnabled = i.TelegramBotEnabled + integration.TelegramBotToken = i.TelegramBotToken + integration.TelegramBotChatID = i.TelegramBotChatID + integration.LinkdingEnabled = i.LinkdingEnabled + integration.LinkdingURL = i.LinkdingURL + integration.LinkdingAPIKey = i.LinkdingAPIKey + integration.LinkdingTags = i.LinkdingTags + integration.LinkdingMarkAsUnread = i.LinkdingMarkAsUnread + integration.MatrixBotEnabled = i.MatrixBotEnabled + integration.MatrixBotUser = i.MatrixBotUser + integration.MatrixBotPassword = i.MatrixBotPassword + integration.MatrixBotURL = i.MatrixBotURL + integration.MatrixBotChatID = i.MatrixBotChatID + integration.AppriseEnabled = i.AppriseEnabled + integration.AppriseServicesURL = i.AppriseServicesURL + integration.AppriseURL = i.AppriseURL +} + +// NewIntegrationForm returns a new IntegrationForm. +func NewIntegrationForm(r *http.Request) *IntegrationForm { + return &IntegrationForm{ + PinboardEnabled: r.FormValue("pinboard_enabled") == "1", + PinboardToken: r.FormValue("pinboard_token"), + PinboardTags: r.FormValue("pinboard_tags"), + PinboardMarkAsUnread: r.FormValue("pinboard_mark_as_unread") == "1", + InstapaperEnabled: r.FormValue("instapaper_enabled") == "1", + InstapaperUsername: r.FormValue("instapaper_username"), + InstapaperPassword: r.FormValue("instapaper_password"), + FeverEnabled: r.FormValue("fever_enabled") == "1", + FeverUsername: r.FormValue("fever_username"), + FeverPassword: r.FormValue("fever_password"), + GoogleReaderEnabled: r.FormValue("googlereader_enabled") == "1", + GoogleReaderUsername: r.FormValue("googlereader_username"), + GoogleReaderPassword: r.FormValue("googlereader_password"), + WallabagEnabled: r.FormValue("wallabag_enabled") == "1", + WallabagOnlyURL: r.FormValue("wallabag_only_url") == "1", + WallabagURL: r.FormValue("wallabag_url"), + WallabagClientID: r.FormValue("wallabag_client_id"), + WallabagClientSecret: r.FormValue("wallabag_client_secret"), + WallabagUsername: r.FormValue("wallabag_username"), + WallabagPassword: r.FormValue("wallabag_password"), + NotionEnabled: r.FormValue("notion_enabled") == "1", + NotionPageID: r.FormValue("notion_page_id"), + NotionToken: r.FormValue("notion_token"), + NunuxKeeperEnabled: r.FormValue("nunux_keeper_enabled") == "1", + NunuxKeeperURL: r.FormValue("nunux_keeper_url"), + NunuxKeeperAPIKey: r.FormValue("nunux_keeper_api_key"), + EspialEnabled: r.FormValue("espial_enabled") == "1", + EspialURL: r.FormValue("espial_url"), + EspialAPIKey: r.FormValue("espial_api_key"), + EspialTags: r.FormValue("espial_tags"), + ReadwiseEnabled: r.FormValue("readwise_enabled") == "1", + ReadwiseAPIKey: r.FormValue("readwise_api_key"), + PocketEnabled: r.FormValue("pocket_enabled") == "1", + PocketAccessToken: r.FormValue("pocket_access_token"), + PocketConsumerKey: r.FormValue("pocket_consumer_key"), + TelegramBotEnabled: r.FormValue("telegram_bot_enabled") == "1", + TelegramBotToken: r.FormValue("telegram_bot_token"), + TelegramBotChatID: r.FormValue("telegram_bot_chat_id"), + LinkdingEnabled: r.FormValue("linkding_enabled") == "1", + LinkdingURL: r.FormValue("linkding_url"), + LinkdingAPIKey: r.FormValue("linkding_api_key"), + LinkdingTags: r.FormValue("linkding_tags"), + LinkdingMarkAsUnread: r.FormValue("linkding_mark_as_unread") == "1", + MatrixBotEnabled: r.FormValue("matrix_bot_enabled") == "1", + MatrixBotUser: r.FormValue("matrix_bot_user"), + MatrixBotPassword: r.FormValue("matrix_bot_password"), + MatrixBotURL: r.FormValue("matrix_bot_url"), + MatrixBotChatID: r.FormValue("matrix_bot_chat_id"), + AppriseEnabled: r.FormValue("apprise_enabled") == "1", + AppriseURL: r.FormValue("apprise_url"), + AppriseServicesURL: r.FormValue("apprise_services_url"), + } +} |