Skip to content
This repository was archived by the owner on May 11, 2023. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion CodingEventsDemo/CodingEventsDemo.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@


<ItemGroup>
<Folder Include="Views\Events\" />
<Folder Include="Data\" />
</ItemGroup>
</Project>
26 changes: 24 additions & 2 deletions CodingEventsDemo/Controllers/EventsController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ public class EventsController : Controller
// GET: /<controller>/
public IActionResult Index()
{
ViewBag.events = EventData.GetAll();
List<Event> events = new List<Event>(EventData.GetAll());

return View();
return View(events);
}

public IActionResult Add()
Expand Down Expand Up @@ -53,5 +53,27 @@ public IActionResult Delete(int[] eventIds)

return Redirect("/Events");
}

[HttpGet]
[Route("Events/Edit/{eventId}")]
public IActionResult Edit(int eventId)
{
//controller code will go here
Event editingEvent = EventData.GetById(eventId);
ViewBag.eventToEdit = editingEvent;
ViewBag.title = "Edit Event " + editingEvent.Name + "(id = " + editingEvent.Id + ")";
return View();
}

[HttpPost]
[Route("Events/Edit")]
public IActionResult SubmitEditEventForm(int eventId, string name, string desc)
{
//controller code will go here
Event editingEvent = EventData.GetById(eventId);
editingEvent.Name = name;
editingEvent.Description = desc;
return Redirect("/Events");
}
}
}
2 changes: 2 additions & 0 deletions CodingEventsDemo/Models/Event.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ public class Event
{
public string Name { get; set; }

//[FromForm(Name="desc")]
public string Description { get; set; }

public int Id { get; }
Expand All @@ -22,6 +23,7 @@ public Event(string name, string description) : this()
{
Name = name;
Description = description;

}

public override string ToString()
Expand Down
15 changes: 9 additions & 6 deletions CodingEventsDemo/Views/Events/Add.cshtml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,14 @@
<form method="post">
<div class="form-group">
<label for="name">Name</label>
<input name="name" type="text" />
<input type ="text" name="name" class="form-control">
</div>
<div>
<label>
Description
<input type="text" name="description" class="form-control"/>
</label>

</div>
<div class="form-group">
<label for="description">Description</label>
<input name="description" />
</div>
<input type="submit" value="Add Event" />
<input type="submit" value="Add Event" />
</form>
34 changes: 34 additions & 0 deletions CodingEventsDemo/Views/Events/Edit.cshtml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
@*<h1>@ViewBag.title</h1>

<form method="post" action="/events/edit">
<div class="form-group">
<label>
Name
<input type ="text" name="name" value="@ViewBag.eventToEdit.Name"/>
</label>
<label>
Description
<input type="text" name="description" value="@ViewBag.eventToEdit.Description"/>
</label>

</div>
<input type="hidden" value="@ViewBag.eventToEdit.Id" name="eventId">
<input type="submit" value="Edit Event" />

</form>*@

<h1>@ViewBag.title</h1>

<form method="post" action="/events/edit">
<div class="form-group">
<label for="name">Name</label>
<input name="name" type="text" value="@ViewBag.eventToEdit.Name"/>
</div>
<div class="form-group">
<label for="description">Description</label>
<input name="description" type="text" value="@ViewBag.eventToEdit.Description" />
</div>
<input type="hidden" value="@ViewBag.eventToEdit.Id" name="eventId">
<input type="submit" value="Edit Event" />

</form>
12 changes: 9 additions & 3 deletions CodingEventsDemo/Views/Events/Index.cshtml
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
<h1>Coding Events</h1>
@using CodingEventsDemo.Models;

@model List<Event>

<h1>Coding Events</h1>

<p>
<a asp-controller="Events" asp-action="Add">Add Event</a>
Expand All @@ -9,7 +13,7 @@
<a asp-controller="Events" asp-action="Delete">Delete Event</a>
</p>

@if (ViewBag.events.Count == 0)
@if (Model.Count == 0)
{
<p>No events yet!</p>
}
Expand All @@ -27,12 +31,14 @@ else
Description
</th>
</tr>
@foreach (var evt in ViewBag.events)
@foreach (var evt in Model)
{
<tr>
<td>@evt.Id</td>
<td>@evt.Name</td>
<td>@evt.Description</td>
<td>@evt.Id</td>
<td><a asp-controller="Events" asp-action="Edit" asp-route-id="@evt.Id">Edit Event</a></td>
</tr>
}
</table>
Expand Down