Skip to content

Commit

Permalink
Migration to v13: image resizing
Browse files Browse the repository at this point in the history
  • Loading branch information
DocMarty84 committed Oct 6, 2019
1 parent def5a18 commit 733669e
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 35 deletions.
30 changes: 12 additions & 18 deletions models/oomusic_artist.py
Original file line number Diff line number Diff line change
Expand Up @@ -99,18 +99,15 @@ def _compute_fm_image(self):
artist.fm_image = artist.fm_image_cache
continue

resized_images = {"image_medium": False}
resized_image = False
req_json = artist._lastfm_artist_getinfo()
try:
_logger.debug("Retrieving image for artist %s...", artist.name)
for image in req_json["artist"]["image"]:
if image["size"] == "large" and image["#text"]:
image_content = urllib.request.urlopen(image["#text"], timeout=5).read()
resized_images = tools.image_get_resized_images(
base64.b64encode(image_content),
return_big=False,
return_medium=True,
return_small=False,
resized_image = tools.image_process(
base64.b64encode(image_content), size=(128, 128), crop=True
)
break
except KeyError:
Expand All @@ -132,14 +129,14 @@ def _compute_fm_image(self):
artist._lastfm_artist_getinfo(force=True)

# Avoid useless save in cache
if resized_images["image_medium"] == artist.fm_image_cache:
if resized_image == artist.fm_image_cache:
continue

artist.fm_image = resized_images["image_medium"]
artist.fm_image = resized_image

# Save in cache
try:
artist.sudo().write({"fm_image_cache": resized_images["image_medium"]})
artist.sudo().write({"fm_image_cache": resized_image})
self.env.cr.commit()
except OperationalError:
_logger.warning(
Expand All @@ -155,7 +152,7 @@ def _compute_sp_image(self):
artist.sp_image = artist.sp_image_cache
continue

resized_images = {"image_medium": False}
resized_image = False
req_json = artist._spotify_artist_search(force=force)
try:
_logger.debug("Retrieving image for artist %s...", artist.name)
Expand All @@ -166,11 +163,8 @@ def _compute_sp_image(self):
continue
for image in images:
image_content = urllib.request.urlopen(image["url"], timeout=5).read()
resized_images = tools.image_get_resized_images(
base64.b64encode(image_content),
return_big=False,
return_medium=True,
return_small=False,
resized_image = tools.image_process(
base64.b64encode(image_content), size=(128, 128), crop=True
)
break
except KeyError:
Expand All @@ -192,14 +186,14 @@ def _compute_sp_image(self):
artist._spotify_artist_search(force=True)

# Avoid useless save in cache
if resized_images["image_medium"] == artist.sp_image_cache:
if resized_image == artist.sp_image_cache:
continue

artist.sp_image = resized_images["image_medium"]
artist.sp_image = resized_image

# Save in cache
try:
artist.sudo().write({"sp_image_cache": resized_images["image_medium"]})
artist.sudo().write({"sp_image_cache": resized_image})
self.env.cr.commit()
except OperationalError:
_logger.warning(
Expand Down
30 changes: 13 additions & 17 deletions models/oomusic_folder.py
Original file line number Diff line number Diff line change
Expand Up @@ -270,8 +270,8 @@ def _compute_image_big(self):
continue
try:
_logger.debug("Resizing image folder %s...", folder.path)
resized_images = tools.image_get_resized_images(
folder.image_folder, return_big=True, return_medium=False, return_small=False
resized_image = tools.image_process(
folder.image_folder, size=(1024, 1024), crop=True
)
except:
_logger.warning(
Expand All @@ -282,15 +282,15 @@ def _compute_image_big(self):
)
continue

folder.image_big = resized_images["image"]
folder.image_big = resized_image

# Avoid useless save in cache
if resized_images["image"] == folder.image_big_cache:
if resized_image == folder.image_big_cache:
continue

# Save in cache
try:
folder.sudo().write({"image_big_cache": resized_images["image"]})
folder.sudo().write({"image_big_cache": resized_image})
self.env.cr.commit()
except OperationalError:
_logger.warning(
Expand All @@ -305,9 +305,7 @@ def _compute_image_medium(self):
continue
try:
_logger.debug("Resizing image folder %s...", folder.path)
resized_images = tools.image_get_resized_images(
folder.image_folder, return_big=False, return_medium=True, return_small=False
)
resized_image = tools.image_process(folder.image_folder, size=(128, 128), crop=True)
except:
_logger.warning(
"Error with image in folder '%s' (id: %s)",
Expand All @@ -317,15 +315,15 @@ def _compute_image_medium(self):
)
continue

folder.image_medium = resized_images["image_medium"]
folder.image_medium = resized_image

# Avoid useless save in cache
if resized_images["image_medium"] == folder.image_medium_cache:
if resized_image == folder.image_medium_cache:
continue

# Save in cache
try:
folder.sudo().write({"image_medium_cache": resized_images["image_medium"]})
folder.sudo().write({"image_medium_cache": resized_image})
self.env.cr.commit()
except OperationalError:
_logger.warning(
Expand All @@ -340,9 +338,7 @@ def _compute_image_small(self):
continue
try:
_logger.debug("Resizing image folder %s...", folder.path)
resized_images = tools.image_get_resized_images(
folder.image_folder, return_big=False, return_medium=False, return_small=True
)
resized_image = tools.image_process(folder.image_folder, size=(64, 64), crop=True)
except:
_logger.warning(
"Error with image in folder '%s' (id: %s)",
Expand All @@ -352,15 +348,15 @@ def _compute_image_small(self):
)
continue

folder.image_small = resized_images["image_small"]
folder.image_small = resized_image

# Avoid useless save in cache
if resized_images["image_small"] == folder.image_small_cache:
if resized_image == folder.image_small_cache:
continue

# Save in cache
try:
folder.sudo().write({"image_small_cache": resized_images["image_small"]})
folder.sudo().write({"image_small_cache": resized_image})
self.env.cr.commit()
except OperationalError:
_logger.warning(
Expand Down

0 comments on commit 733669e

Please sign in to comment.