Example #1
0
    def __call__(self):

        # give admin privs no matter what
        # XXX remember, this is not safe to have on a
        # production site!
        sm = getSecurityManager()
        tmp_user = UnrestrictedUser(sm.getUser().getId(), '', ['Manager'], '')
        acl = getToolByName(self.context, 'acl_users')
        tmp_user = tmp_user.__of__(acl)
        newSecurityManager(None, tmp_user)
        migrator = getMigratorFromRequest(self.request)

        self.request.response.setHeader('Content-Type', 'application/json')
        logger.info('Running %s for %s' % (migrator.title, repr(migrator.obj)))
        data = migrator.get()
        return json.dumps(data)
    def __call__(self):

        # give admin privs no matter what
        # XXX remember, this is not safe to have on a
        # production site!
        sm = getSecurityManager()
        tmp_user = UnrestrictedUser(sm.getUser().getId(), '', ['Manager'],
            '')
        acl = getToolByName(self.context, 'acl_users')
        tmp_user = tmp_user.__of__(acl)
        newSecurityManager(None, tmp_user)
        migrator = getMigratorFromRequest(self.request)

        self.request.response.setHeader('Content-Type', 'application/json')
        logger.info('Running %s for %s' % (migrator.title, repr(migrator.obj)))
        data = migrator.get()
        return json.dumps(data)
 def __call__(self):
     if not hasattr(self.context, '_import_results'):
         self.context._import_results = PersistentList()
     if not hasattr(self.context, '_touch_errors'):
         self.context._touch_errors = PersistentList()
     if self.request.get('REQUEST_METHOD') == 'POST':
         sourcesite = self.request.get('source', '').rstrip('/')
         if not sourcesite:
             raise Exception("Must specify a source")
         migratorname = self.request.get('migrator')
         migrator = getMigratorFromRequest(self.request)
         source = sourcesite + '/@@migrator-exporter'
         attributes = self.request.get('attributes', '').splitlines()
         result = requests.post(
             source, data={'migrator': self.request.get('migrator')})
         data = json.loads(result.content)
         if self.request.get('onlyNew', False):
             onlyNew = True
         else:
             onlyNew = False
         if self.request.get('index', False):
             index = True
         else:
             index = False
         if migratorname == SiteContentsMigrator.title:
             threshold = int(self.request.get('threshold', '150'))
             batch = int(self.request.get('batch', '1'))
             contentmigrator = ContentMigrator(self.request,
                                               source,
                                               sourcesite,
                                               migrator.site,
                                               threshold=threshold,
                                               attributes=attributes,
                                               onlyNew=onlyNew,
                                               index=index,
                                               batch=batch)
             contentmigrator(migrator, data)
         else:
             migrator.set(data)
         return 'done'
     return self.template()
 def __call__(self):
     if not hasattr(self.context, '_import_results'):
         self.context._import_results = PersistentList()
     if not hasattr(self.context, '_touch_errors'):
         self.context._touch_errors = PersistentList()
     if self.request.get('REQUEST_METHOD') == 'POST':
         sourcesite = self.request.get('source', '').rstrip('/')
         if not sourcesite:
             raise Exception("Must specify a source")
         migratorname = self.request.get('migrator')
         migrator = getMigratorFromRequest(self.request)
         source = sourcesite + '/@@migrator-exporter'
         attributes = self.request.get('attributes', '').splitlines()
         result = requests.post(source, data={
             'migrator': self.request.get('migrator')})
         data = json.loads(result.content)
         if self.request.get('onlyNew', False):
             onlyNew = True
         else:
             onlyNew = False
         if self.request.get('index', False):
             index = True
         else:
             index = False
         if migratorname == SiteContentsMigrator.title:
             threshold = int(self.request.get('threshold', '150'))
             batch = int(self.request.get('batch', '1'))
             contentmigrator = ContentMigrator(self.request, source,
                 sourcesite, migrator.site,
                 threshold=threshold,
                 attributes=attributes,
                 onlyNew=onlyNew,
                 index=index,
                 batch=batch)
             contentmigrator(migrator, data)
         else:
             migrator.set(data)
         return 'done'
     return self.template()