Пример #1
0
 def rebuild_catalog(self):
     context = self.context
     upgrades.upgrade_plone(context)
     catalog = getToolByName(self.context, 'portal_catalog')
     upgrades.log('Recataloging items')
     brains = catalog.search({})
     lb = len(brains)
     for i, itm in enumerate(brains):
         try:
             obj = context.unrestrictedTraverse(itm.getPath())
             uid = '/'.join(obj.getPhysicalPath())
             if not uid in catalog._catalog.uids:
                 catalog.catalog_object(obj)
                 catalog.indexObject(obj)
             # let the objects be wrapped now by plone.indexer
             if IIndexableObject.providedBy(obj):
                 interface.noLongerProvides(obj, IIndexableObject)
             catalog.reindexObject(obj, [
                 "allowedRolesAndUsers",
                 "object_provides",
                 "sortable_title",
                 "getObjPositionInParent",
                 "getObjSize",
                 "is_folderish",
                 "syndication_enabled",
                 "is_default_page",
                 "getIcon",
             ])
         except Exception, e:
             upgrades.log('pb cataloging %s; %s' % (itm.getPath(), e))
         if i % 10 == 0:
             upgrades.log('Recatalog: %s on %s (%s %s)' %
                          (i, lb, (i / (1.0 * lb) * 100), '%'))
             upgrades.commit(context)
Пример #2
0
 def rebuild_catalog(self):
     context = self.context
     upgrades.upgrade_plone(context)
     catalog = getToolByName(self.context, 'portal_catalog')
     upgrades.log('Recataloging items')
     brains = catalog.search({})
     lb = len(brains)
     for i, itm in enumerate(brains):
         try:
             obj = context.unrestrictedTraverse(itm.getPath())
             uid = '/'.join(obj.getPhysicalPath())
             if not uid in catalog._catalog.uids:
                 catalog.catalog_object(obj)
                 catalog.indexObject(obj)
             # let the objects be wrapped now by plone.indexer
             if IIndexableObject.providedBy(obj):
                 interface.noLongerProvides(obj, IIndexableObject)
             catalog.reindexObject(obj, [
                 "allowedRolesAndUsers", "object_provides", "sortable_title",
                 "getObjPositionInParent", "getObjSize", "is_folderish",
                 "syndication_enabled", "is_default_page", "getIcon",
                 ])
         except Exception, e:
             upgrades.log('pb cataloging %s; %s' % (itm.getPath(), e))
         if i % 10 == 0:
             upgrades.log('Recatalog: %s on %s (%s %s)' % (i, lb, (i/(1.0*lb)*100), '%'))
             upgrades.commit(context)
Пример #3
0
 def upgrade_plone(self):
     """Run the plone_migration tool upgrade loop"""
     pm = getToolByName(self.context, 'portal_migration')
     if pm.needUpgrading():
         upgrades.log(upgrades.upgrade_plone(self.context))
         upgrades.commit(self.context)
     if pm.needUpgrading():
         raise Exception("Plone did not upgrade")
     else:
         upgrades.commit(self.context)
Пример #4
0
 def upgrade_plone(self):
     """Run the plone_migration tool upgrade loop"""
     pm = getToolByName(self.context, 'portal_migration')
     if pm.needUpgrading():
         upgrades.log(
             upgrades.upgrade_plone(self.context)
         )
         upgrades.commit(self.context)
     if pm.needUpgrading():
         raise Exception("Plone did not upgrade")
     else:
         upgrades.commit(self.context)