From 16013dc58096c58f171b3af07dd9567866d62bee Mon Sep 17 00:00:00 2001 From: Matthias Reumann Date: Tue, 28 Feb 2023 09:51:14 +0100 Subject: [PATCH 01/66] Add temporary home route --- web/router.go | 25 +++++++++++++++++ web/template/home.gohtml | 59 ++++++++++++++++++++++++++++++++++++++++ web/ts/entry/home.ts | 1 + web/ts/home.ts | 13 +++++++++ web/webpack.common.js | 1 + 5 files changed, 99 insertions(+) create mode 100644 web/template/home.gohtml create mode 100644 web/ts/entry/home.ts create mode 100644 web/ts/home.ts diff --git a/web/router.go b/web/router.go index 0b97a3cd9..1e36f1a93 100755 --- a/web/router.go +++ b/web/router.go @@ -2,6 +2,8 @@ package web import ( "embed" + "github.com/getsentry/sentry-go" + log "github.com/sirupsen/logrus" "html/template" "net/http" "os" @@ -126,6 +128,7 @@ func configMainRoute(router *gin.Engine) { streamGroup.GET("/w/:slug/:streamID/:version", routes.WatchPage) streamGroup.GET("/w/:slug/:streamID/chat/popup", routes.PopUpChat) router.GET("/", routes.MainPage) + router.GET("/home", routes.home) router.GET("/semester/:year/:term", routes.MainPage) router.GET("/healthcheck", routes.HealthCheck) router.GET("/jwtPubKey", routes.JWTPubKey) @@ -151,6 +154,28 @@ type mainRoutes struct { dao.DaoWrapper } +func (r mainRoutes) home(c *gin.Context) { + tName := sentry.TransactionName("GET /") + spanMain := sentry.StartSpan(c.Request.Context(), "HomePageHandler", tName) + defer spanMain.Finish() + + isFresh, err := IsFreshInstallation(c, r.UsersDao) + if err != nil { + _ = templateExecutor.ExecuteTemplate(c.Writer, "error.gohtml", nil) + return + } + if isFresh { + _ = templateExecutor.ExecuteTemplate(c.Writer, "onboarding.gohtml", NewIndexData()) + return + } + + indexData := NewIndexDataWithContext(c) + + if err := templateExecutor.ExecuteTemplate(c.Writer, "home.gohtml", indexData); err != nil { + log.WithError(err).Errorf("Could not execute template: 'home.gohtml'") + } +} + func configCourseRoute(router *gin.Engine) { daoWrapper := dao.NewDaoWrapper() routes := mainRoutes{daoWrapper} diff --git a/web/template/home.gohtml b/web/template/home.gohtml new file mode 100644 index 000000000..3e544d12d --- /dev/null +++ b/web/template/home.gohtml @@ -0,0 +1,59 @@ + + + + + {{.Branding.Title}} + {{template "headImports" .VersionTag}} + + + +{{- /*gotype: github.com/joschahenningsen/TUM-Live/web.IndexData*/ -}} +{{$user := .TUMLiveContext.User}} + +
+ +
+ {{if not $user}} + Login + {{else}} +
+ +
+
+ +
+
+
+ {{end}} +
+
+ + + +{{define "user"}} +{{end}} \ No newline at end of file diff --git a/web/ts/entry/home.ts b/web/ts/entry/home.ts new file mode 100644 index 000000000..5858a08f8 --- /dev/null +++ b/web/ts/entry/home.ts @@ -0,0 +1 @@ +export * from "../home"; diff --git a/web/ts/home.ts b/web/ts/home.ts new file mode 100644 index 000000000..33b3fb06f --- /dev/null +++ b/web/ts/home.ts @@ -0,0 +1,13 @@ +export function pageData(): Home { + return { + showUserContext: false, + toggleUserContext() { + this.showUserContext = !this.showUserContext; + }, + }; +} + +interface Home { + showUserContext: boolean; + toggleUserContext(); +} diff --git a/web/webpack.common.js b/web/webpack.common.js index 2f769786a..d0449d05e 100644 --- a/web/webpack.common.js +++ b/web/webpack.common.js @@ -5,6 +5,7 @@ module.exports = { mode: "development", target: "web", entry: { + home: "./ts/entry/home.ts", admin: "./ts/entry/admins.ts", watch: "./ts/entry/video.ts", global: "./ts/entry/user.ts", From 64c21f6829fc22e4d4e6d0529c2b5a85d4959a86 Mon Sep 17 00:00:00 2001 From: Matthias Reumann Date: Wed, 1 Mar 2023 12:12:16 +0100 Subject: [PATCH 02/66] minor changes --- web/template/home.gohtml | 47 ++++++++++-- web/template/partial/notifications.gohtml | 26 ------- web/ts/entry/home.ts | 2 +- web/ts/home.ts | 13 ---- web/ts/views/home.ts | 93 +++++++++++++++++++++++ 5 files changed, 134 insertions(+), 47 deletions(-) delete mode 100644 web/template/partial/notifications.gohtml delete mode 100644 web/ts/home.ts create mode 100644 web/ts/views/home.ts diff --git a/web/template/home.gohtml b/web/template/home.gohtml index 3e544d12d..890dd4897 100644 --- a/web/template/home.gohtml +++ b/web/template/home.gohtml @@ -10,24 +10,30 @@ {{- /*gotype: github.com/joschahenningsen/TUM-Live/web.IndexData*/ -}} {{$user := .TUMLiveContext.User}} -
+
-
+
+ {{template "theme-selector"}} + {{template "notifications"}} {{if not $user}} Login {{else}}
-
-

@@ -218,7 +218,7 @@ No notifications yet :)

-