@page @using Microsoft.AspNetCore.Http @using bahnplan.web.database @using System.Linq @model IndexModel @{ ViewData["Title"] = "Home"; }
@if (HttpContext.Session.GetString("authorized") != "true") {

Welcome

Please log in to see your personal plan.

} else {

Welcome, @Model.AuthorizedUser.Username

Here are your planned trips.

@{ await using var db = new Database.DbConn(); var trips = db.Trips.Where(p => p.UserId == Model.AuthorizedUser.UserId).ToList(); foreach (var trip in trips.OrderBy(p => db.Legs.First(a => a.TripId == p.TripId).ArrTime)) { var legs = db.Legs.Where(p => p.TripId == trip.TripId).OrderBy(p => p.DepTime).ToList(); var dates = DateTime.Parse(legs.First().DepTime).Date == DateTime.Parse(legs.Last().DepTime).Date ? legs.First().DepTime.Substring(0, 10) : legs.First().DepTime.Substring(0, 10) + "
" + legs.Last().DepTime.Substring(0, 10); } }
Date Origin Via Destination Actions Danger zone
@Html.Raw(dates) @Html.Raw(legs.First().DepStation.PadRight(30, ' ').Substring(0, 30).Replace(" ", " ")) @((from index in from leg in legs where leg.TrainType == "placeholder" select legs.IndexOf(leg) select legs[index - 1].ArrStation).ToList().DefaultIfEmpty("-").Aggregate((s1, s2) => $"{s1}, {s2}")) @Html.Raw(legs.Last().ArrStation.PadRight(30, ' ').Substring(0, 30).Replace(" ", " ")) View Delete Trip

Add trip from ticket



Add trip from oeffisear.ch



}