From cacf0d34f51a36241b73800e9595559778789f41 Mon Sep 17 00:00:00 2001 From: Johannes Zellner Date: Fri, 11 Aug 2023 13:36:46 +0200 Subject: [PATCH] Add oidc views footer --- package-lock.json | 12 ++++++++++++ package.json | 1 + src/oidc.js | 10 +++++++--- src/oidc_templates/error.ejs | 4 ++++ src/oidc_templates/interaction.ejs | 4 ++++ src/oidc_templates/login.ejs | 4 ++++ 6 files changed, 32 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 48dc90bb7..768ce21d4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -33,6 +33,7 @@ "jsonwebtoken": "^9.0.1", "ldapjs": "^2.3.3", "lodash": "^4.17.21", + "marked": "^7.0.2", "moment": "^2.29.4", "moment-timezone": "^0.5.43", "morgan": "^1.10.0", @@ -3517,6 +3518,17 @@ "node": ">=12" } }, + "node_modules/marked": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-7.0.2.tgz", + "integrity": "sha512-ADEBjnCHOrsLoV7JPvUNWtELZ0b4SeIALhrfxuA9uhS3hw2PCezROoFduIqMOjeagBPto732+YC5tZHBMQRdqg==", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 16" + } + }, "node_modules/media-typer": { "version": "0.3.0", "license": "MIT", diff --git a/package.json b/package.json index c56fe025c..8ca4b42f1 100644 --- a/package.json +++ b/package.json @@ -41,6 +41,7 @@ "jsonwebtoken": "^9.0.1", "ldapjs": "^2.3.3", "lodash": "^4.17.21", + "marked": "^7.0.2", "moment": "^2.29.4", "moment-timezone": "^0.5.43", "morgan": "^1.10.0", diff --git a/src/oidc.js b/src/oidc.js index 094948f5a..5d0f532c2 100644 --- a/src/oidc.js +++ b/src/oidc.js @@ -25,6 +25,7 @@ const assert = require('assert'), express = require('express'), eventlog = require('./eventlog.js'), fs = require('fs'), + marked = require('marked'), middleware = require('./middleware'), path = require('path'), paths = require('./paths.js'), @@ -445,7 +446,8 @@ function renderInteractionPage(provider) { const options = { submitUrl: `${ROUTE_PREFIX}/interaction/${uid}/login`, iconUrl: '/api/v1/cloudron/avatar', - name: client?.name || await branding.getCloudronName() + name: client?.name || await branding.getCloudronName(), + footer: marked.parse(await branding.renderFooter()) }; if (app) { @@ -463,7 +465,8 @@ function renderInteractionPage(provider) { hasAccess: false, submitUrl: '', iconUrl: '/api/v1/cloudron/avatar', - name: client?.name || '' + name: client?.name || '', + footer: marked.parse(await branding.renderFooter()) }; // check if user has access to the app if client refers to an app @@ -665,7 +668,8 @@ async function findAccount(ctx, id) { async function renderError(ctx, out, error) { const data = { dashboardOrigin: `https://${settings.dashboardFqdn()}`, - errorMessage: error.error_description || error.error_detail || 'Unknown error' + errorMessage: error.error_description || error.error_detail || 'Unknown error', + footer: marked.parse(await branding.renderFooter()) }; debug('renderError: %o', error); diff --git a/src/oidc_templates/error.ejs b/src/oidc_templates/error.ejs index 3df8c7d43..0ecafb5a7 100644 --- a/src/oidc_templates/error.ejs +++ b/src/oidc_templates/error.ejs @@ -61,6 +61,10 @@ + + diff --git a/src/oidc_templates/interaction.ejs b/src/oidc_templates/interaction.ejs index bd34ff4c1..3f07c92f8 100644 --- a/src/oidc_templates/interaction.ejs +++ b/src/oidc_templates/interaction.ejs @@ -66,6 +66,10 @@ + + <% } -%> diff --git a/src/oidc_templates/login.ejs b/src/oidc_templates/login.ejs index b9838c880..e1f48afa4 100644 --- a/src/oidc_templates/login.ejs +++ b/src/oidc_templates/login.ejs @@ -88,6 +88,10 @@ + +