X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/5162c8cc5f1f380a9fffb1107374e3919ef847ce..ce904bd69f1eaafe99dbdda7956471b2ea219feb:/SL/Presenter/Part.pm diff --git a/SL/Presenter/Part.pm b/SL/Presenter/Part.pm index 26f296c7c..8f13aeeb9 100644 --- a/SL/Presenter/Part.pm +++ b/SL/Presenter/Part.pm @@ -104,9 +104,13 @@ sub separate_abbreviation { # sub select_classification { my ($self, $name, %attributes) = @_; + $attributes{value_key} = 'id'; $attributes{title_key} = 'description'; - my $collection = SL::DB::Manager::PartClassification->get_all_sorted(); + + my $classification_type_filter = delete $attributes{type} // []; + + my $collection = SL::DB::Manager::PartClassification->get_all_sorted( where => $classification_type_filter ); $_->description($::locale->text($_->description)) for @{ $collection }; return $self->select_tag( $name, $collection, %attributes ); } @@ -124,7 +128,7 @@ SL::Presenter::Part - Part related presenter stuff =head1 SYNOPSIS # Create an html link for editing/opening a part/service/assembly - my $object = my $object = SL::DB::Manager::Part->get_first; + my $object = SL::DB::Manager::Part->get_first; my $html = SL::Presenter->get->part($object, display => 'inline'); see also L @@ -168,7 +172,7 @@ Returns the shortcut of the classification =item C -Returns the shortcut of the classification if the classifiaction has the separate flag set. +Returns the shortcut of the classification if the classification has the separate flag set. =back @@ -176,7 +180,7 @@ Returns the shortcut of the classification if the classifiaction has the separat =item C -Returns a HTML Select Tag with all available Classifications +Returns an HTML select tag with all available classifications. C<%params> can include: @@ -184,7 +188,7 @@ C<%params> can include: =item * default -The Id of the selected item . +The id of the selected item. =back @@ -233,10 +237,10 @@ set in C: =item * C -If exactly one element matches the input, the internal id will set to this id, -the internal state will be set to C and the C even on the -picker will be fired. Additionally, if C contain C -a special event C will be fired which is guaranteed to +If exactly one element matches the input, the internal id will be set to this +id, the internal state will be set to C and the C event on the +picker will be fired. Additionally, if C contains C a +special event C will be fired which is guaranteed to contain a complete JSON representation of the part. After that the action C will be executed, which defaults to @@ -248,7 +252,7 @@ If more than one element matches the input, the internal state will be set to undefined. After that the action C will be executed, which defaults to -opening a popup dialog for graphical interaction. If C contain +opening a popup dialog for graphical interaction. If C contains C an alternative popup will be opened, allowing multiple items to be selected. Note however that this requires an additional callback C to work.