A.6. AsciiBackend

GlobalSub <<EOS
sub AsciiBackend {
    package Vend::Order;
    $Vend::Order::override_track_order = \&track_order;
    sub track_order_backend {
        my ($order_no,$order_report) = @_;
        my ($c,$i);
        my (@backend);

        @backend = split /\s*,\s*/, $Vend::Cfg->{BackendOrder};

        if(@backend and $Vend::Cfg->{AsciiBackend}) {
            my(@ary);
            push @ary, $order_no;
            for(@backend) {
                push @ary, $::Values->{$_};
            }
            foreach $i (0 .. $#$Vend::Items) {
                push @ary, $Vend::Items->[$i]{'code'};
                push @ary, $Vend::Items->[$i]{'quantity'};
                if ($Vend::Cfg->{UseModifier}) {
                    foreach $j (@{$Vend::Cfg->{UseModifier}}) {
                        push @ary, $Vend::Items->[$i]->{$j}
                    }
                }
            }
            logData ($Vend::Cfg->{AsciiBackend}, @ary);
        }
        $Vend::Order::override_track_order->($order_no, $order_report);
    }
    *track_order = \&Vend::Order::override_track_order;
}
EOS

AddDirective BackendOrder
AddDirective AsciiBackend