X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2Fmenu%2Fmenu.component.ts;h=bcc88487856d9aff1877b2bbcd9bdeb2e992e095;hb=636d73c58866ed235c207719e41fdde3c2d6c969;hp=fa104cc43676b449a4f9cf6d64ccbe6f48aaecb0;hpb=8beea2d37d90e9a12d895f4a9eebc1e532313d8c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/menu/menu.component.ts b/client/src/app/menu/menu.component.ts index fa104cc43..bcc884878 100644 --- a/client/src/app/menu/menu.component.ts +++ b/client/src/app/menu/menu.component.ts @@ -21,6 +21,7 @@ import { LanguageChooserComponent } from '@app/menu/language-chooser.component' import { QuickSettingsModalComponent } from '@app/modal/quick-settings-modal.component' import { PeertubeModalService } from '@app/shared/shared-main/peertube-modal/peertube-modal.service' import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap' +import { PluginsManager } from '@root-helpers/plugins-manager' import { HTMLServerConfig, ServerConfig, UserRight, VideoConstant } from '@shared/models' const logger = debug('peertube:menu:MenuComponent') @@ -28,7 +29,7 @@ const logger = debug('peertube:menu:MenuComponent') @Component({ selector: 'my-menu', templateUrl: './menu.component.html', - styleUrls: ['./menu.component.scss'] + styleUrls: [ './menu.component.scss' ] }) export class MenuComponent implements OnInit { @ViewChild('languageChooserModal', { static: true }) languageChooserModal: LanguageChooserComponent @@ -94,6 +95,7 @@ export class MenuComponent implements OnInit { this.htmlServerConfig = this.serverService.getHTMLConfig() this.currentInterfaceLanguage = this.languageChooserModal.getCurrentLanguage() + this.isLoggedIn = this.authService.isLoggedIn() this.updateUserState() this.buildMenuSections() @@ -121,10 +123,22 @@ export class MenuComponent implements OnInit { .subscribe(() => this.buildUserLanguages()) }) + this.serverService.getConfig() + .subscribe(config => this.serverConfig = config) + this.modalService.openQuickSettingsSubject .subscribe(() => this.openQuickSettings()) } + getExternalLoginHref () { + if (this.serverConfig.client.menu.login.redirectOnSingleExternalAuth !== true) return undefined + + const externalAuths = this.serverConfig.plugin.registeredExternalAuths + if (externalAuths.length !== 1) return undefined + + return PluginsManager.getExternalAuthHref(externalAuths[0]) + } + isRegistrationAllowed () { if (!this.serverConfig) return false