X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FPresenter%2FRequirementSpec.pm;h=5cca5a8bda0def3a8e9f9d5d4fc61c9bcc356153;hb=33e8932ce36d4fbe58a9649b1a233c54f6400d6d;hp=b8a202ddbbf90fa022d8c62420db8e895928757a;hpb=c1569bc195865fa5c25c6945bbad78c872fa2046;p=kivitendo-erp.git diff --git a/SL/Presenter/RequirementSpec.pm b/SL/Presenter/RequirementSpec.pm index b8a202ddb..5cca5a8bd 100644 --- a/SL/Presenter/RequirementSpec.pm +++ b/SL/Presenter/RequirementSpec.pm @@ -5,20 +5,23 @@ use strict; use parent qw(Exporter); use Exporter qw(import); -our @EXPORT = qw(requirement_spec_text_block_jstree_data); +our @EXPORT = qw(requirement_spec); use Carp; -use SL::JSON; +sub requirement_spec { + my ($self, $requirement_spec, %params) = @_; -sub requirement_spec_text_block_jstree_data { - my ($self, $text_block, %params) = @_; + $params{display} ||= 'inline'; - return { - data => $text_block->title || '', - metadata => { id => $text_block->id, type => 'textblock' }, - attr => { id => "tb-" . $text_block->id, href => $params{href} || '#' }, - }; + croak "Unknown display type '$params{display}'" unless $params{display} =~ m/^(?:inline|table-cell)$/; + + my $text = join '', ( + $params{no_link} ? '' : '', + $self->escape($requirement_spec->id), + $params{no_link} ? '' : '', + ); + return $self->escaped_text($text); } 1;