[freeside-commits] freeside/httemplate/search employee_audit.html, NONE, 1.1 report_employee_audit.html, NONE, 1.1

Erik Levinson levinse at wavetail.420.am
Fri Jul 1 15:02:50 PDT 2011


Update of /home/cvs/cvsroot/freeside/httemplate/search
In directory wavetail.420.am:/tmp/cvs-serv8262/httemplate/search

Added Files:
	employee_audit.html report_employee_audit.html 
Log Message:
add employee audit report, RT13350

--- NEW FILE: report_employee_audit.html ---
<% include('/elements/header.html', 'Employee audit report' ) %>

<FORM ACTION="employee_audit.html" METHOD="GET">
    <TABLE>
        <% include( '/elements/tr-select-user.html' ) %>
        <% include( '/elements/tr-input-beginning_ending.html', ) %>

        <% include( '/elements/tr-td-label.html', label => 'Include:' ) %>
        <TD>
            <% map { include('/elements/checkbox.html', 
                                field => $_, id => $_, postfix => $tables{$_} )
                        . "<BR>"
                   } keys(%tables)
            %>
        </TD>
        </TR>

    </TABLE>
<INPUT TYPE="submit" VALUE="Get Report">
</FORM>

<% include('/elements/footer.html') %>
<%init>

die "access denied"
  unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');

my %tables = (
    cust_pay        => 'Payments',
    cust_refund     => 'Refunds',
    cust_credit     => 'Credits',
    cust_bill       => 'Invoices',
    cust_main       => 'Customers',
    cust_pkg        => 'Packages',
    cust_main_invoice => 'Customer invoice destinations',
    cust_pkg_discount => 'Discount applications',
);

</%init>

--- NEW FILE: employee_audit.html ---
<% include("/elements/header.html", "Employee Audit Report") %>
<% include("/elements/change_history_common.html", 
    'history'   => \@history,
    'tables'    => \%tables,
    ) %>
<% include('/elements/footer.html') %>
<%init>

die "access denied"
  unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');

my %tables = (
    cust_pay        => 'Payments',
    cust_refund     => 'Refunds',
    cust_credit     => 'Credits',
    cust_bill       => 'Invoices',
    cust_main       => 'Customers',
    cust_pkg        => 'Packages',
    cust_main_invoice => 'Customer invoice destinations',
    cust_pkg_discount => 'Discount applications',
);

my $history_user = ($cgi->param('usernum') && $cgi->param('usernum') =~ /^(\d+)$/) 
                    ? qsearchs('access_user', { 'usernum' => $1 } )
                    : '';
$history_user = $history_user->username if $history_user;

my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi);

my @checked_tables = grep { defined($cgi->param($_)) } keys(%tables);

my @history;
foreach my $table ( @checked_tables ) {
  my @extra_sql;
  push @extra_sql, "history_user = '$history_user'" if $history_user;
  push @extra_sql, "history_date >= $beginning" if $beginning;
  push @extra_sql, "history_date <= $ending" if $ending;
  my @items = qsearch({
    'table'     => "h_$table",
    'extra_sql' => scalar(@extra_sql) ? "WHERE ".join(' AND ', at extra_sql) : '',
  });
  push @history, @items;
}

</%init>



More information about the freeside-commits mailing list