diff --git a/WebInterface/Controllers/HomeController.cs b/WebInterface/Controllers/HomeController.cs index e79aa22..afdf564 100644 --- a/WebInterface/Controllers/HomeController.cs +++ b/WebInterface/Controllers/HomeController.cs @@ -27,7 +27,8 @@ public class HomeController : Controller sb.Append("{text: \"channels\", nodes: ["); var first = true; - foreach (var topLevelChannel in _db.Channels.Where(x => x.ParentChannel == null)) + var topLevelChannels = _db.Channels.Where(x => x.ParentChannel == null); + foreach (var topLevelChannel in topLevelChannels) { if (first) { @@ -66,7 +67,7 @@ public class HomeController : Controller } if (allAccounts.Any()) { - sb.Append("{text: \"orphaned accounts\", nodes: ["); + sb.Append("{text: \"channelless accounts\", nodes: ["); first = true; foreach (var acc in allAccounts) { @@ -82,6 +83,31 @@ public class HomeController : Controller } sb.Append("]}"); } + var users = _db.Users.ToList(); + if(topLevelChannels.Any() && users.Any()) + { + sb.Append(','); + } + if(users.Any()) + { + sb.Append("{text: \"users\", nodes: ["); + first=true; + //refresh list; we'll be knocking them out again in serializeUser + allAccounts = _db.Accounts.ToList(); + foreach(var user in users) + { + if (first) + { + first = false; + } + else + { + sb.Append(','); + } + serializeUser(ref sb, ref allAccounts, user); + } + sb.Append("]}"); + } sb.Append("]"); ViewData.Add("treeString", sb.ToString()); return View("Index"); @@ -146,7 +172,7 @@ public class HomeController : Controller sb.Append($"{{\"text\": \"{currentUser.DisplayName}\", "); var ownedAccounts = allAccounts.Where(a => a.IsUser == currentUser); sb.Append("nodes: ["); - sb.Append($"{{\"text\": \"owned accounts:\", \"nodes\": ["); + sb.Append($"{{\"text\": \"owned accounts:\", \"expanded\":true, \"nodes\": ["); if (ownedAccounts != null) { foreach (var acc in ownedAccounts) diff --git a/WebInterface/Views/Home/Index.cshtml b/WebInterface/Views/Home/Index.cshtml index f7747c4..5c9d513 100644 --- a/WebInterface/Views/Home/Index.cshtml +++ b/WebInterface/Views/Home/Index.cshtml @@ -7,51 +7,7 @@ tree above. @section Scripts{