courses go in their own page

This commit is contained in:
2023-08-31 14:03:46 -06:00
parent 146e3b73e2
commit c936e3828c
4 changed files with 66 additions and 17 deletions

View File

@@ -9,6 +9,7 @@
@using Management.Web.Shared.Module.Assignment
@using Management.Web.Shared.Components
@inject YamlManager yamlManager
@inject CanvasService canvas
@inject CoursePlanner planner
@@ -16,6 +17,62 @@
[Parameter]
public string CourseName { get; set; }
private bool loading = true;
protected override async Task OnInitializedAsync()
{
if(planner.LocalCourse == null)
{
var courses = await yamlManager.LoadSavedCourses();
planner.LocalCourse = courses.First(c => c.Name == CourseName);
}
base.OnInitialized();
loading = false;
}
}
@planner.LocalCourse?.Name
@if(loading)
{
<Spinner />
}
@if(planner.LocalCourse != null)
{
<div class="mb-3 d-flex justify-content-between" style="height: 4em;">
<div class="my-auto">
<button
@onclick="planner.Clear"
class="btn btn-primary"
>
Select New Course
</button>
<CourseSettings />
<AssignmentTemplateManagement />
<button
class="btn btn-outline-primary"
@onclick="planner.SyncWithCanvas"
>
Sync With Canvas
</button>
<a
class="btn btn-outline-secondary"
target="_blank"
href="@($"{Environment.GetEnvironmentVariable("CANVAS_URL")}/courses/{planner.LocalCourse.CanvasId}")"
>
View In Canvas
</a>
<div class="my-auto ms-2 d-inline">
@planner.LocalCourse.Name
</div>
</div>
@if(planner.LoadingCanvasData)
{
<Spinner />
}
</div>
<CourseDetails />
}
<br>

View File

@@ -18,6 +18,7 @@
protected override void OnInitialized()
{
planner.StateHasChanged += reload;
planner.LocalCourse = null;
}
private void reload()
@@ -76,7 +77,7 @@
}
}
@if(planner.LocalCourse != null)
@* @if(planner.LocalCourse != null)
{
<div class="mb-3 d-flex justify-content-between" style="height: 4em;">
<div class="my-auto">
@@ -113,7 +114,7 @@
}
</div>
<CourseDetails />
}
} *@
<br>

View File

@@ -39,7 +39,8 @@
{
var newQuestion = new LocalQuizQuestion
{
Id = Guid.NewGuid().ToString()
Id = Guid.NewGuid().ToString(),
Points = 1,
};
var newQuiz = quizContext.Quiz with
{

View File

@@ -27,24 +27,14 @@
<div class="text-center">
@if (localCourses != null)
{
<h3 >Stored Courses</h3>
<h3>Stored Courses</h3>
@foreach (var course in localCourses)
{
var location = "/course/" + course.Name;
<div>
<h4
class="m-3 hover-underline-animation"
@onclick="(e) => handleClick(e, course)"
role='button'
>
<h4 class="m-3 hover-underline-animation" @onclick="(e) => handleClick(e, course)" role='button'>
@course.Name
</h4>
@* <h4
@onclick="(e) => handleClick(e, course)"
role='button'
>
@course.Name
</h4> *@
</div>
}