summaryrefslogtreecommitdiff
path: root/sanitize_price.go
diff options
context:
space:
mode:
Diffstat (limited to 'sanitize_price.go')
-rw-r--r--sanitize_price.go19
1 files changed, 15 insertions, 4 deletions
diff --git a/sanitize_price.go b/sanitize_price.go
index 5be9e67..8b9443f 100644
--- a/sanitize_price.go
+++ b/sanitize_price.go
@@ -7,7 +7,8 @@ import (
)
func sanitize_price(price string) (int, error) {
- multiply_by_100 := false
+ multiply_by_10 := false
+ multiply_by_100 := true
price = strings.TrimSpace(price)
@@ -17,6 +18,12 @@ func sanitize_price(price string) (int, error) {
price = strings.TrimSuffix(price, "€")
price = strings.TrimSpace(price)
+ price = strings.TrimSuffix(strings.ToLower(price), "eur")
+ price = strings.TrimSpace(price)
+
+ price = strings.TrimSuffix(strings.ToLower(price), "euro")
+ price = strings.TrimSpace(price)
+
c := string(price[len(price)-2:])
c = string(c[0:1])
@@ -29,6 +36,7 @@ func sanitize_price(price string) (int, error) {
}
multiply_by_10 = true
+ multiply_by_100 = false
} else if "." == c {
if strings.Count(price, ".") > 1 {
@@ -36,10 +44,11 @@ func sanitize_price(price string) (int, error) {
}
multiply_by_10 = true
+ multiply_by_100 = false
}
- c := string(price[len(price)-3:])
+ c = string(price[len(price)-3:])
c = string(c[0:1])
/*
@@ -50,14 +59,16 @@ func sanitize_price(price string) (int, error) {
return 0, errors.New("Invalid format")
}
- multiply_by_100 = true
+ multiply_by_10 = false
+ multiply_by_100 = false
} else if "." == c {
if strings.Count(price, ".") > 1 {
return 0, errors.New("Invalid format")
}
- multiply_by_100 = true
+ multiply_by_10 = false
+ multiply_by_100 = false
}