Skip to content

Commit ee0ca14

Browse files
authored
Merge pull request #1248 from gordon-cs/s25-show-current-or-next
s25 show only finalized schedule
2 parents 8887d81 + bb5b2ac commit ee0ca14

File tree

3 files changed

+13
-6
lines changed

3 files changed

+13
-6
lines changed

Gordon360/Controllers/ScheduleController.cs

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using Gordon360.Authorization;
1+
using Gordon360.Authorization;
22
using Gordon360.Enums;
33
using Gordon360.Extensions.System;
44
using Gordon360.Models.ViewModels;
@@ -35,13 +35,14 @@ public async Task<ActionResult<CoursesBySessionViewModel>> GetAllCourses(string
3535
{
3636
result = await scheduleService.GetAllInstructorCoursesAsync(username);
3737
}
38+
3839
return Ok(result);
3940
}
4041

4142
/// <summary>
42-
/// Gets all term objects for a user
43+
/// Gets all term-based course schedules for a user, filtered to only include officially published terms.
4344
/// </summary>
44-
/// <returns>A IEnumerable of term objects as well as the schedules</returns>
45+
/// <returns>A list of published term schedule objects</returns>
4546
[HttpGet]
4647
[Route("{username}/allcourses-by-term")]
4748
public async Task<ActionResult<IEnumerable<CoursesByTermViewModel>>> GetAllCoursesByTerm(string username)
@@ -59,7 +60,10 @@ public async Task<ActionResult<IEnumerable<CoursesByTermViewModel>>> GetAllCours
5960
result = await scheduleService.GetAllInstructorCoursesByTermAsync(username);
6061
}
6162

62-
return Ok(result);
63+
var publishedResult = result
64+
.Where(r => string.Equals(r.ShowOnWeb, "B", StringComparison.OrdinalIgnoreCase))
65+
.ToList();
66+
return Ok(publishedResult);
6367
}
6468

6569
/// <summary>
@@ -73,4 +77,4 @@ public async Task<ActionResult<bool>> GetCanReadStudentSchedules()
7377
var groups = AuthUtils.GetGroups(User);
7478
return groups.Contains(AuthGroup.Advisors);
7579
}
76-
}
80+
}

Gordon360/Models/ViewModels/CoursesByTermViewModel.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ public record CoursesByTermViewModel(
99
string TermDescription,
1010
DateTime? TermBeginDate,
1111
DateTime? TermEndDate,
12+
string ShowOnWeb,
1213
IEnumerable<UserCoursesViewModel> AllCourses)
1314
{
1415
public CoursesByTermViewModel(YearTermTableViewModel term, IEnumerable<UserCoursesViewModel> courses) : this(
@@ -17,6 +18,7 @@ public CoursesByTermViewModel(YearTermTableViewModel term, IEnumerable<UserCours
1718
TermDescription: term.Description,
1819
TermBeginDate: term.BeginDate,
1920
TermEndDate: term.EndDate,
21+
ShowOnWeb: term.ShowOnWeb,
2022
AllCourses: courses)
2123
{ }
2224
}

Gordon360/Models/ViewModels/YearTermTableViewModel.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ public class YearTermTableViewModel
1010
public DateTime? BeginDate { get; set; }
1111
public DateTime? EndDate { get; set; }
1212
public string Description { get; set; }
13+
public string ShowOnWeb { get; set; }
1314

1415
public YearTermTableViewModel(YearTermTable entity)
1516
{
@@ -18,7 +19,7 @@ public YearTermTableViewModel(YearTermTable entity)
1819
BeginDate = entity.TRM_BEGIN_DTE;
1920
EndDate = entity.TRM_END_DTE;
2021
Description = entity.YR_TRM_DESC;
22+
ShowOnWeb = entity.SHOW_ON_WEB;
2123
}
2224
}
2325
}
24-

0 commit comments

Comments
 (0)