X-Git-Url: http://wagnertech.de/git?p=kivitendo-erp.git;a=blobdiff_plain;f=SL%2FPresenter%2FDunning.pm;fp=SL%2FPresenter%2FDunning.pm;h=de4961439ac87393faf8ea1572ce8ffeb1e99c27;hp=0000000000000000000000000000000000000000;hb=53593baa211863fbf66540cf1bcc36c8fb37257f;hpb=deb4d2dbb676d7d6f69dfe7815d6e0cb09bd4a44 diff --git a/SL/Presenter/Dunning.pm b/SL/Presenter/Dunning.pm new file mode 100644 index 000000000..de4961439 --- /dev/null +++ b/SL/Presenter/Dunning.pm @@ -0,0 +1,37 @@ +package SL::Presenter::Dunning; + +use strict; + +use SL::Presenter::EscapedText qw(escape is_escaped); +use SL::Presenter::Tag qw(link_tag); + +use Exporter qw(import); +our @EXPORT_OK = qw(dunning); + +use Carp; + +sub dunning { + my ($dunning, %params) = @_; + + $params{display} ||= 'inline'; + + croak "Unknown display type '$params{display}'" unless $params{display} =~ m/^(?:inline|table-cell)$/; + + my $text = escape($dunning->dunning_config->dunning_description); + + if (! delete $params{no_link}) { + my @flags; + push @flags, 'showold=1'; + push @flags, 'l_mails=1' if $::instance_conf->get_email_journal; + push @flags, 'l_webdav=1' if $::instance_conf->get_webdav; + push @flags, 'l_documents=1' if $::instance_conf->get_doc_storage; + + my $href = 'dn.pl?action=show_dunning&dunning_id=' . $dunning->dunning_id; + $href .= '&' . join '&', @flags if @flags; + $text = link_tag($href, $text, %params); + } + + is_escaped($text); +} + +1;