Skip to content

Commit

Permalink
Rename forever teammate to delete teammate
Browse files Browse the repository at this point in the history
  • Loading branch information
dyatlov-a committed Nov 5, 2024
1 parent 04f0e10 commit 755590d
Show file tree
Hide file tree
Showing 5 changed files with 42 additions and 37 deletions.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -165,14 +165,14 @@
<data name="ReviewByOwnerTemplate" xml:space="preserve">
<value>Submitted ({0} days)</value>
</data>
<data name="LeaveTeammate" xml:space="preserve">
<value>Leave teammate</value>
<data name="ConfirmDeleteTeammate" xml:space="preserve">
<value>Delete teammate</value>
</data>
<data name="Days" xml:space="preserve">
<value>days</value>
</data>
<data name="Forever" xml:space="preserve">
<value>forever</value>
<data name="Delete" xml:space="preserve">
<value>delete</value>
</data>
<data name="RecoveryTeammate" xml:space="preserve">
<value>Recovery teammate</value>
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -165,14 +165,14 @@
<data name="ReviewByOwnerTemplate" xml:space="preserve">
<value>Отправлено на ревью ({0} дней)</value>
</data>
<data name="LeaveTeammate" xml:space="preserve">
<data name="ConfirmDeleteTeammate" xml:space="preserve">
<value>Удалить участника</value>
</data>
<data name="Days" xml:space="preserve">
<value>дня</value>
</data>
<data name="Forever" xml:space="preserve">
<value>навсегда</value>
<data name="Delete" xml:space="preserve">
<value>удалить</value>
</data>
<data name="RecoveryTeammate" xml:space="preserve">
<value>Восстановить участника</value>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,12 @@
@inject IStringLocalizer<DashboardResources> Localizer

<ConfirmDialog OnConfirm="EmitTeammateRemoved" @ref="_confirmDialog">
@if (_exclude || _leaveUntil.HasValue)
@if (_isDelete || _deleteUntil.HasValue)
{
<p>@Localizer["LeaveTeammate"] @_selectedTeammate?.Name</p>
@if (_leaveUntil.HasValue)
<p>@Localizer["ConfirmDeleteTeammate"] @_selectedTeammate?.Name</p>
@if (_deleteUntil.HasValue)
{
<p>@_leaveUntil.Value @Localizer["Days"]</p>
}
else
{
<p>@Localizer["Forever"]</p>
<p>@_deleteUntil.Value @Localizer["Days"]</p>
}
}
else
Expand Down Expand Up @@ -44,19 +40,19 @@
<span>@context.LeaveUntil.Value.ToString("dd.MM.yyyy")</span>
if (Item.HasManagerAccess)
{
<RouterLink OnClick="() => ExcludeFromTeam(context, false)">[X]</RouterLink>
<RouterLink OnClick="() => RecoveryTeammate(context)">[X]</RouterLink>
}
}
</TemplateColumn>
<TemplateColumn Title="@Localizer["ExcludeFromTeam"]" Sortable="false">
@if (Item.HasManagerAccess)
{
<RouterLink OnClick="() => ExcludeFromTeam(context, false, 1)">1</RouterLink>
<RouterLink OnClick="() => ExcludeFromTeam(context, false, 7)">7</RouterLink>
<RouterLink OnClick="() => ExcludeFromTeam(context, false, 14)">14</RouterLink>
<RouterLink OnClick="() => DeleteTeammate(context, 1)">1</RouterLink>
<RouterLink OnClick="() => DeleteTeammate(context, 7)">7</RouterLink>
<RouterLink OnClick="() => DeleteTeammate(context, 14)">14</RouterLink>
<br/>
<RouterLink OnClick="() => ExcludeFromTeam(context, true)">
@Localizer["Forever"]
<RouterLink OnClick="() => DeleteTeammate(context, null)">
@Localizer["Delete"]
</RouterLink>
}
else
Expand Down Expand Up @@ -108,27 +104,36 @@

private ConfirmDialog? _confirmDialog;
private TeammateDto? _selectedTeammate;
private bool _exclude;
private int? _leaveUntil;
private bool _isDelete;
private int? _deleteUntil;

private IQueryable<TeammateDto> Teammates => Item.Teammates.AsQueryable();

private void ExcludeFromTeam(TeammateDto teammate, bool exclude, int? leaveUntil = null)
private void DeleteTeammate(TeammateDto teammate, int? leaveUntil)
{
_selectedTeammate = teammate;
_deleteUntil = leaveUntil;
_isDelete = !leaveUntil.HasValue;

_confirmDialog?.Open();
}

private void RecoveryTeammate(TeammateDto teammate)
{
_leaveUntil = leaveUntil;
_selectedTeammate = teammate;
_exclude = exclude;
_deleteUntil = null;
_isDelete = false;

_confirmDialog?.Open();
}

private async Task EmitTeammateRemoved()
{
if (_selectedTeammate is not null)
await TeammateRemoved.InvokeAsync((_selectedTeammate, _exclude, _leaveUntil));
await TeammateRemoved.InvokeAsync((_selectedTeammate, _isDelete, _deleteUntil));

_selectedTeammate = null;
_exclude = false;
_leaveUntil = null;
_isDelete = false;
_deleteUntil = null;
}
}

0 comments on commit 755590d

Please sign in to comment.