Set version and previous in metadata

This commit is contained in:
Tobias Eidelpes 2021-01-09 17:33:00 +01:00
parent 37bfc8ae59
commit cd707226f6

View File

@ -111,6 +111,8 @@ class ImageEndpoint:
b64encoded_image = payload['image_data']
identifier = payload['id']
metadata = payload['metadata']
metadata['version'] = 0
metadata['previous'] = ''
filename = payload['metadata']['filename']
decoded_image = WrapperService.unwrap_file(b64encoded_image)
@ -172,25 +174,27 @@ class ImageEndpoint:
def image_api_update(request, identifier):
logger.debug('Image UPDATE single call: {}'.format(request))
# get metadata from MongoDB
metadata = MongoDBService.getSingle(identifier)
if not metadata:
return JsonResponse({'Result': 'Error - Could not find image to be updated',
'id': identifier}, status=404, safe=False)
payload = json.loads(request.body)
b64encoded_image = payload['image_data']
identifier = payload['id']
metadata = payload['metadata']
filename = payload['metadata']['filename']
# get metadata from MongoDB
mongodb_metadata = MongoDBService.getSingle(identifier)
if not mongodb_metadata:
return JsonResponse({'Result': 'Error - Could not find image to be updated',
'id': identifier}, status=404, safe=False)
metadata['version'] = mongodb_metadata['version']
decoded_image = WrapperService.unwrap_file(b64encoded_image)
MongoDBService.updateSingle(identifier, decoded_image)
for service in ImageEndpoint.storageServiceList:
orig_new_name = identifier + '_' + payload['metadata']['version'] + '.jpg'
if not service.move_file(identifier, orig_new_name):
orig_new_name = identifier + '_' + str(metadata['version']) + '.jpg'
if not service.move_file(identifier, orig_new_name, decoded_image):
print("Could not move file from {} to {}".format(identifier, orig_new_name))
if not service.create_file(filename, decoded_image):
print("Could not save updated image to " + service.name)