profileShare

rasmusjy / splitapp-backend-microservices

Read-only snapshot

No repository description.

main default branch 501 files Expires Sep 13, 2026, 9:06 AM
Edit.cshtml 4,488 bytes
1 @model SplitApp.WebApp.Application.DTO.ExpenseBllDto
2
3 @{
4 ViewData["Title"] = Localizer["Edit Expense"];
5 var tripId = (Guid)ViewData["TripId"]!;
6 }
7
8 <div class="row justify-content-center">
9 <div class="col-md-8 col-lg-6">
10 <div class="sa-card-static sa-card-accent sa-card-accent-primary">
11 <div class="sa-card-body" style="padding: var(--sa-space-8);">
12 <div class="text-center mb-4">
13 <div style="font-size: 2rem; color: var(--sa-primary); margin-bottom: var(--sa-space-2);">
14 <i class="bi bi-pencil-square"></i>
15 </div>
16 <h1 style="font-size: 1.5rem; margin-bottom: 4px;">@Localizer["Edit Expense"]</h1>
17 </div>
18
19 <form asp-action="Edit" data-sa-loading>
20 <div asp-validation-summary="ModelOnly" class="text-danger"></div>
21 <input type="hidden" asp-for="Id" />
22 <input type="hidden" asp-for="TripId" />
23
24 <!-- Amount -->
25 <div class="text-center mb-4">
26 <label asp-for="Amount" class="form-label" style="text-align: center; display: block;">@Localizer["Amount"]</label>
27 <input asp-for="Amount" type="number" step="0.01" min="0.01"
28 class="form-control sa-amount-input" placeholder="0.00" />
29 <span asp-validation-for="Amount" class="text-danger"></span>
30 </div>
31
32 <div class="row mb-3">
33 <div class="col-md-6 mb-3 mb-md-0">
34 <label asp-for="PaidByUserId" class="form-label">@Localizer["Who Paid"]</label>
35 <select asp-for="PaidByUserId" asp-items="@((SelectList)ViewData["PaidByUserId"]!)" class="form-select"></select>
36 <span asp-validation-for="PaidByUserId" class="text-danger"></span>
37 </div>
38 <div class="col-md-6">
39 <label asp-for="ExpenseDate" class="form-label">@Localizer["Date"]</label>
40 <input asp-for="ExpenseDate" type="date" class="form-control" />
41 </div>
42 </div>
43
44 <div class="mb-3">
45 <label asp-for="Description" class="form-label">@Localizer["Description"]</label>
46 <input asp-for="Description" class="form-control" />
47 <span asp-validation-for="Description" class="text-danger"></span>
48 </div>
49
50 <div class="row mb-3">
51 <div class="col-md-6 mb-3 mb-md-0">
52 <label asp-for="BudgetCategoryId" class="form-label">@Localizer["Category"]</label>
53 <select asp-for="BudgetCategoryId" asp-items="@((SelectList)ViewData["BudgetCategoryId"]!)" class="form-select">
54 <option value="">@Localizer["No category"]</option>
55 </select>
56 </div>
57 <div class="col-md-6">
58 <label asp-for="CurrencyId" class="form-label">@Localizer["Currency"]</label>
59 <select asp-for="CurrencyId" asp-items="@((SelectList)ViewData["CurrencyId"]!)" class="form-select">
60 <option value="">@Localizer["Trip default"]</option>
61 </select>
62 </div>
63 </div>
64
65 <div class="mb-4">
66 <label asp-for="SplitMethod" class="form-label">@Localizer["Split Method"]</label>
67 <select asp-for="SplitMethod" asp-items="@((SelectList)ViewData["SplitMethods"]!)" class="form-select"></select>
68 </div>
69
70 <div class="d-flex gap-3">
71 <button type="submit" class="sa-btn sa-btn-primary flex-grow-1">
72 <i class="bi bi-check-lg"></i> @Localizer["Save"]
73 </button>
74 <a asp-action="Index" asp-route-tripId="@tripId" class="sa-btn sa-btn-ghost">@Localizer["Cancel"]</a>
75 </div>
76 </form>
77 </div>
78 </div>
79 </div>
80 </div>
81
82 @section Scripts {
83 <partial name="_ValidationScriptsPartial" />
84 }
85