public OrganizationModel FetchOrganization(string login) { Octokit.Organization o_org = GitHubAPI.Instance.Organization_GetByLogin(login); if (o_org == null || o_org.Type != Octokit.AccountType.Organization) { return(null); } Organization org = new Organization(o_org, true); DatabaseManagerWeb.Instance.Account_InsertOrUpdate(org); List <RepositoryModel> repoModels = null; IReadOnlyList <Octokit.Repository> o_repos = GitHubAPI.Instance.Repositories_GetAllForOrg(login, 1); if (o_repos != null) { List <Repository> repos = o_repos.Select(o_repo => new Repository(o_repo, true)).ToList(); DatabaseManagerWeb.Instance.Repository_InsertOrUpdate(repos); repoModels = repos.Select(repo => new RepositoryModel { Name = repo.Name, OwnerName = login, Description = repo.Description, Language = repo.Language, Star = repo.StargazersCount, Fork = repo.ForksCount, HtmlUrl = repo.HtmlUrl, Reference = $"/account/organization?login={login}" }).ToList(); } int totalStar = o_repos.Select(e => e.StargazersCount).Sum(); int totalFork = o_repos.Select(e => e.ForksCount).Sum(); var orgModel = new OrganizationModel { AvatarUrl = org.AvatarUrl, Name = org.Login, Star = totalStar, Fork = totalFork, Email = org.Email, Location = org.Location, BlogUrl = org.BlogUrl, HtmlUrl = org.HtmlUrl, Reference = $"/account/organization?login={org.Login}", CreatedAt = org.CreatedAt, FetchedAt = org.FetchedAt, RepositoryModels = repoModels ?? new List <RepositoryModel>(), }; return(orgModel); }
public OrganizationViewModel Init(string organizationName, Octokit.Organization organization = null) { Username = organizationName; Organization = organization; return(this); }
public static GhOrganization MapOrganization(Octokit.Organization org) { return new GhOrganization(org); }
public GhOrganization(Octokit.Organization org) { BasicMemberMapping(org, this); }