diff options
Diffstat (limited to 'rt/html/Elements')
-rw-r--r-- | rt/html/Elements/CollectionAsTable/Row | 18 | ||||
-rw-r--r-- | rt/html/Elements/Footer | 49 | ||||
-rw-r--r-- | rt/html/Elements/FreesideInvoiceSearch | 20 | ||||
-rw-r--r-- | rt/html/Elements/FreesideNewCust | 3 | ||||
-rw-r--r-- | rt/html/Elements/FreesideSearch | 11 | ||||
-rw-r--r-- | rt/html/Elements/FreesideSvcSearch | 11 | ||||
-rw-r--r-- | rt/html/Elements/Header | 140 | ||||
-rw-r--r-- | rt/html/Elements/Menu | 128 | ||||
-rw-r--r-- | rt/html/Elements/PageLayout | 222 | ||||
-rw-r--r-- | rt/html/Elements/QuickCreate | 39 | ||||
-rw-r--r-- | rt/html/Elements/ShadedBox | 33 | ||||
-rw-r--r-- | rt/html/Elements/ShadedInputRow | 35 | ||||
-rw-r--r-- | rt/html/Elements/ShadedRow | 31 | ||||
-rw-r--r-- | rt/html/Elements/SimpleSearch | 19 | ||||
-rw-r--r-- | rt/html/Elements/Tabs | 34 | ||||
-rw-r--r-- | rt/html/Elements/TicketList | 52 | ||||
-rw-r--r-- | rt/html/Elements/TitleBoxStart | 49 | ||||
-rw-r--r-- | rt/html/Elements/ViewUser | 51 |
18 files changed, 377 insertions, 568 deletions
diff --git a/rt/html/Elements/CollectionAsTable/Row b/rt/html/Elements/CollectionAsTable/Row index 64ecef41c..0de362ea8 100644 --- a/rt/html/Elements/CollectionAsTable/Row +++ b/rt/html/Elements/CollectionAsTable/Row @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -55,17 +53,17 @@ $Warning => undef </%ARGS> <%PERL> -$m->out('<tr class="' . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' ); +$m->out('<TR class="' . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' ); my $item; foreach my $column (@Format) { - if ( defined $column->{title} && $column->{title} eq 'NEWLINE' ) { + if ( $column->{title} eq 'NEWLINE' ) { while ( $item < $maxitems ) { $m->out(qq{<td class="collection-as-table"> </td>\n}); $item++; } $item = 0; - $m->out('</tr>'); - $m->out('<tr class="' + $m->out('</TR>'); + $m->out('<TR class="' . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' ); next; @@ -101,7 +99,7 @@ foreach my $column (@Format) { # Simple value; just escape it. @out = $m->interp->apply_escapes( $value => 'h' ); } - s/\n/<br \/>/gs for @out; + s/\n/<br>/gs for @out; $m->out( @out ); } else { @@ -110,5 +108,5 @@ foreach my $column (@Format) { } $m->out('</td>'); } -$m->out('</tr>'); +$m->out('</TR>'); </%PERL> diff --git a/rt/html/Elements/Footer b/rt/html/Elements/Footer index 16f13f9fc..78a116f38 100644 --- a/rt/html/Elements/Footer +++ b/rt/html/Elements/Footer @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,27 +43,22 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -%# End of div#body from /Elements/PageLayout -</div> +% if ($Menu) { +</td> +</tr> +<tr> +<td> +% } <& /Elements/Callback, %ARGS &> -<div id="footer"> - <p id="time"> - <span><&|/l&>Time to display</&>: <%Time::HiRes::tv_interval( $m->{'rt_base_time'} )%></span> - </p> - - <p id="bpscredits"> - <span> -<&|/l, '»|«', $RT::VERSION, '2006', '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>', &>[_1] RT [_2] Copyright 1996-[_3] [_4].</&> -</span> -</p> +<!-- +<div class="bpscredits"> +<&|/l, '»|«', $RT::VERSION, '2005', '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>', &>[_1] RT [_2] Copyright 1996-[_3] [_4].</&><br> % if (!$Menu) { - <p id="legal"> -<&|/l&>Distributed under version 2 <a href="http://www.gnu.org/copyleft/gpl.html"> of the GNU GPL.</a></&><br /> -<&|/l, '<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>' &>To inquire about support, training, custom development or licensing, please contact [_1].</&><br /> - </p> +<&|/l&>Distributed under version 2 <a href="http://www.gnu.org/copyleft/gpl.html"> of the GNU GPL.</a></&><br> +<&|/l, '<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>' &>To inquire about support, training, custom development or licensing, please contact [_1].</&><br> % } - </div> +--> % if ($Debug >= 2 ) { % require Data::Dumper; % my $d = Data::Dumper->new([\%ARGS], [qw(%ARGS)]); @@ -73,9 +66,17 @@ <%$d->Dump() %> </pre> % } - - </body> -</html> +<div class="page-stats"><&|/l&>Time to display</&>: <%Time::HiRes::tv_interval( $m->{'rt_base_time'} )%></div> +% if ($Menu) { +</TD> +</TR> +</TABLE> +</TD> +</TR> +</TABLE> +% } +</BODY> +</HTML> % $m->abort(); <%ARGS> diff --git a/rt/html/Elements/FreesideInvoiceSearch b/rt/html/Elements/FreesideInvoiceSearch new file mode 100644 index 000000000..3842b2ff9 --- /dev/null +++ b/rt/html/Elements/FreesideInvoiceSearch @@ -0,0 +1,20 @@ +% if ( $FS::CurrentUser::CurrentUser->access_right('View invoices') ) { + + <form action="<% $RT::URI::freeside::URL %>/search/cust_bill.html" STYLE="margin:0"> + <SCRIPT TYPE="text/javascript"> + function clearhint_search_invoice (what) { + if ( what.value == '(inv #)' ) + what.value = ''; + } + </SCRIPT> + <input name="invnum" accesskey="0" VALUE="(inv #)" SIZE="4" onFocus="clearhint_search_invoice(this);" onClick="clearhint_search_invoice(this);" STYLE="text-align:right; margin-bottom:1px; font-family: Arial, Verdana, Helvetica, sans-serif;"> + +% if ( $FS::CurrentUser::CurrentUser->access_right('List invoices') ) { + <A HREF="<% $RT::URI::freeside::URL %>search/report_cust_bill.html" STYLE="color: #ffffff; font-size: 70%; font-weight:normal">Advanced</A> +% } + <BR> + + <input type="submit" value="<&|/l&>Search invoices</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%"> + </form> + +% } diff --git a/rt/html/Elements/FreesideNewCust b/rt/html/Elements/FreesideNewCust new file mode 100644 index 000000000..c752437da --- /dev/null +++ b/rt/html/Elements/FreesideNewCust @@ -0,0 +1,3 @@ +<form action="<% $RT::URI::freeside::URL %>/edit/cust_main.cgi" STYLE="margin:0"> +<INPUT TYPE="submit" VALUE="<&|/l&>New customer</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;"> +</FORM> diff --git a/rt/html/Elements/FreesideSearch b/rt/html/Elements/FreesideSearch new file mode 100644 index 000000000..2fed8fc73 --- /dev/null +++ b/rt/html/Elements/FreesideSearch @@ -0,0 +1,11 @@ +<form action="<% $RT::URI::freeside::URL %>/search/cust_main.cgi" STYLE="margin:0"> + <SCRIPT TYPE="text/javascript"> + function clearhint_search_cust (what) { + if ( what.value == '(cust #, name, company or phone)' ) + what.value = ''; + } + </SCRIPT> +<input name="search_cust" accesskey="0" VALUE="(cust #, name, company or phone)" SIZE="28" onFocus="clearhint_search_cust(this);" onClick="clearhint_search_cust(this);" STYLE="text-align:right; font-family: Arial, Verdana, Helvetica, sans-serif;"><BR> +<A NOTYET="<% $RT::URI::freeside::URL %>/search/cust_main.html" STYLE="color: #000000; font-size: 70%; font-weight:normal">Advanced</A> +<input type="submit" value="<&|/l&>Search customers</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%"> +</form> diff --git a/rt/html/Elements/FreesideSvcSearch b/rt/html/Elements/FreesideSvcSearch new file mode 100644 index 000000000..4a5942421 --- /dev/null +++ b/rt/html/Elements/FreesideSvcSearch @@ -0,0 +1,11 @@ +<form action="<% $RT::URI::freeside::URL %>/search/cust_svc.html" STYLE="margin:0"> + <SCRIPT TYPE="text/javascript"> + function clearhint_search_svc (what) { + if ( what.value == '(user, user@domain or domain)' ) + what.value = ''; + } + </SCRIPT> +<input name="search_svc" accesskey="0" VALUE="(user, user@domain or domain)" SIZE="26" onFocus="clearhint_search_svc(this);" onClick="clearhint_search_svc(this);" STYLE="text-align:right; font-family: Arial, Verdana, Helvetica, sans-serif;"><BR> + <A NOTYET="<% $RT::URI::freeside::URL %>search/svc_Smarter.html" STYLE="color: #000000; font-size: 70%; font-weight:normal">Advanced</A> +<input type="submit" value="<&|/l&>Search services</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%"> +</form> diff --git a/rt/html/Elements/Header b/rt/html/Elements/Header index ed7c133b6..b5512aae9 100644 --- a/rt/html/Elements/Header +++ b/rt/html/Elements/Header @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,89 +43,103 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -<!DOCTYPE html - PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head> - -<title><%$Title%></title> - +%#<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<HEAD> +<TITLE><%$Title%></TITLE> % if ($Refresh && $Refresh > 0) { - <meta http-equiv="refresh" content="<%$Refresh%>" /> +<META HTTP-EQUIV="REFRESH" CONTENT="<%$Refresh%>"> % } <link rel="shortcut icon" href="<%$RT::WebImagesURL%>/favicon.png" type="image/png" /> -<link rel="stylesheet" href="<%$RT::WebPath%>/NoAuth/css/<% $RT::WebDefaultStylesheet %>/main.css" type="text/css" media="all" /> -<link rel="stylesheet" href="<%$RT::WebPath%>/NoAuth/css/print.css" type="text/css" media="print" /> +<link media="all" rel="stylesheet" href="<%$RT::WebPath%>/NoAuth/webrt.css" type="text/css" /> +<link media="print" rel="stylesheet" href="<%$RT::WebPath%>/NoAuth/printrt.css" type="text/css" /> -% if ( $RSSAutoDiscovery ) { - <link rel="alternate" href="<%$RSSAutoDiscovery%>" type="application/rss+xml" title="RSS RT Search" /> +<script> +function hideshow(num) { + idstring = "element-" + num; + chunk = document.getElementById(idstring); + if ( chunk.style.display == "none") { + chunk.style.display = chunk.style.tag; + } else { + chunk.style.tag = chunk.style.display; + chunk.style.display = "none"; + } +} +</script> +<& /Elements/Callback, _CallbackName => 'Head', %ARGS &> +</HEAD> +<BODY BACKGROUND="<% $RT::URI::freeside::URL %>/images/background-cheat.png" STYLE="margin-top:0; margin-bottom:0; margin-left:0; margin-right:0" +% if ($Focus) { +ONLOAD=" + var tmp = (document.getElementsByName('<% $Focus %>')); + if (tmp.length > 0) tmp[tmp.length-1].focus(); +" % } - -<script type="text/javascript" src="<%$RT::WebPath%>/NoAuth/js/util.js"></script> -<script type="text/javascript" src="<%$RT::WebPath%>/NoAuth/js/ahah.js"></script> -<script type="text/javascript" src="<%$RT::WebPath%>/NoAuth/js/titlebox-state.js"></script> -<script type="text/javascript"><!-- - onLoadHook("loadTitleBoxStates()"); -% if ( $Focus ) { - onLoadHook("focusElementById('<% $Focus %>')"); +> +<table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF" STYLE="padding-left:0; padding-right:4"> + <tr> + <td colspan=2 rowspan=2><img border=0 alt="freeside" src="<%$RT::WebImagesURL%>/small-logo.png" width="92" height="62"></td> + <td align="left" rowspan=2><font size=6><% &RT::URI::freeside::FreesideGetConfig('company_name') || 'ExampleCo' %></font></td> + <td align="right" valign="top"> +% if ($session{'CurrentUser'} && $session{'CurrentUser'}->Id && $LoggedIn) { +<SPAN STYLE="display: none"><A HREF="#skipnav"><&|/l&>Skip Menu</&></A> |</SPAN> +<&|/l, "<b>".$session{'CurrentUser'}->Name."</b>" &>Logged in as [_1]</&> +<BR> +%if ($session{'CurrentUser'}->HasRight( Right => 'ModifySelf', Object => $RT::System )) { +<A HREF="<%$RT::WebPath%><% $Prefs %>" ><&|/l&>Preferences</&></A> % } -% if ( $onload ) { - onLoadHook("<% $onload |n %>"); +<& /Elements/Callback, %ARGS &> +% unless ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth) { +| <A HREF="<%$RT::WebPath%>/NoAuth/Logout.html<%$URL ? "?URL=".$URL : ''%>"><&|/l&>Logout</&></a> % } ---></script> - -<& /Elements/Callback, _CallbackName => 'Head', %ARGS &> +% } else { +<&|/l&>Not logged in.</&> +% } + </td> -</head> - <body<% $id && qq[ id="comp-$id"] |n %>> + </tr> + <tr> -% if ($ShowBar) { -<& /Elements/Logo &> + <td align=right valign=bottom> + <table> + <tr> + <td align=right> + <FONT SIZE="-3"> + <A HREF="http://www.sisd.com/freeside">Freeside</A> v<% &RT::URI::freeside::FreesideVersion() %><BR> + <A HREF="<% FS::Conf->new->config('support-key') ? "http://www.sisd.com/mediawiki/index.php/Supported:Documentation" : "http://www.sisd.com/mediawiki/index.php/Freeside:1.7:Documentation" %>">Documentation</A><BR> + </FONT> + </td> + <td bgcolor=#000000></td> + <td align=left> + <FONT SIZE="-3"> + <A HREF="http://www.bestpractical.com/rt">RT</A> v<% $RT::VERSION %><BR> + <A HREF="http://wiki.bestpractical.com/">Documentation</A><BR> + </FONT> + </td> -<div id="quickbar"> - <div id="quick-personal"> - <span class="hide"><a href="#skipnav"><&|/l&>Skip Menu</&></a> | </span> -% if ($session{'CurrentUser'}->Name) { - <&|/l, "<span>".$session{'CurrentUser'}->Name."</span>" &>Logged in as [_1]</&> -% if ($session{'CurrentUser'}->HasRight( Right => 'ModifySelf', Object => $RT::System )) { - | <a href="<%$RT::WebPath%><%$Prefs%>"><&|/l&>Preferences</&></a> -% } -% } else { - <&|/l&>Not logged in.</&> -% } - <& /Elements/Callback, %ARGS &> -% unless (!$session{'CurrentUser'}->Name -% or ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth)) { - | <a href="<%$RT::WebPath%>/NoAuth/Logout.html<%$URL ? "?URL=".$URL : ''%>"><&|/l&>Logout</&></a> -% } - </div> -% } + </tr> + </table> + </td> + </tr> +</table> <%INIT> + $r->headers_out->{'Pragma'} = 'no-cache'; $r->headers_out->{'Cache-control'} = 'no-cache'; - -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; +require RT::URI::freeside; </%INIT> <%ARGS> $Prefs => '/User/Prefs.html' -#$Focus => 'focus' -$Focus => '' +$Focus => 'focus' $Title => 'RT' $Code => undef $Refresh => 0 $Why => undef +$BgColor => '#ffffff' $ShowBar => 1 +$LoggedIn => 1 $URL => undef -$RSSAutoDiscovery => undef -$onload => undef </%ARGS> diff --git a/rt/html/Elements/Menu b/rt/html/Elements/Menu index b5b2bdad5..398e3ab07 100644 --- a/rt/html/Elements/Menu +++ b/rt/html/Elements/Menu @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,90 +43,66 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -<ul<% !$level ? ' id="system-menu"' : ''|n %><% $menu_class ? qq[ class="$menu_class"] : ''|n %>> -<div<% $menu_class ? qq[ class="$menu_class"] : ''|n %>><div class="wrapper"> -% my $sep = 0; -% my $postsep = 0; -% my $accesskey = 1; -% -% $count = 0; -% $class = {}; -% +%# 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}) { -% $count++; -% -% my $current = $current_toptab || ""; -% my $path = $toptabs->{$tab}->{'path'} || ""; -% -% $path =~ s#/index.html$##gi; -% $current =~ s#/index.html$##gi; -% -% $sep = $toptabs->{$tab}->{'separator'} ? 1 : 0; -% -% my @aclass; -% push @aclass, 'selected' -% if $path eq $current; -% -% push @aclass, 'odd' -% if $level % 2; -% -% $class->{a} = join ' ', @aclass; -% -% my @li; -% push @li, 'first' -% if $count == 1; -% -% push @li, 'pre-separator' -% if $sep; -% -% push @li, 'post-separator' -% if $postsep; -% -% $class->{li} = join ' ', @li; -% -% my $url = ($toptabs->{$tab}->{'path'}||'') =~ /^https?:/i -% ? $toptabs->{$tab}->{'path'} || '' -% : $RT::WebPath . "/" . $toptabs->{$tab}->{'path'}; -% - <li<% $class->{li} ? qq[ class="$class->{li}"] : ''|n %>> - <% $count > 1 && !$postsep && qq[<span class="bullet">· </span>]|n%> - <a href="<% $url %>" - <% $class->{a} && qq[ class="$class->{a}"] |n%> - <% !$level && " accesskey='".$accesskey++."'" |n%>> - <% $toptabs->{$tab}->{'title'} || ''%></a> +% 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="minor"; +% } elsif ($level == 0 ) { +% $style="major"; +% } +% if ($toptabs->{$tab}->{'separator'}) { +% $sep=1; +% } else { +% $sep=0; +% } +% my $url = $toptabs->{$tab}->{'path'} =~ /^https?:/i ? $toptabs->{$tab}->{'path'} : $RT::WebPath . "/" . $toptabs->{$tab}->{'path'}; +<li class="<%$class%>-<%$level%>-<%$style%>"><A HREF="<% $url %>" class="<%$class%>-<%$level%>" +<%($class eq 'currenttopnav') ? "name='focus'" : ""|n %> +<% !$level && "accesskey='".$accesskey++."'" |n%>><% $toptabs->{$tab}->{'title'}%></A> %# Second-level items -% if ($toptabs->{$tab}->{'subtabs'} -% and keys %{$toptabs->{$tab}->{'subtabs'}}) -% { - <& /Elements/Menu, level => $level+1, - current_toptab => $toptabs->{$tab}->{'current_subtab'}, - toptabs => $toptabs->{$tab}->{'subtabs'}, - last_level => $toptabs->{$tab}->{last_system_menu_level} &> -% } - </li> -% if ($sep) { - <li class="separator">···</li> -% } -% -% $postsep = $sep; +%# 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> +% } +%# } % } -</div></div> </ul> <%INIT> -my ($tab, $class, $count); +my ($tab, $subtab, $class, $size, $padding); +my $basesize=16; -my @ul; -push @ul, 'last-menu-level' - if $last_level; -push @ul, 'odd' - if $level % 2; -my $menu_class = join ' ', @ul; </%INIT> <%ARGS> $current_toptab => "" $toptabs => undef $level => 0 -$last_level => 0 </%ARGS> diff --git a/rt/html/Elements/PageLayout b/rt/html/Elements/PageLayout index 493f2275f..f13ee0dda 100644 --- a/rt/html/Elements/PageLayout +++ b/rt/html/Elements/PageLayout @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,124 +43,72 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} - <div id="topactions"> -% foreach my $action (reverse sort keys %{$topactions}) { - <span class="topaction"> -% $m->out($topactions->{"$action"}->{'html'}); - </span> +<table class="black" border=0 cellspacing=0 cellpadding=0 width="100%"> +<tr> + <TD colspan=5 WIDTH="100%" STYLE="padding:0"><IMG BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gradient.png" HEIGHT="13" WIDTH="100%"></TD> +</tr> +<tr> +%# <th class="black" align="left" width=15%><span class="rtname"><%$AppName%></span> +%# </th> + <span class="topactions"> +% my $notfirst = 0; foreach my $action (sort keys %{$topactions}) { + <td class="blackright" ALIGN="right" VALIGN="center"> + <%$topactions->{"$action"}->{'html'} |n %> + </td> % } - </div> - -%# End of div#quickbar from /Elements/Header -</div> - -<div id="nav"> -<& /Elements/Menu, toptabs => $toptabs, current_toptab => $current_toptab &> -</div> - -<div id="header"> - <h1><%$title%></h1> - -% my $sep = 0; -% my $postsep = 0; -% my $count = 0; -% my $class = { }; -% - <ul id="page-menu"<% (($actions && %$actions) || ($subactions && %$subactions)) && q[ class="actions-present"] | n %>> - <div><div><div> -% if ($page_tabs) { -% foreach my $tab (sort keys %{$page_tabs}) { -% next if $tab =~ /^(?:current_toptab|this)$/; -% $count++; -% -% my $current = $page_tabs->{current_toptab} || ""; -% my $path = $page_tabs->{$tab}->{'path'} || ""; -% -% $path =~ s#/index.html$##gi; -% $current =~ s#/index.html$##gi; -% -% $sep = $toptabs->{$tab}->{'separator'} ? 1 : 0; -% -% $class->{a} = $path eq $current ? ' class="selected"' : undef; -% -% my @li; -% push @li, 'first' -% if $count == 1; -% -% push @li, 'pre-separator' -% if $sep; -% -% push @li, 'post-separator' -% if $postsep; -% -% $class->{li} = join ' ', @li; -% -% - <li<% $class->{li} ? qq[ class="$class->{li}"] : ''|n %>><% $count > 1 && !$postsep && "· "|n%><a href="<%$RT::WebPath%>/<%$page_tabs->{$tab}->{'path'}%>"<%$class->{a}|n%><% $class->{a} ? ' name="focus"' : ''|n %>><% $page_tabs->{$tab}->{'title'} %></a></li> -% -% if ($sep) { - <li class="separator">···</li> -% } -% $postsep = $sep; -% } + </span> +</tr> +</table> +<table border=0 cellspacing=0 cellpadding=0 width="100%" height="100%"> +<TR> + <TD BGCOLOR="#000000" STYLE="padding:0" WIDTH="154"></TD> + <TD STYLE="padding:0" WIDTH="13"><IMG BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gray-corner.png"></TD> + <TD STYLE="padding:0"><IMG BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gray-top.png" HEIGHT="13" WIDTH="100%"></TD> +</TR> +%# Vertical menu +<TR height="100%"> +<TD valign="top" width="140" class="black"> + <& /Elements/Menu, toptabs => $toptabs, current_toptab => $current_toptab &> +</TD> +<TD STYLE="padding:0" HEIGHT="100%" WIDTH=13 VALIGN="top"><IMG WIDTH="13" HEIGHT="100%" BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gray-side.png"></TD> +<td valign="top"> +<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"> +<tr> + <td class="<% $actions ? 'darkmediumgray' : 'bggray' %>" valign="top"> + <span class="title"><%$title%></span> +</td> +</tr> +<tr> +<td class="<% $actions ? 'darkmediumgrayright' : 'bggrayright' %>" valign="top"> + <span class="nav"> +% if ($actions) { +% my @actions; +% foreach my $action (sort keys %{$actions}) { +% if ($actions->{"$action"}->{'html'}) { +% push @actions, $actions->{"$action"}->{'html'}; % } else { - -% } - </div></div></div> - </ul> - -% if (($actions && %$actions) || ($subactions && %$subactions)) { - <ul id="actions-menu"> - <div><div><div> -% $sep = 0; -% $postsep = 0; -% $count = 0; -% $class = { }; -% -% for my $type ($actions, $subactions) { -% -% if ($type && %$type) { -% foreach my $action (sort keys %{$type}) { -% $count++; -% -% $sep = $type->{$action}->{'separator'} ? 1 : 0; -% -% my @li; -% push @li, 'first' -% if $count == 1; -% -% push @li, 'pre-separator' -% if $sep; -% -% push @li, 'post-separator' -% if $postsep; -% -% $class->{li} = join ' ', @li; -% - <li<% $class->{li} ? qq[ class="$class->{li}"] : ''|n %>><% $count > 1 && !$postsep && qq[<span class="bullet">· </span>]|n%> -% if ($type->{"$action"}->{'html'}) { - <% $type->{"$action"}->{'html'} | n %> -% } else { - <a href="<%$RT::WebPath%>/<%$type->{$action}->{'path'}%>"<% $type->{$action}->{class} && ' class="'.$type->{$action}->{class}.'"' |n %><% $type->{$action}->{id} && ' id="'.$type->{$action}->{id}.'"' |n %>><%$type->{$action}->{'title'}%></a> -% } - </li> -% if ($sep) { - <li class="separator">···</li> -% } -% $postsep = $sep; -% } +% push @actions, qq|<a class="nav" href="|.$RT::WebPath."/".$actions->{$action}->{'path'}.qq|">|.$actions->{$action}->{'title'}."</a>"; % } +% } +%#<% join(" | ", @actions) | n %> +<% '['. join("] [", @actions). '] ' | n %> +% if ($subactions) { +% my @actions; +% foreach my $action (sort keys %{$subactions}) { +% push @actions, $subactions->{"$action"}->{'html'}; +% } +<% join(" | ", @actions) | n %> % } - </div></div></div> - </ul> % } -</div> - -<div id="body"> + </span> + </td> +</tr> +<TR valign="top"> +<TD valign="top" width="100%" height="100%" class="mainbody" > <& /Elements/Callback, _CallbackName => 'BeforeBody', %ARGS &> %$m->flush_buffer(); # we've got the page laid out, let's flush the buffer; - <%INIT> + foreach my $tab (sort keys %{$toptabs}) { if ($current_toptab && $toptabs->{$tab}->{'path'} eq $current_toptab) { $toptabs->{$tab}->{"subtabs"} = $tabs; @@ -174,53 +120,7 @@ if (! defined($AppName)) { $AppName = loc("RT for [_1]", $RT::rtname); } -my ($menu_depth, $almost_last, $page_tabs); - -if ($RT::WebDefaultStylesheet ne '3.4-compat') { - ($menu_depth, $almost_last) = @{$m->comp('.menu_recurse', data => $toptabs)}; - - if (defined $almost_last->{subtabs} and %{$almost_last->{subtabs}}) { - $page_tabs = { - current_toptab => $almost_last->{current_subtab}, - %{$almost_last->{subtabs}}, - }; - - delete $almost_last->{subtabs}; - delete $almost_last->{current_subtab}; - } -} </%INIT> - -%# There's probably a better way to do this that involves three times as -%# much work and redoing the whole menu/tab system... which would seem a -%# bit out of scope. -%# -%# This function recurses through the menu and returns the second to -%# last menu, that is, the menu holding the last reference to -%# and submenu. It also returns the number of menu levels minus -%# the last submenu. -<%def .menu_recurse> - <%args> - $data => { } - $pdata => { } - $ppdata => { } - $level => 0 - </%args> - <%init> - for my $key (keys %$data) { - return $m->comp('.menu_recurse', data => $data->{$key}->{subtabs}, - pdata => $data->{$key}, - ppdata => $pdata, - level => $level+1) - if ref($data->{$key}) eq 'HASH' - and defined $data->{$key}->{subtabs} - and %{$data->{$key}->{subtabs}}; - } - $ppdata->{last_system_menu_level}++; - return [$level, $pdata]; - </%init> -</%def> - <%ARGS> $current_toptab => undef $current_tab => undef @@ -230,5 +130,5 @@ $tabs => undef $actions => undef $subactions => undef $title => $m->callers(-1)->path -$AppName => undef +$AppName => '' </%ARGS> diff --git a/rt/html/Elements/QuickCreate b/rt/html/Elements/QuickCreate index bad7503b7..0b97121a4 100644 --- a/rt/html/Elements/QuickCreate +++ b/rt/html/Elements/QuickCreate @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,27 +43,28 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -<div class="quick-create"> -<&| /Widgets/TitleBox, title => loc('Quick ticket creation') &> -<form method="post" action="<%$RT::WebPath%>/index.html"> -<input type="hidden" class="hidden" name="QuickCreate" value="1" /> +<& /Elements/TitleBoxStart, title => loc('Quick ticket creation') &> +<form method="post" action="<%$RT::WebPath%>/<% $RT::QuickCreateLong ? 'Ticket/Create.html' : 'index.html' %>"> +<input type="hidden" name="QuickCreate" value="1"> <table> -<tr><td> -<&|/l&>Subject</&>:<br /><input size="15" name="Subject" /> -</td><td> -<&|/l&>Queue</&>:<br /><& /Elements/SelectNewTicketQueue, Name => 'Queue', ShowNullOption => 0 &> -</td><td> -<&|/l&>Owner</&>:<br /> +<tr> +<td> +<font size="-2"><&|/l&>Subject</&>:<br><input size="30" name="Subject"></font> +</td> +<td> +<font size="-2"><&|/l&>Queue</&>:<br><& /Elements/SelectQueue, Name => 'Queue', ShowNullOption => 0 &></font> +</td> +<td> +<font size="-2"><&|/l&>Owner</&>:<br> <select type="select" name="Owner"> -<option value="<%$session{'CurrentUser'}->id%>" selected><%$session{'CurrentUser'}->Name %></option> +<option value="<%$session{'CurrentUser'}->id%>" SELECTED><%$session{'CurrentUser'}->Name %></option> <option value="<%$RT::Nobody->id%>"><%loc('Nobody')%></option> </select> +</font> </td> </tr> -%#<tr><td colspan="3"><textarea cols="50" rows="3"></textarea></td></tr> +%#<tr><td colspan="3"><font size="-2"><textarea cols="50" rows="3"></textarea></font></td></tr> </table> -<div align="right"><input type="submit" class="button" value="<%loc('Create')%>" /></div> +<div align="right"><input type="submit" value="<%loc('Create')%>"></div> </form> -</&> -</div> - +<& /Elements/TitleBoxEnd &> diff --git a/rt/html/Elements/ShadedBox b/rt/html/Elements/ShadedBox deleted file mode 100644 index 36b9cae7c..000000000 --- a/rt/html/Elements/ShadedBox +++ /dev/null @@ -1,33 +0,0 @@ -%# 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 -<table> - <tr> - <td class="label"><%$title |n %>:</td> - <td class="value"><%$content |n %></td> - </tr> -</table> -<%ARGS> -$title => undef -$content => " " -</%ARGS> diff --git a/rt/html/Elements/ShadedInputRow b/rt/html/Elements/ShadedInputRow deleted file mode 100644 index e9fb69e5f..000000000 --- a/rt/html/Elements/ShadedInputRow +++ /dev/null @@ -1,35 +0,0 @@ -%# 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 -<tr> - <td class="label"><%$title |n %>:</td> - <td class="value"> - <input name=<%$name%> value="<%$content|h%>" SIZE=<%$size%>> - </td> -</tr> -<%ARGS> -$title => undef -$content => " " -$name => undef -$size => undef -</%ARGS> diff --git a/rt/html/Elements/ShadedRow b/rt/html/Elements/ShadedRow deleted file mode 100644 index 8947fcd82..000000000 --- a/rt/html/Elements/ShadedRow +++ /dev/null @@ -1,31 +0,0 @@ -%# 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 -<tr> - <td class="label"><%$title |n %>:</td> - <td class="value"><%$content |n %></td> -</tr> -<%ARGS> -$title => undef -$content => " " -</%ARGS> diff --git a/rt/html/Elements/SimpleSearch b/rt/html/Elements/SimpleSearch index 78abce467..e9fc5c6ed 100644 --- a/rt/html/Elements/SimpleSearch +++ b/rt/html/Elements/SimpleSearch @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,7 +43,14 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -<form action="<% $RT::WebPath %>/Search/Simple.html"> - <input size="12" name="q" autocomplete="off" accesskey="0" class="field" /> - <input type="submit" class="button" value="<&|/l&>Search</&>" /> +<form action="<% $RT::WebPath %>/index.html" STYLE="margin:0"> +<SCRIPT TYPE="text/javascript"> + function clearhint_search_ticket (what) { + if ( what.value == '(ticket # or subject string)' ) + what.value = ''; + } +</SCRIPT> +<input name="q" accesskey="0" VALUE="(ticket # or subject string)" onFocus="clearhint_search_ticket(this);" onClick="clearhint_search_ticket(this);" STYLE="text-align:right; font-family: Arial, Verdana, Helvetica, sans-serif;"><BR> +<A HREF="<% $RT::WebPath %>/Search/Build.html" STYLE="color: #ffffff; font-size: 70%; font-weight:normal">Advanced</A> +<input type="submit" value="<&|/l&>Search tickets</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%;padding-left:2px;padding-right:2px"> </form> diff --git a/rt/html/Elements/Tabs b/rt/html/Elements/Tabs index 5afc54a84..bbea3fe9a 100644 --- a/rt/html/Elements/Tabs +++ b/rt/html/Elements/Tabs @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -59,22 +57,32 @@ <%INIT> my $action; my $basetopactions = { - A => { html => $m->scomp('/Elements/CreateTicket') +# A => { html => $m->scomp('/Elements/CreateTicket') +# }, + A => { html => $m->scomp('/Elements/FreesideNewCust') }, - B => { html => $m->scomp('/Elements/SimpleSearch') + B => { html => $m->scomp('/Elements/FreesideSearch') + }, + C => { html => $m->scomp('/Elements/FreesideInvoiceSearch') + }, + D => { html => $m->scomp('/Elements/FreesideSvcSearch') + }, + E => { html => $m->scomp('/Elements/SimpleSearch') } }; -my $basetabs = { A => { title => loc('Homepage'), - path => '', +my $basetabs = { + ' A'=> { title => 'Billing Main', + path => &RT::URI::freeside::FreesideURL(), }, - Ab => { title => loc('Simple Search'), - path => 'Search/Simple.html' + A => { #title => loc('Homepage'), + title => 'Ticketing Main', + path => '', }, - B => { title => loc('Tickets'), + B => { title => loc('Search Tickets'), path => 'Search/Build.html' }, C => { title => loc('Tools'), - path => 'Tools/index.html' + path => 'Tools/Offline.html' }, P => { title => loc('Approval'), path => 'Approvals/' @@ -101,6 +109,8 @@ if (!defined $toptabs) { if (!defined $topactions) { $topactions = $basetopactions; } + + require RT::URI::freeside; # Now let callbacks add their extra tabs $m->comp('/Elements/Callback', diff --git a/rt/html/Elements/TicketList b/rt/html/Elements/TicketList index 593a77bc9..4195d6320 100644 --- a/rt/html/Elements/TicketList +++ b/rt/html/Elements/TicketList @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,7 +43,7 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -<table border="0" cellspacing="0" cellpadding="1" width="100%"> +<TABLE BORDER=0 cellspacing=0 cellpadding=1 WIDTH=100%> % if ($ShowHeader) { <& /Elements/CollectionAsTable/Header, @@ -64,12 +62,14 @@ % my $i; % while (my $record = $Collection->Next) { % $i++; -% # Every ten rows, flush the buffer and put something on the page. -% $m->flush_buffer() unless ($i % 10); +% # Every $RT::MyTicketsLength or ten rows, flush the buffer and put something +% # on the page. +% my $flushrows = $RT::MyTicketsLength || 10; +% $m->flush_buffer() unless ($i % $flushrows); <& /Elements/CollectionAsTable/Row, Format => \@Format, i => $i, record => $record, maxitems => $maxitems &> % } -</table> +</TABLE> % if ($Rows && $ShowNavigation) { <hr> @@ -77,9 +77,7 @@ % if (($TotalFound % $Rows) == 0) { % $oddRows = 0; % } else { $oddRows = 1; } -% my $pages = int($TotalFound/$Rows)+$oddRows; -% $pages = 1 if $pages < 1; -<&|/l, $Page, $pages &>Page [_1] of [_2]</&> +<&|/l, $Page, int($TotalFound/$Rows)+$oddRows&>Page [_1] of [_2]</&> <%perl> my $prev = $m->comp( @@ -102,27 +100,18 @@ my $next = $m->comp( ); </%perl> % if ($Page > 1) { -<a href="<%$BaseURL%><%$prev%>"><&|/l&>Previous Page</&></a> +<A href="<%$BaseURL%><%$prev%>"><&|/l&>Previous Page</&></a> % } % if (($Page * $Rows) < $TotalFound) { -<a href="<%$BaseURL%><%$next%>"><&|/l&>Next Page</&></a> +<A href="<%$BaseURL%><%$next%>"><&|/l&>Next Page</&></a> % } % } <%INIT> my $maxitems = 0; $Format ||= $RT::DefaultSearchResultFormat; - -# DisplayFormat lets us use a "temporary" format for display, while -# still using our original format for next/prev page links. -# bulk update uses this feature to add checkboxes - - -$DisplayFormat ||= $Format; - # Scrub the html of the format string to remove any potential nasties. $Format = $m->comp('/Elements/ScrubHTML', Content => $Format); -$DisplayFormat = $m->comp('/Elements/ScrubHTML', Content => $DisplayFormat); unless ($Collection) { @@ -130,13 +119,13 @@ unless ($Collection) { $Collection->FromSQL($Query); } -my (@Format) = $m->comp('/Elements/CollectionAsTable/ParseFormat', Format => $DisplayFormat); +my (@Format) = $m->comp('/Elements/CollectionAsTable/ParseFormat', Format => $Format); # Find the maximum number of items in any row, so we can pad the table. my $item = 0; foreach my $col (@Format) { $item++; - if ( $col->{title} && ($col->{title} eq 'NEWLINE') ) { + if ( $col->{title} eq 'NEWLINE' ) { $item = 0; } else { @@ -144,20 +133,10 @@ foreach my $col (@Format) { } } -if ($OrderBy =~ /\|/) { - # Multiple Sorts - my @OrderBy = split /\|/,$OrderBy; - my @Order = split /\|/,$Order; - $Collection->OrderByCols( - map { { FIELD => $OrderBy[$_], ORDER => $Order[$_] } } ( 0 - .. $#OrderBy ) );; -} else { - $Collection->OrderBy(FIELD => $OrderBy, ORDER => $Order); -} +$Collection->OrderBy(FIELD => $OrderBy, ORDER => $Order); $Collection->RowsPerPage($Rows) if ($Rows); -$Page = 1 unless $Page > 0; # workaround problems with Page = '' or undef -$Collection->GotoPage( $Page - 1 ); # SB uses page 0 as the first page +$Collection->GotoPage($Page-1); # SB uses page 0 as the first page my $TotalFound = $Collection->CountAll(); </%INIT> @@ -172,7 +151,6 @@ $Order => undef $OrderBy => undef $BaseURL => undef $Format => $RT::DefaultSearchResultFormat -$DisplayFormat => undef $ShowNavigation => 1 $ShowHeader => 1 </%ARGS> diff --git a/rt/html/Elements/TitleBoxStart b/rt/html/Elements/TitleBoxStart index ba24fd92e..d98fe2744 100644 --- a/rt/html/Elements/TitleBoxStart +++ b/rt/html/Elements/TitleBoxStart @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,9 +22,7 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/copyleft/gpl.html. +%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,7 +43,46 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} +<TABLE CLASS="box <%$class|n%>" + BGCOLOR="<%$color%>" + CELLSPACING=0 + BORDER=0 + WIDTH="<%$width%>" + CELLPADDING="0"> + + <TR> + <TH + <%$color && "style=\"color: $color;\""|n%> + <%$class ? "class=\"$class\"" : "class=\"titlebox\""|n%>> + <span class="titleboxclose"> + <a href="#" onClick="hideshow('<%$id%>')">X</A></span> + <span class="titleboxtitle"> + <b><% $title_href && "<A $title_class HREF=\"$title_href\">"|n%><%$title |n %><% $title_href && "</A>" |n%></b> + </span> + </TH> + <TH + <%$color && "style=\"color: $color;\""|n%> + <%$class ? "class=\"$class\"": "class=\"titleboxright\""|n%>> + <span class="titleboxright"><%$titleright ? $titleright : ' ' |n %></span> + </TH> + </TR> + <tr id="element-<%$id%>"> + <td bgcolor="<%$contentbg%>" colspan="3" class="<%defined($bodyclass) ? $bodyclass : $class|n%>"> +<%ARGS> +$width => "100%" +$class => undef +$bodyclass => undef +$title_href => undef +$title => undef +$title_class => '' + +$titleright_href => undef +$titleright => undef +$contentbg => "#d4d4d4" +$color => "#336699" +</%ARGS> <%init> -# For compatibility with 3.4 -$m->comp('/Widgets/TitleBoxStart', %ARGS ); +my $id = rand(2000); + +$title_class = "CLASS=\"$title_class\"" if $title_class; </%init> diff --git a/rt/html/Elements/ViewUser b/rt/html/Elements/ViewUser deleted file mode 100644 index 657272496..000000000 --- a/rt/html/Elements/ViewUser +++ /dev/null @@ -1,51 +0,0 @@ -%# 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 -<& /Elements/TitleBoxStart, - title => "<a class='inverse' href=\"$RT::WebPath/Search/Listing.html?LimitRequestorById=1&IdOfRequestor=".$User->id."\">".loc("Tickets from [_1]", $name)."</a>", - titleright=> "<a class='inverse' href=\"$RT::WebPath/EditUserComments.html?id=".$User->id."\">".loc("Comments about [_1]", $name)."</a>" &> -<TABLE WIDTH="100%"> -<tr> -<td halign=left valign=top> -%while (my $w=$tickets->Next) { -<%$w->Id%>: <a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$w->id%>"><%$w->Subject%></a> (<%$w->Status%>)<BR> -%} -</td> -<td align=right valign=top> - <% ($User->Comments || loc("No comment entered about this user")) %> -</tr> -</table> -<& /Elements/TitleBoxEnd &> - -<%ARGS> -$User=>undef -</%ARGS> - -<%INIT> -my $name=$User->RealName || $User->EmailAddress; - -my $tickets = new RT::Tickets($session{'CurrentUser'}); -$tickets->LimitWatcher(TYPE => 'Requestor', VALUE => $User->EmailAddress); - - -</%INIT> |