Merge branch 'main' of https://git.azuze.fr/kawa/Sharepoint-Toolbox
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using SharepointToolbox.Core.Models;
|
||||
using SharepointToolbox.Services;
|
||||
using SharepointToolbox.Views.Dialogs;
|
||||
|
||||
namespace SharepointToolbox.Views.Tabs;
|
||||
|
||||
public partial class VersionCleanupView : UserControl
|
||||
{
|
||||
private readonly ViewModels.Tabs.VersionCleanupViewModel _viewModel;
|
||||
private readonly ISessionManager _sessionManager;
|
||||
private readonly IVersionCleanupService _versionService;
|
||||
|
||||
public VersionCleanupView(
|
||||
ViewModels.Tabs.VersionCleanupViewModel viewModel,
|
||||
ISessionManager sessionManager,
|
||||
IVersionCleanupService versionService)
|
||||
{
|
||||
InitializeComponent();
|
||||
_viewModel = viewModel;
|
||||
_sessionManager = sessionManager;
|
||||
_versionService = versionService;
|
||||
DataContext = viewModel;
|
||||
|
||||
viewModel.PickLibrariesAsync = async (siteUrl, preselected) =>
|
||||
{
|
||||
if (viewModel.CurrentProfile == null) return null;
|
||||
var profile = new TenantProfile
|
||||
{
|
||||
TenantUrl = siteUrl,
|
||||
ClientId = viewModel.CurrentProfile.ClientId,
|
||||
Name = viewModel.CurrentProfile.Name,
|
||||
};
|
||||
var ctx = await _sessionManager.GetOrCreateContextAsync(profile, CancellationToken.None);
|
||||
var dlg = new LibraryPickerDialog(ctx, _versionService, preselected)
|
||||
{
|
||||
Owner = Window.GetWindow(this)
|
||||
};
|
||||
if (dlg.ShowDialog() != true) return null;
|
||||
return dlg.SelectedLibraryTitles;
|
||||
};
|
||||
|
||||
viewModel.ConfirmAction = msg =>
|
||||
{
|
||||
var result = MessageBox.Show(
|
||||
Window.GetWindow(this), msg,
|
||||
Localization.TranslationSource.Instance["versions.tab"],
|
||||
MessageBoxButton.OKCancel,
|
||||
MessageBoxImage.Warning);
|
||||
return result == MessageBoxResult.OK;
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user