Skip to content

Commit

Permalink
Refs #24901 - Add upgrade step to remove duplicate fallback images
Browse files Browse the repository at this point in the history
  • Loading branch information
avoinea committed Apr 23, 2015
1 parent 685af3f commit 96bcb7f
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 2 deletions.
2 changes: 2 additions & 0 deletions docs/HISTORY.txt
Expand Up @@ -3,6 +3,8 @@ Changelog

8.0.dev0 - (unreleased)
-----------------------
* Upgrade step: Within "Plone > Site setup > Add-ons" click on
upgrade button available for eea.exhibit
* Cleanup: Removed fallback images from ZODB
[voineali refs #24901]

Expand Down
2 changes: 1 addition & 1 deletion eea/exhibit/profiles/default/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<metadata>
<description>EEA Exhibit profile</description>
<version>6.2</version>
<version>8.0</version>
<dependencies>
<dependency>profile-eea.app.visualization:default</dependency>
</dependencies>
Expand Down
12 changes: 12 additions & 0 deletions eea/exhibit/upgrades/configure.zcml
Expand Up @@ -3,6 +3,18 @@
xmlns:genericsetup="http://namespaces.zope.org/genericsetup"
i18n_domain="eea">

<genericsetup:upgradeSteps
source="6.2"
destination="8.0"
profile="eea.exhibit:default">

<genericsetup:upgradeStep
title="Cleanup fallback images from ZODB"
handler="eea.exhibit.upgrades.evolve80.cleanup_fallback_images"
/>

</genericsetup:upgradeSteps>

<!-- 6.0 => 6.2 -->
<genericsetup:upgradeSteps
source="6.0"
Expand Down
43 changes: 43 additions & 0 deletions eea/exhibit/upgrades/evolve80.py
@@ -0,0 +1,43 @@
""" Cleanup
"""
import logging
from zope.component.interface import interfaceToName
from Products.CMFCore.utils import getToolByName
from eea.app.visualization.interfaces import IVisualizationEnabled
logger = logging.getLogger('eea.exhibit')

CLEANUP = [
'daviz.map.preview.png',
'daviz.tabular.preview.png',
'daviz.tile.preview.png',
'daviz.timeline.preview.png'
]

def cleanup_fallback_images(context):
""" Migrate exhibit image charts"""
ctool = getToolByName (context, 'portal_catalog')
iface = interfaceToName(context, IVisualizationEnabled)
brains = ctool(
object_provides=iface,
show_inactive=True, Language='all'
)


count = 0
for brain in brains:
doc = brain.getObject()
clean = []
for item in CLEANUP:
if item in doc.objectIds():
clean.append(item)

if not clean:
continue

length = len(clean)
logger.info('Removing %s exhibit fallback images from %s',
length, doc.absolute_url())
doc.manage_delObjects(clean)
count += length

logger.info('Removed %s exhibit fallback images', count)
2 changes: 1 addition & 1 deletion setup.py
Expand Up @@ -43,7 +43,7 @@
install_requires=[
'setuptools',
'rdflib',
'eea.app.visualization > 7.0',
'eea.app.visualization > 9.3',
# -*- Extra requirements: -*-
],
extras_require={
Expand Down

0 comments on commit 96bcb7f

Please sign in to comment.