Doku, picker nach Presenter verschoben
authorSven Schöling <s.schoeling@linet-services.de>
Wed, 10 Jul 2013 13:27:37 +0000 (15:27 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Thu, 11 Jul 2013 09:08:13 +0000 (11:08 +0200)
SL/Presenter/Part.pm
SL/Template/Plugin/L.pm

index 99a6f14..25d6820 100644 (file)
@@ -19,3 +19,47 @@ sub part_picker {
 }
 
 1;
+
+__END__
+
+=encoding utf-8
+
+=head1 NAME
+
+SL::Presenter::Part - Part lelated presenter stuff
+
+=head1 SYNOPSIS
+
+see L<SL::Presenter>
+
+=head1 DESCRIPTION
+
+see L<SL::Presenter>
+
+=head1 FUNCTIONS
+
+=over 4
+
+=item C<part_picker NAME, VALUE, PARAMS>
+
+All-in-one picker widget for parts. The name will be both id and name of the
+resulting hidden C<id> input field. An additional dummy input will be generated
+which is used to find parts. For a detailed description of it's behaviour, see
+section C<PART PICKER SPECIFICATION>.
+
+C<VALUE> can be an id or C<Rose::DB:Object> instance.
+
+If C<PARAMS> contains C<type> only parts of this type will be used for autocompletion.
+
+
+=back
+
+=head1 BUGS
+
+None yet :)
+
+=head1 AUTHOR
+
+Sven Schöling E<lt>s.schoeling@linet-services.deE<gt>
+
+=cut
index 72cad2f..78efe64 100644 (file)
@@ -66,6 +66,7 @@ sub select_tag    { return _call_presenter('select_tag',    @_); }
 sub input_tag     { return _call_presenter('input_tag',     @_); }
 sub truncate      { return _call_presenter('truncate',      @_); }
 sub simple_format { return _call_presenter('simple_format', @_); }
+sub part_picker   { return _call_presenter('part_picker',   @_); }
 
 sub _set_id_attribute {
   my ($attributes, $name) = @_;
@@ -491,18 +492,6 @@ sub paginate_controls {
   return SL::Presenter->get->render('common/paginate', %template_params);
 }
 
-sub part_picker {
-  my ($self, $name, $value, %params) = _hashify(3, @_);
-  my $name_e    = _H($name);
-
-  my $ret = $self->hidden_tag($name, (ref $value && $value->can('id') ? $value->id : ''), class => 'part_autocomplete') .
-  $self->hidden_tag("", delete $params{type}, id => $self->name_to_id("$name_e\_type")) .
-  $self->input_tag("", (ref $value && $value->can('description')) ? $value->description : '', id => $self->name_to_id("$name_e\_name"), %params) .
-  $self->hidden_tag("", delete $params{column}, id => $self->name_to_id("$name_e\_column"));
-
-  $self->html_tag('span', $ret, class => 'part_picker');
-}
-
 1;
 
 __END__