Merge pull request #1154 from leigh-pointer/dev
Delete all Modules and Pages from Recycle bin
This commit is contained in:
commit
ab102f1883
|
@ -31,6 +31,12 @@
|
||||||
<td>@context.DeletedOn</td>
|
<td>@context.DeletedOn</td>
|
||||||
</Row>
|
</Row>
|
||||||
</Pager>
|
</Pager>
|
||||||
|
@if (_pages.Any())
|
||||||
|
{
|
||||||
|
<div style="text-align:right;">
|
||||||
|
<ActionDialog Header="Delete All Pages" Message="@Localizer["Are You Sure You Wish To Permanently Delete All Pages?", "Delete All Pages"]" Action="Delete All Pages" Security="SecurityAccessLevel.Admin" Class="btn btn-danger" OnClick="@(async () => await DeleteAllPages())" ResourceKey="DeleteAllPages" />
|
||||||
|
</div>
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</TabPanel>
|
</TabPanel>
|
||||||
<TabPanel Name="Modules" ResourceKey="Modules">
|
<TabPanel Name="Modules" ResourceKey="Modules">
|
||||||
|
@ -59,6 +65,13 @@
|
||||||
<td>@context.DeletedOn</td>
|
<td>@context.DeletedOn</td>
|
||||||
</Row>
|
</Row>
|
||||||
</Pager>
|
</Pager>
|
||||||
|
@if (_modules.Any())
|
||||||
|
{
|
||||||
|
<div style="text-align:right;">
|
||||||
|
<ActionDialog Header="Delete All Modules" Message="@Localizer["Are You Sure You Wish To Permanently Delete All Modules?", "Delete All Modules"]" Action="Delete All Modules" Security="SecurityAccessLevel.Admin" Class="btn btn-danger" OnClick="@(async () => await DeleteAllModules())" ResourceKey="DeleteAllModules" />
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
</TabPanel>
|
</TabPanel>
|
||||||
</TabStrip>
|
</TabStrip>
|
||||||
|
@ -126,6 +139,28 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async Task DeleteAllPages()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
foreach (Page page in _pages)
|
||||||
|
{
|
||||||
|
await PageService.DeletePageAsync(page.PageId);
|
||||||
|
await logger.LogInformation("Page Permanently Deleted {Page}", page);
|
||||||
|
}
|
||||||
|
|
||||||
|
await logger.LogInformation("Pages Permanently Deleted");
|
||||||
|
await Load();
|
||||||
|
StateHasChanged();
|
||||||
|
NavigationManager.NavigateTo(NavigateUrl());
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
await logger.LogError(ex, "Error Permanently Deleting Pages {Error}", ex.Message);
|
||||||
|
AddModuleMessage(ex.Message, MessageType.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private async Task RestoreModule(Module module)
|
private async Task RestoreModule(Module module)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
@ -167,4 +202,31 @@
|
||||||
AddModuleMessage(Localizer["Error Permanently Deleting Module"], MessageType.Error);
|
AddModuleMessage(Localizer["Error Permanently Deleting Module"], MessageType.Error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async Task DeleteAllModules()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
foreach (Module module in _modules)
|
||||||
|
{
|
||||||
|
await PageModuleService.DeletePageModuleAsync(module.PageModuleId);
|
||||||
|
// check if there are any remaining module instances in the site
|
||||||
|
_modules = await ModuleService.GetModulesAsync(PageState.Site.SiteId);
|
||||||
|
|
||||||
|
if (!_modules.Exists(item => item.ModuleId == module.ModuleId))
|
||||||
|
{
|
||||||
|
await ModuleService.DeleteModuleAsync(module.ModuleId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
await logger.LogInformation("Modules Permanently Deleted");
|
||||||
|
await Load();
|
||||||
|
StateHasChanged();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
await logger.LogError(ex, "Error Permanently Deleting Modules {Error}", ex.Message);
|
||||||
|
AddModuleMessage(Localizer["Error Permanently Deleting Modules"], MessageType.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user