[interchange: 1/2] * Fix long-wrong code which had the effect of always stripping - signs.
Mike Heins
interchange-cvs at icdevgroup.org
Mon Mar 14 15:34:03 UTC 2016
commit 9cffe132ee81963ce52966ba7bf70406a0b03aeb
Author: Mike Heins <mike at perusion.com>
Date: Mon Mar 14 11:30:26 2016 -0400
* Fix long-wrong code which had the effect of always stripping - signs.
* Fix code which was intended to remove amounts after the decimal point
unless FractionalItems.
lib/Vend/Order.pm | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
---
diff --git a/lib/Vend/Order.pm b/lib/Vend/Order.pm
index 1eb0690..d857261 100644
--- a/lib/Vend/Order.pm
+++ b/lib/Vend/Order.pm
@@ -2423,9 +2423,13 @@ sub add_items {
undef $item;
$quantity = defined $quantities[$j] ? $quantities[$j] : 1;
$set = $quantity =~ s/^=//;
- $quantity =~ s/^(-?)\D+/$1/;
- $quantity =~ s/^(-?\d*)\D.*/$1/
- unless $Vend::Cfg->{FractionalItems};
+
+ ## Strip any whitespace, letters, etc. but allow digits, decimals, and - signs
+ $quantity =~ s/^[^-.\d]+/$1/;
+
+ ## Strip decimal points unless FractionalItems
+ $quantity =~ s/\..*// unless $Vend::Cfg->{FractionalItems};
+
($j++,next) unless $quantity;
if(! $fly[$j]) {
$base = product_code_exists_tag($code, $bases[$j] || undef);
More information about the interchange-cvs
mailing list