diff options
author | jeff <jeff> | 2010-05-13 05:43:57 +0000 |
---|---|---|
committer | jeff <jeff> | 2010-05-13 05:43:57 +0000 |
commit | 16ac0d9bacf239ecbf24b4b7d2231981bd9efe89 (patch) | |
tree | 6d1087695730dffc36f7ae301e6a338726d15f19 /httemplate/misc | |
parent | 94919f6776efc3b5a0c2117f2147a1730beee2e8 (diff) |
cope with poor tax liability report performance by allowing queuing of reports RT#8274
Diffstat (limited to 'httemplate/misc')
-rwxr-xr-x | httemplate/misc/queued_report.html | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/httemplate/misc/queued_report.html b/httemplate/misc/queued_report.html new file mode 100755 index 000000000..875404546 --- /dev/null +++ b/httemplate/misc/queued_report.html @@ -0,0 +1,29 @@ +<% include($report_comp) %> +<%init> + +die "access denied" + unless $FS::CurrentUser::CurrentUser->access_right('Financial reports'); + +my $report = ''; +$cgi->param('report') =~ /^([.\w]+)$/ && ($report = $1); +die "no such report" unless $report; + +my $prefix = "$FS::UID::cache_dir/cache.$FS::UID::datasrc"; +open my $fh, "$prefix/report.$report" + or die "can't open report: $!\n"; + +my $reportvalue = ''; +{ + local $/; + $reportvalue = <$fh>; +} +close $fh; + +#my ($interp, $other) = FS::Mason::mason_interps('standalone'); +my $interp = $m->interp; +my $report_comp = + eval { $interp->make_component ( comp_source => $reportvalue ) }; +die $@ if $@; +errorpage($@) if $@; + +</%init> |