diff --git a/wildcard/media/profiles.zcml b/wildcard/media/profiles.zcml
index f47da38..ffdc210 100644
--- a/wildcard/media/profiles.zcml
+++ b/wildcard/media/profiles.zcml
@@ -88,5 +88,12 @@
sortkey="1"
profile="wildcard.media:default"
/>
-
+
diff --git a/wildcard/media/profiles/default/metadata.xml b/wildcard/media/profiles/default/metadata.xml
index 48cf589..07d0bfd 100644
--- a/wildcard/media/profiles/default/metadata.xml
+++ b/wildcard/media/profiles/default/metadata.xml
@@ -1,6 +1,6 @@
- 2003
+ 3000
profile-plone.app.dexterity:default
diff --git a/wildcard/media/upgrades.py b/wildcard/media/upgrades.py
index fa43a95..b6cb34f 100644
--- a/wildcard/media/upgrades.py
+++ b/wildcard/media/upgrades.py
@@ -2,29 +2,30 @@
from Products.CMFPlone.utils import getFSVersionTuple
from wildcard.media.settings import GlobalSettings
+import logging
-PROFILE_ID = 'profile-wildcard.media:default'
-PROFILE_ID_PLONE4 = 'profile-wildcard.media:plone4'
-PROFILE_ID_PLONE5 = 'profile-wildcard.media:plone5'
+PROFILE_ID = "profile-wildcard.media:default"
+PROFILE_ID_PLONE4 = "profile-wildcard.media:plone4"
+PROFILE_ID_PLONE5 = "profile-wildcard.media:plone5"
def upgrade_resources(context, logger=None):
- setup = getToolByName(context, 'portal_setup')
+ setup = getToolByName(context, "portal_setup")
if getFSVersionTuple()[0] == 4:
- setup.runImportStepFromProfile(PROFILE_ID_PLONE4, 'cssregistry')
- setup.runImportStepFromProfile(PROFILE_ID_PLONE4, 'jsregistry')
+ setup.runImportStepFromProfile(PROFILE_ID_PLONE4, "cssregistry")
+ setup.runImportStepFromProfile(PROFILE_ID_PLONE4, "jsregistry")
else:
- setup.runImportStepFromProfile(PROFILE_ID_PLONE5, 'plone.app.registry')
+ setup.runImportStepFromProfile(PROFILE_ID_PLONE5, "plone.app.registry")
def upgrade_types(context, logger=None):
- setup = getToolByName(context, 'portal_setup')
- setup.runImportStepFromProfile(PROFILE_ID, 'typeinfo')
+ setup = getToolByName(context, "portal_setup")
+ setup.runImportStepFromProfile(PROFILE_ID, "typeinfo")
def upgrade_registry(context, logger=None):
- setup = getToolByName(context, 'portal_setup')
- setup.runImportStepFromProfile(PROFILE_ID, 'plone.app.registry')
+ setup = getToolByName(context, "portal_setup")
+ setup.runImportStepFromProfile(PROFILE_ID, "plone.app.registry")
def upgrade_to_2(context):
@@ -33,7 +34,7 @@ def upgrade_to_2(context):
def upgrade_to_2003(context):
- portal = getToolByName(context, 'portal_url').getPortalObject()
+ portal = getToolByName(context, "portal_url").getPortalObject()
settings = GlobalSettings(portal)
# Apply old in/outfile options to each new format specific option
old_outfileopt = settings.convert_outfile_options
@@ -47,3 +48,27 @@ def upgrade_to_2003(context):
settings.avconv_in_mp4 = old_infileopt
settings.avconv_in_ogg = old_infileopt
settings.avconv_in_webm = old_infileopt
+
+
+def upgrade_to_3000(context, logger=None):
+ """We need to change the name for an attribute for video objects.
+ youtube_url now is video_url"""
+
+ if logger is None:
+ # Called as upgrade step: define our own logger.
+ logger = logging.getLogger("wildcard.media")
+
+ logger.info("Upgrading wildcard.media to version 3000")
+
+ catalog = getToolByName(context, "portal_catalog")
+ brains = catalog(portal_type="WildcardVideo")
+ count = 0
+
+ for brain in brains:
+ video_obj = brain.getObject()
+ if getattr(video_obj, "youtube_url", ""):
+ video_obj.video_url = video_obj.youtube_url
+ video_obj.reindexObject() # reindexing
+ count += 1
+
+ logger.info("{} fields for WildcardVideo objects converted.".format(count))