blob: 5f7d2b8a0f3603afbb0db69f40acc90cb9dffe29 [file] [log] [blame]
Akron2d01d292018-11-23 11:17:35 +01001% my $side_bar = content_block 'sidebar';
2
Akron1d09b532021-06-15 18:18:25 +02003% my $classes = '';
Uyen-Nhu Tran243fe732024-04-10 01:17:24 +02004
Akron4d17d0f2025-03-05 20:58:44 +01005%# TODO: This should not check for login!!!
6% my $helpers = app->renderer->helpers;
7% if (length($side_bar) == 0 && exists($helpers->{'auth.token'}) && $c->auth->token) {
Akron1d09b532021-06-15 18:18:25 +02008% if (my $nav = navigation('settings')) {
9% $side_bar = b('<nav>' . $nav . '</nav>');
10% $classes = 'settings ';
11% };
12% }
13
Uyen-Nhu Tran243fe732024-04-10 01:17:24 +020014% my $is_empty_sidebar = $side_bar =~ /^\s*(<div[^>]*>\s*<\/div>\s*)*$/i;
15
16% if ($is_empty_sidebar) {
17% $classes .= ' invisible';
18% };
19
Akronb01cccc2024-09-30 15:32:43 +020020% if (length($side_bar) == 0 || stash('sidebar_off')) {
Akron1d09b532021-06-15 18:18:25 +020021% $classes .= ' off';
22% } elsif (stash('sidebar_active')) {
23% $classes .= ' active';
Akrondc0b3ab2021-06-18 11:52:43 +020024% } elsif (stash('login_active') && !$classes) {
Uyen-Nhu Tran243fe732024-04-10 01:17:24 +020025% $classes .= ' invisible';
26% } elsif (!stash('login_active') && $side_bar =~ /<form.*class=".*login.*".*>/i) {
27% $classes .= ' invisible';
Akron1d09b532021-06-15 18:18:25 +020028% };
29
Akron1d09b532021-06-15 18:18:25 +020030<aside tabindex="0" class="<%= $classes %>">
Akrone4968442018-05-22 15:32:07 +020031 <div>
Akron2d01d292018-11-23 11:17:35 +010032 %= $side_bar
Akrone4968442018-05-22 15:32:07 +020033 </div>
34</aside>