mirror of
https://github.com/alexmickelson/canvasManagement.git
synced 2026-03-25 23:28:33 -06:00
started merging module and calendar pages
This commit is contained in:
@@ -7,7 +7,7 @@ public class SemesterPlanner
|
||||
|
||||
public IEnumerable<CalendarMonth> Months { get; }
|
||||
public IEnumerable<DayOfWeek> Days { get; }
|
||||
public SemesterPlanner(SemesterConfiguration configuration)
|
||||
public SemesterPlanner(SemesterCalendarConfig configuration)
|
||||
{
|
||||
FirstDay = configuration.StartDate;
|
||||
LastDay = configuration.EndDate;
|
||||
|
||||
@@ -10,14 +10,15 @@ public class ConfigurationManagement : IConfigurationManagement
|
||||
var start = canvasTerm.StartAt ?? throw new Exception($"Canvas Term must have a start date. Term: {canvasTerm.Name}");
|
||||
var end = canvasTerm.EndAt ?? throw new Exception($"Canvas Term must have a end date. Term: {canvasTerm.Name}");
|
||||
|
||||
Configuration = new SemesterConfiguration(
|
||||
SemesterCalendar = new SemesterCalendarConfig(
|
||||
StartDate: start,
|
||||
EndDate: end,
|
||||
Days: daysOfWeek
|
||||
);
|
||||
}
|
||||
|
||||
public SemesterConfiguration? Configuration { get; private set; } = null;
|
||||
public SemesterCalendarConfig? SemesterCalendar { get; set; } = null;
|
||||
public IModuleManager ModuleManager {get; private set;} = new ModuleManager();
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ using CanvasModel.EnrollmentTerms;
|
||||
|
||||
public interface IConfigurationManagement
|
||||
{
|
||||
SemesterConfiguration? Configuration { get; }
|
||||
SemesterCalendarConfig? SemesterCalendar { get; set; }
|
||||
|
||||
void SetConfiguration(EnrollmentTermModel canvasTerm, DayOfWeek[] daysOfWeek);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
public interface IModuleManager
|
||||
{
|
||||
IEnumerable<CourseModule> Modules { get; }
|
||||
IEnumerable<CourseModule> Modules { get; set; }
|
||||
public void AddModule(CourseModule newModule);
|
||||
public void AddAssignment(int moduleIndex, LocalAssignment assignment);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
public class ModuleManager : IModuleManager
|
||||
{
|
||||
public IEnumerable<CourseModule> Modules { get; internal set; } = new CourseModule[] { };
|
||||
public IEnumerable<CourseModule> Modules { get; set; } = new CourseModule[] { };
|
||||
|
||||
public void AddAssignment(int moduleIndex, LocalAssignment assignment)
|
||||
{
|
||||
|
||||
@@ -4,8 +4,9 @@ public record CourseModule(
|
||||
[property: Required]
|
||||
[property: StringLength(50, ErrorMessage = "Name too long (50 character limit).")]
|
||||
string Name,
|
||||
IEnumerable<LocalAssignment>? Assignments
|
||||
IEnumerable<LocalAssignment>? Assignments = null
|
||||
)
|
||||
{
|
||||
[JsonInclude]
|
||||
public IEnumerable<LocalAssignment> Assignments = Assignments ?? new LocalAssignment[] { };
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
public record SemesterConfiguration(
|
||||
public record SemesterCalendarConfig(
|
||||
DateTime StartDate,
|
||||
DateTime EndDate,
|
||||
IEnumerable<DayOfWeek> Days
|
||||
|
||||
Reference in New Issue
Block a user