public async Task <IActionResult> Index()
        {
            ClaimsPrincipal currentUser = this.User;

            if (currentUser.FindFirst(ClaimTypes.NameIdentifier) != null)
            {
                var currentUserID = currentUser.FindFirst(ClaimTypes.NameIdentifier).Value;
                ViewBag.userId = currentUserID;
            }
            else
            {
                ViewBag.userId = "0";
            }

            LanguageImages c1 = new LanguageImages();

            ViewBag.projectImage = c1.getJava();

            // Pass Tickets through ViewBag
            // TODO: Convert to TicketList or something better....
            ViewBag.Tickets = await _context.Tickets.ToListAsync();

            List <Tickets> recentTickets = new List <Tickets>();

            recentTickets = getRecentTickets(ViewBag.Tickets);

            int i = 0;

            foreach (var item in recentTickets)
            {
                var Project = await _context.Projects.FindAsync(item.ProjectId);

                if (Project != null)
                {
                    // Do nothing?


                    // TEMPORARY SOLUTION. CONVERT LATER
                    switch (Project.projectLanguage)
                    {
                    case "C":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getC();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getC();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getC();
                        }
                        break;

                    case "CSharp":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getCsharp();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getCsharp();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getCsharp();
                        }
                        break;

                    case "Go":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getGo();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getGo();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getGo();
                        }
                        break;

                    case "Java":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getJava();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getJava();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getJava();
                        }
                        break;

                    case "JavaScipt":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getJavaScript();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getJavaScript();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getJavaScript();
                        }
                        break;

                    case "PHP":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getPHP();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getPHP();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getPHP();
                        }
                        break;

                    case "Python":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getPython();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getPython();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getPython();
                        }
                        break;

                    case "Ruby":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getRuby();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getRuby();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getRuby();
                        }
                        break;

                    case "SQL":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getSQL();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getSQL();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getSQL();
                        }
                        break;

                    case "Swift":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getSwift();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getSwift();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getSwift();
                        }
                        break;

                    case "TypeScript":
                        if (i == 0)
                        {
                            ViewBag.ticket1Image = c1.getTypeScript();
                        }
                        else if (i == 1)
                        {
                            ViewBag.ticket2Image = c1.getTypeScript();
                        }
                        else if (i == 2)
                        {
                            ViewBag.ticket3Image = c1.getTypeScript();
                        }
                        break;
                    }
                }

                if (i == 0)
                {
                    if (item != null)
                    {
                        ViewBag.ticket1 = item;
                    }
                    else
                    {
                        ViewBag.ticket3 = new Tickets();
                    }
                }
                else if (i == 1)
                {
                    if (item != null)
                    {
                        ViewBag.ticket2 = item;
                    }
                    else
                    {
                        ViewBag.ticket3 = new Tickets();
                    }
                }
                else if (i == 2)
                {
                    if (item != null)
                    {
                        ViewBag.ticket3 = item;
                    }
                    else
                    {
                        ViewBag.ticket3 = new Tickets();
                    }
                }
                i++;
            }


            return(View(await _context.Projects.ToListAsync()));
        }
Beispiel #2
0
        public async Task <IActionResult> Ticket(int?id)
        {
            // Find the correct ticket
            if (id == null)
            {
                return(NotFound());
            }

            var ticket = await _context.Tickets.FirstOrDefaultAsync(m => m.TicketId == id);

            if (ticket == null)
            {
                return(NotFound());
            }


            // Set color based on the ticket's priority
            String alertColor;

            switch ((int)ticket.TicketPriority)
            {
            case 0:  alertColor = "alert-success";
                break;

            case 1:  alertColor = "alert-warning";
                break;

            case 2:  alertColor = "alert-danger";
                break;

            case 3:  alertColor = "alert-primary";
                break;

            default: alertColor = "alert-secondary";
                break;
            }

            ViewBag.alertColor = alertColor;

            // Display card with project associated with the ticket
            var project = await _context.Projects.FindAsync(ticket.ProjectId);

            if (project == null)
            {
                return(NotFound());
            }

            ViewBag.projectName = project.ProjectName;

            LanguageImages c1 = new LanguageImages();

            // TEMPORARY SOLUTION. CONVERT LATER
            switch (project.projectLanguage)
            {
            case "C":
                ViewBag.ProjectImage = c1.getC();
                break;

            case "CSharp":
                ViewBag.ProjectImage = c1.getCsharp();
                break;

            case "Go":
                ViewBag.ProjectImage = c1.getGo();
                break;

            case "Java":
                ViewBag.ProjectImage = c1.getJava();
                break;

            case "JavaScipt":
                ViewBag.ProjectImage = c1.getJavaScript();
                break;

            case "PHP":
                ViewBag.ProjectImage = c1.getPHP();
                break;

            case "Python":
                ViewBag.ProjectImage = c1.getPython();
                break;

            case "Ruby":
                ViewBag.ProjectImage = c1.getRuby();
                break;

            case "SQL":
                ViewBag.ProjectImage = c1.getSQL();
                break;

            case "Swift":
                ViewBag.ProjectImage = c1.getSwift();
                break;

            case "TypeScript":
                ViewBag.ProjectImage = c1.getTypeScript();
                break;

            default:
                break;
            }


            return(View(ticket));
        }