From a74a0045408d0cf32fab47f152cdb9d53845073e Mon Sep 17 00:00:00 2001 From: DacongDA Date: Sun, 19 Jan 2025 08:02:44 +0800 Subject: [PATCH] feat: append logo url to cookie (#3507) --- routers/theme_filter.go | 15 ++++++++------- web/src/App.js | 10 +++++++--- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/routers/theme_filter.go b/routers/theme_filter.go index 70d4b395..6756accd 100644 --- a/routers/theme_filter.go +++ b/routers/theme_filter.go @@ -30,7 +30,7 @@ func appendThemeCookie(ctx *context.Context, urlPath string) error { return err } if application.ThemeData != nil { - return setThemeDataCookie(ctx, application.ThemeData) + return setThemeDataCookie(ctx, application.ThemeData, application.Logo) } organization := application.OrganizationObj if organization == nil { @@ -40,7 +40,7 @@ func appendThemeCookie(ctx *context.Context, urlPath string) error { } } if organization != nil { - return setThemeDataCookie(ctx, organization.ThemeData) + return setThemeDataCookie(ctx, organization.ThemeData, organization.Logo) } } else if strings.HasPrefix(urlPath, "/login/oauth/authorize") { clientId := ctx.Input.Query("client_id") @@ -57,10 +57,10 @@ func appendThemeCookie(ctx *context.Context, urlPath string) error { return err } if application.ThemeData != nil { - return setThemeDataCookie(ctx, application.ThemeData) + return setThemeDataCookie(ctx, application.ThemeData, application.Logo) } if organization != nil { - return setThemeDataCookie(ctx, organization.ThemeData) + return setThemeDataCookie(ctx, organization.ThemeData, organization.Logo) } } } else if strings.HasPrefix(urlPath, "/login/") { @@ -71,7 +71,7 @@ func appendThemeCookie(ctx *context.Context, urlPath string) error { return err } if application.ThemeData != nil { - return setThemeDataCookie(ctx, application.ThemeData) + return setThemeDataCookie(ctx, application.ThemeData, application.Logo) } organization := application.OrganizationObj if organization == nil { @@ -81,7 +81,7 @@ func appendThemeCookie(ctx *context.Context, urlPath string) error { } } if organization != nil { - return setThemeDataCookie(ctx, organization.ThemeData) + return setThemeDataCookie(ctx, organization.ThemeData, organization.Logo) } } } @@ -89,11 +89,12 @@ func appendThemeCookie(ctx *context.Context, urlPath string) error { return nil } -func setThemeDataCookie(ctx *context.Context, themeData *object.ThemeData) error { +func setThemeDataCookie(ctx *context.Context, themeData *object.ThemeData, logoUrl string) error { themeDataString, err := json.Marshal(themeData) if err != nil { return err } ctx.SetCookie("organizationTheme", string(themeDataString)) + ctx.SetCookie("organizationLogo", logoUrl) return nil } diff --git a/web/src/App.js b/web/src/App.js index 8b20b0dc..d291cb86 100644 --- a/web/src/App.js +++ b/web/src/App.js @@ -270,7 +270,7 @@ class App extends Component { }); } - renderFooter() { + renderFooter(logo) { return ( {!this.state.account ? null :
} @@ -288,7 +288,7 @@ class App extends Component { : ( Conf.CustomFooter !== null ? Conf.CustomFooter : ( - Powered by {"Casdoor"} + Powered by {"Casdoor"} ) ) @@ -362,11 +362,15 @@ class App extends Component { renderPage() { if (this.isDoorPages()) { let themeData = this.state.themeData; + let logo = this.state.logo; if (this.state.organization === undefined) { const curCookie = Cookie.parse(document.cookie); if (curCookie["organizationTheme"] && curCookie["organizationTheme"] !== "null") { themeData = JSON.parse(curCookie["organizationTheme"]); } + if (curCookie["organizationLogo"] && curCookie["organizationLogo"] !== "") { + logo = curCookie["organizationLogo"]; + } } return ( @@ -410,7 +414,7 @@ class App extends Component { } { - this.renderFooter() + this.renderFooter(logo) } { this.renderAiAssistant()