X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/65d2537d658b99b005a18c6663bc1293b41a1d83..6e594d280b:/SL/Presenter/Part.pm diff --git a/SL/Presenter/Part.pm b/SL/Presenter/Part.pm index c3b366a99..4bd45ca41 100644 --- a/SL/Presenter/Part.pm +++ b/SL/Presenter/Part.pm @@ -7,7 +7,7 @@ use SL::DB::PartClassification; use SL::Locale::String qw(t8); use Exporter qw(import); -our @EXPORT = qw(part_picker part select_classification classification_abbreviation type_abbreviation separate_abbreviation); +our @EXPORT = qw(part_picker part select_classification classification_abbreviation type_abbreviation separate_abbreviation typeclass_abbreviation); use Carp; @@ -39,7 +39,7 @@ sub part_picker { my $ret = $self->input_tag($name, (ref $value && $value->can('id') ? $value->id : ''), class => "@classes", type => 'hidden', id => $id) . - join('', map { $params{$_} ? $self->input_tag("", delete $params{$_}, id => "${id}_${_}", type => 'hidden') : '' } qw(part_type unit convertible_unit)) . + join('', map { $params{$_} ? $self->input_tag("", delete $params{$_}, id => "${id}_${_}", type => 'hidden') : '' } qw(part_type classification_id unit convertible_unit)) . $self->input_tag("", ref $value ? $value->displayable_name : '', id => "${id}_name", %params); $::request->layout->add_javascripts('autocomplete_part.js'); @@ -53,7 +53,6 @@ sub part_picker { # sub type_abbreviation { my ($self, $part_type) = @_; - $main::lxdebug->message(LXDebug->DEBUG2(),"parttype=".$part_type); return $::locale->text('Assembly (typeabbreviation)') if $part_type eq 'assembly'; return $::locale->text('Part (typeabbreviation)') if $part_type eq 'part'; return $::locale->text('Assortment (typeabbreviation)') if $part_type eq 'assortment'; @@ -85,6 +84,22 @@ sub classification_abbreviation { $obj && $obj->abbreviation ? t8($obj->abbreviation) : ''; } +sub typeclass_abbreviation { + my ($self, $part) = @_; + return '' if !$part || !$part->isa('SL::DB::Part'); + return $self->type_abbreviation($part->part_type).$self->classification_abbreviation($part->classification_id); +} + +# +# shortcut for article type +# +sub separate_abbreviation { + my ($self, $id) = @_; + SL::DB::Manager::PartClassification->cache_all(); + my $obj = SL::DB::PartClassification->load_cached($id); + $obj && $obj->abbreviation && $obj->report_separate ? t8($obj->abbreviation) : ''; +} + # # generate selection tag # @@ -152,6 +167,14 @@ Returns the shortcut of the classification =over 2 +=item C + +Returns the shortcut of the classification if the classifiaction has the separate flag set. + +=back + +=over 2 + =item C Returns a HTML Select Tag with all available Classifications