@using Management.Web.Shared.Components
@inject CoursePlanner planner
@code {
[Parameter]
[EditorRequired]
public LocalModule Module { get; set; } = default!;
private Modal? modal { get; set; } = null;
private string Name { get; set; } = string.Empty;
protected override void OnParametersSet()
{
if (Name == string.Empty)
Name = Module.Name;
}
private void submitHandler()
{
if (planner.LocalCourse == null)
return;
var newModule = Module with
{
Name = Name
};
// Module is the not renamed version
var newModules = planner.LocalCourse.Modules.Select(
m => m.Name == Module.Name
? newModule
: m
).ToArray();
planner.LocalCourse = planner.LocalCourse with
{
Modules = newModules
};
Name = "";
modal?.Hide();
}
}
Rename Module