elody 0.0.178__py3-none-any.whl → 0.0.179__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
elody/csv.py CHANGED
@@ -11,6 +11,7 @@ from elody.exceptions import (
11
11
  )
12
12
  from elody.validator import validate_json
13
13
  from elody.schemas import entity_schema, mediafile_schema
14
+ from dateutil import parser
14
15
 
15
16
 
16
17
  class CSVParser:
@@ -207,6 +208,16 @@ class CSVMultiObject(CSVParser):
207
208
  return False
208
209
  return bool(value)
209
210
 
211
+ def is_datetime(self, value):
212
+ try:
213
+ parser.parse(value)
214
+ return True
215
+ except (ValueError, TypeError):
216
+ return False
217
+
218
+ def parse_datetime(self, value):
219
+ return parser.parse(value)
220
+
210
221
  def __fill_objects_from_csv(self):
211
222
  indexed_dict = dict()
212
223
  external_mediafiles_ids = []
@@ -300,6 +311,8 @@ class CSVMultiObject(CSVParser):
300
311
  metadata_key = metadata_info.get("map_to", key)
301
312
  indexed_dict[type][id].setdefault("metadata", list())
302
313
  options = metadata_info.get("value_options")
314
+ if self.is_datetime(value):
315
+ value = self.parse_datetime(value)
303
316
  if options and value not in options:
304
317
  if "invalid_value" not in self.get_errors():
305
318
  self.set_error("invalid_value", list())
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: elody
3
- Version: 0.0.178
3
+ Version: 0.0.179
4
4
  Summary: elody SDK for Python
5
5
  Author-email: Inuits <developers@inuits.eu>
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -1,7 +1,7 @@
1
1
  __init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  elody/__init__.py,sha256=d0Q6Fn44e7wFfLabDOBxpcJ1DPKWlFunGYDUBmO-4hA,22
3
3
  elody/client.py,sha256=VFjUUaE9edtK1XuAF5T3ayem2UEBr-Anww8AhITYLdI,8575
4
- elody/csv.py,sha256=5LZfr6p8eeK0IDHICfyBgKSMRCM-YXzXaomzl7G1-bc,15518
4
+ elody/csv.py,sha256=7ZTqwmB4CQzqN3ddoaTOKPgFHpk2UyJte-oN2994dIg,15911
5
5
  elody/error_codes.py,sha256=7ZLY69YScCB0Ghxqf2LiCt-U_JCYA_T8jTMlIDlvv2s,4179
6
6
  elody/exceptions.py,sha256=5KSw2sPCZz3lDIJX4LiR2iL9n4m4KIil04D1d3X5rd0,968
7
7
  elody/job.py,sha256=wpq1dSxYxMv1Jv1hSvyxvFI1qNbRkDNghRLhndo57rU,3923
@@ -40,8 +40,8 @@ tests/data.py,sha256=Q3oxduf-E3m-Z5G_p3fcs8jVy6g10I7zXKL1m94UVMI,2906
40
40
  tests/unit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
41
  tests/unit/test_csv.py,sha256=NQaOhehfQ4GuXku0Y1SA8DYjJeqqidbF50zEHAi8RZA,15923
42
42
  tests/unit/test_utils.py,sha256=g63szcEZyHhCOtrW4BnNbcgVca3oYPIOLjBdIzNwwN0,8784
43
- elody-0.0.178.dist-info/LICENSE,sha256=gXf5dRMhNSbfLPYYTY_5hsZ1r7UU1OaKQEAQUhuIBkM,18092
44
- elody-0.0.178.dist-info/METADATA,sha256=9u2Crpz6sHIdXS1gTUH7Kplq6H7Ov-7LDPFgAkcOjV4,23336
45
- elody-0.0.178.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
46
- elody-0.0.178.dist-info/top_level.txt,sha256=E0mImupLj0KmtUUCXRYEoLDRaSkuiGaOIIseAa0oQ-M,21
47
- elody-0.0.178.dist-info/RECORD,,
43
+ elody-0.0.179.dist-info/LICENSE,sha256=gXf5dRMhNSbfLPYYTY_5hsZ1r7UU1OaKQEAQUhuIBkM,18092
44
+ elody-0.0.179.dist-info/METADATA,sha256=4Kb7mlZGeCFnIX6T_27wFLYSQmK0Fc3NQOAHM1B2IsQ,23336
45
+ elody-0.0.179.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
46
+ elody-0.0.179.dist-info/top_level.txt,sha256=E0mImupLj0KmtUUCXRYEoLDRaSkuiGaOIIseAa0oQ-M,21
47
+ elody-0.0.179.dist-info/RECORD,,