Changeset 1930 in products for quintagroup.seoptimizer/branches/refactoring2.3.0/quintagroup/seoptimizer/upgrades.py
- Timestamp:
- Mar 17, 2010 6:40:45 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
quintagroup.seoptimizer/branches/refactoring2.3.0/quintagroup/seoptimizer/upgrades.py
r1925 r1930 2 2 from zope.component import queryMultiAdapter 3 3 from Products.CMFCore.utils import getToolByName 4 5 from quintagroup.canonicalpath.interfaces import ICanonicalLink 6 from quintagroup.canonicalpath.adapters import PROPERTY_LINK 4 7 5 8 logger = logging.getLogger('quintagroup.seoptimizer') … … 83 86 skins_tool.addSkinSelection(skinName, ','.join(paths)) 84 87 88 def migrateCanonical(plone_tools): 89 """ Rename qSEO_canonical property into PROPERTY_LINK 90 for all portal objects, which use SEO 91 """ 92 types = plone_tools.types() 93 portal = plone_tools.url().getPortalObject() 94 allCTTypes = types.listContentTypes() 95 obj_metatypes = [m.content_meta_type for m in types.objectValues() \ 96 if m.getId() in allCTTypes] 97 portal.ZopeFindAndApply( 98 portal, 99 obj_metatypes=','.join(obj_metatypes), 100 apply_func=renameProperty 101 ) 102 103 def renameProperty(obj, path): 104 """ Rename qSEO_canonical property into PROPERTY_LINK 105 for obj, which use SEO 106 """ 107 if obj.hasProperty('qSEO_canonical'): 108 value = obj.getProperty('qSEO_canonical') 109 110 level, msg = logging.INFO, "For %(url)s object 'qSEO_canonical' "\ 111 "property renamed to '%(name)s'." 112 try: 113 ICanonicalLink(obj).canonical_link = value 114 except e: 115 level, msg = logging.ERROR, "%s on renaming 'qSEO_canonical' " \ 116 "property for %%(url)s object" % str(e) 117 118 logger.log(level, msg % {'url':obj.absolute_url(), 'name':PROPERTY_LINK} ) 119 obj.manage_delProperties(['qSEO_canonical']) 120 85 121 def upgrade_2_to_3(setuptool): 86 122 """ Upgrade quintagroup.seoptimizer from version 2.x.x to 3.0.0. … … 93 129 removeNonUseSeoProperties(plone_tools) 94 130 removeSkin(plone_tools) 131 migrateCanonical(plone_tools)
Note: See TracChangeset
for help on using the changeset viewer.