<% include('/elements/header.html', $title, '' ) %>
-% if ( $cgi->param('error') ) {
- <FONT SIZE="+1" COLOR="#ff0000">Error: <% $cgi->param('error') %></FONT>
- <BR><BR>
-% }
+<% include('/elements/error.html') %>
<FORM NAME="timeworked_form" ACTION="<% popurl(1) %>process/timeworked.html" METHOD=POST>
<TABLE CELLSPACING="2" CELLPADDING="2" RULES="groups" FRAME="hsides">
-<THEAD>
- <TR>
- <TH>Trans</TH>
- <TH COLSPAN="2">Ticket</TH>
- <TH>Time</TH>
- <TH COLSPAN="2">Customer</TH>
- <TH>Multiplier</TH>
- </TR>
-
- <TR>
- <TH>#</TH>
- <TH>#</TH>
- <TH>Subject</TH>
- <TH>hours</TH>
- <TH>#</TH>
- <TH>Name</TH>
- <TH></TH>
- </TR>
-</THEAD>
-
-% foreach my $tr_id ( keys %ticketmap ) {
-% my (@customers) = @{$customers{$ticketmap{$tr_id}}};
-% next unless @customers;
-% my $multiplier = sprintf("%.2f", 1/@customers);
-% my ($custnum, $name) = split(':', pop @customers, 2);
-% my $link = $p. 'rt/Ticket/Display.html?id='. $ticketmap{$tr_id}.
-% '#txn-'. $tr_id;
-
-<TBODY>
- <TR>
- <TD><a href="$link"><% $tr_id %></a></TD>
- <TD><a href="$link"><% $ticketmap{$tr_id} %></a></TD>
- <TD><a href="$link"><% $ticket{$ticketmap{$tr_id}} %></a></TD>
- <TD><% sprintf("%0.2f", $cgi->param("seconds$tr_id")/3600) %></TD>
- <TD ALIGN="right"><% $custnum %></TD>
- <TD ALIGN="right"><% $name %></TD>
- <TD>
- <INPUT TYPE="hidden" NAME="transactionid<% $tr_id %>" VALUE="1" >
- <INPUT TYPE="hidden" NAME="seconds<% $tr_id %>" VALUE="<% $cgi->param("seconds$tr_id") %>" >
- <INPUT TYPE="text" NAME="multiplier<% $tr_id %>_<% $custnum %>" SIZE="5" VALUE="<% $cgi->param("multiplier${_}_$custnum") ? $cgi->param("multiplier${_}_$custnum") : $multiplier %>" >
- </TR>
-
-% foreach ( @customers ) {
-% ($custnum, $name) = split(':', $_, 2);
-
- <TR>
- <TD ALIGN="right" COLSPAN="5" ><% $custnum %></TD>
- <TD ALIGN="right"><% $name %></TD>
- <TD>
- <INPUT TYPE="text" NAME="multiplier<% $tr_id %>_<% $custnum %>" SIZE="5" VALUE="<% $cgi->param("multiplier${tr_id}_$custnum") ? $cgi->param("multiplier${tr_id}_$custnum") : $multiplier %>" >
- </TR>
-</TBODY>
-
-% }
-% }
+ <THEAD>
+ <TR>
+ <TH COLSPAN="2">Ticket</TH>
+ <TH>Hours</TH>
+ <TH COLSPAN="2">Customer</TH>
+ <TH>Multiplier</TH>
+ </TR>
+ </THEAD>
+
+ <TBODY>
+
+% foreach my $tr_id ( keys %ticketmap ) {
+% my (@customers) = @{$customers{$ticketmap{$tr_id}}};
+% next unless @customers;
+% my $default_multiplier = sprintf("%.2f", 1/@customers);
+% my ($custnum, $name) = split(':', pop @customers, 2);
+% my $link = $p. 'rt/Ticket/Display.html?id='. $ticketmap{$tr_id}.
+% '#txn-'. $tr_id;
+% my $clink = $p. 'view/cust_main.cgi?'. $custnum;
+
+ <TR>
+ <TD><a href="<% $link %>"><% $ticketmap{$tr_id} %></a></TD>
+ <TD><a href="<% $link %>"><% $ticket{$ticketmap{$tr_id}} |h %></a></TD>
+
+% my $seconds = 0;
+% if ( $cgi->param("seconds$tr_id") =~ /^(\d+)$/ ) {
+% $seconds = $1;
+% }
+
+ <TD><% sprintf("%0.2f", $seconds/3600) %></TD>
+ <TD ALIGN="right"><a href="<% $clink %>"><% $custnum %></a></TD>
+ <TD ALIGN="right"><a href="<% $clink %>"><% $name %></a></TD>
+ <TD>
+ <INPUT TYPE="hidden" NAME="transactionid<%$tr_id%>" VALUE="1" >
+ <INPUT TYPE="hidden" NAME="seconds<%$tr_id%>" VALUE="<% $seconds %>" >
+
+% my $multiplier = $default_multiplier;
+% my $mult_paramname = "multiplier${tr_id}_$custnum";
+% if ( $cgi->param($mult_paramname) =~ /^\s*([\d\.]+)\s*$/ ) {
+% $multiplier = $1;
+% }
+
+ <INPUT TYPE="text" NAME="<% $mult_paramname %>" SIZE="5" VALUE="<% $multiplier %>" >
+ </TD>
+ </TR>
+
+% foreach ( @customers ) {
+% ($custnum, $name) = split(':', $_, 2);
+% $clink = $p. 'view/cust_main.cgi?'. $custnum;
+
+ <TR>
+ <TD ALIGN="right" COLSPAN="4" ><a href="<% $clink %>"><% $custnum %></a></TD>
+ <TD ALIGN="right"><a href="<% $clink %>"><% $name %></a></TD>
+ <TD>
+
+% $multiplier = $default_multiplier;
+% $mult_paramname = "multiplier${tr_id}_$custnum";
+% if ( $cgi->param($mult_paramname) =~ /^\s*([\d\.]+)\s*$/ ) {
+% $multiplier = $1;
+% }
+
+ <INPUT TYPE="text" NAME="<% $mult_paramname %>" SIZE="5" VALUE="<% $multiplier %>" >
+
+ </TD>
+
+ </TR>
+
+% }
+% }
+
+ </TBODY>
</TABLE>
+
<BR>
+
+<INPUT TYPE="hidden" NAME="begin" VALUE="<% $cgi->param('begin') |h %>">
+<INPUT TYPE="hidden" NAME="end" VALUE="<% $cgi->param('end') |h %>">
+<INPUT TYPE="hidden" NAME="category" VALUE="<% $cgi->param('category') |h %>">
+
<INPUT TYPE="submit" NAME="submit" VALUE="<% $title %>">
</FORM>
-</BODY>
-</HTML>
+
+<% include('/elements/footer.html') %>
<%init>
my(%ticketmap, %ticket, %customers);
my $title = 'Assign Time Worked';
-
-RT::Init();
+tie %ticketmap, 'Tie::IxHash';
my $CurrentUser = RT::CurrentUser->new();
$CurrentUser->LoadByName($FS::CurrentUser::CurrentUser->username);
$ticket->Load($ticketmap{$id});
$ticket{$ticketmap{$id}} = $ticket->Subject;
$customers{$ticketmap{$id}} =
- [ map { $_->Resolver->AsString }
- grep { $_->Resolver->{'fstable'} eq 'cust_main' }
- grep { $_->Scheme eq 'freeside' }
- map { $_->TargetURI }
- @{ $ticket->_Links('Base')->ItemsArrayRef }
- ];
+ [ map { $_->Resolver->AsString }
+ grep { $_->Resolver->{'fstable'} eq 'cust_main' }
+ grep { $_->Scheme eq 'freeside' }
+ map { $_->TargetURI }
+ grep { $_->BaseURI->Scheme eq 'fsck.com-rt'
+ && $_->BaseURI->Resolver->ObjectType eq 'ticket'
+ }
+ @{ $ticket->_Links('Base')->ItemsArrayRef }
+ ];
}
}