Skip to content

Commit

Permalink
Added language summary
Browse files Browse the repository at this point in the history
  • Loading branch information
samsmithnz committed Jan 2, 2023
1 parent 62ae938 commit 34032ca
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 19 deletions.
19 changes: 16 additions & 3 deletions src/RepoGovernance.Web/Controllers/HomeController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,26 @@ public async Task<IActionResult> Index()
{
repoLanguagesDictonary.Add(repoLanguage.Name, repoLanguage.Total);
}
if (repoLanguages.Find(x => x.Name == repoLanguage.Name) == null)
{
repoLanguages.Add(repoLanguage);
}
}
}
foreach (KeyValuePair<string, int> sortedLanguage in repoLanguagesDictonary.OrderByDescending(x => x.Value))
{
RepoLanguage? repoLanguage = repoLanguages.Find(x => x.Name == sortedLanguage.Key);
if (repoLanguage != null)
{
repoLanguage.Total = sortedLanguage.Value;
repoLanguage.Percent = (decimal)repoLanguage.Total / (decimal)total;
}
}
}

SummaryItemsIndex summaryItemsIndex = new()
{
SummaryItems = summaryItems,
SummaryRepoLanguages = repoLanguagesDictonary.OrderByDescending(x => x.Value),
SummaryRepoLanguagesTotal = total
SummaryRepoLanguages = repoLanguages.OrderByDescending(x => x.Total).ToList()
};
return View(summaryItemsIndex);
}
Expand Down
3 changes: 1 addition & 2 deletions src/RepoGovernance.Web/Models/SummaryItemsIndex.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ namespace RepoGovernance.Web.Models
public class SummaryItemsIndex
{
public List<SummaryItem> SummaryItems { get; set; }
public IOrderedEnumerable<KeyValuePair<string, int>> SummaryRepoLanguages { get; set; }
public int SummaryRepoLanguagesTotal { get; set; }
public List<RepoLanguage> SummaryRepoLanguages { get; set; }
}
}
18 changes: 4 additions & 14 deletions src/RepoGovernance.Web/Views/Home/Index.cshtml
Original file line number Diff line number Diff line change
Expand Up @@ -39,22 +39,12 @@
</div>
<div class="col-md-6">
<div style="font-size:14px;">
@{
int i = 0;
}
@foreach (KeyValuePair<string, int> item in Model.SummaryRepoLanguages)
@for (int i = 0; (Model.SummaryRepoLanguages.Count < 5 && i < Model.SummaryRepoLanguages.Count) || i < 5; i++)
{
double percent = (double)item.Value / (double)Model.SummaryRepoLanguagesTotal;
@*<span class="box" style="background-color: @item.Color;">&nbsp;&nbsp;&nbsp;&nbsp;</span>*@
<span>@item.Key: @percent.ToString("0%")</span>
RepoLanguage item = Model.SummaryRepoLanguages[i];
<span class="box" style="background-color: @item.Color;">&nbsp;&nbsp;&nbsp;&nbsp;</span>
<span>@item.Name: @item.Percent.ToString("0%")</span>
<br />
{
i++;
if (i >= 5)
{
break;
}
}
}
</div>
</div>
Expand Down

0 comments on commit 34032ca

Please sign in to comment.