diff --git a/dashboard/oidc_error.html b/dashboard/oidc_error.html index c5f8e29c8..afe7a0121 100644 --- a/dashboard/oidc_error.html +++ b/dashboard/oidc_error.html @@ -4,53 +4,31 @@ - OpenID Connect Error + ##NAME## OpenID Error - - - + + + + - -
- -
-

OpenID Connect Error

-

##ERROR_MESSAGE##

- Back -
- - - - + +
+ + diff --git a/dashboard/src/components/OidcError.vue b/dashboard/src/components/OidcError.vue new file mode 100644 index 000000000..de0f0347a --- /dev/null +++ b/dashboard/src/components/OidcError.vue @@ -0,0 +1,72 @@ + + + + + + diff --git a/dashboard/src/oidcerror.js b/dashboard/src/oidcerror.js new file mode 100644 index 000000000..de02a5580 --- /dev/null +++ b/dashboard/src/oidcerror.js @@ -0,0 +1,16 @@ +import { createApp } from 'vue'; + +import '@fontsource/noto-sans'; + +import i18n from './i18n.js'; +import OidcError from './components/OidcError.vue'; + +import './style.css'; + +(async function init() { + const app = createApp(OidcError); + + app.use(await i18n()); + + app.mount('#app'); +})(); diff --git a/src/oidc.js b/src/oidc.js index 20089b8eb..90d49d358 100644 --- a/src/oidc.js +++ b/src/oidc.js @@ -550,6 +550,8 @@ function renderInteractionPage(provider) { debug('route interaction get error', error); const data = { + ICON_URL: '/api/v1/cloudron/avatar', + NAME: 'Cloudron', ERROR_MESSAGE: error.error_description || 'Internal error', FOOTER: marked.parse(await branding.renderFooter()) };