예제 #1
0
    def run(self, _dummy=None):
        file = self.options['file']
        filename = file and file.name
        log.info(
            u"Importing {self.__class__.__name__} from {filename} into {self.project}"
            .format(**locals()))
        from amcat.scripts.article_upload.controller import Controller
        self.controller = Controller()
        arts = self.controller.run(self)

        if not arts:
            raise Exception("No articles were imported")

        self.postprocess(arts)

        for aset in self.articlesets:
            new_provenance = self.get_provenance(file, arts)
            aset.provenance = (
                "%s\n%s" % (aset.provenance or "", new_provenance)).strip()
            aset.save()

        if getattr(self, 'task', None):
            self.task.log_usage("articles", "upload", n=len(arts))

        return [aset.id for aset in self.articlesets]
예제 #2
0
파일: upload.py 프로젝트: pombredanne/amcat
    def run(self, _dummy=None):
        file = self.options['file']
        filename = file and file.name
        log.info(
            u"Importing {self.__class__.__name__} from {filename} into {self.project}"
            .format(**locals()))
        from amcat.scripts.article_upload.controller import Controller
        self.controller = Controller()
        arts = self.controller.run(self)

        if not arts:
            raise Exception("No articles were imported")
        self.postprocess(arts)
        old_provenance = [] if self.articleset.provenance is None else [
            self.articleset.provenance
        ]
        new_provenance = self.get_provenance(file, arts)
        self.articleset.provenance = "\n".join([new_provenance] +
                                               old_provenance)
        self.articleset.save()

        return self.articleset