Exemple #1
0
    def save(self, *args, **kwargs):

        # Renaming detection
        old = None
        if self.id:
            old = Project.objects.get(pk=self.id)
            # Detect slug changes and rename directory
            self.check_rename(old)
            # Rename linked repos
            if old.slug != self.slug:
                for component in old.component_set.iterator():
                    new_component = self.component_set.get(pk=component.pk)
                    new_component.project = self
                    component.linked_childs.update(
                        repo=new_component.get_repo_link_url()
                    )

        self.create_path()

        super(Project, self).save(*args, **kwargs)

        # Reload components after source language change
        if old is not None and old.source_language != self.source_language:
            from weblate.trans.tasks import perform_load

            for component in self.component_set.iterator():
                perform_load.delay(component.pk)
Exemple #2
0
    def save(self, *args, **kwargs):
        update_tm = self.contribute_shared_tm

        # Renaming detection
        old = None
        if self.id:
            old = Project.objects.get(pk=self.id)
            # Detect slug changes and rename directory
            self.check_rename(old)
            # Rename linked repos
            if old.slug != self.slug:
                for component in old.component_set.iterator():
                    new_component = self.component_set.get(pk=component.pk)
                    new_component.project = self
                    component.linked_childs.update(
                        repo=new_component.get_repo_link_url())
            update_tm = self.contribute_shared_tm and not old.contribute_shared_tm

        self.create_path()

        super().save(*args, **kwargs)

        # Reload components after source language change
        if old is not None and old.source_language != self.source_language:
            from weblate.trans.tasks import perform_load

            for component in self.component_set.iterator():
                perform_load.delay(component.pk)

        # Update translation memory on enabled sharing
        if update_tm:
            transaction.on_commit(lambda: import_memory.delay(self.id))
Exemple #3
0
 def handle(self, *args, **options):
     langs = None
     if options['lang'] is not None:
         langs = options['lang'].split(',')
     for component in self.get_components(**options):
         perform_load.delay(component.pk, options['force'], langs)
Exemple #4
0
 def handle(self, *args, **options):
     langs = None
     if options['lang'] is not None:
         langs = options['lang'].split(',')
     for component in self.get_components(**options):
         perform_load.delay(component.pk, options['force'], langs)