reorganized Raid pages
This commit is contained in:
parent
f40903851e
commit
d0ff8251a2
16 changed files with 174 additions and 53 deletions
71
Lieb/Pages/Raids/RaidEdit/DiscordMessageEdit.razor
Normal file
71
Lieb/Pages/Raids/RaidEdit/DiscordMessageEdit.razor
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
@using Lieb.Data
|
||||||
|
@using Lieb.Models
|
||||||
|
@using Lieb.Models.GuildWars2.Raid
|
||||||
|
@using SharedClasses.SharedModels
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<label>
|
||||||
|
Discord Messages:
|
||||||
|
</label>
|
||||||
|
<button type=button @onclick="() => AddDiscordMessageClicked()">Add message</button>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>Server</th>
|
||||||
|
<th>Channel</th>
|
||||||
|
</tr>
|
||||||
|
@foreach( DiscordRaidMessage message in _raid.DiscordRaidMessages)
|
||||||
|
{
|
||||||
|
bool disableEdit = message.DiscordRaidMessageId != 0;
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<InputSelect @bind-Value="message.DiscordGuildId" disabled="@disableEdit">
|
||||||
|
@foreach(DiscordServer item in _discordServers)
|
||||||
|
{
|
||||||
|
<option value="@item.Id">@item.Name</option>
|
||||||
|
}
|
||||||
|
</InputSelect>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<InputSelect @bind-Value="message.DiscordChannelId" disabled="@disableEdit">
|
||||||
|
@if(message.DiscordGuildId > 0)
|
||||||
|
{
|
||||||
|
List<DiscordChannel> channels = _discordServers.Where(s => s.Id == message.DiscordGuildId).FirstOrDefault(new DiscordServer()).Channels;
|
||||||
|
@foreach(DiscordChannel item in channels)
|
||||||
|
{
|
||||||
|
<option value="@item.Id">@item.Name</option>
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</InputSelect>
|
||||||
|
</td>
|
||||||
|
<td><button type=button @onclick="() => DeleteMessageClicked(message)">Delete</button></td>
|
||||||
|
</tr>
|
||||||
|
}
|
||||||
|
</table>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
@code {
|
||||||
|
|
||||||
|
[Parameter]
|
||||||
|
public Raid _raid { get; set; }
|
||||||
|
|
||||||
|
[Parameter]
|
||||||
|
public List<DiscordServer> _discordServers {get; set; }
|
||||||
|
|
||||||
|
[Parameter]
|
||||||
|
public List<DiscordRaidMessage> _messagesToDelete {get; set; }
|
||||||
|
|
||||||
|
async Task AddDiscordMessageClicked()
|
||||||
|
{
|
||||||
|
_raid.DiscordRaidMessages.Add(new DiscordRaidMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
async Task DeleteMessageClicked(DiscordRaidMessage message)
|
||||||
|
{
|
||||||
|
if(message.DiscordRaidMessageId != 0)
|
||||||
|
{
|
||||||
|
_messagesToDelete.Add(message);
|
||||||
|
}
|
||||||
|
_raid.DiscordRaidMessages.Remove(message);
|
||||||
|
}
|
||||||
|
}
|
|
@ -145,45 +145,9 @@
|
||||||
</p>
|
</p>
|
||||||
}
|
}
|
||||||
|
|
||||||
<p>
|
|
||||||
<label>
|
<DiscordMessageEdit _raid=@_raid _discordServers=@_discordServers _messagesToDelete=@_messagesToDelete ></DiscordMessageEdit>
|
||||||
Discord Messages:
|
<ReminderEdit _raid=@_raid _discordServers=@_discordServers _remindersToDelete=@_remindersToDelete ></ReminderEdit>
|
||||||
</label>
|
|
||||||
<button type=button @onclick="() => AddDiscordMessageClicked()">Add message</button>
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<th>Server</th>
|
|
||||||
<th>Channel</th>
|
|
||||||
</tr>
|
|
||||||
@foreach( DiscordRaidMessage message in _raid.DiscordRaidMessages)
|
|
||||||
{
|
|
||||||
bool disableEdit = message.DiscordRaidMessageId != 0;
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<InputSelect @bind-Value="message.DiscordGuildId" disabled="@disableEdit">
|
|
||||||
@foreach(DiscordServer item in _discordServers)
|
|
||||||
{
|
|
||||||
<option value="@item.Id">@item.Name</option>
|
|
||||||
}
|
|
||||||
</InputSelect>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<InputSelect @bind-Value="message.DiscordChannelId" disabled="@disableEdit">
|
|
||||||
@if(message.DiscordGuildId > 0)
|
|
||||||
{
|
|
||||||
List<DiscordChannel> channels = _discordServers.Where(s => s.Id == message.DiscordGuildId).FirstOrDefault(new DiscordServer()).Channels;
|
|
||||||
@foreach(DiscordChannel item in channels)
|
|
||||||
{
|
|
||||||
<option value="@item.Id">@item.Name</option>
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</InputSelect>
|
|
||||||
</td>
|
|
||||||
<td><button type=button @onclick="() => DeleteMessageClicked(message)">Delete</button></td>
|
|
||||||
</tr>
|
|
||||||
}
|
|
||||||
</table>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ValidationSummary />
|
<ValidationSummary />
|
||||||
<label class="validation-message" >@_errorMessage</label>
|
<label class="validation-message" >@_errorMessage</label>
|
||||||
|
@ -271,20 +235,6 @@
|
||||||
_raid.Roles.Remove(role);
|
_raid.Roles.Remove(role);
|
||||||
}
|
}
|
||||||
|
|
||||||
async Task AddDiscordMessageClicked()
|
|
||||||
{
|
|
||||||
_raid.DiscordRaidMessages.Add(new DiscordRaidMessage());
|
|
||||||
}
|
|
||||||
|
|
||||||
async Task DeleteMessageClicked(DiscordRaidMessage message)
|
|
||||||
{
|
|
||||||
if(message.DiscordRaidMessageId != 0)
|
|
||||||
{
|
|
||||||
_messagesToDelete.Add(message);
|
|
||||||
}
|
|
||||||
_raid.DiscordRaidMessages.Remove(message);
|
|
||||||
}
|
|
||||||
|
|
||||||
async Task DeleteRaidClicked()
|
async Task DeleteRaidClicked()
|
||||||
{
|
{
|
||||||
bool confirmed = await JsRuntime.InvokeAsync<bool>("confirm", "Are you sure you want to delete the raid?");
|
bool confirmed = await JsRuntime.InvokeAsync<bool>("confirm", "Are you sure you want to delete the raid?");
|
100
Lieb/Pages/Raids/RaidEdit/ReminderEdit.razor
Normal file
100
Lieb/Pages/Raids/RaidEdit/ReminderEdit.razor
Normal file
|
@ -0,0 +1,100 @@
|
||||||
|
@using Lieb.Data
|
||||||
|
@using Lieb.Models
|
||||||
|
@using Lieb.Models.GuildWars2.Raid
|
||||||
|
@using SharedClasses.SharedModels
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<label>
|
||||||
|
Raid Reminders:
|
||||||
|
</label>
|
||||||
|
<button type=button @onclick="() => AddReminderClicked()">Add reminder</button>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>Time</th>
|
||||||
|
<th>Type</th>
|
||||||
|
@if(_raid.Reminders.Where(r => r.Type == RaidReminder.ReminderType.Channel).Any())
|
||||||
|
{
|
||||||
|
<th>Server</th>
|
||||||
|
<th>Channel</th>
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
<th></th>
|
||||||
|
<th></th>
|
||||||
|
}
|
||||||
|
<th>Message</th>
|
||||||
|
</tr>
|
||||||
|
@foreach( RaidReminder reminder in _raid.Reminders)
|
||||||
|
{
|
||||||
|
bool hidden = reminder.Type == RaidReminder.ReminderType.User;
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
TODO: Time
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<InputSelect @bind-Value="reminder.Type">
|
||||||
|
@foreach(RaidReminder.ReminderType type in Enum.GetValues(typeof(RaidReminder.ReminderType)))
|
||||||
|
{
|
||||||
|
<option value="@type">@type.ToString()</option>
|
||||||
|
}
|
||||||
|
</InputSelect>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<InputSelect @bind-Value="reminder.DiscordServerId" hidden="@hidden">
|
||||||
|
@foreach(DiscordServer item in _discordServers)
|
||||||
|
{
|
||||||
|
<option value="@item.Id">@item.Name</option>
|
||||||
|
}
|
||||||
|
</InputSelect>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<InputSelect @bind-Value="reminder.DiscordChannelId" hidden="@hidden">
|
||||||
|
@if(reminder.DiscordServerId > 0)
|
||||||
|
{
|
||||||
|
List<DiscordChannel> channels = _discordServers.Where(s => s.Id == reminder.DiscordServerId).FirstOrDefault(new DiscordServer()).Channels;
|
||||||
|
@foreach(DiscordChannel item in channels)
|
||||||
|
{
|
||||||
|
<option value="@item.Id">@item.Name</option>
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</InputSelect>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<InputText @bind-Value="reminder.Message" />
|
||||||
|
</td>
|
||||||
|
<td><button type=button @onclick="() => DeleteReminderClicked(reminder)">Delete</button></td>
|
||||||
|
</tr>
|
||||||
|
}
|
||||||
|
</table>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
@code {
|
||||||
|
|
||||||
|
[Parameter]
|
||||||
|
public Raid _raid { get; set; }
|
||||||
|
|
||||||
|
[Parameter]
|
||||||
|
public List<DiscordServer> _discordServers {get; set; }
|
||||||
|
|
||||||
|
[Parameter]
|
||||||
|
public List<RaidReminder> _remindersToDelete {get; set; }
|
||||||
|
|
||||||
|
async Task AddReminderClicked()
|
||||||
|
{
|
||||||
|
_raid.Reminders.Add(new RaidReminder()
|
||||||
|
{
|
||||||
|
RaidId = _raid.RaidId,
|
||||||
|
Type = RaidReminder.ReminderType.User
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async Task DeleteReminderClicked(RaidReminder reminder)
|
||||||
|
{
|
||||||
|
if(reminder.RaidReminderId != 0)
|
||||||
|
{
|
||||||
|
_remindersToDelete.Add(reminder);
|
||||||
|
}
|
||||||
|
_raid.Reminders.Remove(reminder);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue