/// <summary> /// Handles the Loaded event of the Window control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param> private void Window_Loaded(object sender, RoutedEventArgs e) { lblApiUsage.Text = $"API Usage: {PCOApi.ApiCounter}"; // add group types ExportGroupTypes = PCOApi.GetGroupTypes(); foreach (var groupType in ExportGroupTypes) { //cblGroupTypes.Items.Add( groupType ); GroupTypesCheckboxItems.Add(new CheckListItem { Id = groupType.Id, Text = groupType.Name, Checked = true }); } cblGroupTypes.ItemsSource = GroupTypesCheckboxItems; txtImportCutOff.Text = DateTime.Now.ToShortDateString(); }
private void btnLogin_Click(object sender, RoutedEventArgs e) { lblMessage.Text = string.Empty; if (txtApiConsumerKey.Text != string.Empty && txtApiConsumerSecret.Text != string.Empty) { PCOApi.Connect(txtApiConsumerKey.Text, txtApiConsumerSecret.Text); if (PCOApi.IsConnected) { MainWindow mainWindow = new MainWindow(); mainWindow.Show(); this.Close(); } else { lblMessage.Text = $"Could not login with the information provided. {PCOApi.ErrorMessage}"; } } else { lblMessage.Text = "Please provide the information needed to connect."; } }
private void ExportWorker_DoWork(object sender, DoWorkEventArgs e) { exportWorker.ReportProgress(0, ""); _apiUpdateTimer.Start(); var exportSettings = ( ExportSettings )e.Argument; // clear filesystem directories PCOApi.InitializeExport(); // export individuals if (exportSettings.ExportIndividuals) { exportWorker.ReportProgress(1, "Exporting Individuals..."); PCOApi.ExportIndividuals(exportSettings.ModifiedSince); if (PCOApi.ErrorMessage.IsNotNullOrWhitespace()) { this.Dispatcher.Invoke(() => { exportWorker.ReportProgress(2, $"Error exporting individuals: {PCOApi.ErrorMessage}"); }); } } // export contributions if (exportSettings.ExportContributions) { exportWorker.ReportProgress(30, "Exporting Financial Accounts..."); PCOApi.ExportFinancialAccounts(); if (PCOApi.ErrorMessage.IsNotNullOrWhitespace()) { exportWorker.ReportProgress(31, $"Error exporting financial accounts: {PCOApi.ErrorMessage}"); } /* PCO Doesn't have pledges * * exportWorker.ReportProgress( 32, "Exporting Financial Pledges..." ); * * PCOApi.ExportFinancialPledges(); * if ( PCOApi.ErrorMessage.IsNotNullOrWhitespace() ) * { * exportWorker.ReportProgress( 33, $"Error exporting financial pledges: {PCOApi.ErrorMessage}" ); * } */ exportWorker.ReportProgress(34, "Exporting Financial Batches..."); PCOApi.ExportFinancialBatches(exportSettings.ModifiedSince); if (PCOApi.ErrorMessage.IsNotNullOrWhitespace()) { exportWorker.ReportProgress(35, $"Error exporting financial batches: {PCOApi.ErrorMessage}"); } exportWorker.ReportProgress(36, "Exporting Contribution Information..."); PCOApi.ExportContributions(exportSettings.ModifiedSince, exportSettings.ExportContributionImages); if (PCOApi.ErrorMessage.IsNotNullOrWhitespace()) { exportWorker.ReportProgress(37, $"Error exporting financial batches: {PCOApi.ErrorMessage}"); } } // export group types if (exportSettings.ExportGroupTypes.Count > 0) { exportWorker.ReportProgress(54, $"Exporting Groups..."); // TODO - This method is not yet implemented //PCOApi.ExportGroups( ExportGroupTypes.Select( t => t.Id ).ToList() ); if (PCOApi.ErrorMessage.IsNotNullOrWhitespace()) { exportWorker.ReportProgress(54, $"Error exporting groups: {PCOApi.ErrorMessage}"); } } // finalize the package ImportPackage.FinalizePackage("pco-export.slingshot"); _apiUpdateTimer.Stop(); }