public HackersModule(IHackerService hackerService) : base("/hackers") { Get["/"] = _ => { var model = new { Hackers = hackerService.GetHackers() }; return(View["Views/Overview.cshtml", model]); }; Get["/add"] = _ => { return(View["Views/Add.cshtml"]); }; Post["/add"] = _ => { var hacker = this.Bind <Hacker>(); hacker.Available = true; hackerService.Add(hacker); return(Response.AsRedirect("~/hackers/")); }; Get["/Edit/{id}"] = parameters => { var hacker = hackerService.GetHacker(parameters.id); return(View["Views/Edit.cshtml", hacker]); }; Post["/edit"] = _ => { var hacker = this.Bind <Hacker>(); hackerService.Update(hacker); return(Response.AsRedirect("~/hackers/")); }; Post["/updateavailablilty"] = parameters => { int id = Request.Form["id"]; hackerService.ToggleAvailability(id); return(HttpStatusCode.NoContent); }; }
public void ToggleAvailability(int id) { _inner.ToggleAvailability(id); _logger.Information("ToggleAvailability called with {@id}", id); }