X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fsearch%2Freport_tax.html;h=f920adbac515f625e8a4c59997401df005fb1333;hp=8a207aafbdc18b1629b02f9d85abab3e906cac31;hb=949a80c148a8bbeeeec54c5a0be5d73b292423a5;hpb=54a357b171aa44f9399b4c146acd2afd3b686075 diff --git a/httemplate/search/report_tax.html b/httemplate/search/report_tax.html index 8a207aafb..f920adbac 100755 --- a/httemplate/search/report_tax.html +++ b/httemplate/search/report_tax.html @@ -4,74 +4,80 @@ -% if ( $conf->config('tax-report_groups') ) { -% my @lines = $conf->config('tax-report_groups'); - + <& /elements/tr-select-agent.html, 'disable_empty'=>0 &> + + <& /elements/tr-input-beginning_ending.html &> + + + + + + <& /elements/tr-select.html, + 'label' => 'Country', + 'field' => 'country', + 'options' => \@countries, + 'curr_value' => ($conf->config('countrydefault') || 'US'), + &> + + <& /elements/tr-select.html, + 'label' => 'For tax named ', + 'field' => 'taxname', + 'options' => \@taxnames, + 'disable_empty' => 1, + &> + + <& /elements/tr-checkbox-multiple.html, + 'label' => 'Break down by ', + 'field' => 'breakdown', + 'options' => \@breakdown, + 'option_labels' => { + taxclass => 'Tax class', + pkgclass => 'Package class', + city => 'City', + district => 'District', + }, + &> - - + -% } - - <% include( '/elements/tr-select-agent.html', 'disable_empty'=>0 ) %> - - <% include( '/elements/tr-input-beginning_ending.html' ) %> - -% if ( $city ) { - - - - - - - - - -% } - -% if ( $conf->exists('enable_taxclasses') ) { - - - - -% } - -% my @pkg_class = qsearch('pkg_class', {}); -% if ( @pkg_class ) { - - - - -% } -
+ <& /elements/radio.html, + 'field' => 'all', + 'value' => 1, + 'curr_value' => 1, + &> All taxes + <& /elements/radio.html, + 'field' => 'all', + 'value' => 0, + &> A specific tax +
Tax group - Deduct credited tax if it was +
Show cities
Show districts
Show tax classes
Show package classes

+ + <% include('/elements/footer.html') %> <%init> @@ -80,12 +86,26 @@ die "access denied" my $conf = new FS::Conf; -my $city_sql = "SELECT COUNT(*) FROM cust_main_county - WHERE city != '' AND city IS NOT NULL - LIMIT 1"; - -my $city_sth = dbh->prepare($city_sql) or die dbh->errstr; -$city_sth->execute or die $city_sth->errstr; -my $city = $city_sth->fetchrow_arrayref->[0]; +my $sth = dbh->prepare('SELECT DISTINCT(COALESCE(taxname, \'Tax\')) FROM cust_main_county'); +$sth->execute or die $sth->errstr; +my @taxnames = map { $_->[0] } @{ $sth->fetchall_arrayref }; + +$sth = dbh->prepare('SELECT DISTINCT(country) FROM cust_location'); +$sth->execute or die $sth->errstr; +my @countries = map { $_->[0] } @{ $sth->fetchall_arrayref }; + +my @breakdown; +if ( $conf->exists('enable_taxclasses') ) { + push @breakdown, 'taxclass'; +} +if ( FS::pkg_class->count() > 0 ) { + push @breakdown, 'pkgclass'; +} +if ( FS::cust_main_county->count("city is not null and city != ''") > 0 ) { + push @breakdown, 'city'; +} +if ( FS::cust_main_county->count("district is not null") > 0 ) { + push @breakdown, 'district'; +}