tgshops-integrations 1.4__tar.gz → 1.6__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (20) hide show
  1. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/PKG-INFO +1 -1
  2. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/setup.py +1 -1
  3. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/middlewares/gateway.py +1 -1
  4. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/nocodb_connector/categories.py +18 -18
  5. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/nocodb_connector/client.py +6 -4
  6. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations.egg-info/PKG-INFO +1 -1
  7. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/README.md +0 -0
  8. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/setup.cfg +0 -0
  9. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/__init__.py +0 -0
  10. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/middlewares/__init__.py +0 -0
  11. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/models/__init__.py +0 -0
  12. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/models/categories.py +0 -0
  13. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/models/products.py +0 -0
  14. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/nocodb_connector/__init__.py +0 -0
  15. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/nocodb_connector/model_mapping.py +0 -0
  16. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/nocodb_connector/products.py +0 -0
  17. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations/nocodb_connector/tables.py +0 -0
  18. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations.egg-info/SOURCES.txt +0 -0
  19. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations.egg-info/dependency_links.txt +0 -0
  20. {tgshops_integrations-1.4 → tgshops_integrations-1.6}/tgshops_integrations.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tgshops_integrations
3
- Version: 1.4
3
+ Version: 1.6
4
4
  Summary: Library is intended to provide the integration of the external service or CRM system with the TelegramShops/It allows to configure the relationship between NocoDB list of the products used further to display in the shop/As a resultss the products can be synchronized and updated uppon the request.
5
5
  Home-page: https://git.the-devs.com/virtual-shops/shop-system/shop-backend-integrations/integration-library/integration-library
6
6
  Author: Dimi Latoff
@@ -2,7 +2,7 @@ from setuptools import setup,find_packages
2
2
 
3
3
  setup(
4
4
  name='tgshops_integrations',
5
- version='1.4',
5
+ version='1.6',
6
6
  packages=find_packages(),
7
7
  install_requires=[
8
8
  # List your library's dependencies here
@@ -78,7 +78,7 @@ class Gateway(NocodbClient):
78
78
  products_table = self.tables_list[self.config.NOCODB_PRODUCTS]
79
79
  await self.product_manager.update_attributes(products=external_products)
80
80
  # Updates categories if there were a new ones created
81
- external_products=await self.category_manager.map_categories(external_products=external_products)
81
+ # external_products=await self.category_manager.map_categories(external_products=external_products)
82
82
  self.product_manager.actual_products=await self.get_all_products()
83
83
  # self.product_manager.actual_products = await self.product_manager.get_products_v2(offset=0,limit=200)
84
84
 
@@ -94,26 +94,26 @@ class CategoryManager(NocodbClient):
94
94
 
95
95
  for product in external_products:
96
96
  # Check for new categories
97
- # IF some category number exists on external side
98
- if product.category:
99
- for external_category_id,category_name in zip(product.category,product.category_name):
100
- if category_name not in [*self.categories.keys()]:
101
- new_category= await self.create_product_category(table_id=self.categories_table,category_name=category_name,category_id=external_category_id,table_name=PRODUCT_NAME_FIELD)
102
- if self.logging:
103
- logger.info(f"New Category {new_category}")
104
- self.external_categories[new_category["Id"]]=external_category_id
105
- self.categories=await self.get_product_categories(table_id=self.categories_table, table_name=PRODUCT_NAME_FIELD)
97
+ # DEPRECATED IF some category number exists on external side
98
+ # if product.category:
99
+ # for external_category_id,category_name in zip(product.category,product.category_name):
100
+ # if category_name not in [*self.categories.keys()]:
101
+ # new_category= await self.create_product_category(table_id=self.categories_table,category_name=category_name,category_id=external_category_id,table_name=PRODUCT_NAME_FIELD)
102
+ # if self.logging:
103
+ # logger.info(f"New Category {new_category}")
104
+ # self.external_categories[new_category["Id"]]=external_category_id
105
+ # self.categories=await self.get_product_categories(table_id=self.categories_table, table_name=PRODUCT_NAME_FIELD)
106
106
  #Else if there is just the name, create the category with new id
107
- else:
107
+ # else:
108
108
  #Needs the buttons to be initialized, can connect items to buttons , which allows filtered acces through the menu
109
- for num,category_name in enumerate(product.category_name):
110
- if category_name not in categories_list:
111
- if self.filter_buttons:
112
- parent_id=self.categories[self.filter_buttons[num]]
113
- else:
114
- parent_id=self.categories[product.category_II_name[0]]
115
- categories_to_create.append([category_name,parent_id])
116
- categories_list.append(category_name)
109
+ for num,category_name in enumerate(product.category_name):
110
+ if category_name not in categories_list:
111
+ if self.filter_buttons:
112
+ parent_id=self.categories[self.filter_buttons[num]]
113
+ else:
114
+ parent_id=self.categories[product.category_II_name[0]]
115
+ categories_to_create.append([category_name,parent_id])
116
+ categories_list.append(category_name)
117
117
 
118
118
  if categories_to_create:
119
119
  categories_to_create.sort(key=lambda x: x[0])
@@ -253,8 +253,12 @@ class NocodbClient:
253
253
  source_column_id -ID of source column
254
254
  linked_record_id - ID of linked record
255
255
  """
256
-
257
- response = requests.get(image_url)
256
+ try:
257
+ response = requests.get(image_url)
258
+ except:
259
+ logger.info(f"Error with loading image via url - {image_url}")
260
+ return ""
261
+
258
262
  if response.status_code == 200:
259
263
  file = io.BytesIO(response.content)
260
264
  else:
@@ -263,9 +267,7 @@ class NocodbClient:
263
267
  file_size = file.getbuffer().nbytes
264
268
 
265
269
  if file_size:
266
-
267
270
  files = {'file': (image_name, file, 'image/jpeg')}
268
-
269
271
  url = f"{self.NOCODB_HOST.replace('/api/v2', '/api/v1')}/db/storage/upload?path=noco/{source_column_id}/{product_table_name}/{images_column_id}"
270
272
  timeout = httpx.Timeout(100.0)
271
273
  response = await self.httpx_client.post(url,files=files,headers=self.httpx_client.headers,timeout=timeout)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tgshops-integrations
3
- Version: 1.4
3
+ Version: 1.6
4
4
  Summary: Library is intended to provide the integration of the external service or CRM system with the TelegramShops/It allows to configure the relationship between NocoDB list of the products used further to display in the shop/As a resultss the products can be synchronized and updated uppon the request.
5
5
  Home-page: https://git.the-devs.com/virtual-shops/shop-system/shop-backend-integrations/integration-library/integration-library
6
6
  Author: Dimi Latoff