From bb913d0a8f998781540d2456e9990f6a7bb67f34 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20van=20der=20Essen?=
 <fvdessen@gmail.com>
Date: Thu, 11 Dec 2014 15:42:51 +0100
Subject: [PATCH] [FIX] point_of_sale: the search in product or partners could
 crash if there were a number followed by a colon

---
 addons/point_of_sale/static/src/js/db.js | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/addons/point_of_sale/static/src/js/db.js b/addons/point_of_sale/static/src/js/db.js
index 656c49033e76..58d458d75600 100644
--- a/addons/point_of_sale/static/src/js/db.js
+++ b/addons/point_of_sale/static/src/js/db.js
@@ -129,24 +129,25 @@ function openerp_pos_db(instance, module){
             this.cache[store] = data;
         },
         _product_search_string: function(product){
-            var str = '' + product.id + ':' + product.display_name;
+            var str = product.display_name;
             if (product.ean13) {
                 str += '|' + product.ean13;
             }
             if (product.default_code) {
-                str += '|' + product.default_code.replace(':','');
+                str += '|' + product.default_code;
             }
             if (product.description) {
-                str += '|' + product.description.replace(':','');
+                str += '|' + product.description;
             }
             if (product.description_sale) {
-                str += '|' + product.description_sale.replace(':','');
+                str += '|' + product.description_sale;
             }
             var packagings = this.packagings_by_product_tmpl_id[product.product_tmpl_id] || [];
             for (var i = 0; i < packagings.length; i++) {
                 str += '|' + packagings[i].ean;
             }
-            return str + '\n';
+            str  = product.id + ':' + str.replace(':','') + '\n';
+            return str;
         },
         add_products: function(products){
             var stored_categories = this.product_by_category_id;
@@ -206,7 +207,7 @@ function openerp_pos_db(instance, module){
             }
         },
         _partner_search_string: function(partner){
-            var str = '' + partner.id + ':' + partner.name;
+            var str =  partner.name;
             if(partner.ean13){
                 str += '|' + partner.ean13;
             }
@@ -222,7 +223,8 @@ function openerp_pos_db(instance, module){
             if(partner.email){
                 str += '|' + partner.email;
             }
-            return str + '\n';
+            str = '' + partner.id + ':' + str.replace(':','') + '\n';
+            return str;
         },
         add_partners: function(partners){
             var updated_count = 0;
-- 
GitLab