added multi day raids
This commit is contained in:
parent
00a038ae15
commit
922bef0ddf
6 changed files with 131 additions and 25 deletions
|
@ -66,13 +66,38 @@
|
|||
</InputSelect>
|
||||
</label>
|
||||
</p>
|
||||
|
||||
|
||||
<p>
|
||||
<label>
|
||||
Date:
|
||||
<InputDate @bind-Value="_raidDate" />
|
||||
<InputCheckbox @bind-Value="_isMultiDay" />
|
||||
Multi day raid
|
||||
</label>
|
||||
</p>
|
||||
|
||||
@if(_isMultiDay)
|
||||
{
|
||||
<p>
|
||||
<label>
|
||||
Start date:
|
||||
<InputDate @bind-Value="_raidDate" />
|
||||
</label>
|
||||
</p>
|
||||
<p>
|
||||
<label>
|
||||
End date:
|
||||
<InputDate @bind-Value="_endDate" />
|
||||
</label>
|
||||
</p>
|
||||
}
|
||||
else
|
||||
{
|
||||
<p>
|
||||
<label>
|
||||
Date:
|
||||
<InputDate @bind-Value="_raidDate" />
|
||||
</label>
|
||||
</p>
|
||||
}
|
||||
|
||||
<p>
|
||||
<label>
|
||||
|
@ -209,7 +234,9 @@
|
|||
private string _errorMessage = string.Empty;
|
||||
|
||||
private int _randomSpots = 10;
|
||||
private bool _isMultiDay = false;
|
||||
private DateTimeOffset _raidDate = DateTime.Now.Date;
|
||||
private DateTimeOffset _endDate = DateTime.Now.Date;
|
||||
private DateTimeOffset _startTime;
|
||||
private DateTimeOffset _endTime;
|
||||
private DateTimeOffset _freeForAllDate = DateTime.Now.Date;
|
||||
|
@ -260,10 +287,12 @@
|
|||
_startTime = await TimeZoneService.GetLocalDateTime(_raid.StartTimeUTC);
|
||||
_endTime = await TimeZoneService.GetLocalDateTime(_raid.EndTimeUTC);
|
||||
_raidDate = _startTime.Date;
|
||||
_endDate = _endTime.Date;
|
||||
_freeForAllTime = await TimeZoneService.GetLocalDateTime(_raid.FreeForAllTimeUTC);
|
||||
_freeForAllDate = _freeForAllTime.Date;
|
||||
_minUserDeadlineTime = await TimeZoneService.GetLocalDateTime(_raid.MinUserDeadLineUTC);
|
||||
_minUserDeadlineDate = _minUserDeadlineTime.Date;
|
||||
_isMultiDay = _endTime - _startTime > new TimeSpan(24,0,0);
|
||||
foreach(RaidReminder reminder in _raid.Reminders)
|
||||
{
|
||||
if(reminder.TimeType == RaidReminder.ReminderTimeType.Static)
|
||||
|
@ -351,8 +380,18 @@
|
|||
return;
|
||||
}
|
||||
|
||||
if(_isMultiDay && _endDate <= _raidDate)
|
||||
{
|
||||
_errorMessage = "The end date has to be after the start date.";
|
||||
return;
|
||||
}
|
||||
|
||||
_raid.StartTimeUTC = await TimeZoneService.GetUTCDateTime(_raidDate.Date + _startTime.TimeOfDay);
|
||||
if(_startTime.TimeOfDay <= _endTime.TimeOfDay)
|
||||
if(_isMultiDay)
|
||||
{
|
||||
_raid.EndTimeUTC = await TimeZoneService.GetUTCDateTime(_endDate.Date + _endTime.TimeOfDay);
|
||||
}
|
||||
else if(_startTime.TimeOfDay <= _endTime.TimeOfDay)
|
||||
{
|
||||
_raid.EndTimeUTC = await TimeZoneService.GetUTCDateTime(_raidDate.Date + _endTime.TimeOfDay);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue