Пример #1
0
        private async void View_OpenSettingsRequested(object sender, EventArgs e)
        {
            settingsView.RealtyConnection = userSettings.GetRealtyConnectionParams();
            settingsView.ExportConnection = userSettings.GetExportConnectionParams();

            settingsView.Logotype  = logo;
            settingsView.Watermark = watermark;

            if (exporter.CanPublishSubjects)
            {
                var(groupId, appId) = await parameterSaver.GetVKCommonInfo();

                settingsView.VkAppId = appId == 0 ? null : (ulong?)appId;
                settingsView.VkGroupIdOrScreenName = groupId;

                var showVkAdditationalSettings = (vkPublisher?.CanPublish ?? false) && exporter.CanGetSubjects;
                settingsView.VkFullSettingsEnabled = showVkAdditationalSettings;

                if (showVkAdditationalSettings)
                {
                    settingsView.VkGroupIdOrScreenName = vkPublisher.GroupScreenName;
                    settingsView.SetVkMarketAlbumValues(await vkPublisher.GetMarketAlbumsAsync());
                    settingsView.SetVkMarketCategories(await vkPublisher.GetMarketCategoriesAsync());
                    settingsView.SetVkRealtyType((await exporter.GetRealtyTypes()).ToDictionary(k => k.RealtyId, v => v.Name));
                    settingsView.SetVkOperationType((await exporter.GetOperations()).ToDictionary(k => k.OperationId, v => v.Name));

                    var savedSettings = await parameterSaver.GetVKMarketParametersAsync();

                    settingsView.TypeMarketAlbums      = savedSettings.TypeMarketAlbums;
                    settingsView.MarketCategoryType    = savedSettings.MarketCategoryType;
                    settingsView.OperationMarketAlbums = savedSettings.OperationMarketAlbums;
                }

                var showInstaAdditationalSettings = (instaPublisher?.CanPublish ?? false) && exporter.CanGetSubjects;
                settingsView.InstaFullSettingsEnabled = showInstaAdditationalSettings;

                if (showInstaAdditationalSettings)
                {
                    settingsView.InstaHashtags     = commonHashtags ?? new string[0];
                    settingsView.InstaPostLocation = instaLocation;
                }
            }

            settingsView.ShowModal();
        }