diff --git a/cicm_web/Models/News.cs b/cicm_web/Models/News.cs index 453931c1..74db2cf4 100644 --- a/cicm_web/Models/News.cs +++ b/cicm_web/Models/News.cs @@ -44,6 +44,8 @@ namespace cicm_web.Models public DateTime Date; /// URL of image public string Image; + /// Subtext + public string SubText; /// URL of target view, if applicable public string TargetView; /// Text @@ -69,9 +71,14 @@ namespace cicm_web.Models static News TransformItem(Cicm.Database.Schemas.News dbItem) { - string imageUrl; - string text; - string targetView; + string imageUrl; + string text; + string targetView; + string subtext; + Computer computer; + OwnComputer owncomputer; + Console console; + OwnConsole ownconsole; switch(dbItem.Type) { @@ -79,46 +86,63 @@ namespace cicm_web.Models text = "New computer added to the database."; imageUrl = "assets/photos/computers/"; targetView = "computer"; + computer = Computer.GetItem(dbItem.AffectedId); + subtext = $"{computer.Company.Name} - {computer.Model}"; break; case NewsType.NewConsoleInDb: text = "New videoconsole added to the database."; imageUrl = "assets/photos/consoles/"; targetView = "console"; + console = Console.GetItem(dbItem.AffectedId); + subtext = $"{console.Company.Name} - {console.Name}"; break; case NewsType.NewComputerInCollection: - text = "New computer added to the museum's collection."; - imageUrl = "assets/photos/computers/"; - targetView = "collection_computer"; + text = "New computer added to the museum's collection."; + imageUrl = "assets/photos/computers/"; + targetView = "collection_computer"; + owncomputer = OwnComputer.GetItem(dbItem.AffectedId); + subtext = $"{owncomputer.Computer.Company.Name} - {owncomputer.Computer.Model}"; break; case NewsType.NewConsoleInCollection: text = "New videoconsole added to the museum's collection."; imageUrl = "assets/photos/consoles/"; targetView = "collection_console"; + ownconsole = OwnConsole.GetItem(dbItem.AffectedId); + subtext = $"{ownconsole.Console.Company.Name} - {ownconsole.Console.Name}"; break; case NewsType.UpdatedComputerInDb: text = "Updated computer from the database."; imageUrl = "assets/photos/computers/"; targetView = "computer"; + computer = Computer.GetItem(dbItem.AffectedId); + subtext = $"{computer.Company.Name} - {computer.Model}"; break; case NewsType.UpdatedConsoleInDb: text = "Updated videoconsole from the database."; imageUrl = "assets/photos/consoles/"; targetView = "console"; + console = Console.GetItem(dbItem.AffectedId); + subtext = $"{console.Company.Name} - {console.Name}"; break; case NewsType.UpdatedComputerInCollection: - text = "Updated computer from museum's collection."; - imageUrl = "assets/photos/computers/"; - targetView = "collection_computer"; + text = "Updated computer from museum's collection."; + imageUrl = "assets/photos/computers/"; + targetView = "collection_computer"; + owncomputer = OwnComputer.GetItem(dbItem.AffectedId); + subtext = $"{owncomputer.Computer.Company.Name} - {owncomputer.Computer.Model}"; break; case NewsType.UpdatedConsoleInCollection: text = "Updated videoconsole from museum's collection."; imageUrl = "assets/photos/consoles/"; targetView = "collection_console"; + ownconsole = OwnConsole.GetItem(dbItem.AffectedId); + subtext = $"{ownconsole.Console.Company.Name} - {ownconsole.Console.Name}"; break; case NewsType.NewMoneyDonation: text = "New money donation."; imageUrl = null; targetView = null; + subtext = null; break; default: throw new ArgumentOutOfRangeException(); } @@ -129,7 +153,8 @@ namespace cicm_web.Models Date = DateTime.ParseExact(dbItem.Date, "yyyy/MM/dd HH:mm:ss", CultureInfo.InvariantCulture), Image = imageUrl == null ? null : imageUrl + $"{dbItem.AffectedId}", Text = text, - TargetView = targetView + TargetView = targetView, + SubText = subtext }; } } diff --git a/cicm_web/Views/Home/Index.cshtml b/cicm_web/Views/Home/Index.cshtml index bd8f840e..0b513eab 100644 --- a/cicm_web/Views/Home/Index.cshtml +++ b/cicm_web/Views/Home/Index.cshtml @@ -74,8 +74,7 @@ - - Company - Computer + @news.SubText diff --git a/cicm_web/cicm_web.csproj b/cicm_web/cicm_web.csproj index bce9d749..bc3500d7 100644 --- a/cicm_web/cicm_web.csproj +++ b/cicm_web/cicm_web.csproj @@ -2,7 +2,7 @@ netcoreapp2.0 - 3.0.99.38 + 3.0.99.41 Canary Islands Computer Museum Copyright © 2003-2018 Natalia Portillo Canary Islands Computer Museum Website