X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FPresenter%2FRequirementSpecItem.pm;h=58be1953d30e6da1ecaad56e2122e28874821d9a;hb=f3324b5ad66924333bf2a313974f6d4d21932707;hp=c9653e7acd8a435a580c687acd82ca0fb6cdddf6;hpb=84fc52bdc02b7b84f7a644cf2bed484f1213d9ce;p=kivitendo-erp.git diff --git a/SL/Presenter/RequirementSpecItem.pm b/SL/Presenter/RequirementSpecItem.pm index c9653e7ac..58be1953d 100644 --- a/SL/Presenter/RequirementSpecItem.pm +++ b/SL/Presenter/RequirementSpecItem.pm @@ -2,39 +2,45 @@ package SL::Presenter::RequirementSpecItem; use strict; -use parent qw(Exporter); +use SL::Presenter::Text qw(truncate); use Exporter qw(import); -our @EXPORT = qw(requirement_spec_item_tree_node_title requirement_spec_item_jstree_data requirement_spec_item_dependency_list); +our @EXPORT_OK = qw(requirement_spec_item_tree_node_title requirement_spec_item_jstree_data requirement_spec_item_dependency_list); use Carp; sub requirement_spec_item_tree_node_title { - my ($self, $item) = @_; + my ($item) = @_; - return join(' ', map { $_ || '' } ($item->fb_number, $self->truncate($item->parent_id ? $item->description : $item->title, at => 30), '<' . $item->id . '>')); + return join(' ', map { $_ || '' } ($item->fb_number, truncate($item->parent_id ? $item->description_as_stripped_html : $item->title, at => 30))); } +sub tree_node_title { goto &requirement_spec_item_tree_node_title } + sub requirement_spec_item_jstree_data { - my ($self, $item, %params) = @_; + my ($item, %params) = @_; - my @children = map { $self->requirement_spec_item_jstree_data($_, %params) } @{ $item->children_sorted }; + my @children = map { requirement_spec_item_jstree_data($_, %params) } @{ $item->children_sorted }; my $type = !$item->parent_id ? 'section' : 'function-block'; - my $class = $type . '-context-menu'; + my $class = $type . '-context-menu tooltip'; $class .= ' flagged' if $item->is_flagged; return { - data => $self->requirement_spec_item_tree_node_title($item), + data => requirement_spec_item_tree_node_title($item), metadata => { id => $item->id, type => $type }, - attr => { id => "fb-" . $item->id, href => $params{href} || '#', class => $class }, + attr => { id => "fb-" . $item->id, href => $params{href} || '#', class => $class, title => $item->content_excerpt }, children => \@children, }; } +sub jstree_data { goto &requirement_spec_item_jstree_data } + sub requirement_spec_item_dependency_list { - my ($self, $item) = @_; + my ($item) = @_; $::locale->language_join([ map { $_->fb_number } @{ $item->dependencies } ]); } +sub dependency_list { goto &requirement_spec_item_dependency_list } + 1;