From 4dc155b344df1b3fb8ba890272af5b0b75fe5b4d Mon Sep 17 00:00:00 2001 From: Alex Mickelson Date: Wed, 12 Jul 2023 20:29:26 -0600 Subject: [PATCH] starting to drag and drop assignments --- Management.Web/Pages/Calendar.razor | 1 - Management.Web/Pages/Drag.razor | 5 +- Management.Web/Program.cs | 1 + .../Module/Assignment/AssignmentCard.razor | 23 +++++++++ .../Shared/Module/ModuleDetail.razor | 47 +++++++------------ .../Utils/AssignmentDragContainer.cs | 4 ++ 6 files changed, 49 insertions(+), 32 deletions(-) create mode 100644 Management.Web/Shared/Module/Assignment/AssignmentCard.razor create mode 100644 Management.Web/Utils/AssignmentDragContainer.cs diff --git a/Management.Web/Pages/Calendar.razor b/Management.Web/Pages/Calendar.razor index 8eb97a3..9f8e2e9 100644 --- a/Management.Web/Pages/Calendar.razor +++ b/Management.Web/Pages/Calendar.razor @@ -7,7 +7,6 @@ @code { - private SemesterPlanner? semester { get; set; } protected override void OnParametersSet() { diff --git a/Management.Web/Pages/Drag.razor b/Management.Web/Pages/Drag.razor index 3632710..41da2a5 100644 --- a/Management.Web/Pages/Drag.razor +++ b/Management.Web/Pages/Drag.razor @@ -24,8 +24,9 @@ }
- Drag me! + @ondragstart="OnDragStart" +> + Drag me!
(); builder.Services.AddSingleton(); builder.Services.AddSingleton(); builder.Services.AddSingleton(); +builder.Services.AddSingleton(); var app = builder.Build(); diff --git a/Management.Web/Shared/Module/Assignment/AssignmentCard.razor b/Management.Web/Shared/Module/Assignment/AssignmentCard.razor new file mode 100644 index 0000000..49c4840 --- /dev/null +++ b/Management.Web/Shared/Module/Assignment/AssignmentCard.razor @@ -0,0 +1,23 @@ +@inject AssignmentDragContainer dragContainer + +@code { + [Parameter] + [Required] + public LocalAssignment assignment { get; set; } = new(); + private async Task HandleDragStart() + { + dragContainer.AssignmentBeingDragged = assignment; + } +} + +
+
+
+
@assignment.name
+
+
+
diff --git a/Management.Web/Shared/Module/ModuleDetail.razor b/Management.Web/Shared/Module/ModuleDetail.razor index a8e380c..8a2aad0 100644 --- a/Management.Web/Shared/Module/ModuleDetail.razor +++ b/Management.Web/Shared/Module/ModuleDetail.razor @@ -1,11 +1,9 @@ @using Management.Web.Shared.Module.Assignment - - @inject IModuleManager moduleManager @code { - [Parameter, EditorRequired] - public int ModuleIndex { get; set; } + [Parameter, EditorRequired] + public int ModuleIndex { get; set; } private bool showAddAssignment { get; set; } = false; @@ -20,32 +18,23 @@ @if (module != null) { -

@module.Name

- - @if (showAddAssignment) - { -
-
- -
-
- } - -
Assignments
-
- - @foreach (var assignment in module.Assignments) - { -
-
-
-
- @assignment.name -
+

@module.Name

+ + @if (showAddAssignment) + { +
+
+
-
- } -
+ } +
Assignments
+
+ + @foreach (var a in module.Assignments) + { + + } +
} \ No newline at end of file diff --git a/Management.Web/Utils/AssignmentDragContainer.cs b/Management.Web/Utils/AssignmentDragContainer.cs new file mode 100644 index 0000000..a165e40 --- /dev/null +++ b/Management.Web/Utils/AssignmentDragContainer.cs @@ -0,0 +1,4 @@ +public class AssignmentDragContainer +{ + public LocalAssignment? AssignmentBeingDragged { get; set; } +} \ No newline at end of file