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()