@using Core.Entities @using Core.Utility @model Tuple @{ ViewData["Title"] = "Home Page"; var maxStudentPicks = Model.Item3.MaxBy(picks => picks.StudentPicks.Count).StudentPicks.Count; var parameters = Model.Item5; var unassignedEvents = Model.Item1.Where(e => Model.Item4.All(t => t.Event != e)); }
Effort Limit:@parameters.EffortUpperBound   Require Regionals:@parameters.RequireRegional   Require On-Site Activity:@parameters.RequireOnSite

@foreach (var student in Model.Item2.OrderBy(s => s.FirstName)) { var assignments = Model.Item4.Where(ea => ea.Students.Contains(student)) .Select(ea => ea.Event) .Distinct() .OrderBy(e => { var r = student.RankedEventPicks.IndexOf(e); r = r >= 0 ? r : 10; //r = r * (4 - e.LevelOfEffort.Value); return r; }); @foreach (var evt in assignments) { var h = student.RankedEventPicks.IndexOf(evt) + 1; } }
StudentLevel of Effort Total
@student.FirstName @assignments.Sum(a => a.LevelOfEffort) @evt.ShortName @Html.Partial("EffortStarsPartial", evt.LevelOfEffort) @{ if (evt.Format == EventFormat.Individual) { (ind) } if (evt.RegionalEvent) { (reg) } if (evt.OnSiteActivity) { (act) } }
 
@foreach (var evt in Model.Item1.OrderByDescending(e => e.Format is EventFormat.Team)) { var assignments = Model.Item4.FirstOrDefault(i => i.Event == evt); @if (assignments == null) { continue; } @**@ @if (assignments != null) { foreach (var student in assignments.Students) { var h = student.RankedEventPicks.IndexOf(evt) + 1; } } else { } } @{ var unassigned = string.Join(", ", unassignedEvents.Select(e => e.Name)); }
Teams
@evt.Name @Html.Partial("EffortStarsPartial", evt.LevelOfEffort) @if (evt.Format is EventFormat.Individual) { (ind) } @if (evt.RegionalEvent) { (reg) } @if (evt.OnSiteActivity) { (act) }@evt.TeamSize@evt.MaxTeamCountState@student.FirstName
Unassigned Events: @unassigned
@foreach (var s in Model.Item2.OrderBy(n => n.FirstName)) { @for (var i = 0; i < 7; i++) { var h = i + 1; var evt = s.RankedEventPicks.Skip(i).FirstOrDefault(); if (evt == null) continue; } }
Name Grade TSA Year 1 2 3 4 5
@s.FirstName @s.Grade.Ordinal() @s.TsaYear.Ordinal() @evt.ShortName @Html.Partial("EffortStarsPartial", evt.LevelOfEffort) @if (evt.Format == EventFormat.Individual) { (ind) } @if (evt.RegionalEvent) { (reg) } @if (evt.OnSiteActivity) { (act) }
@foreach (var evt in Model.Item1) { var esp = Model.Item3.FirstOrDefault(i => i.Event == evt); @for (var i = 0; i < maxStudentPicks; i++) { var d = esp?.StudentPicks.Skip(i).FirstOrDefault(); } }
EventLevel of EffortIndividualRegionalOn-site ActivityTeam SizeMax Team Count
@evt.Name @Html.Partial("EffortStarsPartial", evt.LevelOfEffort) @if (evt.Format is EventFormat.Individual) { ind } @if (evt.RegionalEvent) { reg } @if (evt.OnSiteActivity) { act } @evt.TeamSize @evt.MaxTeamCountState@d?.Item1.FirstName
@functions { public void GetOrderClass(int pick) { @Html.Raw(LabelHelper.GetOrderClass(pick)) } }