X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=server%2Flib%2Fplugins%2Fregister-helpers-store.ts;h=151196bf19eaa12be4c5e92e0865b3ba1cd6a650;hb=ebefc902f59be6c5542c19ff706e310d9dddf75f;hp=277f2b687aab917e7c9ee9d3af700c4057254d28;hpb=4a8d113b9b57d97ff13ad1608798eabca99643e4;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/plugins/register-helpers-store.ts b/server/lib/plugins/register-helpers-store.ts index 277f2b687..151196bf1 100644 --- a/server/lib/plugins/register-helpers-store.ts +++ b/server/lib/plugins/register-helpers-store.ts @@ -1,5 +1,12 @@ +import * as express from 'express' import { logger } from '@server/helpers/logger' -import { VIDEO_CATEGORIES, VIDEO_LANGUAGES, VIDEO_LICENCES, VIDEO_PLAYLIST_PRIVACIES, VIDEO_PRIVACIES } from '@server/initializers/constants' +import { + VIDEO_CATEGORIES, + VIDEO_LANGUAGES, + VIDEO_LICENCES, + VIDEO_PLAYLIST_PRIVACIES, + VIDEO_PRIVACIES +} from '@server/initializers/constants' import { onExternalUserAuthenticated } from '@server/lib/auth' import { PluginModel } from '@server/models/server/plugin' import { RegisterServerOptions } from '@server/typings/plugins' @@ -10,11 +17,15 @@ import { PluginVideoCategoryManager } from '@shared/models/plugins/plugin-video- import { PluginVideoLanguageManager } from '@shared/models/plugins/plugin-video-language-manager.model' import { PluginVideoLicenceManager } from '@shared/models/plugins/plugin-video-licence-manager.model' import { PluginVideoPrivacyManager } from '@shared/models/plugins/plugin-video-privacy-manager.model' -import { RegisterServerAuthExternalOptions, RegisterServerAuthExternalResult, RegisterServerAuthPassOptions, RegisterServerExternalAuthenticatedResult } from '@shared/models/plugins/register-server-auth.model' +import { + RegisterServerAuthExternalOptions, + RegisterServerAuthExternalResult, + RegisterServerAuthPassOptions, + RegisterServerExternalAuthenticatedResult +} from '@shared/models/plugins/register-server-auth.model' import { RegisterServerHookOptions } from '@shared/models/plugins/register-server-hook.model' import { RegisterServerSettingOptions } from '@shared/models/plugins/register-server-setting.model' import { serverHookObject } from '@shared/models/plugins/server-hook.model' -import * as express from 'express' import { buildPluginHelpers } from './plugin-helpers' type AlterableVideoConstant = 'language' | 'licence' | 'category' | 'privacy' | 'playlistPrivacy' @@ -174,6 +185,11 @@ export class RegisterHelpersStore { const self = this return (options: RegisterServerAuthExternalOptions) => { + if (!options.authName || !options.onAuthRequest || typeof options.onAuthRequest !== 'function') { + logger.error('Cannot register auth plugin %s: authName of getWeight or login are not valid.', this.npmName) + return + } + this.externalAuths.push(options) return {