public IActionResult Create(AssignmentViewmodel data) { try { //data.Member.Email = "*****@*****.**"; if (data.Name != null && data.Description != null && data.Deadline > DateTime.Now) { data.Member = _membersService.GetMember(User.Identity.Name); _assignmentsService.AddAssignment(data); ViewData["info"] = "Assignment added"; } else { return(View()); } } catch (Exception ex) { ViewData["warning"] = "Assignment was not added!"; } var list = _assignmentsService.GetAssignments(); return(View("Index", list)); }
public IActionResult Post(string name, string assignmentType, string title, string description, string duration, string tags) { var tagList = string.IsNullOrEmpty(tags) ? new string[0] : tags.Split(","); var newAssignment = new Assignment { Name = name, AssignmentType = assignmentType, Title = title, Description = description, Duration = duration }; try { _context.Assignments.Add(newAssignment); _context.SaveChanges(); if (tagList.Length > 0) { for (int i = 0; i < tagList.Length; i++) { var tag = _context.Tags.FirstOrDefault(t => t.Name == tagList[i]); if (null == tag) { tag = new Tag { Name = tagList[i] }; _context.Tags.Add(tag); _context.SaveChanges(); } var link = new AssignmentTag { Assignment = newAssignment, AssignmentId = newAssignment.AssignmentId, Tag = tag, TagId = tag.TagId }; newAssignment.AssignmentTags.Add(link); } } _context.SaveChanges(); var vm = AssignmentViewmodel.FromAssignment(newAssignment); vm.Tags = tagList; return(Ok(vm)); } catch (Exception ex) { Trace.WriteLine(ex); return(StatusCode(500)); } }
public AssignmentViewmodel GetAssignment(Guid id) { var data = _assignmentsRepository.GetAssignment(id); AssignmentViewmodel assignment = new AssignmentViewmodel(); assignment.Id = data.Id; assignment.Name = data.Name; assignment.Description = data.Description; assignment.Deadline = data.Deadline; assignment.Member = _membersService.GetMember(data.MemberEmail); return(assignment); }
public void AddAssignment(AssignmentViewmodel assignment) { Assignment newAssignment = new Assignment() { Name = assignment.Name, Description = assignment.Description, Deadline = assignment.Deadline, MemberEmail = assignment.Member.Email }; _assignmentsRepository.AddAssignment(newAssignment); }
public IActionResult Get(int id) { var assignment = _context.Assignments.FirstOrDefault(a => a.AssignmentId == id); if (null == assignment) { return(NotFound()); } else { var vm = AssignmentViewmodel.FromAssignment(assignment); return(Ok(vm)); } }
public IActionResult Get(string tag) { // The only requirement for this endpoint is that it be able to get multiple assignments by // tag. All non-tag queries respond with a 404. if (String.IsNullOrEmpty(tag)) { return(NotFound()); } try { var assignments = from a in _context.AssignmentsByTag(tag) select AssignmentViewmodel.FromAssignment(a); return(Ok(assignments)); } catch { return(StatusCode(500)); } }