X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/c1569bc195865fa5c25c6945bbad78c872fa2046..835e3fd9a0114f9aec38af6c98f69a66cec61bdc:/SL/Presenter/RequirementSpec.pm 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;