@using Management.Web.Shared.Components @inject CoursePlanner planner @code { private Modal modal { get; set; } = default!; private string newTemplateName { get; set; } = ""; protected override void OnInitialized() { planner.StateHasChanged += reload; } private void reload() { this.InvokeAsync(this.StateHasChanged); } public void Dispose() { planner.StateHasChanged -= reload; } private string? _selectedTemplateId; private string? selectedTemplateId { get { return _selectedTemplateId; } set { _selectedTemplateId = value; } } private AssignmentTemplate? selectedTemplate => planner .LocalCourse? .Settings .AssignmentTemplates .FirstOrDefault(t => t.Id == selectedTemplateId); private void newTemplate() { if (planner.LocalCourse != null) { var newOne = new AssignmentTemplate() { Id=Guid.NewGuid().ToString(), Name=newTemplateName }; planner.LocalCourse = planner.LocalCourse with { Settings = planner.LocalCourse.Settings with { AssignmentTemplates = planner.LocalCourse.Settings.AssignmentTemplates.Append(newOne) } }; newTemplateName = ""; } } } @if(planner.LocalCourse != null) { <h1>Assignment Templates</h1>
@if(selectedTemplate != null) { }
}