summaryrefslogtreecommitdiff
path: root/rt/html/Elements/Menu
blob: 963be13bf26a5a01f3188d5b1c8f6913bdf833eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
%# BEGIN LICENSE BLOCK
%# 
%# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
%# 
%# (Except where explictly superceded by other copyright notices)
%# 
%# This work is made available to you under the terms of Version 2 of
%# the GNU General Public License. A copy of that license should have
%# been provided with this software, but in any event can be snarfed
%# from www.gnu.org.
%# 
%# This work is distributed in the hope that it will be useful, but
%# WITHOUT ANY WARRANTY; without even the implied warranty of
%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
%# General Public License for more details.
%# 
%# Unless otherwise specified, all modifications, corrections or
%# extensions to this work which alter its source code become the
%# property of Best Practical Solutions, LLC when submitted for
%# inclusion in the work.
%# 
%# 
%# END LICENSE BLOCK
%# font size depends on level
% if ($level ge 3) {
%   $size = $basesize-(6);
% } elsif ($level gt 0) {
%   $size = $basesize-($level * 2);
%   $padding = 2;
% }
%  else {
%   $size = $basesize;
%   $padding = 5;
% }
<ul class="topnav" >
% my $sep=0;
% my $accesskey="1";
% foreach $tab (sort keys %{$toptabs}) {
% my $current = $current_toptab || "";
% my $path = $toptabs->{$tab}->{'path'} || "";
% $path =~ s#/index.html$##gi;
% $current =~ s#/index.html$##gi;
% if ( $path eq $current) {
%     $class="currenttopnav"
% } else {
%     $class="topnav"
% } 
% my $style="";
% if ($sep) {
% $style="border-top: solid #999 1px; padding-top: .1em; margin-top: .5em;";
% } elsif ($level == 0 ) {
% $style="border-bottom: solid white 1px; padding-top: .25em; padding-bottom: .5em;" ;
% }
% if ($toptabs->{$tab}->{'separator'}) {
% $sep=1;
% } else {
% $sep=0;
% }
<li style="<%$style%>"><A HREF="<%$RT::WebPath%>/<%$toptabs->{$tab}->{'path'}|n%>" style="font-size: <%$size%>;" class="<%$class%>" 
<%($class eq 'currenttopnav') ? "name='focus'" : ""|n %> 
<% !$level && "accesskey='".$accesskey++."'" |n%>><% $toptabs->{$tab}->{'title'}%></A>
%# Second-level items
%# if ($current_toptab eq $toptabs->{$tab}->{'path'}) {
%# commented out by jesse on 4 jan 2003 so that tickets/search and ticket/# can
%# both have menu items
% if ($toptabs->{$tab}->{'subtabs'}) {
        <& /Elements/Menu, level => $level+1, 
                current_toptab => $toptabs->{$tab}->{'current_subtab'},
                toptabs => $toptabs->{$tab}->{'subtabs'} &></li>
% }
%# }
% }
</ul>

<%INIT>
my ($tab, $subtab, $class, $size, $padding);
my $basesize=16;
</%INIT>

<%ARGS>
$current_toptab => ""
$toptabs => undef
$level => 0
</%ARGS>