Exemple #1
0
                    logger.info('Deleting old news: %s/%s', index+1, total)
                    transaction.commit()

        logger.info('Deleting old news: %s/%s', total, total)
        transaction.commit()

        brains = ctool(portal_type='Folder')
        total = len(brains)
        logger.info('Deleting empty folders: 0/%s', total)
        for index, brain in enumerate(brains):
            try:
                name = brain.getId
                obj = brain.getObject()
                if obj.objectIds():
                    continue
                # 2013-01-01 - Avoid deletion of empty faceted folders
                elif not name.startswith('201'):
                    continue
                obj_parent = parent(obj)
                obj_parent.manage_delObjects([name])
            except Exception, err:
                logger.exception(err)
                continue
            else:
                if (index+1) % 500 == 0:
                    logger.info('Deleting empty folders %s/%s', index+1, total)
                    transaction.commit()
        logger.info('Deleting empty folders: %s/%s', index, total)

        return 'Deleted old news and empty folders'