X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FElements%2FHeader;h=17bfe7460083e9536abc869d4a227956a6b2400e;hb=a2d35e30236c5d233516fa8b77c219665f97e77c;hp=ac9683dbaa93f59036c925d1f25a6136a8d2ddd4;hpb=fc6209f398899f0211cfcedeb81a3cd65e04a941;p=freeside.git diff --git a/rt/share/html/Elements/Header b/rt/share/html/Elements/Header index ac9683dba..17bfe7460 100755 --- a/rt/share/html/Elements/Header +++ b/rt/share/html/Elements/Header @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2015 Best Practical Solutions, LLC %# %# %# (Except where explicitly superseded by other copyright notices) @@ -45,74 +45,131 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} - +% if ( $Popup ) { +<& /elements/header-popup.html, { + 'title_noescape' => $Title, + 'head' => $head, + 'etc' => $etc, + 'nobr' => 1, + #'nocss' => 1, + 'no_jquery' => $JavaScript, + } +&> +% } else { +<& /elements/header.html, { + 'title_noescape' => $Title, + 'head' => $head, + 'etc' => $etc, + 'nobr' => 1, + 'nocss' => 1, + 'no_jquery' => $JavaScript, + } +&> +% } +<%INIT> +#for "Site CSS from theme editor" below +$r->headers_out->{'Pragma'} = 'no-cache'; +$r->headers_out->{'Cache-control'} = 'no-cache'; - -<%$Title%> +my $id = $m->request_comp->path; +$id =~ s|^/||g; +$id =~ s|/|-|g; +$id =~ s|\.html$||g; +$id =~ s|index$||g + if $id ne 'index'; +$id =~ s|-$||g; +my $style = $session{'CurrentUser'} + ? $session{'CurrentUser'}->Stylesheet + : RT->Config->Get('WebDefaultStylesheet'); -% if ($Refresh && $Refresh =~ /^(\d+)/ && $1 > 0) { - -% } +my @css_files; +if ( RT->Config->Get('DevelMode') ) { + @css_files = map { "/static/css/$_" } "$style/main.css", RT->Config->Get('CSSFiles'); +} +else { + my $key = + RT::Interface::Web::SquishedCSS( $style )->Key; + @css_files = "/NoAuth/css/$style/squished-$key.css"; +} - - - +# We use BodyClass in its $ARGS form so that callbacks have a chance to +# massage it +push @{$ARGS{'BodyClass'}}, lc $style; -% for (keys %{$LinkRel || {}}) { - -% } +if (RT->Config->Get("UseSideBySideLayout", $session{'CurrentUser'})) { + push @{$ARGS{'BodyClass'}}, 'sidebyside'; +} -% if ( $RSSAutoDiscovery ) { - -% } +my $head = ''; -% if ($JavaScript) { -<& HeaderJavascript, focus => $Focus, onload => $onload &> -% } +if ($Refresh && $Refresh =~ /^(\d+)/ && $1 > 0) { + my $URL = $m->notes->{RefreshURL}; $URL = $URL ? ";URL=$URL" : ""; + $head .= qq( ); +} -% my $stylesheet_plugin = "/NoAuth/css/". RT->Config->Get( 'WebDefaultStylesheet', $session{'CurrentUser'} )."/InHeader"; -% if ($m->comp_exists($stylesheet_plugin) ) { -<& $stylesheet_plugin &> -% } -% $m->callback( %ARGS, CallbackName => 'Head' ); +my $WebPath = RT->Config->Get('WebPath'); +my $WebImagesURL = RT->Config->Get('WebImagesURL'); +my $squished = RT->Config->Get('DevelMode') ? '' : '-squished'; - - > +if ( $JavaScript ) { + $head .= $m->scomp('/Elements/JavascriptConfig'); +} -% if ($ShowBar) { -<& /Elements/Logo, %ARGS &> +for my $cssfile ( @css_files ) { + $head .= qq(\n); +} -
- <& /Elements/PersonalQuickbar, %ARGS &> -% } +for (keys %{$LinkRel || {}}) { + $head .= qq('; +} +$head .= qq(\n); -<%INIT> -$r->headers_out->{'Pragma'} = 'no-cache'; -$r->headers_out->{'Cache-control'} = 'no-cache'; +if ( $RSSAutoDiscovery ) { + $head .= qq(); +} -my $id = $m->request_comp->path; -$id =~ s|^/||g; -$id =~ s|/|-|g; -$id =~ s|\.html$||g; -$id =~ s|index$||g - if $id ne 'index'; -$id =~ s|-$||g; - +if ($JavaScript) { + $head .= $m->scomp('/Elements/HeaderJavascript', focus => $Focus, onload => $onload, RichText => $RichText ); + +$head .= q[ + +]; + +} +# $m->callback( %ARGS, CallbackName => 'Head' ); +$head .= $m->scomp( '/Elements/Callback', _CallbackName => 'Head', %ARGS ); + +#XXX $head .= <& /Elements/Framekiller &>; + +my $etc = ' class="'. join( '',@{$ARGS{'BodyClass'}}). '" '; +$etc .= qq[ id="comp-$id"] if $id; + + <%ARGS> #$Focus => 'focus' $Focus => '' $Title => 'RT' -$Code => undef $Refresh => 0 -$Why => undef $ShowBar => 1 $URL => undef $RSSAutoDiscovery => undef $onload => undef $LinkRel => undef +$SkipDoctype => 0 +$RichText => 1 +$BodyClass => undef $JavaScript => 1 +$Popup => 0