X-Git-Url: http://wagnertech.de/git?p=kivitendo-erp.git;a=blobdiff_plain;f=SL%2FPresenter%2FOrder.pm;fp=SL%2FPresenter%2FOrder.pm;h=35005a7187d3b12314ae638ad6713c9c2d1925f4;hp=19d8483ec15fa9da62a610bbf3cf26e66433e5c7;hb=53593baa211863fbf66540cf1bcc36c8fb37257f;hpb=deb4d2dbb676d7d6f69dfe7815d6e0cb09bd4a44 diff --git a/SL/Presenter/Order.pm b/SL/Presenter/Order.pm index 19d8483ec..35005a718 100644 --- a/SL/Presenter/Order.pm +++ b/SL/Presenter/Order.pm @@ -2,39 +2,39 @@ package SL::Presenter::Order; use strict; -use parent qw(Exporter); +use SL::Presenter::EscapedText qw(escape is_escaped); use Exporter qw(import); -our @EXPORT = qw(sales_quotation sales_order request_quotation purchase_order); +our @EXPORT_OK = qw(sales_quotation sales_order request_quotation purchase_order); use Carp; sub sales_quotation { - my ($self, $order, %params) = @_; + my ($order, %params) = @_; - return _oe_record($self, $order, 'sales_quotation', %params); + return _oe_record($order, 'sales_quotation', %params); } sub sales_order { - my ($self, $order, %params) = @_; + my ($order, %params) = @_; - return _oe_record($self, $order, 'sales_order', %params); + return _oe_record($order, 'sales_order', %params); } sub request_quotation { - my ($self, $order, %params) = @_; + my ($order, %params) = @_; - return _oe_record($self, $order, 'request_quotation', %params); + return _oe_record($order, 'request_quotation', %params); } sub purchase_order { - my ($self, $order, %params) = @_; + my ($order, %params) = @_; - return _oe_record($self, $order, 'purchase_order', %params); + return _oe_record($order, 'purchase_order', %params); } sub _oe_record { - my ($self, $order, $type, %params) = @_; + my ($order, $type, %params) = @_; $params{display} ||= 'inline'; @@ -42,12 +42,19 @@ sub _oe_record { my $number_method = $order->quotation ? 'quonumber' : 'ordnumber'; - my $text = join '', ( - $params{no_link} ? '' : '', - $self->escape($order->$number_method), - $params{no_link} ? '' : '', - ); - return $self->escaped_text($text); + my $link_start = ''; + my $link_end = ''; + unless ($params{no_link}) { + my $action = $::instance_conf->get_feature_experimental_order + ? 'controller.pl?action=Order/edit' + : 'oe.pl?action=edit'; + $link_start = ''; + $link_end = ''; + } + + my $text = join '', ($link_start, escape($order->$number_method), $link_end); + + is_escaped($text); } 1; @@ -68,19 +75,19 @@ quotations, sales orders, requests for quotations and purchase orders # Sales quotations: my $object = SL::DB::Manager::Order->get_first(where => [ SL::DB::Manager::Order->type_filter('sales_quotation') ]); - my $html = SL::Presenter->get->sales_quotation($object, display => 'inline'); + my $html = SL::Presenter::Order::sales_quotation($object, display => 'inline'); # Sales orders: my $object = SL::DB::Manager::Order->get_first(where => [ SL::DB::Manager::Order->type_filter('sales_order') ]); - my $html = SL::Presenter->get->sales_order($object, display => 'inline'); + my $html = SL::Presenter::Order::sales_order($object, display => 'inline'); # Requests for quotations: my $object = SL::DB::Manager::Order->get_first(where => [ SL::DB::Manager::Order->type_filter('request_quotation') ]); - my $html = SL::Presenter->get->request_quotation($object, display => 'inline'); + my $html = SL::Presenter::Order::request_quotation($object, display => 'inline'); # Purchase orders: my $object = SL::DB::Manager::Order->get_first(where => [ SL::DB::Manager::Order->type_filter('purchase_order') ]); - my $html = SL::Presenter->get->purchase_order($object, display => 'inline'); + my $html = SL::Presenter::Order::purchase_order($object, display => 'inline'); =head1 FUNCTIONS