private void UpdateGitIfEnabled() { if (!AppSettings.Instance.GitEnabled) { return; } if (_gitTask != null && _gitTask.Status == TaskStatus.Running) { return; } _gitTask = Task.Run(() => { var newCommits = GitManager.Instance.CommitsOnDate(DateTime.Today); var oldCommits = DataBaseManager.Instance.GetCommits(); foreach (GitCommit gitCommit in newCommits) { // Git branch must be specified if (string.IsNullOrEmpty(gitCommit.Branch)) { continue; } if (string.IsNullOrWhiteSpace(gitCommit.Branch)) { continue; } if (gitCommit.Branch.Contains("(no branch)")) { continue; } // Branch must be unique if (oldCommits.Any(c => c.Message == gitCommit.Message)) { continue; } DataBaseManager.Instance.AddCommit(gitCommit); } DetailsCommitView.LoadCommitMsgs(); }); }
private void Init() { lb_VersionNumber.Content = Program.CurrentVersion; _detailsChanged = new System.Timers.Timer() { Interval = 2000 }; _detailsChanged.AutoReset = false; _timeTic = new System.Timers.Timer() { Interval = 60000 }; _timeTic.Elapsed += TimeTic; _timeTic.AutoReset = true; DetailsCommitView.Date = DataBaseManager.Instance.CurrentDay().Date; DetailsCommitView.DayDetails = DataBaseManager.Instance.CurrentDay().Details; DetailsCommitView.Init(); btn_SelectedUser.Content = TimeServer.SqlCurrentUser; if (AppSettings.Instance.SqlEnabled != "true") { SqlStatusBar.Visibility = Visibility.Hidden; Start_Button.Margin = new Thickness(10, 20, 10, 10); Start_Button.Height = 115; } else { SqlStatusBar.Visibility = Visibility.Visible; Start_Button.Margin = new Thickness(10, 0, 10, 40); Start_Button.Height = 85; } DataBaseManager.Instance.ConnectionChangedEvent += ConnectionChanged; DataBaseManager.Instance.UpdateChangedEvent += SqlUpdateChanged; SetStartChecked(); UpdateTime(); UpdateGitIfEnabled(); }