Ejemplo n.º 1
0
 def get_translate_url(self, **kwargs):
     return u"".join(
         [
             reverse("pootle-language-translate", args=[self.code]),
             get_editor_filter(**kwargs),
         ]
     )
Ejemplo n.º 2
0
 def get_translate_url(self, **kwargs):
     return u"".join(
         [
             reverse(
                 "pootle-tp-translate", args=split_pootle_path(self.pootle_path)[:-1]
             ),
             get_editor_filter(**kwargs),
         ]
     )
Ejemplo n.º 3
0
    def get_search_locations_url(self):
        (proj_code, dir_path,
         filename) = split_pootle_path(self.store.pootle_path)[1:]

        return u''.join([
            reverse('pootle-project-translate',
                    args=[proj_code, dir_path, filename]),
            get_editor_filter(search=self.locations, sfields='locations'),
        ])
Ejemplo n.º 4
0
    def get_search_locations_url(self):
        (proj_code, dir_path,
         filename) = split_pootle_path(self.store.pootle_path)[1:]

        return u''.join([
            reverse('pootle-project-translate',
                    args=[proj_code, dir_path, filename]),
            get_editor_filter(search=self.locations, sfields='locations'),
        ])
Ejemplo n.º 5
0
 def unit_translate_url(self):
     if not self.unit:
         return
     store_url = u''.join([
         reverse("pootle-tp-store-translate",
                 args=split_pootle_path(self.unit_pootle_path)),
         get_editor_filter()
     ])
     return ("%s%s" % (store_url, '#unit=%s' % unicode(self.unit)))
Ejemplo n.º 6
0
    def get_translate_url(self, pootle_path, **kwargs):
        """Get the translate URL for this virtual folder in the given path."""
        adjusted_path = self.get_adjusted_pootle_path(pootle_path)
        lang, proj, dp, fn = split_pootle_path(adjusted_path)

        return u''.join([
            reverse('pootle-tp-translate', args=[lang, proj, dp, fn]),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 7
0
    def get_translate_url_for_path(self, pootle_path, **kwargs):
        """Return this goal's translate URL for the given path.

        :param pootle_path: A string with a valid pootle path.
        """
        lang, proj, dir_path, fn = split_pootle_path(pootle_path)
        return u''.join([
            reverse('pootle-tp-translate', args=[lang, proj, dir_path, fn]),
            get_editor_filter(goal=self.slug, **kwargs),
        ])
Ejemplo n.º 8
0
 def unit_translate_url(self):
     if not self.unit:
         return
     store_url = u"".join([
         reverse(
             "pootle-tp-store-translate",
             args=split_pootle_path(self.unit_pootle_path),
         ),
         get_editor_filter(),
     ])
     return "%s%s" % (store_url, "#unit=%s" % str(self.unit))
Ejemplo n.º 9
0
 def unit_translate_url(self):
     if not self.unit:
         return
     store_url = u''.join(
         [reverse("pootle-tp-store-translate",
                  args=split_pootle_path(self.unit_pootle_path)),
          get_editor_filter()])
     return (
         "%s%s"
         % (store_url,
            '#unit=%s' % unicode(self.unit)))
Ejemplo n.º 10
0
    def get_translate_url(self, **kwargs):
        proj_code, dir_path, filename = split_pootle_path(self.pootle_path)[1:]

        if proj_code is not None:
            pattern_name = "pootle-project-translate"
            pattern_args = [proj_code, dir_path, filename]
        else:
            pattern_name = "pootle-projects-translate"
            pattern_args = []

        return u"".join(
            [reverse(pattern_name, args=pattern_args), get_editor_filter(**kwargs)]
        )
Ejemplo n.º 11
0
def test_get_editor_filter():
    """Tests editor filters are correctly constructed."""
    assert get_editor_filter(state="untranslated") == "#filter=untranslated"
    assert get_editor_filter(state="untranslated", sort="newest") == "#filter=untranslated&sort=newest"
    assert get_editor_filter(sort="newest") == "#sort=newest"
    assert get_editor_filter(state="all", search="Foo", sfields="locations") == "#filter=all"
    assert get_editor_filter(search="Foo", sfields="locations") == "#search=Foo&sfields=locations"
    assert get_editor_filter(search="Foo", sfields=["locations", "notes"]) == "#search=Foo&sfields=locations,notes"
    assert (
        get_editor_filter(search="Foo: bar.po\nID: 1", sfields="locations")
        == "#search=Foo%3A+bar.po%0AID%3A+1&sfields=locations"
    )
Ejemplo n.º 12
0
    def get_translate_url(self, **kwargs):
        lang, proj, dir, fn = split_pootle_path(self.pootle_path)

        if proj is not None:
            pattern_name = 'pootle-project-translate'
            pattern_args = [proj, dir, fn]
        else:
            pattern_name = 'pootle-projects-translate'
            pattern_args = []

        return u''.join([
            reverse(pattern_name, args=pattern_args),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 13
0
    def get_translate_url(self, **kwargs):
        proj_code, dir_path, filename = split_pootle_path(self.pootle_path)[1:]

        if proj_code is not None:
            pattern_name = 'pootle-project-translate'
            pattern_args = [proj_code, dir_path, filename]
        else:
            pattern_name = 'pootle-projects-translate'
            pattern_args = []

        return u''.join([
            reverse(pattern_name, args=pattern_args),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 14
0
def test_get_editor_filter():
    """Tests editor filters are correctly constructed."""
    assert get_editor_filter(state='untranslated') == '#filter=untranslated'
    assert get_editor_filter(state='untranslated', sort='newest') == \
        '#filter=untranslated&sort=newest'
    assert get_editor_filter(sort='newest') == '#sort=newest'
    assert get_editor_filter(state='all', search='Foo', sfields='locations') == \
        '#filter=all'
    assert get_editor_filter(search='Foo', sfields='locations') == \
        '#search=Foo&sfields=locations'
    assert get_editor_filter(search='Foo', sfields=['locations', 'notes']) == \
        '#search=Foo&sfields=locations,notes'
    assert get_editor_filter(search='Foo: bar.po\nID: 1', sfields='locations') == \
        '#search=Foo%3A+bar.po%0AID%3A+1&sfields=locations'
Ejemplo n.º 15
0
def test_get_editor_filter():
    """Tests editor filters are correctly constructed."""
    assert get_editor_filter(state='untranslated') == '#filter=untranslated'
    assert get_editor_filter(state='untranslated', sort='newest') == \
        '#filter=untranslated&sort=newest'
    assert get_editor_filter(sort='newest') == '#sort=newest'
    assert get_editor_filter(state='all', search='Foo',
                             sfields='locations') == '#filter=all'
    assert get_editor_filter(search='Foo', sfields='locations') == \
        '#search=Foo&sfields=locations'
    assert get_editor_filter(search='Foo', sfields=['locations', 'notes']) == \
        '#search=Foo&sfields=locations,notes'
    assert get_editor_filter(search='Foo: bar.po\nID: 1',
                             sfields='locations') == \
        '#search=Foo%3A+bar.po%0AID%3A+1&sfields=locations'
Ejemplo n.º 16
0
    def get_translate_url(self, **kwargs):
        lang, proj, dir, fn = split_pootle_path(self.pootle_path)

        if lang and proj:
            pattern_name = 'pootle-tp-translate'
            pattern_args = [lang, proj, dir, fn]
        elif lang:
            pattern_name = 'pootle-language-translate'
            pattern_args = [lang]
        elif proj:
            pattern_name = 'pootle-project-translate'
            pattern_args = [proj]
        else:
            pattern_name = 'pootle-translate'
            pattern_args = []

        return u''.join([
            reverse(pattern_name, args=pattern_args),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 17
0
    def get_translate_url(self, **kwargs):
        lang, proj, dir, fn = split_pootle_path(self.pootle_path)

        if lang and proj:
            pattern_name = 'pootle-tp-translate'
            pattern_args = [lang, proj, dir, fn]
        elif lang:
            pattern_name = 'pootle-language-translate'
            pattern_args = [lang]
        elif proj:
            pattern_name = 'pootle-project-translate'
            pattern_args = [proj]
        else:
            pattern_name = 'pootle-translate'
            pattern_args = []

        return u''.join([
            reverse(pattern_name, args=pattern_args),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 18
0
    def get_translate_url(self, **kwargs):
        lang_code, proj_code, dir_path = split_pootle_path(self.pootle_path)[:3]

        if lang_code and proj_code:
            pattern_name = 'pootle-tp-translate'
            pattern_args = [lang_code, proj_code, dir_path]
        elif lang_code:
            pattern_name = 'pootle-language-translate'
            pattern_args = [lang_code]
        elif proj_code:
            pattern_name = 'pootle-project-translate'
            pattern_args = [proj_code]
        else:
            pattern_name = 'pootle-projects-translate'
            pattern_args = []

        return u''.join([
            reverse(pattern_name, args=pattern_args),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 19
0
    def get_translate_url(self, **kwargs):
        lang_code, proj_code, dir_path = split_pootle_path(self.pootle_path)[:3]

        if lang_code and proj_code:
            pattern_name = 'pootle-tp-translate'
            pattern_args = [lang_code, proj_code, dir_path]
        elif lang_code:
            pattern_name = 'pootle-language-translate'
            pattern_args = [lang_code]
        elif proj_code:
            pattern_name = 'pootle-project-translate'
            pattern_args = [proj_code]
        else:
            pattern_name = 'pootle-projects-translate'
            pattern_args = []

        return u''.join([
            reverse(pattern_name, args=pattern_args),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 20
0
    def get_translate_url(self, pootle_path, **kwargs):
        # The provided pootle path must be converted to a path that includes
        # the virtual folder name in the right place.
        #
        # For example a virtual folder named vfolder8, with a location
        # /{LANG}/firefox/browser/ in a path
        # /af/firefox/browser/chrome/overrides/ gets converted to
        # /af/firefox/browser/vfolder8/chrome/overrides/
        count = self.location.count('/')

        if pootle_path.count('/') < count:
            # The provided pootle path is above the virtual folder location.
            path_parts = pootle_path.rstrip('/').split('/')
            pootle_path = '/'.join(path_parts +
                                   self.location.split('/')[len(path_parts):])

        if count < 3:
            # If the virtual folder location is not long as a translation
            # project pootle path then the returned adjusted location is too
            # short, meaning that the returned translate URL will have the
            # virtual folder name as the project or language code.
            path_parts = pootle_path.split('/')
            adjusted_path = '/'.join(path_parts[:3] + [self.name] +
                                     path_parts[3:])
        else:
            # If the virtual folder location is as long as a TP pootle path and
            # the provided pootle path isn't above the virtual folder location.
            lead = self.get_adjusted_location(pootle_path)
            trail = pootle_path.replace(lead, '').lstrip('/')
            adjusted_path = '/'.join([lead, self.name, trail])

        lang, proj, dp, fn = split_pootle_path(adjusted_path)

        return u''.join([
            reverse('pootle-tp-translate', args=[lang, proj, dp, fn]),
            get_editor_filter(**kwargs),
        ])
Ejemplo n.º 21
0
def test_get_editor_filter():
    """Tests editor filters are correctly constructed."""
    assert get_editor_filter(state="untranslated") == "#filter=untranslated"
    assert (
        get_editor_filter(state="untranslated", sort="newest")
        == "#filter=untranslated&sort=newest"
    )
    assert get_editor_filter(sort="newest") == "#sort=newest"
    assert (
        get_editor_filter(state="all", search="Foo", sfields="locations")
        == "#filter=all"
    )
    assert (
        get_editor_filter(search="Foo", sfields="locations")
        == "#search=Foo&sfields=locations"
    )
    assert (
        get_editor_filter(search="Foo", sfields=["locations", "notes"])
        == "#search=Foo&sfields=locations,notes"
    )
    assert (
        get_editor_filter(search="Foo: bar.po\nID: 1", sfields="locations")
        == "#search=Foo%3A+bar.po%0AID%3A+1&sfields=locations"
    )
Ejemplo n.º 22
0
 def get_translate_url(self, **kwargs):
     return u''.join([
         reverse('pootle-language-translate', args=[self.code]),
         get_editor_filter(**kwargs),
     ])
Ejemplo n.º 23
0
 def get_translate_url(self, **kwargs):
     return u''.join([
         reverse("pootle-tp-store-translate",
                 args=split_pootle_path(self.pootle_path)),
         get_editor_filter(**kwargs)
     ])
Ejemplo n.º 24
0
 def get_translate_url(self, **kwargs):
     split_parts = list(split_pootle_path(self.pootle_path))
     parts = [self.vfolder.name] + split_parts[:2]
     parts.append(split_parts[2][len(self.vfolder.name) + 1:])
     url = reverse("pootle-vfolder-tp-translate", args=parts)
     return u''.join([url, get_editor_filter(**kwargs)])
Ejemplo n.º 25
0
 def get_translate_url(self, **kwargs):
     return u''.join(
         [reverse("pootle-tp-translate",
                  args=split_pootle_path(self.pootle_path)[:-1]),
          get_editor_filter(**kwargs)])
Ejemplo n.º 26
0
 def get_translate_url(self, **kwargs):
     lang, proj, dir, fn = split_pootle_path(self.pootle_path)
     return u''.join([
         reverse('pootle-tp-translate', args=[lang, proj, dir, fn]),
         get_editor_filter(**kwargs),
     ])
Ejemplo n.º 27
0
 def get_translate_url(self, **kwargs):
     lang, proj, dp, fn = split_pootle_path(self.pootle_path)
     return u"".join([reverse("pootle-tp-translate", args=[lang, proj, dp, fn]), get_editor_filter(**kwargs)])
Ejemplo n.º 28
0
def test_get_editor_filter(kwargs, expected):
    """Tests editor filters are correctly constructed."""
    assert get_editor_filter(**kwargs) == expected
Ejemplo n.º 29
0
 def get_translate_url(self, **kwargs):
     lang, proj, dir, fn = split_pootle_path(self.pootle_path)
     return u''.join([
         reverse('pootle-tp-translate', args=[lang, proj, dir, fn]),
         get_editor_filter(**kwargs),
     ])
Ejemplo n.º 30
0
 def get_translate_url(self, **kwargs):
     return u''.join([
         reverse('pootle-project-translate', args=[self.code]),
         get_editor_filter(**kwargs),
     ])