public ActionResult UserChart(int students, int clients, int admins, int advisors, int mng) { UserRatio ur = new UserRatio(); ur.Students = students; ur.Clients = clients; ur.Admins = admins; ur.Advisors = advisors; ur.Management = mng; return(View(ur)); }
public ActionResult UsersReports() { List <User> Users = _uas.GetUsers(); UserRatio ur = new UserRatio(); ur.Students = Users.FindAll(u => u.Type == AccountType.Student).Count(); ur.Clients = Users.FindAll(u => u.Type == AccountType.Client).Count(); ur.Admins = Users.FindAll(u => u.Type == AccountType.Admin).Count(); ur.Advisors = Users.FindAll(u => u.Type == AccountType.Coop_Advisor).Count(); ur.Management = Users.FindAll(u => u.Type == AccountType.Management).Count(); ur.Total = Users.Count(); ur.ClientPct = ur.GetClientRatio(); ur.AdminPct = ur.GetAdminRatio(); ur.AdvisorPct = ur.GetAdvRatio(); ur.MngPct = ur.GetMngRatio(); ur.StudentPct = ur.GetStudentRatio(); return(View(ur)); }
public static UserRatio GetRatio(HtmlDocument doc) { var nodes = doc.DocumentNode.SelectNodes("//li[@class='submenu open']"); var node = nodes.FirstOrDefault(n => n.InnerText.Contains("Ratio")); if (node == null) { return(null); } var userRation = new UserRatio(); var split = node.InnerText.Split(new[] { '\n', }, StringSplitOptions.RemoveEmptyEntries); var infosplit = split[0].Split(new[] { ' ', }, StringSplitOptions.RemoveEmptyEntries); userRation.Ration = double.Parse(infosplit[2], CultureInfo.InvariantCulture); userRation.Up = infosplit[3]; userRation.Down = split[1]; userRation.Actif = split[2].Contains("Actif"); return(userRation); }