private Location CreateLocation(string locationIdentifier) { var locationTypes = Client.Provisioning.Get(new GetLocationTypes()) .Results; var locationType = locationTypes.FirstOrDefault(lt => lt.TypeName.Contains("Hydro")) ?? locationTypes.First(); var locationFolder = Client.Provisioning.Get(new GetLocationFolders()) .Results .First(lf => !lf.ParentLocationFolderUniqueId.HasValue); var request = new PostLocation { LocationType = locationType.TypeName, LocationIdentifier = locationIdentifier, LocationName = $"PointZilla-{locationIdentifier}", Description = "Dummy location created by PointZilla", LocationPath = locationFolder.LocationFolderPath, UtcOffset = Context.UtcOffset ?? Offset.FromTicks(DateTimeOffset.Now.Offset.Ticks), ExtendedAttributeValues = MergeExtendedAttributesWithMandatoryExtendedAttributes(locationType.ExtendedAttributeFields).ToList() }; Log.Info($"Creating location '{locationIdentifier}' ..."); return(Client.Provisioning.Post(request)); }
private async void SettingsView_SaveSettingsRequested(object sender, EventArgs e) { var oldConnection = userSettings.ExportDBConnection.ConnectionString; userSettings.SetRealtyConnection(settingsView.RealtyConnection); userSettings.SetExportConnection(settingsView.ExportConnection); if (!exporter.CanPublishSubjects || oldConnection != userSettings.ExportDBConnection.ConnectionString) { messageService.ShowError("Сохранены только параметры подключения."); return; } if (logo != settingsView.Logotype || watermark != settingsView.Watermark) { (logo, watermark) = (settingsView.Logotype, settingsView.Watermark); await parameterSaver.SaveLogoAndWatermark(logo, watermark); } var commonInfoSaved = await parameterSaver.SaveVKCommonInfo(settingsView.VkGroupIdOrScreenName, settingsView.VkAppId ?? 0); if (settingsView.VkFullSettingsEnabled) { var vKMarketParameters = new VKMarketParameters { TypeMarketAlbums = settingsView.TypeMarketAlbums, MarketCategoryType = settingsView.MarketCategoryType, OperationMarketAlbums = settingsView.OperationMarketAlbums, }; await parameterSaver.SaveVKMarketParametersAsync(vKMarketParameters); } if (settingsView.InstaFullSettingsEnabled) { commonHashtags = settingsView.InstaHashtags.ToArray(); instaLocation = settingsView.InstaPostLocation; await parameterSaver.SaveInstaHashtagsParameterAsync(commonHashtags); await parameterSaver.SaveInstaLocationParameterAsync(instaLocation); } var message = "Настройки публикации " + (commonInfoSaved ? "сохранены" : "не сохранены.\nПроверьте подключение к базе данных"); messageService.ShowMessage(message); }
private async void View_Load(object sender, EventArgs e) { view.ShowOpenSettingAbility(isAdminMode); if (!exporter.CanGetSubjects || !exporter.CanPublishSubjects) { return; } (logo, watermark) = await parameterSaver.GetLogoAndWatermarkAsync(); await InitializePublishersAsync(); await TryAuthAsync(); instaLocation = await parameterSaver.GetInstaLocationParameterAsync(); commonHashtags = await parameterSaver.GetInstaHashtagsParameterAsync(); view.SetAuthorizedForms(publishersInfo.Select(kv => kv.Value)); view.EnableSubjectRequestAbility(exporter.CanGetSubjects); }
public async Task<bool> SaveInstaLocationParameterAsync(PostLocation postLocation) { return await SaveJsonParameterAsync(postLocation, nameof(PostLocation), typeof(InstagramPublisher)); }