summaryrefslogtreecommitdiff
path: root/rt/html/Elements
diff options
context:
space:
mode:
Diffstat (limited to 'rt/html/Elements')
-rw-r--r--rt/html/Elements/Callback4
-rw-r--r--rt/html/Elements/CollectionAsTable/Row1
-rw-r--r--rt/html/Elements/EditCustomField4
-rw-r--r--rt/html/Elements/EditCustomFieldSelect3
-rw-r--r--rt/html/Elements/FreesideInvoiceSearch20
-rw-r--r--rt/html/Elements/FreesideNewCust3
-rw-r--r--rt/html/Elements/FreesideSearch11
-rw-r--r--rt/html/Elements/FreesideSvcSearch11
-rw-r--r--rt/html/Elements/Header20
-rw-r--r--rt/html/Elements/PageLayout29
-rw-r--r--rt/html/Elements/QueryString6
-rw-r--r--rt/html/Elements/RT__Ticket/ColumnMap3
-rw-r--r--rt/html/Elements/ScrubHTML2
-rw-r--r--rt/html/Elements/ShowCustomFields3
-rw-r--r--rt/html/Elements/SimpleSearch13
-rw-r--r--rt/html/Elements/Tabs12
-rw-r--r--rt/html/Elements/TitleBoxStart2
17 files changed, 117 insertions, 30 deletions
diff --git a/rt/html/Elements/Callback b/rt/html/Elements/Callback
index 937e923a1..c7aeb9f5d 100644
--- a/rt/html/Elements/Callback
+++ b/rt/html/Elements/Callback
@@ -68,14 +68,14 @@ if (!$callbacks) {
push @$callbacks,
# Skip backup files, files without a leading package name,
# and files we've already seen
- grep { !/^\.|~$/
+ grep { !/\/\.|~$/
and $_ ne "/Callbacks/$Page/$_CallbackName"
and not $seen{$_}++ }
$m->interp->resolver->glob_path($path, $root);
}
$m->notes($CacheKey => $callbacks);
- $cache{$Page,$_CallbackName} = $callbacks if !$RT::DevelMode;
+ $cache{$CacheKey} = $callbacks if !$RT::DevelMode;
}
my @rv;
diff --git a/rt/html/Elements/CollectionAsTable/Row b/rt/html/Elements/CollectionAsTable/Row
index 3316bc027..0de362ea8 100644
--- a/rt/html/Elements/CollectionAsTable/Row
+++ b/rt/html/Elements/CollectionAsTable/Row
@@ -71,6 +71,7 @@ foreach my $column (@Format) {
$item++;
$m->out('<td class="collection-as-table" ');
$m->out( 'align="' . $column->{align} . '"' ) if ( $column->{align} );
+ $m->out( 'style="' . $column->{style} . '"' ) if ( $column->{style} );
$m->out('>');
foreach my $subcol ( @{ $column->{output} } ) {
if ( $subcol =~ /^__(.*?)__$/o ) {
diff --git a/rt/html/Elements/EditCustomField b/rt/html/Elements/EditCustomField
index d2398c9da..e443c764e 100644
--- a/rt/html/Elements/EditCustomField
+++ b/rt/html/Elements/EditCustomField
@@ -49,6 +49,10 @@ if ($Object) {
$Values = $Object->CustomFieldValues($CustomField->id);
$Values->Columns( qw( id CustomField ObjectType ObjectId Disabled Content ContentType ContentEncoding ) );
$NamePrefix ||= join('-', 'Object', ref($Object), $Object->Id, 'CustomField', '');
+} elsif (not $Default) {
+ my %TOP = $m->request_args;
+ $Default = $TOP{ $NamePrefix .$CustomField->Id . '-Values' }
+ || $TOP{ $NamePrefix .$CustomField->Id . '-Value' };
}
my $Type = $CustomField->Type;
diff --git a/rt/html/Elements/EditCustomFieldSelect b/rt/html/Elements/EditCustomFieldSelect
index db33a6839..2a2a64a1d 100644
--- a/rt/html/Elements/EditCustomFieldSelect
+++ b/rt/html/Elements/EditCustomFieldSelect
@@ -53,7 +53,8 @@
% if ($Values) {
<% $Values->HasEntry($value->Name) && ($selected = 1) && 'SELECTED' %>
% } elsif ($Default) {
- <% ($Default eq $value->Name) && ($selected = 1) && 'SELECTED' %>
+ <% (ref $Default ? (grep {$_ eq $value->Name} @{$Default}) : ($Default eq $value->Name))
+ && ($selected = 1) && 'SELECTED' %>
% }
><% $value->Name%></option>
% }
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;">&nbsp;
+</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 a2563fee3..b5512aae9 100644
--- a/rt/html/Elements/Header
+++ b/rt/html/Elements/Header
@@ -47,12 +47,14 @@
<HTML>
<HEAD>
<TITLE><%$Title%></TITLE>
-% if ($Refresh > 0) {
+% if ($Refresh && $Refresh > 0) {
<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/webrt.css" type="text/css">
+<link rel="shortcut icon" href="<%$RT::WebImagesURL%>/favicon.png" type="image/png" />
+<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" />
+
<script>
function hideshow(num) {
idstring = "element-" + num;
@@ -67,7 +69,7 @@ function hideshow(num) {
</script>
<& /Elements/Callback, _CallbackName => 'Head', %ARGS &>
</HEAD>
-<BODY BGCOLOR="<%$BgColor%>"
+<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 %>'));
@@ -75,13 +77,15 @@ ONLOAD="
"
% }
>
-<table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF">
+<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') %> Ticketing</font></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>
% }
@@ -89,8 +93,6 @@ ONLOAD="
% unless ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth) {
| <A HREF="<%$RT::WebPath%>/NoAuth/Logout.html<%$URL ? "?URL=".$URL : ''%>"><&|/l&>Logout</&></a>
% }
-<BR>
-<&|/l, "<b>".$session{'CurrentUser'}->Name."</b>" &>Logged in as [_1]</&>
% } else {
<&|/l&>Not logged in.</&>
% }
@@ -105,7 +107,7 @@ ONLOAD="
<td align=right>
<FONT SIZE="-3">
<A HREF="http://www.sisd.com/freeside">Freeside</A>&nbsp;v<% &RT::URI::freeside::FreesideVersion() %><BR>
- <A HREF="../docs/">Documentation</A><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>
diff --git a/rt/html/Elements/PageLayout b/rt/html/Elements/PageLayout
index 94bdbe194..f13ee0dda 100644
--- a/rt/html/Elements/PageLayout
+++ b/rt/html/Elements/PageLayout
@@ -43,32 +43,43 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<table class="lightgray" border=0 cellspacing=0 cellpadding=0 width="100%">
- <th class="lightgray" align="left" width=42%><span class="rtname"><%$AppName%></span>
- </th>
+<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">
-% foreach my $action (sort keys %{$topactions}) {
- <td class="lightgrayright">
+% my $notfirst = 0; foreach my $action (sort keys %{$topactions}) {
+ <td class="blackright" ALIGN="right" VALIGN="center">
<%$topactions->{"$action"}->{'html'} |n %>
</td>
% }
</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="lightgray">
+<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="mediumgray" valign="top">
+ <td class="<% $actions ? 'darkmediumgray' : 'bggray' %>" valign="top">
<span class="title"><%$title%></span>
</td>
</tr>
<tr>
-<td class="mediumgrayright" valign="top">
+<td class="<% $actions ? 'darkmediumgrayright' : 'bggrayright' %>" valign="top">
<span class="nav">
% if ($actions) {
% my @actions;
@@ -80,7 +91,7 @@
% }
% }
%#<% join(" | ", @actions) | n %>
-<% '['. join("] [", @actions). ']' | n %>
+<% '['. join("] [", @actions). ']&nbsp;' | n %>
% if ($subactions) {
% my @actions;
% foreach my $action (sort keys %{$subactions}) {
diff --git a/rt/html/Elements/QueryString b/rt/html/Elements/QueryString
index 7d41f15e0..1ddab85de 100644
--- a/rt/html/Elements/QueryString
+++ b/rt/html/Elements/QueryString
@@ -45,8 +45,12 @@
%# END BPS TAGGED BLOCK }}}
<%init>
my @params;
-while ( (my $key, my $value) = each %ARGS ){
+while ( my ($key, $value) = each %ARGS ){
+ if( UNIVERSAL::isa( $value, 'ARRAY' ) ) {
+ push @params, map $key."=".$m->interp->apply_escapes($_,'u'), @$value;
+ } else {
push @params, $key."=".$m->interp->apply_escapes($value,'u');
+ }
}
return(join('&',@params));
</%init>
diff --git a/rt/html/Elements/RT__Ticket/ColumnMap b/rt/html/Elements/RT__Ticket/ColumnMap
index dade91494..80e3c693c 100644
--- a/rt/html/Elements/RT__Ticket/ColumnMap
+++ b/rt/html/Elements/RT__Ticket/ColumnMap
@@ -95,6 +95,7 @@ sub LinkCallback {
my $mode = $RT::Ticket::LINKTYPEMAP{$method}{Mode};
my $type = $RT::Ticket::LINKTYPEMAP{$method}{Type};
+ my $other_mode = ($mode eq "Target" ? "Base" : "Target");
my $mode_uri = $mode.'URI';
my $local_type = 'Local'.$mode;
@@ -105,7 +106,7 @@ sub LinkCallback {
\'">',
( $_->$mode_uri->IsLocal ? $_->$local_type : $_->$mode ),
\'</A><BR>',
- } @{ $_[0]->Links($mode,$type)->ItemsArrayRef }
+ } @{ $_[0]->Links($other_mode,$type)->ItemsArrayRef }
}
}
diff --git a/rt/html/Elements/ScrubHTML b/rt/html/Elements/ScrubHTML
index 94a729907..443ded9c4 100644
--- a/rt/html/Elements/ScrubHTML
+++ b/rt/html/Elements/ScrubHTML
@@ -62,7 +62,7 @@ $scrubber->default(
$scrubber->deny(qw[*]);
$scrubber->allow(
- qw[A B U P BR I HR BR SMALL EM FONT SPAN DIV UL OL LI DL DT DD]);
+ qw[A B U P BR I HR BR SMALL EM FONT SPAN DIV UL OL LI DL DT DD PRE]);
$scrubber->comment(0);
return ( $scrubber->scrub($Content) );
</%init>
diff --git a/rt/html/Elements/ShowCustomFields b/rt/html/Elements/ShowCustomFields
index 7591fa3aa..986184120 100644
--- a/rt/html/Elements/ShowCustomFields
+++ b/rt/html/Elements/ShowCustomFields
@@ -71,6 +71,9 @@
</table>
<%INIT>
my $CustomFields = $Object->CustomFields;
+ $m->comp('/Elements/Callback', _CallbackName => 'MassageCustomFields',
+ CustomFields => $CustomFields);
+
</%INIT>
<%ARGS>
$Object => undef
diff --git a/rt/html/Elements/SimpleSearch b/rt/html/Elements/SimpleSearch
index e76f801df..e9fc5c6ed 100644
--- a/rt/html/Elements/SimpleSearch
+++ b/rt/html/Elements/SimpleSearch
@@ -43,7 +43,14 @@
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-<form action="<% $RT::WebPath %>/index.html">
-<input size="12" name="q" autocomplete="off" accesskey="0">
-<input type="submit" value="<&|/l&>Search tickets</&>">&nbsp;
+<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 f5839a9e5..721f920d5 100644
--- a/rt/html/Elements/Tabs
+++ b/rt/html/Elements/Tabs
@@ -57,9 +57,17 @@
<%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 = {
diff --git a/rt/html/Elements/TitleBoxStart b/rt/html/Elements/TitleBoxStart
index 804e5cfaa..d98fe2744 100644
--- a/rt/html/Elements/TitleBoxStart
+++ b/rt/html/Elements/TitleBoxStart
@@ -78,7 +78,7 @@ $title_class => ''
$titleright_href => undef
$titleright => undef
-$contentbg => "#dddddd"
+$contentbg => "#d4d4d4"
$color => "#336699"
</%ARGS>
<%init>