mirror of
https://github.com/lantean-code/qbtmud.git
synced 2025-10-23 04:52:22 +00:00
107 lines
6.6 KiB
Plaintext
107 lines
6.6 KiB
Plaintext
<MudDialog>
|
|
<DialogContent>
|
|
<MudGrid>
|
|
<MudItem xs="3">
|
|
<MudToolBar Class="px-0" Dense>
|
|
<MudText Class="no-wrap">Download Rules</MudText>
|
|
<MudSpacer />
|
|
<MudIconButton Icon="@Icons.Material.Filled.Add" OnClick="AddRule" />
|
|
<MudIconButton Icon="@Icons.Material.Filled.Delete" OnClick="RemoveRule" Disabled="SelectedRuleName is null" />
|
|
</MudToolBar>
|
|
|
|
<MudList T="string" SelectionMode="SelectionMode.SingleSelection" SelectedValue="SelectedRuleName" SelectedValueChanged="SelectedRuleChanged">
|
|
@foreach (var (ruleName, rule) in Rules)
|
|
{
|
|
<MudListItem Icon="@((rule?.Enabled ?? true) ? Icons.Material.Filled.CheckBox : Icons.Material.Filled.CheckBoxOutlineBlank)" Text="@ruleName" Value="@ruleName" />
|
|
}
|
|
</MudList>
|
|
</MudItem>
|
|
<MudItem xs="6">
|
|
<MudGrid>
|
|
<MudItem xs="12">
|
|
<FieldSwitch Label="Use regular expressions" Value="UseRegex" ValueChanged="UseRegexChanged" Disabled="@(SelectedRuleName is null)" />
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudTextField T="string" Label="Must contain" Value="MustContain" ValueChanged="MustContainChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined" />
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudTextField T="string" Label="Must not contain" Value="MustNotContain" ValueChanged="MustNotContainChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined" />
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudTextField T="string" Label="Episode filter" Value="EpisodeFilter" ValueChanged="EpisodeFilterChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined" />
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<FieldSwitch Label="Use smart episode filter" Value="SmartFilter" ValueChanged="SmartFilterChanged" Disabled="@(SelectedRuleName is null)" />
|
|
</MudItem>
|
|
<MudDivider />
|
|
<MudItem xs="12">
|
|
<MudSelect T="string" Label="Assign category" Value="Category" ValueChanged="CategoryChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined">
|
|
<MudSelectItem Value="@("")"></MudSelectItem>
|
|
@foreach (var category in Categories)
|
|
{
|
|
<MudSelectItem Value="@category">@category</MudSelectItem>
|
|
}
|
|
</MudSelect>
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudTextField T="string" Label="Add tags" Value="Tags" ValueChanged="TagsChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined" />
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<FieldSwitch Label="Save to a different directory" Value="SaveToDifferentDirectory" ValueChanged="SaveToDifferentDirectoryChanged" Disabled="@(SelectedRuleName is null)" />
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudNumericField T="int" Label="Ignore Subsequent Matches for (0 to Disable)" Value="IgnoreDays" ValueChanged="IgnoreDaysChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined" />
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudSelect T="string" Label="Add stopped" Value="AddStopped" ValueChanged="AddStoppedChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined">
|
|
<MudSelectItem Value="@("default")">Use global settings</MudSelectItem>
|
|
<MudSelectItem Value="@("always")">Always</MudSelectItem>
|
|
<MudSelectItem Value="@("never")">Never</MudSelectItem>
|
|
</MudSelect>
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudSelect T="string" Label="Torrent content layout" Value="ContentLayout" ValueChanged="ContentLayoutChanged" Disabled="@(SelectedRuleName is null)" Variant="Variant.Outlined">
|
|
<MudSelectItem Value="@("Default")">Use global settings</MudSelectItem>
|
|
<MudSelectItem Value="@("Original")">Original</MudSelectItem>
|
|
<MudSelectItem Value="@("Subfolder")">Create subfolder</MudSelectItem>
|
|
<MudSelectItem Value="@("NoSubfolder")">Don't create subfolder</MudSelectItem>
|
|
</MudSelect>
|
|
</MudItem>
|
|
<MudItem xs="12">
|
|
<MudList T="string" SelectionMode="SelectionMode.MultiSelection" SelectedValues="SelectedFeeds" SelectedValuesChanged="SelectedFeedsChanged" CheckBoxColor="Color.Default" Disabled="@(SelectedRuleName is null)" Dense>
|
|
<MudListSubheader>Apply Rule to Feeds</MudListSubheader>
|
|
@foreach (var (feed, _) in Feeds)
|
|
{
|
|
<MudListItem Value="@feed" Text="@feed" />
|
|
}
|
|
</MudList>
|
|
</MudItem>
|
|
</MudGrid>
|
|
</MudItem>
|
|
<MudItem xs="3">
|
|
<MudText Class="no-wrap">Matching RSS Articles</MudText>
|
|
<MudList T="string" ReadOnly Dense>
|
|
@if (MatchingArticles is not null)
|
|
{
|
|
foreach (var (feed, articles) in MatchingArticles)
|
|
{
|
|
<MudListItem Text="@feed" Expanded="true">
|
|
<NestedList>
|
|
@foreach (var article in articles)
|
|
{
|
|
<MudListItem Text="@article" />
|
|
}
|
|
</NestedList>
|
|
</MudListItem>
|
|
}
|
|
}
|
|
</MudList>
|
|
</MudItem>
|
|
</MudGrid>
|
|
</DialogContent>
|
|
<DialogActions>
|
|
<MudButton OnClick="Cancel">Close</MudButton>
|
|
<MudButton Color="Color.Primary" OnClick="Submit">Save</MudButton>
|
|
</DialogActions>
|
|
</MudDialog>
|