From ad542d20f93705305c7a4ce2f0afd6093c35934a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Pit-Claudel?= <clement.pit-claudel@epfl.ch> Date: Tue, 24 Dec 2024 12:59:56 +0100 Subject: [PATCH] client: Make home page tiles regular links --- .../scala/cs214/webapp/client/Pages.scala | 22 +++++++++---------- jvm/src/main/resources/www/static/main.css | 8 +++++++ 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/js/src/main/scala/cs214/webapp/client/Pages.scala b/js/src/main/scala/cs214/webapp/client/Pages.scala index 99c093e..c94551b 100644 --- a/js/src/main/scala/cs214/webapp/client/Pages.scala +++ b/js/src/main/scala/cs214/webapp/client/Pages.scala @@ -28,16 +28,16 @@ object Page: abstract class AppCatalogPage extends Page: def render(apps: Seq[AppInfo]): Frag - def selectApp(appId: AppId): Unit = - WebClient.navigateTo(InstanceCreationPage(appId)) - - def renderApp(appInfo: AppInfo): Frag = - figure( - onclick := (() => selectApp(appInfo.id)), - img(src := s"/static/${appInfo.id}.png"), - figcaption( - h4(appInfo.name), - p(appInfo.description) + def renderApp(appInfo: AppInfo, classes: String): Frag = + a( + cls := "app " + classes, + href := WebClient.url(InstanceCreationPage(appInfo.id)), + figure( + img(src := s"/static/${appInfo.id}.png"), + figcaption( + h4(appInfo.name), + p(appInfo.description) + ) ) ) @@ -57,7 +57,7 @@ object HomePage extends AppCatalogPage: h2(year.toString), section(cls := "app-grid", apps.sortBy(_.name).map: appInfo => - renderApp(appInfo) + renderApp(appInfo, classes="") ) ) ) diff --git a/jvm/src/main/resources/www/static/main.css b/jvm/src/main/resources/www/static/main.css index 0f301ef..e7531e7 100644 --- a/jvm/src/main/resources/www/static/main.css +++ b/jvm/src/main/resources/www/static/main.css @@ -171,6 +171,14 @@ form > *:last-child { grid-gap: 1rem; } +.app-grid > a { + color: inherit; + display: grid; + text-decoration: none; + grid-template-columns: minmax(0, 1fr); + grid-template-rows: minmax(0, 1fr); +} + .app-grid figure { word-wrap: break-word; border-radius: 0.5rem; -- GitLab