public async System.Threading.Tasks.Task <ActionResult> Issues()
        {
            SessionInfo sessionInfo = (SessionInfo)HttpContext.Session["SessionInfo"];

            if (!sessionInfo.Connected)
            {
                return(RedirectToAction("ConnectToProject", "Project"));
            }
            else
            {
                //Preparing model and metrics object
                GitHubMetrics ghMetrics = new GitHubMetrics(sessionInfo.ProjectDetails.GitHubProjectName, sessionInfo.ProjectDetails.GitHubProjectOwner, sessionInfo.ProjectDetails.GitHubToken);
                IssuesModel   model     = new IssuesModel();

                model.AverageIssueClosingTime = await ghMetrics.CalculateAverageIssueClosingTimeAsync();

                model.ClosedIssues = await ghMetrics.CountClosedIssuesAsync();

                model.OpenedIssues = await ghMetrics.CountOpenedIssuesAsync();

                model.EstimatedTimeToCloseAllIssues = await ghMetrics.CalculateEstimatedTimeToCloseAllIssuesAsync();

                model.ExpectedDateForClosingAllIssues = DateTime.Now + model.EstimatedTimeToCloseAllIssues;
                model.ClosedIssuesForMonth            = await ghMetrics.CountClosedIssuesForLastSixMonthsAsync();

                model.UserWithLargestIssuesClosed = null;

                return(View(model));
            }
        }