From a12076e0fd8dfd0e4d35802684bbd837ed2246b0 Mon Sep 17 00:00:00 2001 From: Faris Ansari Date: Tue, 31 Jul 2018 23:06:00 +0530 Subject: [PATCH] Convert image to base64 before sending Item to sync --- .../item_to_hub_item/__init__.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py b/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py index e69de29bb2..9445e3a8dc 100644 --- a/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py +++ b/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py @@ -0,0 +1,19 @@ +import io, base64, urllib, os + +def pre_process(doc): + + file_path = doc.image + file_name = os.path.basename(file_path) + + if file_path.startswith('http'): + url = file_path + file_path = os.path.join('/tmp', file_name) + urllib.urlretrieve(url, file_path) + + with io.open(file_path, 'rb') as f: + doc.image = base64.b64encode(f.read()) + + doc.image_file_name = file_name + + return doc +