diff --git a/src/app.component.ts b/src/app.component.ts index c4cc95a..55e88fa 100644 --- a/src/app.component.ts +++ b/src/app.component.ts @@ -6,6 +6,7 @@ import { SidebarComponent } from './components/sidebar/sidebar.component'; import { ThemesNavComponent } from './components/themes/themes-nav.component'; import { I18nService } from './services/i18n.service'; import { AuthService } from './services/auth.service'; +import { ThemesService } from './services/themes.service'; @Component({ selector: 'app-root', @@ -18,6 +19,7 @@ export class AppComponent { private i18n = inject(I18nService); private auth = inject(AuthService); private router = inject(Router); + private themesSvc = inject(ThemesService); sidebarOpen = signal(false); sidebarCollapsed = signal(false); private _showThemesBar = signal(false); @@ -59,9 +61,12 @@ export class AppComponent { private updateShowThemesBar() { try { - const url = this.router.url || '/'; - const isHome = url === '/' || url.startsWith('/?'); - const isTheme = url.startsWith('/t/') || /^\/p\/[^/]+\/t\//.test(url); + // Liste blanche stricte : accueil + pages de thèmes uniquement. + // /watch, /search, /shorts, /library, /channel... : jamais de bande. + const raw = this.router.url || '/'; + const pathOnly = raw.split('?')[0].split('#')[0] || '/'; + const isHome = pathOnly === '/' || pathOnly === ''; + const isTheme = pathOnly.startsWith('/t/') || /^\/p\/[^/]+\/t\//.test(pathOnly); this._showThemesBar.set(isHome || isTheme); } catch { this._showThemesBar.set(false); @@ -69,5 +74,6 @@ export class AppComponent { } // Template helpers - showThemesBar() { return this._showThemesBar(); } + // Visible = page autorisée ET interrupteur global du header (persisté). + showThemesBar() { return this._showThemesBar() && this.themesSvc.barVisible(); } } diff --git a/src/components/header/header.component.html b/src/components/header/header.component.html index 8a00b91..5b00cd6 100644 --- a/src/components/header/header.component.html +++ b/src/components/header/header.component.html @@ -21,6 +21,17 @@