public ActionResult Get(string id) { if (!Sitecore.Context.User.IsAuthenticated) { return(Redirect($"{WebUtil.GetFullUrl(Factory.GetSiteInfo("shell").LoginPage)}?returnUrl={Request.RawUrl}")); } Guid issueId; if (Guid.TryParse(id, out issueId)) { var issue = _dependencies.SitecoreServiceMaster.GetItem <IIssue>(issueId); var articleService = DependencyResolver.Current.GetService <IArticleService>(); if (issue != null) { var model = new AddIssueViewModel { Issue = issue, Articles = _dependencies.IssuesService.GetArticles(issueId), ArticleService = articleService }; return(View("~/Areas/VWB/Views/AddIssue.cshtml", model)); } } return(Redirect("/vwb")); }
public HttpResponse Add(AddIssueViewModel model, string carId) { if (this.userService.UserIsMechanic(this.User.Id)) { return(Unauthorized()); } var car = this.data.Cars .FirstOrDefault(c => c.Id == carId); var modelErrors = this.validator.ValidateIssueCreation(model); if (car == null) { modelErrors.Add($"Car with {carId} does not exist."); } if (modelErrors.Any()) { return(Error(modelErrors)); } var newIssue = new Issue { Description = model.Description, CarId = carId, IsFixed = false }; car.Issues.Add(newIssue); this.data.SaveChanges(); return(Redirect("/Cars/All")); }
public HttpResponse Add(string carId) { var model = new AddIssueViewModel { CarId = carId }; return(View(model)); }
public ICollection <string> ValidateIssueCreation(AddIssueViewModel model) { var errors = new List <string>(); if (model.Description.Length < 5) { errors.Add($"Description must be longer than 5 characters long."); } return(errors); }
public void AddIssue(AddIssueViewModel viewModel) { var issue = new Issue { Description = viewModel.Description, CarId = viewModel.CarId, IsFixed = false, }; dbContext.Issues.Add(issue); dbContext.SaveChanges(); }
public IHttpResponse Add() { var statusValues = Enum.GetValues(typeof(Status)); var priorityValues = Enum.GetValues(typeof(Priority)); var model = new AddIssueViewModel() { StatusValues = statusValues, PriorityValues = priorityValues }; return(this.View(model)); }
public HttpResponse Add(AddIssueViewModel model) { var issue = new Issue { CarId = model.CarId, Description = model.Description, }; this.data.Issues.Add(issue); this.data.SaveChanges(); return(Redirect($"/Issues/CarIssues?CarId={model.CarId}")); }
public HttpResponse Add(string carId) { if (!this.IsUserSignedIn()) { return(this.Redirect("/Users/Login")); } var model = new AddIssueViewModel() { CarId = carId, }; return(this.View(model)); }
public HttpResponse Add(AddIssueViewModel viewModel) { if (!usersService.IsMechanic(User.Id) && !carsService.IsOwner(viewModel.CarId, User.Id)) { return(Unauthorized()); } if (viewModel.Description.Length < 5) { return(Error("Description must be at least 5 characters long.")); } carsService.AddIssue(viewModel); return(Redirect($"/Issues/CarIssues?carId={viewModel.CarId}")); }
public EditIssueView(AddIssueViewModel issueView, StackLayout mainLayout) { //Xamarin.Forms.Forms.SetFlags("CollectionView_Experimental"); InitializeComponent(); this.ClassId = "EditIssueView"; //issueNumber = "Issue #165161"; //IssueNumberLbl.Text = issueNumber; Issue = issueView; view.IssueId = Issue.IssueId; commentEditor.Completed += view.EditIssueView_CommentsCommentPropChanged; PlusIconGrd.GestureRecognizers.Add(view.PlusGestureRecognizer); SaveBtn.CommandParameter = MenuPageDetail.MenuPageDetailStatic; view.MainPage = MenuPageDetail.MenuPageDetailStatic; _mainContent = mainLayout; }
public HttpResponse Add(string carId) { if (usersService.IsMechanic(User.Id) && !carsService.HasUnfixedIssue(carId)) { return(Unauthorized()); } if (!usersService.IsMechanic(User.Id) && !carsService.IsOwner(carId, User.Id)) { return(Unauthorized()); } var model = new AddIssueViewModel { CarId = carId, }; return(View(model)); }
public async Task <IActionResult> AddIssue([FromBody] AddIssueViewModel ivm) { if (ivm == null) { return(BadRequest()); } // find signed in user var user = await db.Users.FirstOrDefaultAsync(u => u.Username == User.Identity.Name); // find item type var itemType = await db.WeeklyItemTypes.FirstOrDefaultAsync(wit => wit.Name == "ISSUE"); // find component var component = await db.Components.FirstOrDefaultAsync(c => c.Name == ivm.ComponentName); Issue i = new Issue { Component = component, RepoIdentifier = ivm.RepoIdentifier, Number = ivm.IssueNumber }; await db.Issues.AddAsync(i); UserWeeklyItem item = new UserWeeklyItem { Type = itemType, Item_Id = i.Id, User = user, RowNumber = ivm.RowNumber, Date = ivm.Date }; await db.UserWeeklyItems.AddAsync(item); await db.SaveChangesAsync(); return(Ok(i)); }
public AddIssueCommand(AddIssueViewModel addVM, IIssueDataService issueDataService) { _addVM = addVM; _issueDataService = issueDataService; }