internal UserItemViewModel(Octokit.User user, Action <UserItemViewModel> gotoAction) { Login = user.Login; Name = user.Name; Avatar = new GitHubAvatar(user.AvatarUrl); GoToCommand = ReactiveCommand.Create(() => gotoAction?.Invoke(this)); }
public void Update(Octokit.User user) { header.Text = "GITHUB"; login.Text = user.Login; name.Text = user.Name; }
private void _Commit(Namespace @namespace, string k, Record o, Record n, User user) { var verb = "修改"; if (o is null) { verb = "添加"; } else if (n is null) { verb = "删除"; } var message = $@"{verb} {@namespace.ToString().ToLower()}: '{k}' - '{(n ?? o).Name.Raw}'. | | 原始标签 | 名称 | 描述 | 外部链接 | | --- | -------- | ---- | ---- | -------- | | 修改前 {o?.ToString(k) ?? "| | | | |"} | 修改后 {n?.ToString(k) ?? "| | | | |"}"; #if !DEBUG _RepoClient.Commit(message, user.ToGitIdentity()); _RepoClient.Push(); #endif }
private static Attachment CreateCard(Octokit.User profile) => new ThumbnailCard() { Title = profile.Login, Images = new[] { new CardImage(url: profile.AvatarUrl) }, Buttons = new[] { new CardAction(ActionTypes.OpenUrl, @"Click to view", value: profile.HtmlUrl) } }.ToAttachment();
public User(Octokit.User user, bool valid) : base(user, valid) { SiteAdmin = user.SiteAdmin; Suspended = user.Suspended; SuspendedAt = user.SuspendedAt.HasValue ? user.SuspendedAt.Value.DateTime : DateTime.MinValue; UpdatedAt = user.UpdatedAt.DateTime; }
internal IssueAssigneeItemViewModel(Octokit.User user) { Name = user.Login; Avatar = new GitHubAvatar(user.AvatarUrl); GoToCommand = ReactiveCommand.Create() .WithSubscription(_ => IsSelected = !IsSelected); }
public GitHubAccount(Octokit.User user = null) { if (user != null) { Update(user); } }
async void OnSettingsClick(object sender, EventArgs e) { bool showing = ContentView.Settings.Toggle(); if (showing) { if (HubClient.Instance.IsAuthenticated) { ContentView.Settings.SettingsContent.GithubInfo.IsVisible = true; ContentView.Settings.SettingsContent.ShowLoading(); Octokit.User user = await HubClient.Instance.GetCurrentUser(); ContentView.Settings.SettingsContent.GithubInfo.Update(user); ContentView.Settings.SettingsContent.HideLoading(); Stream stream = await HubClient.Instance.GetUserAvatar(user.AvatarUrl); ContentView.Settings.SettingsContent.GithubInfo.Update(stream); } else { ContentView.Settings.SettingsContent.GithubInfo.IsVisible = false; Console.WriteLine("Github not authenticated"); } #if __IOS__ // TODO Get real drive information ContentView.Settings.SettingsContent.DriveInfo.Update("Nuti Tab", "*****@*****.**", "icon_avatar_template.png"); #elif __ANDROID__ #endif } }
async Task LoadConnections(ObservableCollection <IConnection> result) { try { foreach (var c in await cache.Load()) { var client = CreateClient(c.HostAddress); User user = null; Exception error = null; try { user = await loginManager.LoginFromCache(c.HostAddress, client); } catch (Exception e) { error = e; } var connection = new Connection(c.HostAddress, c.UserName, user, error); result.Add(connection); await usageTracker.IncrementCounter(x => x.NumberOfLogins); } } finally { loaded.SetResult(null); } }
public ActionResult <Record> Put( [SingleNamespace] Namespace @namespace, [AcceptableRaw] string raw, [AcceptableRecord, FromBody] Record record, [FromHeader] User user) { var dic = _Database[@namespace]; var replaced = dic.Find(raw); if (replaced is null) { return(NotFound(new { record = "Record with same 'raw' is not found in the wiki, use POST to insert the record." })); } dic.AddOrReplace(raw, record); dic.Save(); if (record.ToString(raw) == replaced.ToString(raw)) { return(NoContent()); } _Commit(@namespace, raw, replaced, record, user); return(Ok(record)); }
public static User ToModel([NotNull] this Octokit.User user) => new User { DisplayName = user.Name, Login = user.Login, InfoUrl = user.HtmlUrl };
public static GitHubUser ToGitHubUser(this Octokit.User user) { return(new GitHubUser() { Name = user.Name, Login = user.Login, }); }
public UserModel FetchUser(string login) { Octokit.User o_user = GitHubAPI.Instance.User_GetByLogin(login); if (o_user == null || o_user.Type != Octokit.AccountType.User) { return(null); } User user = new User(o_user, true); DatabaseManagerWeb.Instance.Account_InsertOrUpdate(user); List <RepositoryModel> repoModels = null; IReadOnlyList <Octokit.Repository> o_repos = GitHubAPI.Instance.Repositories_GetAllForUser(login, 1); if (o_repos != null) { List <Repository> repos = o_repos.Select(e => new Repository(e, 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/user?login={login}" }).ToList(); } int totalStar = o_repos.Select(e => e.StargazersCount).Sum(); int totalFork = o_repos.Select(e => e.ForksCount).Sum(); var userModel = new UserModel { AvatarUrl = user.AvatarUrl, Name = user.Login, Star = totalStar, Fork = totalFork, Follower = user.Followers, Following = user.Following, Email = user.Email, Bio = user.Bio, Company = user.Company, Location = user.Location, BlogUrl = user.BlogUrl, HtmlUrl = user.HtmlUrl, Reference = $"/account/user?login={user.Login}", CreatedAt = user.CreatedAt, FetchedAt = user.FetchedAt, RepositoryModels = repoModels ?? new List <RepositoryModel>(), }; return(userModel); }
public UserViewController(string username, Octokit.User user = null) : this() { ViewModel = new UserViewModel(); ViewModel.Init(new UserViewModel.NavObject { Username = username }); ViewModel.User = user; }
public Connection( HostAddress hostAddress, Octokit.User user, ScopesCollection scopes) { HostAddress = hostAddress; this.user = user; this.scopes = scopes; isLoggedIn = true; }
public Connection( HostAddress hostAddress, string username, Octokit.User user) { HostAddress = hostAddress; this.username = username; this.user = user; isLoggedIn = true; }
public Connection( HostAddress hostAddress, string userName, Octokit.User user, Exception connectionError) { HostAddress = hostAddress; Username = userName; User = user; ConnectionError = connectionError; }
private string GetUserName(Octokit.GitHubClient client, Octokit.User u) { var login = u.Login; if (!_userCache.ContainsKey(login)) { _userCache.Add(login, string.IsNullOrEmpty(u.Name) ? client.User.Get(login).Result : u); } var user = _userCache[login]; if (user != null) { return(user.Name); } return(null); }
public ActionResult <Record> Delete( [SingleNamespace] Namespace @namespace, [AcceptableRaw] string raw, [FromHeader] User user) { var dic = _Database[@namespace]; var found = dic.Find(raw); if (found is null) { return(NotFound()); } dic.Remove(raw, true); dic.Save(); _Commit(@namespace, raw, found, null, user); return(NoContent()); }
private async Task <Octokit.Issue> UpdateIssue(Octokit.User assignee, Octokit.Milestone milestone, IEnumerable <Octokit.Label> labels) { var update = new Octokit.IssueUpdate { Assignee = assignee?.Login, Milestone = milestone?.Number }; update.ClearLabels(); foreach (var l in (labels ?? Enumerable.Empty <Octokit.Label>())) { update.AddLabel(l.Name); } using (_alertDialogFactory.Activate("Updating...")) { Issue = await _applicationService.GitHubClient.Issue.Update(RepositoryOwner, RepositoryName, Id, update); InternalEvents.Reset(await RetrieveEvents()); return(Issue); } }
public ActionResult <Record> Post( [SingleNamespace] Namespace @namespace, [AcceptableRaw] string raw, [AcceptableRecord, FromBody] Record record, [FromHeader] User user) { var dic = _Database[@namespace]; var replaced = dic.Find(raw); if (replaced != null) { return(Conflict(new { record = "Record with same 'raw' is in the wiki, use PUT to update the record." })); } dic.AddOrReplace(raw, record); dic.Save(); _Commit(@namespace, raw, null, record, user); return(Created($"/api/database/{@namespace.ToString().ToLower()}/{raw}", record)); }
public static Account ParseAccount(Octokit.User user, bool valid) { if (user.Type.HasValue) { switch (user.Type.Value) { case Octokit.AccountType.User: return(new User(user, valid)); case Octokit.AccountType.Organization: return(new Organization(user, valid)); case Octokit.AccountType.Bot: default: Console.WriteLine($"관리되지 않는 {nameof(Octokit.AccountType)}입니다, {user.Type.Value}"); return(new User(user, valid)); } } else { Console.WriteLine($"{nameof(Octokit.AccountType)}이 null입니다, {nameof(user.Login)}: {user.Login}"); return(new User(user, valid)); } }
async void Connect(string githubUrl, string githubToken, string todoistToken) { m_client = new Octokit.GitHubClient(new Octokit.ProductHeaderValue("github-todoist"), new Uri(githubUrl)); m_client.Credentials = new Octokit.Credentials(githubToken); m_currentUser = await m_client.User.Current(); GithubUserName.Content = String.Format("Connected: {0}", m_currentUser.Login); GithubUserName.Foreground = Brushes.Green; var allRepos = await m_client.Repository.GetAllForCurrent(); Repository.Items.Clear(); foreach (var repo in allRepos) { var repoItem = new RepositoryItem() { name = repo.FullName, id = repo.Id }; Repository.Items.Add(repoItem); } m_todoistClient = new Todoist.Net.TodoistClient(todoistToken); var projects = await m_todoistClient.Projects.GetAsync(); TodoistProjects.Items.Clear(); foreach (var project in projects) { var todoistItem = new TodoistItem() { name = project.Name, id = project.Id }; TodoistProjects.Items.Add(todoistItem); } }
public GhUser(Octokit.User source) { BasicMemberMapping(source, this); }
public UserViewController(Octokit.User user) : this(user.Login, user) { }
public void Update(Octokit.User user) { Id = user.Id.ToString(); DisplayName = user.Name; GitHubUser = user; }
private string GitHubUser2ClubHouseUser(Octokit.User githubUser) { return(GitHubUser2ClubHouseUser(githubUser.Login)); }
public User(Octokit.User user) { MainUser = user; Id = user.Id; Login = user.Login; }
internal UserItemViewModel(Octokit.User user, Action <UserItemViewModel> gotoAction) { User = user; GoToCommand = ReactiveCommand.Create(() => gotoAction?.Invoke(this)); }
public UserViewModel Init(string username, Octokit.User user = null) { Username = username; User = user; return(this); }