diff --git a/.tx/config b/.tx/config new file mode 100644 index 00000000..6f1602c1 --- /dev/null +++ b/.tx/config @@ -0,0 +1,16 @@ +[main] +host = https://www.transifex.com +lang_map = sr@latin:sr_Latn, zh_CN:zh_Hans, zh_TW:zh_Hant + + +[taiga-back.main] +file_filter = locale//LC_MESSAGES/django.po +source_file = locale/en/LC_MESSAGES/django.po +source_lang = en +type = PO + +[taiga-back.taiga] +file_filter = taiga/locale//LC_MESSAGES/django.po +source_file = taiga/locale/en/LC_MESSAGES/django.po +source_lang = en +type = PO diff --git a/locale/ca/LC_MESSAGES/django.po b/locale/ca/LC_MESSAGES/django.po new file mode 100644 index 00000000..2df32355 --- /dev/null +++ b/locale/ca/LC_MESSAGES/django.po @@ -0,0 +1,355 @@ +# taiga-back.main +# Copyright (C) 2015 Taiga Dev Team +# This file is distributed under the same license as the taiga-back package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: taiga-back\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-03-25 20:09+0100\n" +"PO-Revision-Date: 2015-03-24 18:08+0000\n" +"Last-Translator: Taiga Dev Team \n" +"Language-Team: Catalan (http://www.transifex.com/projects/p/taiga-back/" +"language/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: settings/common.py:73 +msgid "Afrikaans" +msgstr "" + +#: settings/common.py:74 +msgid "Arabic" +msgstr "" + +#: settings/common.py:75 +msgid "Asturian" +msgstr "" + +#: settings/common.py:76 +msgid "Azerbaijani" +msgstr "" + +#: settings/common.py:77 +msgid "Bulgarian" +msgstr "" + +#: settings/common.py:78 +msgid "Belarusian" +msgstr "" + +#: settings/common.py:79 +msgid "Bengali" +msgstr "" + +#: settings/common.py:80 +msgid "Breton" +msgstr "" + +#: settings/common.py:81 +msgid "Bosnian" +msgstr "" + +#: settings/common.py:82 +msgid "Catalan" +msgstr "" + +#: settings/common.py:83 +msgid "Czech" +msgstr "" + +#: settings/common.py:84 +msgid "Welsh" +msgstr "" + +#: settings/common.py:85 +msgid "Danish" +msgstr "" + +#: settings/common.py:86 +msgid "German" +msgstr "" + +#: settings/common.py:87 +msgid "Greek" +msgstr "" + +#: settings/common.py:88 +msgid "English" +msgstr "" + +#: settings/common.py:89 +msgid "Australian English" +msgstr "" + +#: settings/common.py:90 +msgid "British English" +msgstr "" + +#: settings/common.py:91 +msgid "Esperanto" +msgstr "" + +#: settings/common.py:92 +msgid "Spanish" +msgstr "" + +#: settings/common.py:93 +msgid "Argentinian Spanish" +msgstr "" + +#: settings/common.py:94 +msgid "Mexican Spanish" +msgstr "" + +#: settings/common.py:95 +msgid "Nicaraguan Spanish" +msgstr "" + +#: settings/common.py:96 +msgid "Venezuelan Spanish" +msgstr "" + +#: settings/common.py:97 +msgid "Estonian" +msgstr "" + +#: settings/common.py:98 +msgid "Basque" +msgstr "" + +#: settings/common.py:99 +msgid "Persian" +msgstr "" + +#: settings/common.py:100 +msgid "Finnish" +msgstr "" + +#: settings/common.py:101 +msgid "French" +msgstr "" + +#: settings/common.py:102 +msgid "Frisian" +msgstr "" + +#: settings/common.py:103 +msgid "Irish" +msgstr "" + +#: settings/common.py:104 +msgid "Galician" +msgstr "" + +#: settings/common.py:105 +msgid "Hebrew" +msgstr "" + +#: settings/common.py:106 +msgid "Hindi" +msgstr "" + +#: settings/common.py:107 +msgid "Croatian" +msgstr "" + +#: settings/common.py:108 +msgid "Hungarian" +msgstr "" + +#: settings/common.py:109 +msgid "Interlingua" +msgstr "" + +#: settings/common.py:110 +msgid "Indonesian" +msgstr "" + +#: settings/common.py:111 +msgid "Ido" +msgstr "" + +#: settings/common.py:112 +msgid "Icelandic" +msgstr "" + +#: settings/common.py:113 +msgid "Italian" +msgstr "" + +#: settings/common.py:114 +msgid "Japanese" +msgstr "" + +#: settings/common.py:115 +msgid "Georgian" +msgstr "" + +#: settings/common.py:116 +msgid "Kazakh" +msgstr "" + +#: settings/common.py:117 +msgid "Khmer" +msgstr "" + +#: settings/common.py:118 +msgid "Kannada" +msgstr "" + +#: settings/common.py:119 +msgid "Korean" +msgstr "" + +#: settings/common.py:120 +msgid "Luxembourgish" +msgstr "" + +#: settings/common.py:121 +msgid "Lithuanian" +msgstr "" + +#: settings/common.py:122 +msgid "Latvian" +msgstr "" + +#: settings/common.py:123 +msgid "Macedonian" +msgstr "" + +#: settings/common.py:124 +msgid "Malayalam" +msgstr "" + +#: settings/common.py:125 +msgid "Mongolian" +msgstr "" + +#: settings/common.py:126 +msgid "Marathi" +msgstr "" + +#: settings/common.py:127 +msgid "Burmese" +msgstr "" + +#: settings/common.py:128 +msgid "Norwegian Bokmal" +msgstr "" + +#: settings/common.py:129 +msgid "Nepali" +msgstr "" + +#: settings/common.py:130 +msgid "Dutch" +msgstr "" + +#: settings/common.py:131 +msgid "Norwegian Nynorsk" +msgstr "" + +#: settings/common.py:132 +msgid "Ossetic" +msgstr "" + +#: settings/common.py:133 +msgid "Punjabi" +msgstr "" + +#: settings/common.py:134 +msgid "Polish" +msgstr "" + +#: settings/common.py:135 +msgid "Portuguese" +msgstr "" + +#: settings/common.py:136 +msgid "Brazilian Portuguese" +msgstr "" + +#: settings/common.py:137 +msgid "Romanian" +msgstr "" + +#: settings/common.py:138 +msgid "Russian" +msgstr "" + +#: settings/common.py:139 +msgid "Slovak" +msgstr "" + +#: settings/common.py:140 +msgid "Slovenian" +msgstr "" + +#: settings/common.py:141 +msgid "Albanian" +msgstr "" + +#: settings/common.py:142 +msgid "Serbian" +msgstr "" + +#: settings/common.py:143 +msgid "Serbian Latin" +msgstr "" + +#: settings/common.py:144 +msgid "Swedish" +msgstr "" + +#: settings/common.py:145 +msgid "Swahili" +msgstr "" + +#: settings/common.py:146 +msgid "Tamil" +msgstr "" + +#: settings/common.py:147 +msgid "Telugu" +msgstr "" + +#: settings/common.py:148 +msgid "Thai" +msgstr "" + +#: settings/common.py:149 +msgid "Turkish" +msgstr "" + +#: settings/common.py:150 +msgid "Tatar" +msgstr "" + +#: settings/common.py:151 +msgid "Udmurt" +msgstr "" + +#: settings/common.py:152 +msgid "Ukrainian" +msgstr "" + +#: settings/common.py:153 +msgid "Urdu" +msgstr "" + +#: settings/common.py:154 +msgid "Vietnamese" +msgstr "" + +#: settings/common.py:155 +msgid "Simplified Chinese" +msgstr "" + +#: settings/common.py:156 +msgid "Traditional Chinese" +msgstr "" diff --git a/locale/en/LC_MESSAGES/django.po b/locale/en/LC_MESSAGES/django.po new file mode 100644 index 00000000..8b986771 --- /dev/null +++ b/locale/en/LC_MESSAGES/django.po @@ -0,0 +1,353 @@ +# taiga-back.main +# Copyright (C) 2015 Taiga Dev Team +# This file is distributed under the same license as the taiga-back package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: taiga-back\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-03-25 20:09+0100\n" +"PO-Revision-Date: 2015-03-25 20:09+0100\n" +"Last-Translator: Taiga Dev Team \n" +"Language-Team: Taiga Dev Team \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: settings/common.py:73 +msgid "Afrikaans" +msgstr "" + +#: settings/common.py:74 +msgid "Arabic" +msgstr "" + +#: settings/common.py:75 +msgid "Asturian" +msgstr "" + +#: settings/common.py:76 +msgid "Azerbaijani" +msgstr "" + +#: settings/common.py:77 +msgid "Bulgarian" +msgstr "" + +#: settings/common.py:78 +msgid "Belarusian" +msgstr "" + +#: settings/common.py:79 +msgid "Bengali" +msgstr "" + +#: settings/common.py:80 +msgid "Breton" +msgstr "" + +#: settings/common.py:81 +msgid "Bosnian" +msgstr "" + +#: settings/common.py:82 +msgid "Catalan" +msgstr "" + +#: settings/common.py:83 +msgid "Czech" +msgstr "" + +#: settings/common.py:84 +msgid "Welsh" +msgstr "" + +#: settings/common.py:85 +msgid "Danish" +msgstr "" + +#: settings/common.py:86 +msgid "German" +msgstr "" + +#: settings/common.py:87 +msgid "Greek" +msgstr "" + +#: settings/common.py:88 +msgid "English" +msgstr "" + +#: settings/common.py:89 +msgid "Australian English" +msgstr "" + +#: settings/common.py:90 +msgid "British English" +msgstr "" + +#: settings/common.py:91 +msgid "Esperanto" +msgstr "" + +#: settings/common.py:92 +msgid "Spanish" +msgstr "" + +#: settings/common.py:93 +msgid "Argentinian Spanish" +msgstr "" + +#: settings/common.py:94 +msgid "Mexican Spanish" +msgstr "" + +#: settings/common.py:95 +msgid "Nicaraguan Spanish" +msgstr "" + +#: settings/common.py:96 +msgid "Venezuelan Spanish" +msgstr "" + +#: settings/common.py:97 +msgid "Estonian" +msgstr "" + +#: settings/common.py:98 +msgid "Basque" +msgstr "" + +#: settings/common.py:99 +msgid "Persian" +msgstr "" + +#: settings/common.py:100 +msgid "Finnish" +msgstr "" + +#: settings/common.py:101 +msgid "French" +msgstr "" + +#: settings/common.py:102 +msgid "Frisian" +msgstr "" + +#: settings/common.py:103 +msgid "Irish" +msgstr "" + +#: settings/common.py:104 +msgid "Galician" +msgstr "" + +#: settings/common.py:105 +msgid "Hebrew" +msgstr "" + +#: settings/common.py:106 +msgid "Hindi" +msgstr "" + +#: settings/common.py:107 +msgid "Croatian" +msgstr "" + +#: settings/common.py:108 +msgid "Hungarian" +msgstr "" + +#: settings/common.py:109 +msgid "Interlingua" +msgstr "" + +#: settings/common.py:110 +msgid "Indonesian" +msgstr "" + +#: settings/common.py:111 +msgid "Ido" +msgstr "" + +#: settings/common.py:112 +msgid "Icelandic" +msgstr "" + +#: settings/common.py:113 +msgid "Italian" +msgstr "" + +#: settings/common.py:114 +msgid "Japanese" +msgstr "" + +#: settings/common.py:115 +msgid "Georgian" +msgstr "" + +#: settings/common.py:116 +msgid "Kazakh" +msgstr "" + +#: settings/common.py:117 +msgid "Khmer" +msgstr "" + +#: settings/common.py:118 +msgid "Kannada" +msgstr "" + +#: settings/common.py:119 +msgid "Korean" +msgstr "" + +#: settings/common.py:120 +msgid "Luxembourgish" +msgstr "" + +#: settings/common.py:121 +msgid "Lithuanian" +msgstr "" + +#: settings/common.py:122 +msgid "Latvian" +msgstr "" + +#: settings/common.py:123 +msgid "Macedonian" +msgstr "" + +#: settings/common.py:124 +msgid "Malayalam" +msgstr "" + +#: settings/common.py:125 +msgid "Mongolian" +msgstr "" + +#: settings/common.py:126 +msgid "Marathi" +msgstr "" + +#: settings/common.py:127 +msgid "Burmese" +msgstr "" + +#: settings/common.py:128 +msgid "Norwegian Bokmal" +msgstr "" + +#: settings/common.py:129 +msgid "Nepali" +msgstr "" + +#: settings/common.py:130 +msgid "Dutch" +msgstr "" + +#: settings/common.py:131 +msgid "Norwegian Nynorsk" +msgstr "" + +#: settings/common.py:132 +msgid "Ossetic" +msgstr "" + +#: settings/common.py:133 +msgid "Punjabi" +msgstr "" + +#: settings/common.py:134 +msgid "Polish" +msgstr "" + +#: settings/common.py:135 +msgid "Portuguese" +msgstr "" + +#: settings/common.py:136 +msgid "Brazilian Portuguese" +msgstr "" + +#: settings/common.py:137 +msgid "Romanian" +msgstr "" + +#: settings/common.py:138 +msgid "Russian" +msgstr "" + +#: settings/common.py:139 +msgid "Slovak" +msgstr "" + +#: settings/common.py:140 +msgid "Slovenian" +msgstr "" + +#: settings/common.py:141 +msgid "Albanian" +msgstr "" + +#: settings/common.py:142 +msgid "Serbian" +msgstr "" + +#: settings/common.py:143 +msgid "Serbian Latin" +msgstr "" + +#: settings/common.py:144 +msgid "Swedish" +msgstr "" + +#: settings/common.py:145 +msgid "Swahili" +msgstr "" + +#: settings/common.py:146 +msgid "Tamil" +msgstr "" + +#: settings/common.py:147 +msgid "Telugu" +msgstr "" + +#: settings/common.py:148 +msgid "Thai" +msgstr "" + +#: settings/common.py:149 +msgid "Turkish" +msgstr "" + +#: settings/common.py:150 +msgid "Tatar" +msgstr "" + +#: settings/common.py:151 +msgid "Udmurt" +msgstr "" + +#: settings/common.py:152 +msgid "Ukrainian" +msgstr "" + +#: settings/common.py:153 +msgid "Urdu" +msgstr "" + +#: settings/common.py:154 +msgid "Vietnamese" +msgstr "" + +#: settings/common.py:155 +msgid "Simplified Chinese" +msgstr "" + +#: settings/common.py:156 +msgid "Traditional Chinese" +msgstr "" diff --git a/locale/es/LC_MESSAGES/django.po b/locale/es/LC_MESSAGES/django.po new file mode 100644 index 00000000..1057e92e --- /dev/null +++ b/locale/es/LC_MESSAGES/django.po @@ -0,0 +1,355 @@ +# taiga-back.main +# Copyright (C) 2015 Taiga Dev Team +# This file is distributed under the same license as the taiga-back package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: taiga-back\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-03-25 20:09+0100\n" +"PO-Revision-Date: 2015-03-24 18:08+0000\n" +"Last-Translator: Taiga Dev Team \n" +"Language-Team: Spanish (http://www.transifex.com/projects/p/taiga-back/" +"language/es/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: settings/common.py:73 +msgid "Afrikaans" +msgstr "" + +#: settings/common.py:74 +msgid "Arabic" +msgstr "" + +#: settings/common.py:75 +msgid "Asturian" +msgstr "" + +#: settings/common.py:76 +msgid "Azerbaijani" +msgstr "" + +#: settings/common.py:77 +msgid "Bulgarian" +msgstr "" + +#: settings/common.py:78 +msgid "Belarusian" +msgstr "" + +#: settings/common.py:79 +msgid "Bengali" +msgstr "" + +#: settings/common.py:80 +msgid "Breton" +msgstr "" + +#: settings/common.py:81 +msgid "Bosnian" +msgstr "" + +#: settings/common.py:82 +msgid "Catalan" +msgstr "" + +#: settings/common.py:83 +msgid "Czech" +msgstr "" + +#: settings/common.py:84 +msgid "Welsh" +msgstr "" + +#: settings/common.py:85 +msgid "Danish" +msgstr "" + +#: settings/common.py:86 +msgid "German" +msgstr "" + +#: settings/common.py:87 +msgid "Greek" +msgstr "" + +#: settings/common.py:88 +msgid "English" +msgstr "" + +#: settings/common.py:89 +msgid "Australian English" +msgstr "" + +#: settings/common.py:90 +msgid "British English" +msgstr "" + +#: settings/common.py:91 +msgid "Esperanto" +msgstr "" + +#: settings/common.py:92 +msgid "Spanish" +msgstr "" + +#: settings/common.py:93 +msgid "Argentinian Spanish" +msgstr "" + +#: settings/common.py:94 +msgid "Mexican Spanish" +msgstr "" + +#: settings/common.py:95 +msgid "Nicaraguan Spanish" +msgstr "" + +#: settings/common.py:96 +msgid "Venezuelan Spanish" +msgstr "" + +#: settings/common.py:97 +msgid "Estonian" +msgstr "" + +#: settings/common.py:98 +msgid "Basque" +msgstr "" + +#: settings/common.py:99 +msgid "Persian" +msgstr "" + +#: settings/common.py:100 +msgid "Finnish" +msgstr "" + +#: settings/common.py:101 +msgid "French" +msgstr "" + +#: settings/common.py:102 +msgid "Frisian" +msgstr "" + +#: settings/common.py:103 +msgid "Irish" +msgstr "" + +#: settings/common.py:104 +msgid "Galician" +msgstr "" + +#: settings/common.py:105 +msgid "Hebrew" +msgstr "" + +#: settings/common.py:106 +msgid "Hindi" +msgstr "" + +#: settings/common.py:107 +msgid "Croatian" +msgstr "" + +#: settings/common.py:108 +msgid "Hungarian" +msgstr "" + +#: settings/common.py:109 +msgid "Interlingua" +msgstr "" + +#: settings/common.py:110 +msgid "Indonesian" +msgstr "" + +#: settings/common.py:111 +msgid "Ido" +msgstr "" + +#: settings/common.py:112 +msgid "Icelandic" +msgstr "" + +#: settings/common.py:113 +msgid "Italian" +msgstr "" + +#: settings/common.py:114 +msgid "Japanese" +msgstr "" + +#: settings/common.py:115 +msgid "Georgian" +msgstr "" + +#: settings/common.py:116 +msgid "Kazakh" +msgstr "" + +#: settings/common.py:117 +msgid "Khmer" +msgstr "" + +#: settings/common.py:118 +msgid "Kannada" +msgstr "" + +#: settings/common.py:119 +msgid "Korean" +msgstr "" + +#: settings/common.py:120 +msgid "Luxembourgish" +msgstr "" + +#: settings/common.py:121 +msgid "Lithuanian" +msgstr "" + +#: settings/common.py:122 +msgid "Latvian" +msgstr "" + +#: settings/common.py:123 +msgid "Macedonian" +msgstr "" + +#: settings/common.py:124 +msgid "Malayalam" +msgstr "" + +#: settings/common.py:125 +msgid "Mongolian" +msgstr "" + +#: settings/common.py:126 +msgid "Marathi" +msgstr "" + +#: settings/common.py:127 +msgid "Burmese" +msgstr "" + +#: settings/common.py:128 +msgid "Norwegian Bokmal" +msgstr "" + +#: settings/common.py:129 +msgid "Nepali" +msgstr "" + +#: settings/common.py:130 +msgid "Dutch" +msgstr "" + +#: settings/common.py:131 +msgid "Norwegian Nynorsk" +msgstr "" + +#: settings/common.py:132 +msgid "Ossetic" +msgstr "" + +#: settings/common.py:133 +msgid "Punjabi" +msgstr "" + +#: settings/common.py:134 +msgid "Polish" +msgstr "" + +#: settings/common.py:135 +msgid "Portuguese" +msgstr "" + +#: settings/common.py:136 +msgid "Brazilian Portuguese" +msgstr "" + +#: settings/common.py:137 +msgid "Romanian" +msgstr "" + +#: settings/common.py:138 +msgid "Russian" +msgstr "" + +#: settings/common.py:139 +msgid "Slovak" +msgstr "" + +#: settings/common.py:140 +msgid "Slovenian" +msgstr "" + +#: settings/common.py:141 +msgid "Albanian" +msgstr "" + +#: settings/common.py:142 +msgid "Serbian" +msgstr "" + +#: settings/common.py:143 +msgid "Serbian Latin" +msgstr "" + +#: settings/common.py:144 +msgid "Swedish" +msgstr "" + +#: settings/common.py:145 +msgid "Swahili" +msgstr "" + +#: settings/common.py:146 +msgid "Tamil" +msgstr "" + +#: settings/common.py:147 +msgid "Telugu" +msgstr "" + +#: settings/common.py:148 +msgid "Thai" +msgstr "" + +#: settings/common.py:149 +msgid "Turkish" +msgstr "" + +#: settings/common.py:150 +msgid "Tatar" +msgstr "" + +#: settings/common.py:151 +msgid "Udmurt" +msgstr "" + +#: settings/common.py:152 +msgid "Ukrainian" +msgstr "" + +#: settings/common.py:153 +msgid "Urdu" +msgstr "" + +#: settings/common.py:154 +msgid "Vietnamese" +msgstr "" + +#: settings/common.py:155 +msgid "Simplified Chinese" +msgstr "" + +#: settings/common.py:156 +msgid "Traditional Chinese" +msgstr "" diff --git a/requirements-devel.txt b/requirements-devel.txt index 45c11b38..f9097069 100644 --- a/requirements-devel.txt +++ b/requirements-devel.txt @@ -9,3 +9,5 @@ pytest-pythonpath==0.6 coverage==3.7.1 coveralls==0.4.2 django-slowdown==0.0.1 + +transifex-client==0.11.1b0 diff --git a/scripts/manage_translations.py b/scripts/manage_translations.py new file mode 100644 index 00000000..8519a8eb --- /dev/null +++ b/scripts/manage_translations.py @@ -0,0 +1,246 @@ +#!/usr/bin/env python +# +# NOTE: This script is based on django's manage_translations.py script +# (https://github.com/django/django/blob/master/scripts/manage_translations.py) +# +# This python file contains utility scripts to manage taiga translations. +# It has to be run inside the taiga-back git root directory. +# +# The following commands are available: +# +# * update_catalogs: check for new strings in taiga-back catalogs, and +# output how much strings are new/changed. +# +# * lang_stats: output statistics for each catalog/language combination +# +# * fetch: fetch translations from transifex.com +# +# Each command support the --languages and --resources options to limit their +# operation to the specified language or resource. For example, to get stats +# for Spanish in contrib.admin, run: +# +# $ python scripts/manage_translations.py lang_stats --language=es --resources=taiga + + +import os +from argparse import ArgumentParser +from argparse import RawTextHelpFormatter + +from subprocess import PIPE, Popen, call + +from django_jinja.management.commands import makemessages + + + +def _get_locale_dirs(resources, include_main=True): + """ + Return a tuple (app name, absolute path) for all locale directories, + optionally including the main catalog. + If resources list is not None, filter directories matching resources content. + """ + contrib_dir = os.getcwd() + dirs = [] + + # Collect all locale directories + for contrib_name in os.listdir(contrib_dir): + path = os.path.join(contrib_dir, contrib_name, "locale") + if os.path.isdir(path): + dirs.append((contrib_name, path)) + if include_main: + dirs.insert(0, ("main", os.path.join(os.getcwd(), "locale"))) + + # Filter by resources, if any + if resources is not None: + res_names = [d[0] for d in dirs] + dirs = [ld for ld in dirs if ld[0] in resources] + if len(resources) > len(dirs): + print("You have specified some unknown resources. " + "Available resource names are: {0}".format(", ".join(res_names))) + exit(1) + return dirs + + +def _tx_resource_for_name(name): + """ Return the Transifex resource name """ + return "taiga-back.{}".format(name) + + +def _check_diff(cat_name, base_path): + """ + Output the approximate number of changed/added strings in the en catalog. + """ + po_path = "{path}/en/LC_MESSAGES/django.po".format(path=base_path) + p = Popen("git diff -U0 {0} | egrep '^[-+]msgid' | wc -l".format(po_path), + stdout=PIPE, stderr=PIPE, shell=True) + output, errors = p.communicate() + num_changes = int(output.strip()) + print("{0} changed/added messages in '{1}' catalog.".format(num_changes, cat_name)) + + +def update_catalogs(resources=None, languages=None): + """ + Update the en/LC_MESSAGES/django.po (all) files with + new/updated translatable strings. + """ + cmd = makemessages.Command() + opts = { + "locale": ["en"], + "extensions": ["py", "jinja"], + + # Default values + "domain": "django", + "all": False, + "symlinks": False, + "ignore_patterns": [], + "use_default_ignore_patterns": True, + "no_wrap": False, + "no_location": False, + "no_obsolete": False, + "keep_pot": False, + "verbosity": "0", + } + + if resources is not None: + print("`update_catalogs` will always process all resources.") + + os.chdir(os.getcwd()) + print("Updating en catalogs for all taiga-back resourcess...") + cmd.handle(**opts) + + # Output changed stats + contrib_dirs = _get_locale_dirs(None) + for name, dir_ in contrib_dirs: + _check_diff(name, dir_) + + +def lang_stats(resources=None, languages=None): + """ + Output language statistics of committed translation files for each catalog. + If resources is provided, it should be a list of translation resource to + limit the output (e.g. ['main', 'taiga']). + """ + locale_dirs = _get_locale_dirs(resources) + + for name, dir_ in locale_dirs: + print("\nShowing translations stats for '{res}':".format(res=name)) + langs = sorted([d for d in os.listdir(dir_) if not d.startswith('_')]) + + for lang in langs: + if languages and lang not in languages: + continue + + # TODO: merge first with the latest en catalog + p = Popen("msgfmt -vc -o /dev/null {path}/{lang}/LC_MESSAGES/django.po".format(path=dir_, lang=lang), + stdout=PIPE, stderr=PIPE, shell=True) + output, errors = p.communicate() + + if p.returncode == 0: + # msgfmt output stats on stderr + print("{0}: {1}".format(lang, errors.strip().decode("utf-8"))) + else: + print("Errors happened when checking {0} translation for {1}:\n{2}".format(lang, name, errors)) + + +def fetch(resources=None, languages=None): + """ + Fetch translations from Transifex, wrap long lines, generate mo files. + """ + locale_dirs = _get_locale_dirs(resources) + errors = [] + + for name, dir_ in locale_dirs: + # Transifex pull + if languages is None: + call("tx pull -r {res} -a -f --minimum-perc=5".format(res=_tx_resource_for_name(name)), shell=True) + languages = sorted([d for d in os.listdir(dir_) if not d.startswith("_") and d != "en"]) + else: + for lang in languages: + call("tx pull -r {res} -f -l {lang}".format(res=_tx_resource_for_name(name), lang=lang), shell=True) + + # msgcat to wrap lines and msgfmt for compilation of .mo file + for lang in languages: + po_path = "{path}/{lang}/LC_MESSAGES/django.po".format(path=dir_, lang=lang) + + if not os.path.exists(po_path): + print("No {lang} translation for resource {res}".format(lang=lang, res=name)) + continue + + call("msgcat -o {0} {0}".format(po_path), shell=True) + res = call("msgfmt -c -o {0}.mo {1}".format(po_path[:-3], po_path), shell=True) + + if res != 0: + errors.append((name, lang)) + + if errors: + print("\nWARNING: Errors have occurred in following cases:") + for resource, lang in errors: + print("\tResource {res} for language {lang}".format(res=resource, lang=lang)) + + exit(1) + + +def commit(resources=None, languages=None): + """ + Commit messages to Transifex, + """ + locale_dirs = _get_locale_dirs(resources) + errors = [] + + for name, dir_ in locale_dirs: + # Transifex push + if languages is None: + call("tx push -r {res} -s -l en".format(res=_tx_resource_for_name(name)), shell=True) + else: + for lang in languages: + call("tx push -r {res} -l {lang}".format(res= _tx_resource_for_name(name), lang=lang), shell=True) + + +if __name__ == "__main__": + try: + devnull = open(os.devnull) + Popen(["tx"], stdout=devnull, stderr=devnull).communicate() + except OSError as e: + if e.errno == os.errno.ENOENT: + print(""" +You need transifex-client, install it. + + 1. Install transifex-client, use + + $ pip install --upgrade -r requirements-devel.txt + + or + + $ pip install --upgrade transifex-client==0.11.1b0 + + 2. Create ~/.transifexrc file: + + $ vim ~/.transifexrc" + + [https://www.transifex.com] + hostname = https://www.transifex.com + username = + password = + """) + exit(1) + + RUNABLE_SCRIPTS = { + "update_catalogs": "regenerate .po files of main lang (en).", + "commit": "send .po file to transifex ('en' by default).", + "fetch": "get .po files from transifex and regenerate .mo files.", + "lang_stats": "get stats of local translations", + } + + parser = ArgumentParser(description="manage translations in taiga-back between the repo and transifex.", + formatter_class=RawTextHelpFormatter) + parser.add_argument("cmd", nargs=1, + help="\n".join(["{0} - {1}".format(c, h) for c, h in RUNABLE_SCRIPTS.items()])) + parser.add_argument("-r", "--resources", action="append", + help="limit operation to the specified resources") + parser.add_argument("-l", "--languages", action="append", + help="limit operation to the specified languages") + options = parser.parse_args() + + if options.cmd[0] in RUNABLE_SCRIPTS.keys(): + eval(options.cmd[0])(options.resources, options.languages) + else: + print("Available commands are: {}".format(", ".join(RUNABLE_SCRIPTS.keys()))) diff --git a/settings/common.py b/settings/common.py index dc8d2b9d..b75a4e8c 100644 --- a/settings/common.py +++ b/settings/common.py @@ -15,7 +15,11 @@ # along with this program. If not, see . import os.path, sys, os -from django.utils.translation import ugettext_lazy as _ + +# This is defined here as a do-nothing function because we can't import +# django.utils.translation -- that module depends on the settings. +gettext_noop = lambda s: s + BASE_DIR = os.path.dirname(os.path.dirname(__file__)) @@ -26,11 +30,6 @@ ADMINS = ( ("Admin", "example@example.com"), ) -LANGUAGES = ( - ("en", _("English")), - ("es", _("Spanish")), -) - DATABASES = { "default": { "ENGINE": "transaction_hooks.backends.postgresql_psycopg2", @@ -60,12 +59,108 @@ IGNORABLE_404_STARTS = ("/phpmyadmin/",) ATOMIC_REQUESTS = True TIME_ZONE = "UTC" -LANGUAGE_CODE = "en" -USE_I18N = True -USE_L10N = True LOGIN_URL="/auth/login/" USE_TZ = True +USE_I18N = True +USE_L10N = True +# Language code for this installation. All choices can be found here: +# http://www.i18nguy.com/unicode/language-identifiers.html +LANGUAGE_CODE = 'en-us' + +# Languages we provide translations for, out of the box. +LANGUAGES = [ + ('af', gettext_noop('Afrikaans')), + ('ar', gettext_noop('Arabic')), + ('ast', gettext_noop('Asturian')), + ('az', gettext_noop('Azerbaijani')), + ('bg', gettext_noop('Bulgarian')), + ('be', gettext_noop('Belarusian')), + ('bn', gettext_noop('Bengali')), + ('br', gettext_noop('Breton')), + ('bs', gettext_noop('Bosnian')), + ('ca', gettext_noop('Catalan')), + ('cs', gettext_noop('Czech')), + ('cy', gettext_noop('Welsh')), + ('da', gettext_noop('Danish')), + ('de', gettext_noop('German')), + ('el', gettext_noop('Greek')), + ('en', gettext_noop('English')), + ('en-au', gettext_noop('Australian English')), + ('en-gb', gettext_noop('British English')), + ('eo', gettext_noop('Esperanto')), + ('es', gettext_noop('Spanish')), + ('es-ar', gettext_noop('Argentinian Spanish')), + ('es-mx', gettext_noop('Mexican Spanish')), + ('es-ni', gettext_noop('Nicaraguan Spanish')), + ('es-ve', gettext_noop('Venezuelan Spanish')), + ('et', gettext_noop('Estonian')), + ('eu', gettext_noop('Basque')), + ('fa', gettext_noop('Persian')), + ('fi', gettext_noop('Finnish')), + ('fr', gettext_noop('French')), + ('fy', gettext_noop('Frisian')), + ('ga', gettext_noop('Irish')), + ('gl', gettext_noop('Galician')), + ('he', gettext_noop('Hebrew')), + ('hi', gettext_noop('Hindi')), + ('hr', gettext_noop('Croatian')), + ('hu', gettext_noop('Hungarian')), + ('ia', gettext_noop('Interlingua')), + ('id', gettext_noop('Indonesian')), + ('io', gettext_noop('Ido')), + ('is', gettext_noop('Icelandic')), + ('it', gettext_noop('Italian')), + ('ja', gettext_noop('Japanese')), + ('ka', gettext_noop('Georgian')), + ('kk', gettext_noop('Kazakh')), + ('km', gettext_noop('Khmer')), + ('kn', gettext_noop('Kannada')), + ('ko', gettext_noop('Korean')), + ('lb', gettext_noop('Luxembourgish')), + ('lt', gettext_noop('Lithuanian')), + ('lv', gettext_noop('Latvian')), + ('mk', gettext_noop('Macedonian')), + ('ml', gettext_noop('Malayalam')), + ('mn', gettext_noop('Mongolian')), + ('mr', gettext_noop('Marathi')), + ('my', gettext_noop('Burmese')), + ('nb', gettext_noop('Norwegian Bokmal')), + ('ne', gettext_noop('Nepali')), + ('nl', gettext_noop('Dutch')), + ('nn', gettext_noop('Norwegian Nynorsk')), + ('os', gettext_noop('Ossetic')), + ('pa', gettext_noop('Punjabi')), + ('pl', gettext_noop('Polish')), + ('pt', gettext_noop('Portuguese')), + ('pt-br', gettext_noop('Brazilian Portuguese')), + ('ro', gettext_noop('Romanian')), + ('ru', gettext_noop('Russian')), + ('sk', gettext_noop('Slovak')), + ('sl', gettext_noop('Slovenian')), + ('sq', gettext_noop('Albanian')), + ('sr', gettext_noop('Serbian')), + ('sr-latn', gettext_noop('Serbian Latin')), + ('sv', gettext_noop('Swedish')), + ('sw', gettext_noop('Swahili')), + ('ta', gettext_noop('Tamil')), + ('te', gettext_noop('Telugu')), + ('th', gettext_noop('Thai')), + ('tr', gettext_noop('Turkish')), + ('tt', gettext_noop('Tatar')), + ('udm', gettext_noop('Udmurt')), + ('uk', gettext_noop('Ukrainian')), + ('ur', gettext_noop('Urdu')), + ('vi', gettext_noop('Vietnamese')), + ('zh-hans', gettext_noop('Simplified Chinese')), + ('zh-hant', gettext_noop('Traditional Chinese')), +] + +# Languages using BiDi (right-to-left) layout +LANGUAGES_BIDI = ["he", "ar", "fa", "ur"] + + + SITES = { "api": {"domain": "localhost:8000", "scheme": "http", "name": "api"}, "front": {"domain": "localhost:9001", "scheme": "http", "name": "front"}, diff --git a/taiga/locale/ca/LC_MESSAGES/django.po b/taiga/locale/ca/LC_MESSAGES/django.po new file mode 100644 index 00000000..6066e04f --- /dev/null +++ b/taiga/locale/ca/LC_MESSAGES/django.po @@ -0,0 +1,1589 @@ +# taiga-back.taiga. +# Copyright (C) 2015 Taiga Dev Team +# This file is distributed under the same license as the taiga-back package. +# +# Translators: +# Javier Julián Olmos , 2015 +# Taiga Dev Team , 2015 +msgid "" +msgstr "" +"Project-Id-Version: taiga-back\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-03-25 20:09+0100\n" +"PO-Revision-Date: 2015-03-25 13:03+0000\n" +"Last-Translator: Javier Julián Olmos \n" +"Language-Team: Catalan (http://www.transifex.com/projects/p/taiga-back/" +"language/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: taiga/auth/api.py:100 +msgid "Public register is disabled." +msgstr "El registre públic està deshabilitat" + +#: taiga/auth/api.py:133 +msgid "invalid register type" +msgstr "Sistema de registre invàlid" + +#: taiga/auth/api.py:146 +msgid "invalid login type" +msgstr "Sistema de login invàlid" + +#: taiga/auth/services.py:75 +msgid "Username is already in use." +msgstr "El mot d'usuari ja està en ús." + +#: taiga/auth/services.py:78 +msgid "Email is already in use." +msgstr "Aquest e-mail ja està en ús." + +#: taiga/auth/services.py:172 +msgid "Error on creating new user." +msgstr "Error creant un nou usuari." + +#: taiga/base/api/generics.py:162 +msgid "Page is not 'last', nor can it be converted to an int." +msgstr "La página no es 'last' ni pot ser convertida a un 'int'" + +#: taiga/base/api/generics.py:166 +#, python-format +msgid "Invalid page (%(page_number)s): %(message)s" +msgstr "Pàgina invàlida (%(page_number)s): %(message)s" + +#: taiga/base/connectors/exceptions.py:24 +msgid "Connection error." +msgstr "Error de connexió." + +#: taiga/base/exceptions.py:30 +msgid "Unexpected error" +msgstr "Error inesperat." + +#: taiga/base/exceptions.py:42 +msgid "Not found." +msgstr "No s'ha trobat." + +#: taiga/base/exceptions.py:47 +msgid "Method not supported for this endpoint." +msgstr "Mètode no suportat per aquest endpoint." + +#: taiga/base/exceptions.py:55 taiga/base/exceptions.py:63 +msgid "Wrong arguments." +msgstr "Arguments invàlids." + +#: taiga/base/exceptions.py:67 +msgid "Data validation error" +msgstr "Validació de data errònia" + +#: taiga/base/exceptions.py:79 +msgid "Integrity Error for wrong or invalid arguments" +msgstr "Error d'integritat per argument invàlid o erroni." + +#: taiga/base/exceptions.py:86 +msgid "Precondition error" +msgstr "Precondició errònia." + +#: taiga/base/tags.py:25 +msgid "tags" +msgstr "tags" + +#: taiga/base/templates/emails/base-body-html.jinja:6 +msgid "Taiga" +msgstr "Taiga" + +#: taiga/base/templates/emails/base-body-html.jinja:406 +#: taiga/base/templates/emails/hero-body-html.jinja:380 +#: taiga/base/templates/emails/updates-body-html.jinja:442 +msgid "Follow us on Twitter" +msgstr "Segueix-nos a Twitter" + +#: taiga/base/templates/emails/base-body-html.jinja:406 +#: taiga/base/templates/emails/hero-body-html.jinja:380 +#: taiga/base/templates/emails/updates-body-html.jinja:442 +msgid "Twitter" +msgstr "Twitter" + +#: taiga/base/templates/emails/base-body-html.jinja:407 +#: taiga/base/templates/emails/hero-body-html.jinja:381 +#: taiga/base/templates/emails/updates-body-html.jinja:443 +msgid "Get the code on GitHub" +msgstr "Aconsegueix el codi a Github" + +#: taiga/base/templates/emails/base-body-html.jinja:407 +#: taiga/base/templates/emails/hero-body-html.jinja:381 +#: taiga/base/templates/emails/updates-body-html.jinja:443 +msgid "GitHub" +msgstr "GitHub" + +#: taiga/base/templates/emails/base-body-html.jinja:408 +#: taiga/base/templates/emails/hero-body-html.jinja:382 +#: taiga/base/templates/emails/updates-body-html.jinja:444 +msgid "Visit our website" +msgstr "Visita la nostra pàgina web" + +#: taiga/base/templates/emails/base-body-html.jinja:408 +#: taiga/base/templates/emails/hero-body-html.jinja:382 +#: taiga/base/templates/emails/updates-body-html.jinja:444 +msgid "Taiga.io" +msgstr "Taiga.io" + +#: taiga/base/templates/emails/hero-body-html.jinja:6 +msgid "You have been Taigatized" +msgstr "Has sigut Taigatizat" + +#: taiga/base/templates/emails/hero-body-html.jinja:359 +msgid "" +"\n" +"

You have been Taigatized!" +"

\n" +"

Welcome to Taiga, an Open " +"Source, Agile Project Management Tool

\n" +" " +msgstr "" + +#: taiga/base/templates/emails/updates-body-html.jinja:6 +msgid "[Taiga] Updates" +msgstr "[Taiga] Actualitzacions" + +#: taiga/base/templates/emails/updates-body-html.jinja:417 +msgid "Updates" +msgstr "Actualitzacions" + +#: taiga/base/templates/emails/updates-body-html.jinja:423 +#, python-format +msgid "" +"\n" +"

comment:" +"

\n" +"

" +"%(comment)s

\n" +" " +msgstr "" +"\n" +"

Comentari:

\n" +"

%(comment)s

\n" +" " + +#: taiga/base/templates/emails/updates-body-text.jinja:6 +#, python-format +msgid "" +"\n" +" Comment: %(comment)s\n" +" " +msgstr "" +"\n" +" Comentari: %(comment)s\n" +" " + +#: taiga/export_import/api.py:183 +msgid "Needed dump file" +msgstr "Es necessita arxiu dump." + +#: taiga/export_import/api.py:190 +msgid "Invalid dump format" +msgstr "Format d'arxiu dump invàlid" + +#: taiga/export_import/serializers.py:377 +#: taiga/projects/custom_attributes/serializers.py:104 +msgid "Invalid content. It must be {\"key\": \"value\",...}" +msgstr "Contingut invàlid. Deu ser {\"key\": \"value\",...}" + +#: taiga/export_import/serializers.py:392 +#: taiga/projects/custom_attributes/serializers.py:119 +msgid "It contain invalid custom fields." +msgstr "Conté camps personalitzats invàlids." + +#: taiga/export_import/templates/emails/dump_project-subject.jinja:1 +#, python-format +msgid "[%(project)s] Your project dump has been generated" +msgstr "[%(project)s] El bolcat de dades del teu projecte ha sigut generat " + +#: taiga/export_import/templates/emails/export_error-subject.jinja:1 +#, python-format +msgid "[%(project)s] %(error_subject)s" +msgstr "[%(project)s] %(error_subject)s" + +#: taiga/export_import/templates/emails/import_error-subject.jinja:1 +#, python-format +msgid "[Taiga] %(error_subject)s" +msgstr "[Taiga] %(error_subject)s" + +#: taiga/export_import/templates/emails/load_dump-subject.jinja:1 +#, python-format +msgid "[%(project)s] Your project dump has been imported" +msgstr "[%(project)s] El teu bolcat de dades ha sigut importat" + +#: taiga/feedback/models.py:23 taiga/users/models.py:111 +msgid "full name" +msgstr "Nom complet" + +#: taiga/feedback/models.py:25 taiga/users/models.py:106 +msgid "email address" +msgstr "Adreça d'email" + +#: taiga/feedback/models.py:27 +msgid "comment" +msgstr "Comentari" + +#: taiga/feedback/models.py:29 taiga/projects/attachments/models.py:63 +#: taiga/projects/custom_attributes/models.py:38 +#: taiga/projects/issues/models.py:53 taiga/projects/milestones/models.py:45 +#: taiga/projects/models.py:126 taiga/projects/models.py:549 +#: taiga/projects/tasks/models.py:46 taiga/projects/userstories/models.py:82 +#: taiga/projects/wiki/models.py:38 taiga/userstorage/models.py:27 +msgid "created date" +msgstr "Data de creació" + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:4 +#, python-format +msgid "" +"\n" +"

Feedback

\n" +"

Taiga has received feedback from %(full_name)s <%(email)s>

\n" +" " +msgstr "" +"\n" +"

Feedback

\n" +"

Taiga ha rebut feedback de %(full_name)s <%(email)s>

\n" +" " + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:9 +#, python-format +msgid "" +"\n" +"

Comment

\n" +"

%(comment)s

\n" +" " +msgstr "" +"\n" +"

Comentari

\n" +"

%(comment)s

\n" +" " + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:18 +#: taiga/users/admin.py:51 +msgid "Extra info" +msgstr "Informació extra" + +#: taiga/feedback/templates/emails/feedback_notification-body-text.jinja:1 +#, python-format +msgid "" +"---------\n" +"- From: %(full_name)s <%(email)s>\n" +"---------\n" +"- Comment:\n" +"%(comment)s\n" +"---------" +msgstr "" +"---------\n" +"- De: %(full_name)s <%(email)s>\n" +"---------\n" +"- Comentari:\n" +"%(comment)s\n" +"---------" + +#: taiga/feedback/templates/emails/feedback_notification-body-text.jinja:8 +msgid "- Extra info:" +msgstr "- Informació extra:" + +#: taiga/feedback/templates/emails/feedback_notification-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Feedback from %(full_name)s <%(email)s>\n" +msgstr "" +"\n" +"[Taiga] Feedback de %(full_name)s <%(email)s>\n" + +#: taiga/hooks/api.py:52 +msgid "The payload is not a valid json" +msgstr "El payload no és un arxiu json vàlid" + +#: taiga/hooks/api.py:61 +msgid "The project doesn't exist" +msgstr "El projecte no existeix" + +#: taiga/hooks/api.py:64 +msgid "Bad signature" +msgstr "Firma no vàlida." + +#: taiga/hooks/bitbucket/api.py:40 +msgid "The payload is not a valid application/x-www-form-urlencoded" +msgstr "El payload no és un application/x-www-form-urlencoded vàlid" + +#: taiga/hooks/bitbucket/event_hooks.py:46 +msgid "The payload is not valid" +msgstr "El payload no és vàlid" + +#: taiga/hooks/bitbucket/event_hooks.py:82 +#: taiga/hooks/github/event_hooks.py:75 taiga/hooks/gitlab/event_hooks.py:74 +msgid "The referenced element doesn't exist" +msgstr "L'element referenciat no existeix" + +#: taiga/hooks/bitbucket/event_hooks.py:89 +#: taiga/hooks/github/event_hooks.py:82 taiga/hooks/gitlab/event_hooks.py:81 +msgid "The status doesn't exist" +msgstr "L'estatus no existeix." + +#: taiga/hooks/github/event_hooks.py:113 taiga/hooks/gitlab/event_hooks.py:114 +msgid "Invalid issue information" +msgstr "Informació d'incidència no vàlida." + +#: taiga/hooks/github/event_hooks.py:135 taiga/hooks/github/event_hooks.py:144 +msgid "Invalid issue comment information" +msgstr "Informació del comentari a l'incidència no vàlid." + +#: taiga/permissions/permissions.py:21 taiga/permissions/permissions.py:31 +#: taiga/permissions/permissions.py:52 +msgid "View project" +msgstr "Veure projecte" + +#: taiga/permissions/permissions.py:22 taiga/permissions/permissions.py:32 +#: taiga/permissions/permissions.py:54 +msgid "View milestones" +msgstr "Veure fita" + +#: taiga/permissions/permissions.py:23 taiga/permissions/permissions.py:33 +msgid "View user stories" +msgstr "Veure història d'usuari" + +#: taiga/permissions/permissions.py:24 taiga/permissions/permissions.py:36 +#: taiga/permissions/permissions.py:64 +msgid "View tasks" +msgstr "Veure tasca" + +#: taiga/permissions/permissions.py:25 taiga/permissions/permissions.py:34 +#: taiga/permissions/permissions.py:69 +msgid "View issues" +msgstr "Veure incidència" + +#: taiga/permissions/permissions.py:26 taiga/permissions/permissions.py:37 +#: taiga/permissions/permissions.py:75 +msgid "View wiki pages" +msgstr "Veure pàgina del wiki" + +#: taiga/permissions/permissions.py:27 taiga/permissions/permissions.py:38 +#: taiga/permissions/permissions.py:80 +msgid "View wiki links" +msgstr "Veure links del wiki" + +#: taiga/permissions/permissions.py:35 taiga/permissions/permissions.py:70 +msgid "Vote issues" +msgstr "Vota incidéncies" + +#: taiga/permissions/permissions.py:39 +msgid "Request membership" +msgstr "Demana membresía" + +#: taiga/permissions/permissions.py:40 +msgid "Add user story to project" +msgstr "Afegeix història d'usuari a projecte" + +#: taiga/permissions/permissions.py:41 +msgid "Add comments to user stories" +msgstr "Afegeix comentaris a històries d'usuari" + +#: taiga/permissions/permissions.py:42 +msgid "Add comments to tasks" +msgstr "Afegeix comentaris a tasques" + +#: taiga/permissions/permissions.py:43 +msgid "Add issues" +msgstr "Afegeix incidéncies" + +#: taiga/permissions/permissions.py:44 +msgid "Add comments to issues" +msgstr "Afegeix comentaris a incidéncies" + +#: taiga/permissions/permissions.py:45 taiga/permissions/permissions.py:76 +msgid "Add wiki page" +msgstr "Afegeix pàgina del wiki" + +#: taiga/permissions/permissions.py:46 taiga/permissions/permissions.py:77 +msgid "Modify wiki page" +msgstr "Modifica pàgina del wiki" + +#: taiga/permissions/permissions.py:47 taiga/permissions/permissions.py:81 +msgid "Add wiki link" +msgstr "Afegeix enllaç de wiki" + +#: taiga/permissions/permissions.py:48 taiga/permissions/permissions.py:82 +msgid "Modify wiki link" +msgstr "Modifica enllaç de wiki" + +#: taiga/permissions/permissions.py:55 +msgid "Add milestone" +msgstr "Afegeix fita" + +#: taiga/permissions/permissions.py:56 +msgid "Modify milestone" +msgstr "Modifica fita" + +#: taiga/permissions/permissions.py:57 +msgid "Delete milestone" +msgstr "Borra fita" + +#: taiga/permissions/permissions.py:59 +msgid "View user story" +msgstr "Veure història d'usuari" + +#: taiga/permissions/permissions.py:60 +msgid "Add user story" +msgstr "Afegeix història d'usuari" + +#: taiga/permissions/permissions.py:61 +msgid "Modify user story" +msgstr "Modifica història d'usuari" + +#: taiga/permissions/permissions.py:62 +msgid "Delete user story" +msgstr "Borra història d'usuari" + +#: taiga/permissions/permissions.py:65 +msgid "Add task" +msgstr "Afegeix tasca" + +#: taiga/permissions/permissions.py:66 +msgid "Modify task" +msgstr "Modifica tasca" + +#: taiga/permissions/permissions.py:67 +msgid "Delete task" +msgstr "Borra tasca" + +#: taiga/permissions/permissions.py:71 +msgid "Add issue" +msgstr "Afegeix incidència" + +#: taiga/permissions/permissions.py:72 +msgid "Modify issue" +msgstr "Modifica incidència" + +#: taiga/permissions/permissions.py:73 +msgid "Delete issue" +msgstr "Borra incidència" + +#: taiga/permissions/permissions.py:78 +msgid "Delete wiki page" +msgstr "Borra pàgina de wiki" + +#: taiga/permissions/permissions.py:83 +msgid "Delete wiki link" +msgstr "Borra enllaç de wiki" + +#: taiga/permissions/permissions.py:87 +msgid "Modify project" +msgstr "Modifica projecte" + +#: taiga/permissions/permissions.py:88 +msgid "Add member" +msgstr "Afegeix membre" + +#: taiga/permissions/permissions.py:89 +msgid "Remove member" +msgstr "Borra membre" + +#: taiga/permissions/permissions.py:90 +msgid "Delete project" +msgstr "Borra projecte" + +#: taiga/permissions/permissions.py:91 +msgid "Admin project values" +msgstr "Administrar valors de projecte" + +#: taiga/permissions/permissions.py:92 +msgid "Admin roles" +msgstr "Administrar rols" + +#: taiga/projects/api.py:454 taiga/projects/serializers.py:227 +msgid "At least one of the user must be an active admin" +msgstr "Al menys un del usuaris ha de ser administrador" + +#: taiga/projects/api.py:484 +msgid "You don't have permisions to see that." +msgstr "No tens permisos per a veure açò." + +#: taiga/projects/attachments/models.py:54 taiga/projects/issues/models.py:38 +#: taiga/projects/milestones/models.py:39 taiga/projects/models.py:131 +#: taiga/projects/tasks/models.py:37 taiga/projects/userstories/models.py:64 +#: taiga/projects/wiki/models.py:34 taiga/userstorage/models.py:25 +msgid "owner" +msgstr "Amo" + +#: taiga/projects/attachments/models.py:56 +#: taiga/projects/custom_attributes/models.py:35 +#: taiga/projects/issues/models.py:51 taiga/projects/milestones/models.py:41 +#: taiga/projects/models.py:326 taiga/projects/models.py:352 +#: taiga/projects/models.py:383 taiga/projects/models.py:412 +#: taiga/projects/models.py:445 taiga/projects/models.py:468 +#: taiga/projects/models.py:495 taiga/projects/models.py:526 +#: taiga/projects/tasks/models.py:41 taiga/projects/userstories/models.py:62 +#: taiga/projects/wiki/models.py:28 taiga/projects/wiki/models.py:66 +#: taiga/users/models.py:193 +msgid "project" +msgstr "Projecte" + +#: taiga/projects/attachments/models.py:58 +msgid "content type" +msgstr "Tipus de contingut" + +#: taiga/projects/attachments/models.py:60 +msgid "object id" +msgstr "Id d'objecte" + +#: taiga/projects/attachments/models.py:66 +#: taiga/projects/custom_attributes/models.py:40 +#: taiga/projects/issues/models.py:56 taiga/projects/milestones/models.py:48 +#: taiga/projects/models.py:129 taiga/projects/models.py:552 +#: taiga/projects/tasks/models.py:49 taiga/projects/userstories/models.py:85 +#: taiga/projects/wiki/models.py:41 taiga/userstorage/models.py:29 +msgid "modified date" +msgstr "Data de modificació" + +#: taiga/projects/attachments/models.py:71 +msgid "attached file" +msgstr "Arxiu adjunt" + +#: taiga/projects/attachments/models.py:74 +msgid "is deprecated" +msgstr "està obsolet " + +#: taiga/projects/attachments/models.py:75 +#: taiga/projects/custom_attributes/models.py:32 +#: taiga/projects/history/templatetags/functions.py:25 +#: taiga/projects/issues/models.py:61 taiga/projects/models.py:124 +#: taiga/projects/models.py:547 taiga/projects/tasks/models.py:60 +#: taiga/projects/userstories/models.py:90 +msgid "description" +msgstr "Descripció" + +#: taiga/projects/attachments/models.py:76 +#: taiga/projects/custom_attributes/models.py:33 +#: taiga/projects/milestones/models.py:54 taiga/projects/models.py:342 +#: taiga/projects/models.py:379 taiga/projects/models.py:406 +#: taiga/projects/models.py:441 taiga/projects/models.py:464 +#: taiga/projects/models.py:489 taiga/projects/models.py:522 +#: taiga/projects/wiki/models.py:71 taiga/users/models.py:188 +msgid "order" +msgstr "Ordre" + +#: taiga/projects/custom_attributes/models.py:31 +#: taiga/projects/milestones/models.py:34 taiga/projects/models.py:120 +#: taiga/projects/models.py:338 taiga/projects/models.py:377 +#: taiga/projects/models.py:402 taiga/projects/models.py:439 +#: taiga/projects/models.py:462 taiga/projects/models.py:485 +#: taiga/projects/models.py:520 taiga/projects/models.py:543 +#: taiga/users/models.py:180 taiga/webhooks/models.py:27 +msgid "name" +msgstr "Nom" + +#: taiga/projects/custom_attributes/models.py:81 +msgid "attributes_values" +msgstr "valors_atributs" + +#: taiga/projects/custom_attributes/models.py:91 +#: taiga/projects/tasks/models.py:33 taiga/projects/userstories/models.py:34 +msgid "user story" +msgstr "història d'usuari" + +#: taiga/projects/custom_attributes/models.py:106 +msgid "task" +msgstr "tasca" + +#: taiga/projects/custom_attributes/models.py:121 +msgid "issue" +msgstr "incidéncia" + +#: taiga/projects/custom_attributes/serializers.py:58 +msgid "Already exists one with the same name." +msgstr "Ja existix altre amb el matex nom." + +#: taiga/projects/history/choices.py:27 +msgid "Change" +msgstr "Canvia" + +#: taiga/projects/history/choices.py:28 +msgid "Create" +msgstr "Crea" + +#: taiga/projects/history/choices.py:29 +msgid "Delete" +msgstr "Borra" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:22 +#, python-format +msgid "%(role)s role points" +msgstr "%(role)s punts de rol" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:25 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:130 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:133 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:156 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:192 +msgid "from" +msgstr "De" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:31 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:141 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:144 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:162 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:179 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:198 +msgid "to" +msgstr "a" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:43 +msgid "Added new attachment" +msgstr "Afegir nou arxiu" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:61 +msgid "Updated attachment" +msgstr "Arxiu actualitzat" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:67 +msgid "deprecated" +msgstr "Obsolet" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:69 +msgid "not deprecated" +msgstr "No obsolet" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:85 +msgid "Deleted attachment" +msgstr "Arxiu borrat" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:104 +msgid "added" +msgstr "Afegit" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:109 +msgid "removed" +msgstr "Borrat" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:134 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:145 +msgid "Unassigned" +msgstr "Sense assignar" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:209 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:86 +msgid "-deleted-" +msgstr "-borrat-" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:20 +msgid "to:" +msgstr "a:" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:20 +msgid "from:" +msgstr "desde:" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:26 +msgid "Added" +msgstr "Afegit" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:33 +msgid "Changed" +msgstr "Canviat" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:40 +msgid "Deleted" +msgstr "Borrat" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:54 +msgid "added:" +msgstr "afegit:" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:57 +msgid "removed:" +msgstr "borrat:" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:62 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:79 +msgid "From:" +msgstr "Desde:" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:63 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:80 +msgid "To:" +msgstr "A:" + +#: taiga/projects/history/templatetags/functions.py:26 +#: taiga/projects/wiki/models.py:32 +msgid "content" +msgstr "contingut" + +#: taiga/projects/history/templatetags/functions.py:27 +#: taiga/projects/mixins/blocked.py:31 +msgid "blocked note" +msgstr "nota de bloqueig" + +#: taiga/projects/issues/api.py:139 +msgid "You don't have permissions to set this sprint to this issue." +msgstr "No tens permissos per a ficar aquest sprint a aquesta incidència" + +#: taiga/projects/issues/api.py:143 +msgid "You don't have permissions to set this status to this issue." +msgstr "No tens permissos per a ficar aquest status a aquesta tasca" + +#: taiga/projects/issues/api.py:147 +msgid "You don't have permissions to set this severity to this issue." +msgstr "No tens permissos per a ficar aquesta severitat a aquesta tasca" + +#: taiga/projects/issues/api.py:151 +msgid "You don't have permissions to set this priority to this issue." +msgstr "No tens permissos per a ficar aquesta prioritat a aquesta incidència" + +#: taiga/projects/issues/api.py:155 +msgid "You don't have permissions to set this type to this issue." +msgstr "No tens permissos per a ficar aquest tipus a aquesta incidència" + +#: taiga/projects/issues/models.py:36 taiga/projects/tasks/models.py:35 +#: taiga/projects/userstories/models.py:57 +msgid "ref" +msgstr "ref" + +#: taiga/projects/issues/models.py:40 taiga/projects/tasks/models.py:39 +#: taiga/projects/userstories/models.py:67 +msgid "status" +msgstr "estatus" + +#: taiga/projects/issues/models.py:42 +msgid "severity" +msgstr "severitat" + +#: taiga/projects/issues/models.py:44 +msgid "priority" +msgstr "prioritat" + +#: taiga/projects/issues/models.py:46 +msgid "type" +msgstr "tipus" + +#: taiga/projects/issues/models.py:49 taiga/projects/tasks/models.py:44 +#: taiga/projects/userstories/models.py:60 +msgid "milestone" +msgstr "fita" + +#: taiga/projects/issues/models.py:58 taiga/projects/tasks/models.py:51 +msgid "finished date" +msgstr "Data de finalització" + +#: taiga/projects/issues/models.py:60 taiga/projects/tasks/models.py:53 +#: taiga/projects/userstories/models.py:89 +msgid "subject" +msgstr "tema" + +#: taiga/projects/issues/models.py:64 taiga/projects/tasks/models.py:63 +#: taiga/projects/userstories/models.py:93 +msgid "assigned to" +msgstr "assignada a" + +#: taiga/projects/issues/models.py:66 taiga/projects/tasks/models.py:67 +#: taiga/projects/userstories/models.py:103 +msgid "external reference" +msgstr "referència externa" + +#: taiga/projects/milestones/models.py:37 taiga/projects/models.py:122 +#: taiga/projects/models.py:340 taiga/projects/models.py:404 +#: taiga/projects/models.py:487 taiga/projects/models.py:545 +#: taiga/projects/wiki/models.py:30 taiga/users/models.py:182 +msgid "slug" +msgstr "slug" + +#: taiga/projects/milestones/models.py:42 +msgid "estimated start date" +msgstr "Data estimada d'inici" + +#: taiga/projects/milestones/models.py:43 +msgid "estimated finish date" +msgstr "Data estimada de finalització" + +#: taiga/projects/milestones/models.py:50 taiga/projects/models.py:344 +#: taiga/projects/models.py:408 taiga/projects/models.py:491 +msgid "is closed" +msgstr "està tancat" + +#: taiga/projects/milestones/models.py:52 +msgid "disponibility" +msgstr "disponibilitat" + +#: taiga/projects/milestones/validators.py:12 +msgid "There's no sprint with that id" +msgstr "No hi ha cap sprint amb aquest id" + +#: taiga/projects/mixins/blocked.py:29 +msgid "is blocked" +msgstr "està bloquejat" + +#: taiga/projects/mixins/ordering.py:47 +#, python-brace-format +msgid "{param} parameter is mandatory" +msgstr "{param} paràmetre és obligatori" + +#: taiga/projects/mixins/ordering.py:51 +msgid "project parameter is mandatory" +msgstr "el paràmetre de projecte és obligatori" + +#: taiga/projects/models.py:59 +msgid "email" +msgstr "email" + +#: taiga/projects/models.py:61 +msgid "creado el" +msgstr "creat el" + +#: taiga/projects/models.py:63 taiga/users/models.py:126 +msgid "token" +msgstr "token" + +#: taiga/projects/models.py:69 +msgid "invitation extra text" +msgstr "text extra d'invitació" + +#: taiga/projects/models.py:75 +msgid "The user is already member of the project" +msgstr "L'usuari ja es membre del projecte" + +#: taiga/projects/models.py:90 +msgid "default points" +msgstr "Points per defecte" + +#: taiga/projects/models.py:94 +msgid "default US status" +msgstr "estatus d'història d'usuai per defecte" + +#: taiga/projects/models.py:98 +msgid "default task status" +msgstr "Estatus de tasca per defecte" + +#: taiga/projects/models.py:101 +msgid "default priority" +msgstr "Prioritat per defecte" + +#: taiga/projects/models.py:104 +msgid "default severity" +msgstr "Severitat per defecte" + +#: taiga/projects/models.py:108 +msgid "default issue status" +msgstr "Status d'incidència per defecte" + +#: taiga/projects/models.py:112 +msgid "default issue type" +msgstr "Tipus d'incidència per defecte" + +#: taiga/projects/models.py:133 +msgid "members" +msgstr "membres" + +#: taiga/projects/models.py:136 +msgid "total of milestones" +msgstr "total de fites" + +#: taiga/projects/models.py:137 +msgid "total story points" +msgstr "total de punts d'història" + +#: taiga/projects/models.py:140 taiga/projects/models.py:558 +msgid "active backlog panel" +msgstr "activa panell de backlog" + +#: taiga/projects/models.py:142 taiga/projects/models.py:560 +msgid "active kanban panel" +msgstr "activa panell de kanban" + +#: taiga/projects/models.py:144 taiga/projects/models.py:562 +msgid "active wiki panel" +msgstr "activa panell de wiki" + +#: taiga/projects/models.py:146 taiga/projects/models.py:564 +msgid "active issues panel" +msgstr "activa panell d'incidències" + +#: taiga/projects/models.py:149 taiga/projects/models.py:567 +msgid "videoconference system" +msgstr "sistema de videoconferència" + +#: taiga/projects/models.py:151 taiga/projects/models.py:569 +msgid "videoconference room salt" +msgstr "sala videoconferència" + +#: taiga/projects/models.py:156 +msgid "creation template" +msgstr "template de creació" + +#: taiga/projects/models.py:159 +msgid "anonymous permissions" +msgstr "permisos d'anònims" + +#: taiga/projects/models.py:163 +msgid "user permissions" +msgstr "permisos d'usuaris" + +#: taiga/projects/models.py:166 +msgid "is private" +msgstr "es privat" + +#: taiga/projects/models.py:177 +msgid "tags colors" +msgstr "colors de tags" + +#: taiga/projects/models.py:327 +msgid "modules config" +msgstr "configuració de mòdules" + +#: taiga/projects/models.py:346 +msgid "is archived" +msgstr "està arxivat" + +#: taiga/projects/models.py:348 taiga/projects/models.py:410 +#: taiga/projects/models.py:443 taiga/projects/models.py:466 +#: taiga/projects/models.py:493 taiga/projects/models.py:524 +#: taiga/users/models.py:113 +msgid "color" +msgstr "color" + +#: taiga/projects/models.py:350 +msgid "work in progress limit" +msgstr "limit de treball en progrés" + +#: taiga/projects/models.py:381 taiga/userstorage/models.py:31 +msgid "value" +msgstr "valor" + +#: taiga/projects/models.py:555 +msgid "default owner's role" +msgstr "rol d'amo per defecte" + +#: taiga/projects/models.py:571 +msgid "default options" +msgstr "opcions per defecte" + +#: taiga/projects/models.py:572 +msgid "us statuses" +msgstr "status d'històries d'usuari" + +#: taiga/projects/models.py:573 taiga/projects/userstories/models.py:40 +#: taiga/projects/userstories/models.py:72 +msgid "points" +msgstr "punts" + +#: taiga/projects/models.py:574 +msgid "task statuses" +msgstr "status de tasques" + +#: taiga/projects/models.py:575 +msgid "issue statuses" +msgstr "status d'incidències" + +#: taiga/projects/models.py:576 +msgid "issue types" +msgstr "tipus d'incidències" + +#: taiga/projects/models.py:577 +msgid "priorities" +msgstr "prioritats" + +#: taiga/projects/models.py:578 +msgid "severities" +msgstr "severitats" + +#: taiga/projects/models.py:579 +msgid "roles" +msgstr "rols" + +#: taiga/projects/notifications/choices.py:28 +msgid "Not watching" +msgstr "No observant" + +#: taiga/projects/notifications/choices.py:29 +msgid "Watching" +msgstr "Observant" + +#: taiga/projects/notifications/choices.py:30 +msgid "Ignoring" +msgstr "Ignorant" + +#: taiga/projects/notifications/mixins.py:87 +msgid "watchers" +msgstr "Observadors" + +#: taiga/projects/notifications/models.py:57 +msgid "created date time" +msgstr "creada data" + +#: taiga/projects/notifications/models.py:59 +msgid "updated date time" +msgstr "Actualitzada data" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-change-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Updated the Wiki Page \"%(page)s\"\n" +msgstr "" +"\n" +"[%(project)s] Actualizada pàgina de Wiki \"%(page)s\"\n" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-create-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Created the Wiki Page \"%(page)s\"\n" +msgstr "" +"\n" +"[%(project)s] Creada pàgina de Wiki \"%(page)s\"\n" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-delete-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Deleted the Wiki Page \"%(page)s\"\n" +msgstr "" +"\n" +"[%(project)s] Borrada pàgina de Wiki \"%(page)s\"\n" + +#: taiga/projects/occ/mixins.py:91 +msgid "version" +msgstr "Versió" + +#: taiga/projects/permissions.py:39 +msgid "You can't leave the project if there are no more owners" +msgstr "No pots deixar el projecte si no hi ha més amos" + +#: taiga/projects/serializers.py:203 +msgid "Email address is already taken" +msgstr "Aquest e-mail ja està en ús" + +#: taiga/projects/serializers.py:215 +msgid "Invalid role for the project" +msgstr "Rol invàlid per al projecte" + +#: taiga/projects/serializers.py:370 +msgid "Default options" +msgstr "Opcions per defecte" + +#: taiga/projects/serializers.py:371 +msgid "User story's statuses" +msgstr "Estatus d'històries d'usuari" + +#: taiga/projects/serializers.py:372 +msgid "Points" +msgstr "Punts" + +#: taiga/projects/serializers.py:373 +msgid "Task's statuses" +msgstr "Estatus de tasques" + +#: taiga/projects/serializers.py:374 +msgid "Issue's statuses" +msgstr "Estatus d'incidéncies" + +#: taiga/projects/serializers.py:375 +msgid "Issue's types" +msgstr "Tipus d'incidéncies" + +#: taiga/projects/serializers.py:376 +msgid "Priorities" +msgstr "Prioritats" + +#: taiga/projects/serializers.py:377 +msgid "Severities" +msgstr "Severitats" + +#: taiga/projects/serializers.py:378 +msgid "Roles" +msgstr "Rols" + +#: taiga/projects/tasks/api.py:57 taiga/projects/tasks/api.py:60 +#: taiga/projects/tasks/api.py:63 taiga/projects/tasks/api.py:66 +msgid "You don't have permissions for add/modify this task." +msgstr "No tens permissos per a afegir/modificar aquesta tasca." + +#: taiga/projects/tasks/models.py:56 +msgid "us order" +msgstr "order d'històries d'usuari" + +#: taiga/projects/tasks/models.py:58 +msgid "taskboard order" +msgstr "ordre de taskboard" + +#: taiga/projects/tasks/models.py:66 +msgid "is iocaine" +msgstr "es iocaina" + +#: taiga/projects/tasks/validators.py:12 +msgid "There's no task with that id" +msgstr "No hi ha cap tasca amb eixe id" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:6 +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:4 +msgid "someone" +msgstr "algú" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:18 +#, python-format +msgid "" +"\n" +"

And now a few words from the jolly good fellow or sistren
" +"who thought so kindly as to invite you

\n" +"

%(extra)s

\n" +" " +msgstr "" +"\n" +"

I ara unes poques paraules del bon company o companya
que ha " +"tingut el bon pensament de convidar-te

\n" +"

%(extra)s

\n" +" " + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:25 +msgid "Accept your invitation to Taiga" +msgstr "Acepta la invitació a Taiga" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:25 +msgid "Accept your invitation" +msgstr "Acepta la invitació" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:26 +msgid "The Taiga Team" +msgstr "El equip de Taiga" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:13 +#, python-format +msgid "" +"\n" +"And now a few words from the jolly good fellow or sistren who thought so " +"kindly as to invite you:\n" +"\n" +"%(extra)s\n" +" " +msgstr "" +"\n" +"I ara unes poques paraules del bon company o companya que ha tingut el bon " +"pensament de convidar-te\n" +"\n" +"%(extra)s\n" +" " + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:19 +msgid "Accept your invitation to Taiga following whis link:" +msgstr "Acepta la invitació a Taiga fent click a aquest link:" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:21 +msgid "" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" +"\n" +"---\n" +"El equip de Taiga\n" + +#: taiga/projects/templates/emails/membership_invitation-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Invitation to join to the project '%(project)s'\n" +msgstr "" +"\n" +"[Taiga] Invitació de Taiga per al projecte '%(project)s'\n" + +#: taiga/projects/templates/emails/membership_notification-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Added to the project '%(project)s'\n" +msgstr "" +"\n" +"[Taiga] Afegit al projecte '%(project)s'\n" + +#: taiga/projects/userstories/api.py:170 +#, python-brace-format +msgid "" +"Generating the user story [US #{ref} - {subject}](:us:{ref} \"US #{ref} - " +"{subject}\")" +msgstr "" +"Generant l'història d'usuari [US #{ref} - {subject}](:us:{ref} \"US #{ref} - " +"{subject}\")" + +#: taiga/projects/userstories/models.py:37 +msgid "role" +msgstr "rol" + +#: taiga/projects/userstories/models.py:75 +msgid "backlog order" +msgstr "ordre de backlog" + +#: taiga/projects/userstories/models.py:77 +#: taiga/projects/userstories/models.py:79 +msgid "sprint order" +msgstr "ordre d'sprint" + +#: taiga/projects/userstories/models.py:87 +msgid "finish date" +msgstr "data de finalització" + +#: taiga/projects/userstories/models.py:95 +msgid "is client requirement" +msgstr "requeriment de client" + +#: taiga/projects/userstories/models.py:97 +msgid "is team requirement" +msgstr "requeriment d'equip" + +#: taiga/projects/userstories/models.py:102 +msgid "generated from issue" +msgstr "generat desde incidéncia" + +#: taiga/projects/userstories/validators.py:12 +msgid "There's no user story with that id" +msgstr "No hi ha cap història d'usuari amb eixe id" + +#: taiga/projects/validators.py:12 +msgid "There's no project with that id" +msgstr "No hi ha cap projecte amb eixe id" + +#: taiga/projects/validators.py:21 +msgid "There's no user story status with that id" +msgstr "No hi ha cap estatis d'història d'usuari amb eixe id" + +#: taiga/projects/validators.py:30 +msgid "There's no task status with that id" +msgstr "No hi ha cap estatus de tasca amb eixe id" + +#: taiga/projects/votes/models.py:31 taiga/projects/votes/models.py:32 +#: taiga/projects/votes/models.py:54 +msgid "Votes" +msgstr "Vots" + +#: taiga/projects/votes/models.py:50 +msgid "votes" +msgstr "vots" + +#: taiga/projects/votes/models.py:53 +msgid "Vote" +msgstr "Vot" + +#: taiga/projects/wiki/api.py:60 +msgid "No content parameter" +msgstr "No hi ha parametre de contingut" + +#: taiga/projects/wiki/api.py:63 +msgid "No project_id parameter" +msgstr "No hi ha parametre de project_id" + +#: taiga/projects/wiki/models.py:36 +msgid "last modifier" +msgstr "últim a modificar" + +#: taiga/projects/wiki/models.py:69 +msgid "href" +msgstr "href" + +#: taiga/users/admin.py:50 +msgid "Personal info" +msgstr "Informació personal" + +#: taiga/users/admin.py:52 +msgid "Permissions" +msgstr "Permissos" + +#: taiga/users/admin.py:53 +msgid "Important dates" +msgstr "Dates importants" + +#: taiga/users/api.py:87 taiga/users/api.py:94 +msgid "Invalid username or email" +msgstr "Nom d'usuari o email invàlid" + +#: taiga/users/api.py:103 +msgid "Mail sended successful!" +msgstr "Correu enviat satisfactòriament" + +#: taiga/users/api.py:116 taiga/users/api.py:121 +msgid "Token is invalid" +msgstr "Token invàlid" + +#: taiga/users/api.py:142 +msgid "Current password parameter needed" +msgstr "Paràmetre de password actual requerit" + +#: taiga/users/api.py:145 +msgid "New password parameter needed" +msgstr "Paràmetre de password requerit" + +#: taiga/users/api.py:148 +msgid "Invalid password length at least 6 charaters needed" +msgstr "Password invàlid, al menys 6 caràcters requerits" + +#: taiga/users/api.py:151 +msgid "Invalid current password" +msgstr "Password actual invàlid" + +#: taiga/users/api.py:167 +msgid "Incomplete arguments" +msgstr "Arguments incomplets." + +#: taiga/users/api.py:172 +msgid "Invalid image format" +msgstr "Format d'image invàlid" + +#: taiga/users/api.py:225 +msgid "Duplicated email" +msgstr "Email duplicat" + +#: taiga/users/api.py:227 +msgid "Not valid email" +msgstr "Email no vàlid" + +#: taiga/users/api.py:246 taiga/users/api.py:252 +msgid "" +"Invalid, are you sure the token is correct and you didn't use it before?" +msgstr "" +"Invàlid. Estás segur que el token es correcte i que no l'has usat abans?" + +#: taiga/users/api.py:279 taiga/users/api.py:287 taiga/users/api.py:290 +msgid "Invalid, are you sure the token is correct?" +msgstr "Invàlid. Estás segur que el token es correcte?" + +#: taiga/users/models.py:69 +msgid "superuser status" +msgstr "estatus de superusuari" + +#: taiga/users/models.py:70 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "" +"Designa que aquest usuari te tots els permisos sense asignarli-los " +"explícitament." + +#: taiga/users/models.py:100 +msgid "username" +msgstr "mot d'usuari" + +#: taiga/users/models.py:101 +msgid "" +"Required. 30 characters or fewer. Letters, numbers and /./-/_ characters" +msgstr "Requerit. 30 caràcters o menys. Lletres, nombres i caràcters /./-/_" + +#: taiga/users/models.py:104 +msgid "Enter a valid username." +msgstr "Introdueix un nom d'usuari vàlid" + +#: taiga/users/models.py:107 +msgid "active" +msgstr "actiu" + +#: taiga/users/models.py:108 +msgid "" +"Designates whether this user should be treated as active. Unselect this " +"instead of deleting accounts." +msgstr "" +"Designa si aquest usuari ha de se tractac com actiu. Deselecciona açó en " +"lloc de borrar el compte." + +#: taiga/users/models.py:114 +msgid "biography" +msgstr "biografia" + +#: taiga/users/models.py:117 +msgid "photo" +msgstr "foto" + +#: taiga/users/models.py:118 +msgid "date joined" +msgstr "data d'unió" + +#: taiga/users/models.py:120 +msgid "default language" +msgstr "llenguatge per defecte" + +#: taiga/users/models.py:122 +msgid "default timezone" +msgstr "zona horaria per defecte" + +#: taiga/users/models.py:124 +msgid "colorize tags" +msgstr "coloritza tags" + +#: taiga/users/models.py:129 +msgid "email token" +msgstr "token de correu" + +#: taiga/users/models.py:131 +msgid "new email address" +msgstr "nova adreça de correu" + +#: taiga/users/models.py:185 +msgid "permissions" +msgstr "permissos" + +#: taiga/users/serializers.py:52 +msgid "invalid username" +msgstr "nom d'usuari invàlid" + +#: taiga/users/serializers.py:53 +msgid "invalid" +msgstr "invàlid" + +#: taiga/users/serializers.py:58 +msgid "" +"Required. 255 characters or fewer. Letters, numbers and /./-/_ characters'" +msgstr "Requerit. 255 caràcters o menys. Lletres, nombres i caràcters /./-/_" + +#: taiga/users/serializers.py:64 +msgid "Invalid username. Try with a different one." +msgstr "Nom d'usuari invàlid" + +#: taiga/users/templates/emails/change_email-body-html.jinja:4 +#, python-format +msgid "" +"\n" +"

Change your email

\n" +"

Hello %(full_name)s,
please confirm your email

\n" +" Confirm " +"email\n" +"

You can ignore this message if you did not request.

\n" +"

The Taiga Team

\n" +" " +msgstr "" + +#: taiga/users/templates/emails/change_email-body-text.jinja:1 +#, python-format +msgid "" +"\n" +"Hello %(full_name)s, please confirm your email\n" +"\n" +"%(url)s\n" +"\n" +"You can ignore this message if you did not request.\n" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/change_email-subject.jinja:1 +msgid "[Taiga] Change email" +msgstr "" + +#: taiga/users/templates/emails/password_recovery-body-text.jinja:1 +#, python-format +msgid "" +"\n" +"Hello %(full_name)s, you asked to recover your password\n" +"\n" +"%(url)s\n" +"\n" +"You can ignore this message if you did not request.\n" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/password_recovery-subject.jinja:1 +msgid "[Taiga] Password recovery" +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-html.jinja:6 +msgid "" +"\n" +" \n" +"

Thank you for registering in Taiga

\n" +"

We hope you enjoy it

\n" +"

We built Taiga because we wanted the project management tool " +"that sits open on our computers all day long, to serve as a continued " +"reminder of why we love to collaborate, code and design.

\n" +"

We built it to be beautiful, elegant, simple to use and fun - " +"without forsaking flexibility and power.

\n" +" The taiga Team\n" +" You may remove your account from this service clicking " +"here\n" +" " +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-text.jinja:1 +msgid "" +"\n" +"Thank you for registering in Taiga\n" +"\n" +"We hope you enjoy it\n" +"\n" +"We built Taiga because we wanted the project management tool that sits open " +"on our computers all day long, to serve as a continued reminder of why we " +"love to collaborate, code and design.\n" +"\n" +"We built it to be beautiful, elegant, simple to use and fun - without " +"forsaking flexibility and power.\n" +"\n" +"--\n" +"The taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-text.jinja:13 +#, python-format +msgid "" +"\n" +"You may remove your account from this service: %(url)s\n" +msgstr "" + +#: taiga/users/templates/emails/registered_user-subject.jinja:1 +msgid "You've been Taigatized!" +msgstr "" + +#: taiga/users/validators.py:29 +msgid "There's no role with that id" +msgstr "" + +#: taiga/userstorage/api.py:50 +msgid "" +"Duplicate key value violates unique constraint. Key '{}' already exists." +msgstr "" + +#: taiga/userstorage/models.py:30 +msgid "key" +msgstr "" + +#: taiga/webhooks/models.py:28 taiga/webhooks/models.py:38 +msgid "URL" +msgstr "" + +#: taiga/webhooks/models.py:29 +msgid "secret key" +msgstr "" + +#: taiga/webhooks/models.py:39 +msgid "Status code" +msgstr "" + +#: taiga/webhooks/models.py:40 +msgid "Request data" +msgstr "" + +#: taiga/webhooks/models.py:41 +msgid "Request headers" +msgstr "" + +#: taiga/webhooks/models.py:42 +msgid "Response data" +msgstr "" + +#: taiga/webhooks/models.py:43 +msgid "Response headers" +msgstr "" + +#: taiga/webhooks/models.py:44 +msgid "Duration" +msgstr "" diff --git a/taiga/locale/en/LC_MESSAGES/django.po b/taiga/locale/en/LC_MESSAGES/django.po new file mode 100644 index 00000000..742c8bcd --- /dev/null +++ b/taiga/locale/en/LC_MESSAGES/django.po @@ -0,0 +1,1531 @@ +# taiga-back.taiga. +# Copyright (C) 2015 Taiga Dev Team +# This file is distributed under the same license as the taiga-back package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: taiga-back\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-03-25 20:09+0100\n" +"PO-Revision-Date: 2015-03-25 20:09+0100\n" +"Last-Translator: Taiga Dev Team \n" +"Language-Team: Taiga Dev Team \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: taiga/auth/api.py:100 +msgid "Public register is disabled." +msgstr "" + +#: taiga/auth/api.py:133 +msgid "invalid register type" +msgstr "" + +#: taiga/auth/api.py:146 +msgid "invalid login type" +msgstr "" + +#: taiga/auth/services.py:75 +msgid "Username is already in use." +msgstr "" + +#: taiga/auth/services.py:78 +msgid "Email is already in use." +msgstr "" + +#: taiga/auth/services.py:172 +msgid "Error on creating new user." +msgstr "" + +#: taiga/base/api/generics.py:162 +msgid "Page is not 'last', nor can it be converted to an int." +msgstr "" + +#: taiga/base/api/generics.py:166 +#, python-format +msgid "Invalid page (%(page_number)s): %(message)s" +msgstr "" + +#: taiga/base/connectors/exceptions.py:24 +msgid "Connection error." +msgstr "" + +#: taiga/base/exceptions.py:30 +msgid "Unexpected error" +msgstr "" + +#: taiga/base/exceptions.py:42 +msgid "Not found." +msgstr "" + +#: taiga/base/exceptions.py:47 +msgid "Method not supported for this endpoint." +msgstr "" + +#: taiga/base/exceptions.py:55 taiga/base/exceptions.py:63 +msgid "Wrong arguments." +msgstr "" + +#: taiga/base/exceptions.py:67 +msgid "Data validation error" +msgstr "" + +#: taiga/base/exceptions.py:79 +msgid "Integrity Error for wrong or invalid arguments" +msgstr "" + +#: taiga/base/exceptions.py:86 +msgid "Precondition error" +msgstr "" + +#: taiga/base/tags.py:25 +msgid "tags" +msgstr "" + +#: taiga/base/templates/emails/base-body-html.jinja:6 +msgid "Taiga" +msgstr "" + +#: taiga/base/templates/emails/base-body-html.jinja:406 +#: taiga/base/templates/emails/hero-body-html.jinja:380 +#: taiga/base/templates/emails/updates-body-html.jinja:442 +msgid "Follow us on Twitter" +msgstr "" + +#: taiga/base/templates/emails/base-body-html.jinja:406 +#: taiga/base/templates/emails/hero-body-html.jinja:380 +#: taiga/base/templates/emails/updates-body-html.jinja:442 +msgid "Twitter" +msgstr "" + +#: taiga/base/templates/emails/base-body-html.jinja:407 +#: taiga/base/templates/emails/hero-body-html.jinja:381 +#: taiga/base/templates/emails/updates-body-html.jinja:443 +msgid "Get the code on GitHub" +msgstr "" + +#: taiga/base/templates/emails/base-body-html.jinja:407 +#: taiga/base/templates/emails/hero-body-html.jinja:381 +#: taiga/base/templates/emails/updates-body-html.jinja:443 +msgid "GitHub" +msgstr "" + +#: taiga/base/templates/emails/base-body-html.jinja:408 +#: taiga/base/templates/emails/hero-body-html.jinja:382 +#: taiga/base/templates/emails/updates-body-html.jinja:444 +msgid "Visit our website" +msgstr "" + +#: taiga/base/templates/emails/base-body-html.jinja:408 +#: taiga/base/templates/emails/hero-body-html.jinja:382 +#: taiga/base/templates/emails/updates-body-html.jinja:444 +msgid "Taiga.io" +msgstr "" + +#: taiga/base/templates/emails/hero-body-html.jinja:6 +msgid "You have been Taigatized" +msgstr "" + +#: taiga/base/templates/emails/hero-body-html.jinja:359 +msgid "" +"\n" +"

You have been Taigatized!" +"

\n" +"

Welcome to Taiga, an Open " +"Source, Agile Project Management Tool

\n" +" " +msgstr "" + +#: taiga/base/templates/emails/updates-body-html.jinja:6 +msgid "[Taiga] Updates" +msgstr "" + +#: taiga/base/templates/emails/updates-body-html.jinja:417 +msgid "Updates" +msgstr "" + +#: taiga/base/templates/emails/updates-body-html.jinja:423 +#, python-format +msgid "" +"\n" +"

comment:" +"

\n" +"

" +"%(comment)s

\n" +" " +msgstr "" + +#: taiga/base/templates/emails/updates-body-text.jinja:6 +#, python-format +msgid "" +"\n" +" Comment: %(comment)s\n" +" " +msgstr "" + +#: taiga/export_import/api.py:183 +msgid "Needed dump file" +msgstr "" + +#: taiga/export_import/api.py:190 +msgid "Invalid dump format" +msgstr "" + +#: taiga/export_import/serializers.py:377 +#: taiga/projects/custom_attributes/serializers.py:104 +msgid "Invalid content. It must be {\"key\": \"value\",...}" +msgstr "" + +#: taiga/export_import/serializers.py:392 +#: taiga/projects/custom_attributes/serializers.py:119 +msgid "It contain invalid custom fields." +msgstr "" + +#: taiga/export_import/templates/emails/dump_project-subject.jinja:1 +#, python-format +msgid "[%(project)s] Your project dump has been generated" +msgstr "" + +#: taiga/export_import/templates/emails/export_error-subject.jinja:1 +#, python-format +msgid "[%(project)s] %(error_subject)s" +msgstr "" + +#: taiga/export_import/templates/emails/import_error-subject.jinja:1 +#, python-format +msgid "[Taiga] %(error_subject)s" +msgstr "" + +#: taiga/export_import/templates/emails/load_dump-subject.jinja:1 +#, python-format +msgid "[%(project)s] Your project dump has been imported" +msgstr "" + +#: taiga/feedback/models.py:23 taiga/users/models.py:111 +msgid "full name" +msgstr "" + +#: taiga/feedback/models.py:25 taiga/users/models.py:106 +msgid "email address" +msgstr "" + +#: taiga/feedback/models.py:27 +msgid "comment" +msgstr "" + +#: taiga/feedback/models.py:29 taiga/projects/attachments/models.py:63 +#: taiga/projects/custom_attributes/models.py:38 +#: taiga/projects/issues/models.py:53 taiga/projects/milestones/models.py:45 +#: taiga/projects/models.py:126 taiga/projects/models.py:549 +#: taiga/projects/tasks/models.py:46 taiga/projects/userstories/models.py:82 +#: taiga/projects/wiki/models.py:38 taiga/userstorage/models.py:27 +msgid "created date" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:4 +#, python-format +msgid "" +"\n" +"

Feedback

\n" +"

Taiga has received feedback from %(full_name)s <%(email)s>

\n" +" " +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:9 +#, python-format +msgid "" +"\n" +"

Comment

\n" +"

%(comment)s

\n" +" " +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:18 +#: taiga/users/admin.py:51 +msgid "Extra info" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-text.jinja:1 +#, python-format +msgid "" +"---------\n" +"- From: %(full_name)s <%(email)s>\n" +"---------\n" +"- Comment:\n" +"%(comment)s\n" +"---------" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-text.jinja:8 +msgid "- Extra info:" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Feedback from %(full_name)s <%(email)s>\n" +msgstr "" + +#: taiga/hooks/api.py:52 +msgid "The payload is not a valid json" +msgstr "" + +#: taiga/hooks/api.py:61 +msgid "The project doesn't exist" +msgstr "" + +#: taiga/hooks/api.py:64 +msgid "Bad signature" +msgstr "" + +#: taiga/hooks/bitbucket/api.py:40 +msgid "The payload is not a valid application/x-www-form-urlencoded" +msgstr "" + +#: taiga/hooks/bitbucket/event_hooks.py:46 +msgid "The payload is not valid" +msgstr "" + +#: taiga/hooks/bitbucket/event_hooks.py:82 +#: taiga/hooks/github/event_hooks.py:75 taiga/hooks/gitlab/event_hooks.py:74 +msgid "The referenced element doesn't exist" +msgstr "" + +#: taiga/hooks/bitbucket/event_hooks.py:89 +#: taiga/hooks/github/event_hooks.py:82 taiga/hooks/gitlab/event_hooks.py:81 +msgid "The status doesn't exist" +msgstr "" + +#: taiga/hooks/github/event_hooks.py:113 taiga/hooks/gitlab/event_hooks.py:114 +msgid "Invalid issue information" +msgstr "" + +#: taiga/hooks/github/event_hooks.py:135 taiga/hooks/github/event_hooks.py:144 +msgid "Invalid issue comment information" +msgstr "" + +#: taiga/permissions/permissions.py:21 taiga/permissions/permissions.py:31 +#: taiga/permissions/permissions.py:52 +msgid "View project" +msgstr "" + +#: taiga/permissions/permissions.py:22 taiga/permissions/permissions.py:32 +#: taiga/permissions/permissions.py:54 +msgid "View milestones" +msgstr "" + +#: taiga/permissions/permissions.py:23 taiga/permissions/permissions.py:33 +msgid "View user stories" +msgstr "" + +#: taiga/permissions/permissions.py:24 taiga/permissions/permissions.py:36 +#: taiga/permissions/permissions.py:64 +msgid "View tasks" +msgstr "" + +#: taiga/permissions/permissions.py:25 taiga/permissions/permissions.py:34 +#: taiga/permissions/permissions.py:69 +msgid "View issues" +msgstr "" + +#: taiga/permissions/permissions.py:26 taiga/permissions/permissions.py:37 +#: taiga/permissions/permissions.py:75 +msgid "View wiki pages" +msgstr "" + +#: taiga/permissions/permissions.py:27 taiga/permissions/permissions.py:38 +#: taiga/permissions/permissions.py:80 +msgid "View wiki links" +msgstr "" + +#: taiga/permissions/permissions.py:35 taiga/permissions/permissions.py:70 +msgid "Vote issues" +msgstr "" + +#: taiga/permissions/permissions.py:39 +msgid "Request membership" +msgstr "" + +#: taiga/permissions/permissions.py:40 +msgid "Add user story to project" +msgstr "" + +#: taiga/permissions/permissions.py:41 +msgid "Add comments to user stories" +msgstr "" + +#: taiga/permissions/permissions.py:42 +msgid "Add comments to tasks" +msgstr "" + +#: taiga/permissions/permissions.py:43 +msgid "Add issues" +msgstr "" + +#: taiga/permissions/permissions.py:44 +msgid "Add comments to issues" +msgstr "" + +#: taiga/permissions/permissions.py:45 taiga/permissions/permissions.py:76 +msgid "Add wiki page" +msgstr "" + +#: taiga/permissions/permissions.py:46 taiga/permissions/permissions.py:77 +msgid "Modify wiki page" +msgstr "" + +#: taiga/permissions/permissions.py:47 taiga/permissions/permissions.py:81 +msgid "Add wiki link" +msgstr "" + +#: taiga/permissions/permissions.py:48 taiga/permissions/permissions.py:82 +msgid "Modify wiki link" +msgstr "" + +#: taiga/permissions/permissions.py:55 +msgid "Add milestone" +msgstr "" + +#: taiga/permissions/permissions.py:56 +msgid "Modify milestone" +msgstr "" + +#: taiga/permissions/permissions.py:57 +msgid "Delete milestone" +msgstr "" + +#: taiga/permissions/permissions.py:59 +msgid "View user story" +msgstr "" + +#: taiga/permissions/permissions.py:60 +msgid "Add user story" +msgstr "" + +#: taiga/permissions/permissions.py:61 +msgid "Modify user story" +msgstr "" + +#: taiga/permissions/permissions.py:62 +msgid "Delete user story" +msgstr "" + +#: taiga/permissions/permissions.py:65 +msgid "Add task" +msgstr "" + +#: taiga/permissions/permissions.py:66 +msgid "Modify task" +msgstr "" + +#: taiga/permissions/permissions.py:67 +msgid "Delete task" +msgstr "" + +#: taiga/permissions/permissions.py:71 +msgid "Add issue" +msgstr "" + +#: taiga/permissions/permissions.py:72 +msgid "Modify issue" +msgstr "" + +#: taiga/permissions/permissions.py:73 +msgid "Delete issue" +msgstr "" + +#: taiga/permissions/permissions.py:78 +msgid "Delete wiki page" +msgstr "" + +#: taiga/permissions/permissions.py:83 +msgid "Delete wiki link" +msgstr "" + +#: taiga/permissions/permissions.py:87 +msgid "Modify project" +msgstr "" + +#: taiga/permissions/permissions.py:88 +msgid "Add member" +msgstr "" + +#: taiga/permissions/permissions.py:89 +msgid "Remove member" +msgstr "" + +#: taiga/permissions/permissions.py:90 +msgid "Delete project" +msgstr "" + +#: taiga/permissions/permissions.py:91 +msgid "Admin project values" +msgstr "" + +#: taiga/permissions/permissions.py:92 +msgid "Admin roles" +msgstr "" + +#: taiga/projects/api.py:454 taiga/projects/serializers.py:227 +msgid "At least one of the user must be an active admin" +msgstr "" + +#: taiga/projects/api.py:484 +msgid "You don't have permisions to see that." +msgstr "" + +#: taiga/projects/attachments/models.py:54 taiga/projects/issues/models.py:38 +#: taiga/projects/milestones/models.py:39 taiga/projects/models.py:131 +#: taiga/projects/tasks/models.py:37 taiga/projects/userstories/models.py:64 +#: taiga/projects/wiki/models.py:34 taiga/userstorage/models.py:25 +msgid "owner" +msgstr "" + +#: taiga/projects/attachments/models.py:56 +#: taiga/projects/custom_attributes/models.py:35 +#: taiga/projects/issues/models.py:51 taiga/projects/milestones/models.py:41 +#: taiga/projects/models.py:326 taiga/projects/models.py:352 +#: taiga/projects/models.py:383 taiga/projects/models.py:412 +#: taiga/projects/models.py:445 taiga/projects/models.py:468 +#: taiga/projects/models.py:495 taiga/projects/models.py:526 +#: taiga/projects/tasks/models.py:41 taiga/projects/userstories/models.py:62 +#: taiga/projects/wiki/models.py:28 taiga/projects/wiki/models.py:66 +#: taiga/users/models.py:193 +msgid "project" +msgstr "" + +#: taiga/projects/attachments/models.py:58 +msgid "content type" +msgstr "" + +#: taiga/projects/attachments/models.py:60 +msgid "object id" +msgstr "" + +#: taiga/projects/attachments/models.py:66 +#: taiga/projects/custom_attributes/models.py:40 +#: taiga/projects/issues/models.py:56 taiga/projects/milestones/models.py:48 +#: taiga/projects/models.py:129 taiga/projects/models.py:552 +#: taiga/projects/tasks/models.py:49 taiga/projects/userstories/models.py:85 +#: taiga/projects/wiki/models.py:41 taiga/userstorage/models.py:29 +msgid "modified date" +msgstr "" + +#: taiga/projects/attachments/models.py:71 +msgid "attached file" +msgstr "" + +#: taiga/projects/attachments/models.py:74 +msgid "is deprecated" +msgstr "" + +#: taiga/projects/attachments/models.py:75 +#: taiga/projects/custom_attributes/models.py:32 +#: taiga/projects/history/templatetags/functions.py:25 +#: taiga/projects/issues/models.py:61 taiga/projects/models.py:124 +#: taiga/projects/models.py:547 taiga/projects/tasks/models.py:60 +#: taiga/projects/userstories/models.py:90 +msgid "description" +msgstr "" + +#: taiga/projects/attachments/models.py:76 +#: taiga/projects/custom_attributes/models.py:33 +#: taiga/projects/milestones/models.py:54 taiga/projects/models.py:342 +#: taiga/projects/models.py:379 taiga/projects/models.py:406 +#: taiga/projects/models.py:441 taiga/projects/models.py:464 +#: taiga/projects/models.py:489 taiga/projects/models.py:522 +#: taiga/projects/wiki/models.py:71 taiga/users/models.py:188 +msgid "order" +msgstr "" + +#: taiga/projects/custom_attributes/models.py:31 +#: taiga/projects/milestones/models.py:34 taiga/projects/models.py:120 +#: taiga/projects/models.py:338 taiga/projects/models.py:377 +#: taiga/projects/models.py:402 taiga/projects/models.py:439 +#: taiga/projects/models.py:462 taiga/projects/models.py:485 +#: taiga/projects/models.py:520 taiga/projects/models.py:543 +#: taiga/users/models.py:180 taiga/webhooks/models.py:27 +msgid "name" +msgstr "" + +#: taiga/projects/custom_attributes/models.py:81 +msgid "attributes_values" +msgstr "" + +#: taiga/projects/custom_attributes/models.py:91 +#: taiga/projects/tasks/models.py:33 taiga/projects/userstories/models.py:34 +msgid "user story" +msgstr "" + +#: taiga/projects/custom_attributes/models.py:106 +msgid "task" +msgstr "" + +#: taiga/projects/custom_attributes/models.py:121 +msgid "issue" +msgstr "" + +#: taiga/projects/custom_attributes/serializers.py:58 +msgid "Already exists one with the same name." +msgstr "" + +#: taiga/projects/history/choices.py:27 +msgid "Change" +msgstr "" + +#: taiga/projects/history/choices.py:28 +msgid "Create" +msgstr "" + +#: taiga/projects/history/choices.py:29 +msgid "Delete" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:22 +#, python-format +msgid "%(role)s role points" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:25 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:130 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:133 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:156 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:192 +msgid "from" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:31 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:141 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:144 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:162 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:179 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:198 +msgid "to" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:43 +msgid "Added new attachment" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:61 +msgid "Updated attachment" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:67 +msgid "deprecated" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:69 +msgid "not deprecated" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:85 +msgid "Deleted attachment" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:104 +msgid "added" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:109 +msgid "removed" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:134 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:145 +msgid "Unassigned" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:209 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:86 +msgid "-deleted-" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:20 +msgid "to:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:20 +msgid "from:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:26 +msgid "Added" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:33 +msgid "Changed" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:40 +msgid "Deleted" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:54 +msgid "added:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:57 +msgid "removed:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:62 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:79 +msgid "From:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:63 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:80 +msgid "To:" +msgstr "" + +#: taiga/projects/history/templatetags/functions.py:26 +#: taiga/projects/wiki/models.py:32 +msgid "content" +msgstr "" + +#: taiga/projects/history/templatetags/functions.py:27 +#: taiga/projects/mixins/blocked.py:31 +msgid "blocked note" +msgstr "" + +#: taiga/projects/issues/api.py:139 +msgid "You don't have permissions to set this sprint to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:143 +msgid "You don't have permissions to set this status to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:147 +msgid "You don't have permissions to set this severity to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:151 +msgid "You don't have permissions to set this priority to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:155 +msgid "You don't have permissions to set this type to this issue." +msgstr "" + +#: taiga/projects/issues/models.py:36 taiga/projects/tasks/models.py:35 +#: taiga/projects/userstories/models.py:57 +msgid "ref" +msgstr "" + +#: taiga/projects/issues/models.py:40 taiga/projects/tasks/models.py:39 +#: taiga/projects/userstories/models.py:67 +msgid "status" +msgstr "" + +#: taiga/projects/issues/models.py:42 +msgid "severity" +msgstr "" + +#: taiga/projects/issues/models.py:44 +msgid "priority" +msgstr "" + +#: taiga/projects/issues/models.py:46 +msgid "type" +msgstr "" + +#: taiga/projects/issues/models.py:49 taiga/projects/tasks/models.py:44 +#: taiga/projects/userstories/models.py:60 +msgid "milestone" +msgstr "" + +#: taiga/projects/issues/models.py:58 taiga/projects/tasks/models.py:51 +msgid "finished date" +msgstr "" + +#: taiga/projects/issues/models.py:60 taiga/projects/tasks/models.py:53 +#: taiga/projects/userstories/models.py:89 +msgid "subject" +msgstr "" + +#: taiga/projects/issues/models.py:64 taiga/projects/tasks/models.py:63 +#: taiga/projects/userstories/models.py:93 +msgid "assigned to" +msgstr "" + +#: taiga/projects/issues/models.py:66 taiga/projects/tasks/models.py:67 +#: taiga/projects/userstories/models.py:103 +msgid "external reference" +msgstr "" + +#: taiga/projects/milestones/models.py:37 taiga/projects/models.py:122 +#: taiga/projects/models.py:340 taiga/projects/models.py:404 +#: taiga/projects/models.py:487 taiga/projects/models.py:545 +#: taiga/projects/wiki/models.py:30 taiga/users/models.py:182 +msgid "slug" +msgstr "" + +#: taiga/projects/milestones/models.py:42 +msgid "estimated start date" +msgstr "" + +#: taiga/projects/milestones/models.py:43 +msgid "estimated finish date" +msgstr "" + +#: taiga/projects/milestones/models.py:50 taiga/projects/models.py:344 +#: taiga/projects/models.py:408 taiga/projects/models.py:491 +msgid "is closed" +msgstr "" + +#: taiga/projects/milestones/models.py:52 +msgid "disponibility" +msgstr "" + +#: taiga/projects/milestones/validators.py:12 +msgid "There's no sprint with that id" +msgstr "" + +#: taiga/projects/mixins/blocked.py:29 +msgid "is blocked" +msgstr "" + +#: taiga/projects/mixins/ordering.py:47 +#, python-brace-format +msgid "{param} parameter is mandatory" +msgstr "" + +#: taiga/projects/mixins/ordering.py:51 +msgid "project parameter is mandatory" +msgstr "" + +#: taiga/projects/models.py:59 +msgid "email" +msgstr "" + +#: taiga/projects/models.py:61 +msgid "creado el" +msgstr "" + +#: taiga/projects/models.py:63 taiga/users/models.py:126 +msgid "token" +msgstr "" + +#: taiga/projects/models.py:69 +msgid "invitation extra text" +msgstr "" + +#: taiga/projects/models.py:75 +msgid "The user is already member of the project" +msgstr "" + +#: taiga/projects/models.py:90 +msgid "default points" +msgstr "" + +#: taiga/projects/models.py:94 +msgid "default US status" +msgstr "" + +#: taiga/projects/models.py:98 +msgid "default task status" +msgstr "" + +#: taiga/projects/models.py:101 +msgid "default priority" +msgstr "" + +#: taiga/projects/models.py:104 +msgid "default severity" +msgstr "" + +#: taiga/projects/models.py:108 +msgid "default issue status" +msgstr "" + +#: taiga/projects/models.py:112 +msgid "default issue type" +msgstr "" + +#: taiga/projects/models.py:133 +msgid "members" +msgstr "" + +#: taiga/projects/models.py:136 +msgid "total of milestones" +msgstr "" + +#: taiga/projects/models.py:137 +msgid "total story points" +msgstr "" + +#: taiga/projects/models.py:140 taiga/projects/models.py:558 +msgid "active backlog panel" +msgstr "" + +#: taiga/projects/models.py:142 taiga/projects/models.py:560 +msgid "active kanban panel" +msgstr "" + +#: taiga/projects/models.py:144 taiga/projects/models.py:562 +msgid "active wiki panel" +msgstr "" + +#: taiga/projects/models.py:146 taiga/projects/models.py:564 +msgid "active issues panel" +msgstr "" + +#: taiga/projects/models.py:149 taiga/projects/models.py:567 +msgid "videoconference system" +msgstr "" + +#: taiga/projects/models.py:151 taiga/projects/models.py:569 +msgid "videoconference room salt" +msgstr "" + +#: taiga/projects/models.py:156 +msgid "creation template" +msgstr "" + +#: taiga/projects/models.py:159 +msgid "anonymous permissions" +msgstr "" + +#: taiga/projects/models.py:163 +msgid "user permissions" +msgstr "" + +#: taiga/projects/models.py:166 +msgid "is private" +msgstr "" + +#: taiga/projects/models.py:177 +msgid "tags colors" +msgstr "" + +#: taiga/projects/models.py:327 +msgid "modules config" +msgstr "" + +#: taiga/projects/models.py:346 +msgid "is archived" +msgstr "" + +#: taiga/projects/models.py:348 taiga/projects/models.py:410 +#: taiga/projects/models.py:443 taiga/projects/models.py:466 +#: taiga/projects/models.py:493 taiga/projects/models.py:524 +#: taiga/users/models.py:113 +msgid "color" +msgstr "" + +#: taiga/projects/models.py:350 +msgid "work in progress limit" +msgstr "" + +#: taiga/projects/models.py:381 taiga/userstorage/models.py:31 +msgid "value" +msgstr "" + +#: taiga/projects/models.py:555 +msgid "default owner's role" +msgstr "" + +#: taiga/projects/models.py:571 +msgid "default options" +msgstr "" + +#: taiga/projects/models.py:572 +msgid "us statuses" +msgstr "" + +#: taiga/projects/models.py:573 taiga/projects/userstories/models.py:40 +#: taiga/projects/userstories/models.py:72 +msgid "points" +msgstr "" + +#: taiga/projects/models.py:574 +msgid "task statuses" +msgstr "" + +#: taiga/projects/models.py:575 +msgid "issue statuses" +msgstr "" + +#: taiga/projects/models.py:576 +msgid "issue types" +msgstr "" + +#: taiga/projects/models.py:577 +msgid "priorities" +msgstr "" + +#: taiga/projects/models.py:578 +msgid "severities" +msgstr "" + +#: taiga/projects/models.py:579 +msgid "roles" +msgstr "" + +#: taiga/projects/notifications/choices.py:28 +msgid "Not watching" +msgstr "" + +#: taiga/projects/notifications/choices.py:29 +msgid "Watching" +msgstr "" + +#: taiga/projects/notifications/choices.py:30 +msgid "Ignoring" +msgstr "" + +#: taiga/projects/notifications/mixins.py:87 +msgid "watchers" +msgstr "" + +#: taiga/projects/notifications/models.py:57 +msgid "created date time" +msgstr "" + +#: taiga/projects/notifications/models.py:59 +msgid "updated date time" +msgstr "" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-change-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Updated the Wiki Page \"%(page)s\"\n" +msgstr "" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-create-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Created the Wiki Page \"%(page)s\"\n" +msgstr "" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-delete-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Deleted the Wiki Page \"%(page)s\"\n" +msgstr "" + +#: taiga/projects/occ/mixins.py:91 +msgid "version" +msgstr "" + +#: taiga/projects/permissions.py:39 +msgid "You can't leave the project if there are no more owners" +msgstr "" + +#: taiga/projects/serializers.py:203 +msgid "Email address is already taken" +msgstr "" + +#: taiga/projects/serializers.py:215 +msgid "Invalid role for the project" +msgstr "" + +#: taiga/projects/serializers.py:370 +msgid "Default options" +msgstr "" + +#: taiga/projects/serializers.py:371 +msgid "User story's statuses" +msgstr "" + +#: taiga/projects/serializers.py:372 +msgid "Points" +msgstr "" + +#: taiga/projects/serializers.py:373 +msgid "Task's statuses" +msgstr "" + +#: taiga/projects/serializers.py:374 +msgid "Issue's statuses" +msgstr "" + +#: taiga/projects/serializers.py:375 +msgid "Issue's types" +msgstr "" + +#: taiga/projects/serializers.py:376 +msgid "Priorities" +msgstr "" + +#: taiga/projects/serializers.py:377 +msgid "Severities" +msgstr "" + +#: taiga/projects/serializers.py:378 +msgid "Roles" +msgstr "" + +#: taiga/projects/tasks/api.py:57 taiga/projects/tasks/api.py:60 +#: taiga/projects/tasks/api.py:63 taiga/projects/tasks/api.py:66 +msgid "You don't have permissions for add/modify this task." +msgstr "" + +#: taiga/projects/tasks/models.py:56 +msgid "us order" +msgstr "" + +#: taiga/projects/tasks/models.py:58 +msgid "taskboard order" +msgstr "" + +#: taiga/projects/tasks/models.py:66 +msgid "is iocaine" +msgstr "" + +#: taiga/projects/tasks/validators.py:12 +msgid "There's no task with that id" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:6 +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:4 +msgid "someone" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:18 +#, python-format +msgid "" +"\n" +"

And now a few words from the jolly good fellow or sistren
" +"who thought so kindly as to invite you

\n" +"

%(extra)s

\n" +" " +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:25 +msgid "Accept your invitation to Taiga" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:25 +msgid "Accept your invitation" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:26 +msgid "The Taiga Team" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:13 +#, python-format +msgid "" +"\n" +"And now a few words from the jolly good fellow or sistren who thought so " +"kindly as to invite you:\n" +"\n" +"%(extra)s\n" +" " +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:19 +msgid "Accept your invitation to Taiga following whis link:" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:21 +msgid "" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Invitation to join to the project '%(project)s'\n" +msgstr "" + +#: taiga/projects/templates/emails/membership_notification-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Added to the project '%(project)s'\n" +msgstr "" + +#: taiga/projects/userstories/api.py:170 +#, python-brace-format +msgid "" +"Generating the user story [US #{ref} - {subject}](:us:{ref} \"US #{ref} - " +"{subject}\")" +msgstr "" + +#: taiga/projects/userstories/models.py:37 +msgid "role" +msgstr "" + +#: taiga/projects/userstories/models.py:75 +msgid "backlog order" +msgstr "" + +#: taiga/projects/userstories/models.py:77 +#: taiga/projects/userstories/models.py:79 +msgid "sprint order" +msgstr "" + +#: taiga/projects/userstories/models.py:87 +msgid "finish date" +msgstr "" + +#: taiga/projects/userstories/models.py:95 +msgid "is client requirement" +msgstr "" + +#: taiga/projects/userstories/models.py:97 +msgid "is team requirement" +msgstr "" + +#: taiga/projects/userstories/models.py:102 +msgid "generated from issue" +msgstr "" + +#: taiga/projects/userstories/validators.py:12 +msgid "There's no user story with that id" +msgstr "" + +#: taiga/projects/validators.py:12 +msgid "There's no project with that id" +msgstr "" + +#: taiga/projects/validators.py:21 +msgid "There's no user story status with that id" +msgstr "" + +#: taiga/projects/validators.py:30 +msgid "There's no task status with that id" +msgstr "" + +#: taiga/projects/votes/models.py:31 taiga/projects/votes/models.py:32 +#: taiga/projects/votes/models.py:54 +msgid "Votes" +msgstr "" + +#: taiga/projects/votes/models.py:50 +msgid "votes" +msgstr "" + +#: taiga/projects/votes/models.py:53 +msgid "Vote" +msgstr "" + +#: taiga/projects/wiki/api.py:60 +msgid "No content parameter" +msgstr "" + +#: taiga/projects/wiki/api.py:63 +msgid "No project_id parameter" +msgstr "" + +#: taiga/projects/wiki/models.py:36 +msgid "last modifier" +msgstr "" + +#: taiga/projects/wiki/models.py:69 +msgid "href" +msgstr "" + +#: taiga/users/admin.py:50 +msgid "Personal info" +msgstr "" + +#: taiga/users/admin.py:52 +msgid "Permissions" +msgstr "" + +#: taiga/users/admin.py:53 +msgid "Important dates" +msgstr "" + +#: taiga/users/api.py:87 taiga/users/api.py:94 +msgid "Invalid username or email" +msgstr "" + +#: taiga/users/api.py:103 +msgid "Mail sended successful!" +msgstr "" + +#: taiga/users/api.py:116 taiga/users/api.py:121 +msgid "Token is invalid" +msgstr "" + +#: taiga/users/api.py:142 +msgid "Current password parameter needed" +msgstr "" + +#: taiga/users/api.py:145 +msgid "New password parameter needed" +msgstr "" + +#: taiga/users/api.py:148 +msgid "Invalid password length at least 6 charaters needed" +msgstr "" + +#: taiga/users/api.py:151 +msgid "Invalid current password" +msgstr "" + +#: taiga/users/api.py:167 +msgid "Incomplete arguments" +msgstr "" + +#: taiga/users/api.py:172 +msgid "Invalid image format" +msgstr "" + +#: taiga/users/api.py:225 +msgid "Duplicated email" +msgstr "" + +#: taiga/users/api.py:227 +msgid "Not valid email" +msgstr "" + +#: taiga/users/api.py:246 taiga/users/api.py:252 +msgid "" +"Invalid, are you sure the token is correct and you didn't use it before?" +msgstr "" + +#: taiga/users/api.py:279 taiga/users/api.py:287 taiga/users/api.py:290 +msgid "Invalid, are you sure the token is correct?" +msgstr "" + +#: taiga/users/models.py:69 +msgid "superuser status" +msgstr "" + +#: taiga/users/models.py:70 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "" + +#: taiga/users/models.py:100 +msgid "username" +msgstr "" + +#: taiga/users/models.py:101 +msgid "" +"Required. 30 characters or fewer. Letters, numbers and /./-/_ characters" +msgstr "" + +#: taiga/users/models.py:104 +msgid "Enter a valid username." +msgstr "" + +#: taiga/users/models.py:107 +msgid "active" +msgstr "" + +#: taiga/users/models.py:108 +msgid "" +"Designates whether this user should be treated as active. Unselect this " +"instead of deleting accounts." +msgstr "" + +#: taiga/users/models.py:114 +msgid "biography" +msgstr "" + +#: taiga/users/models.py:117 +msgid "photo" +msgstr "" + +#: taiga/users/models.py:118 +msgid "date joined" +msgstr "" + +#: taiga/users/models.py:120 +msgid "default language" +msgstr "" + +#: taiga/users/models.py:122 +msgid "default timezone" +msgstr "" + +#: taiga/users/models.py:124 +msgid "colorize tags" +msgstr "" + +#: taiga/users/models.py:129 +msgid "email token" +msgstr "" + +#: taiga/users/models.py:131 +msgid "new email address" +msgstr "" + +#: taiga/users/models.py:185 +msgid "permissions" +msgstr "" + +#: taiga/users/serializers.py:52 +msgid "invalid username" +msgstr "" + +#: taiga/users/serializers.py:53 +msgid "invalid" +msgstr "" + +#: taiga/users/serializers.py:58 +msgid "" +"Required. 255 characters or fewer. Letters, numbers and /./-/_ characters'" +msgstr "" + +#: taiga/users/serializers.py:64 +msgid "Invalid username. Try with a different one." +msgstr "" + +#: taiga/users/templates/emails/change_email-body-html.jinja:4 +#, python-format +msgid "" +"\n" +"

Change your email

\n" +"

Hello %(full_name)s,
please confirm your email

\n" +" Confirm " +"email\n" +"

You can ignore this message if you did not request.

\n" +"

The Taiga Team

\n" +" " +msgstr "" + +#: taiga/users/templates/emails/change_email-body-text.jinja:1 +#, python-format +msgid "" +"\n" +"Hello %(full_name)s, please confirm your email\n" +"\n" +"%(url)s\n" +"\n" +"You can ignore this message if you did not request.\n" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/change_email-subject.jinja:1 +msgid "[Taiga] Change email" +msgstr "" + +#: taiga/users/templates/emails/password_recovery-body-text.jinja:1 +#, python-format +msgid "" +"\n" +"Hello %(full_name)s, you asked to recover your password\n" +"\n" +"%(url)s\n" +"\n" +"You can ignore this message if you did not request.\n" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/password_recovery-subject.jinja:1 +msgid "[Taiga] Password recovery" +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-html.jinja:6 +msgid "" +"\n" +" \n" +"

Thank you for registering in Taiga

\n" +"

We hope you enjoy it

\n" +"

We built Taiga because we wanted the project management tool " +"that sits open on our computers all day long, to serve as a continued " +"reminder of why we love to collaborate, code and design.

\n" +"

We built it to be beautiful, elegant, simple to use and fun - " +"without forsaking flexibility and power.

\n" +" The taiga Team\n" +" You may remove your account from this service clicking " +"here\n" +" " +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-text.jinja:1 +msgid "" +"\n" +"Thank you for registering in Taiga\n" +"\n" +"We hope you enjoy it\n" +"\n" +"We built Taiga because we wanted the project management tool that sits open " +"on our computers all day long, to serve as a continued reminder of why we " +"love to collaborate, code and design.\n" +"\n" +"We built it to be beautiful, elegant, simple to use and fun - without " +"forsaking flexibility and power.\n" +"\n" +"--\n" +"The taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-text.jinja:13 +#, python-format +msgid "" +"\n" +"You may remove your account from this service: %(url)s\n" +msgstr "" + +#: taiga/users/templates/emails/registered_user-subject.jinja:1 +msgid "You've been Taigatized!" +msgstr "" + +#: taiga/users/validators.py:29 +msgid "There's no role with that id" +msgstr "" + +#: taiga/userstorage/api.py:50 +msgid "" +"Duplicate key value violates unique constraint. Key '{}' already exists." +msgstr "" + +#: taiga/userstorage/models.py:30 +msgid "key" +msgstr "" + +#: taiga/webhooks/models.py:28 taiga/webhooks/models.py:38 +msgid "URL" +msgstr "" + +#: taiga/webhooks/models.py:29 +msgid "secret key" +msgstr "" + +#: taiga/webhooks/models.py:39 +msgid "Status code" +msgstr "" + +#: taiga/webhooks/models.py:40 +msgid "Request data" +msgstr "" + +#: taiga/webhooks/models.py:41 +msgid "Request headers" +msgstr "" + +#: taiga/webhooks/models.py:42 +msgid "Response data" +msgstr "" + +#: taiga/webhooks/models.py:43 +msgid "Response headers" +msgstr "" + +#: taiga/webhooks/models.py:44 +msgid "Duration" +msgstr "" diff --git a/taiga/locale/es/LC_MESSAGES/django.po b/taiga/locale/es/LC_MESSAGES/django.po index e9e3458a..e0a37ae6 100644 --- a/taiga/locale/es/LC_MESSAGES/django.po +++ b/taiga/locale/es/LC_MESSAGES/django.po @@ -1,594 +1,1535 @@ -# SPANISH LANGUAGE PACKAGE FOR TAIGA IO. -# Copyright (C) 2014 -# This file is distributed under the same license as the taiga io package. -# FIRST AUTHOR , YEAR. +# taiga-back.taiga. +# Copyright (C) 2015 Taiga Dev Team +# This file is distributed under the same license as the taiga-back package. # -#. Spanish Translators: please, consider don't use informal expressions -#. Traductores al español, por favor, es necesario considerar el uso -#. de la 3era persona en lugar del "tú" -#, fuzzy +# Translators: +# Esther Moreno , 2015 +# Taiga Dev Team , 2015 msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: taiga-back\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-09 22:06+0100\n" -"PO-Revision-Date: 2014-12-19 19:48-0430\n" -"Last-Translator: Hector Colina \n" -"Language-Team: LANGUAGE \n" -"Language: \n" +"POT-Creation-Date: 2015-03-25 20:09+0100\n" +"PO-Revision-Date: 2015-03-26 09:53+0000\n" +"Last-Translator: Esther Moreno \n" +"Language-Team: Spanish (http://www.transifex.com/projects/p/taiga-back/" +"language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Language: es\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: base/exceptions.py:16 +#: taiga/auth/api.py:100 +msgid "Public register is disabled." +msgstr "El registro público está deshabilitado." + +#: taiga/auth/api.py:133 +msgid "invalid register type" +msgstr "Tipo de registro inválido" + +#: taiga/auth/api.py:146 +msgid "invalid login type" +msgstr "Tipo de login inválido" + +#: taiga/auth/services.py:75 +msgid "Username is already in use." +msgstr "Nombre de usuario no disponible" + +#: taiga/auth/services.py:78 +msgid "Email is already in use." +msgstr "Email no disponible" + +#: taiga/auth/services.py:172 +msgid "Error on creating new user." +msgstr "Error al crear un nuevo usuario " + +#: taiga/base/api/generics.py:162 +msgid "Page is not 'last', nor can it be converted to an int." +msgstr "" + +#: taiga/base/api/generics.py:166 +#, python-format +msgid "Invalid page (%(page_number)s): %(message)s" +msgstr "Página no válida (%(page_number)s): %(message)s" + +#: taiga/base/connectors/exceptions.py:24 +msgid "Connection error." +msgstr "Error de conexión" + +#: taiga/base/exceptions.py:30 msgid "Unexpected error" msgstr "Error inesperado" -#: base/exceptions.py:28 +#: taiga/base/exceptions.py:42 msgid "Not found." -msgstr "No encontrado." +msgstr "" -#: base/exceptions.py:36 base/exceptions.py:44 +#: taiga/base/exceptions.py:47 +msgid "Method not supported for this endpoint." +msgstr "" + +#: taiga/base/exceptions.py:55 taiga/base/exceptions.py:63 msgid "Wrong arguments." -msgstr "Argumentos erróneos." +msgstr "" -#: base/exceptions.py:59 +#: taiga/base/exceptions.py:67 +msgid "Data validation error" +msgstr "" + +#: taiga/base/exceptions.py:79 +msgid "Integrity Error for wrong or invalid arguments" +msgstr "" + +#: taiga/base/exceptions.py:86 msgid "Precondition error" -msgstr "Error en precondición" +msgstr "" -#: base/exceptions.py:67 -msgid "Internal server error" -msgstr "Error interno del servidor" - -#: base/exceptions.py:117 -msgid "Not found" -msgstr "No encontrado" - -#: base/exceptions.py:121 -msgid "Permission denied" -msgstr "Permiso denegado" - -#: base/auth/api.py:52 -msgid "Public register is disabled for this domain." -msgstr "El registro público está deshabilitado para este dominio." - -#: base/auth/api.py:91 -msgid "Invalid token" -msgstr "Token inválido" - -#: base/auth/api.py:100 -msgid "Incorrect password" -msgstr "Contraseña incorrecta" - -#: base/auth/api.py:133 -msgid "invalid register type" -msgstr "tipo de registro no válido" - -#: base/auth/api.py:142 base/auth/api.py:145 -msgid "Invalid username or password" -msgstr "usuario o contraseña inválidos" - -#: base/domains/__init__.py:54 -msgid "domain not found" -msgstr "dominio no encontrado" - -#: base/domains/models.py:24 -msgid "The domain name cannot contain any spaces or tabs." -msgstr "El nombre de dominio no puede tener espacios o tabuladores." - -#: base/domains/models.py:30 -msgid "domain name" -msgstr "nombre del dominio" - -#: base/domains/models.py:32 -msgid "display name" -msgstr "nombre mostrado" - -#: base/domains/models.py:33 -msgid "scheme" -msgstr "esquema" - -#: base/domains/models.py:38 base/users/models.py:19 -msgid "default language" -msgstr "idioma por defecto" - -#: base/domains/models.py:41 base/domains/models.py:42 -msgid "domain" -msgstr "dominio" - -#: base/notifications/models.py:12 -msgid "All events on my projects" -msgstr "Todos los eventos en mis proyectos" - -#: base/notifications/models.py:13 -msgid "Only events for objects i watch" -msgstr "Sólo eventos para objetos a los cuales les hago seguimiento" - -#: base/notifications/models.py:14 -msgid "Only events for objects assigned to me" -msgstr "Sólo eventos para objetos que me han sido asignados" - -#: base/notifications/models.py:15 -msgid "Only events for objects owned by me" -msgstr "Sólo eventos para mis objetos" - -#: base/notifications/models.py:16 -msgid "No events" -msgstr "Sin eventos" - -#: base/notifications/models.py:22 -msgid "notify level" -msgstr "nivel de notificación" - -#: base/notifications/models.py:24 -msgid "notify changes by me" -msgstr "notificar mis cambios" - -#: base/users/admin.py:36 -msgid "Personal info" -msgstr "Información personal" - -#: base/users/admin.py:37 -msgid "Extra info" -msgstr "Información extra" - -#: base/users/admin.py:38 -msgid "Notifications info" -msgstr "Información de notificaciones" - -#: base/users/admin.py:39 -msgid "Permissions" -msgstr "Permisos" - -#: base/users/admin.py:40 -msgid "Important dates" -msgstr "fechas importantes" - -#: base/users/api.py:45 base/users/api.py:52 -msgid "Invalid username or email" -msgstr "usuario o correos inválidos" - -#: base/users/api.py:61 -msgid "Mail sended successful!" -msgstr "¡Correo enviado correctamente!" - -#: base/users/api.py:70 -msgid "Token is invalid" -msgstr "El token no es válido" - -#: base/users/api.py:87 -msgid "Incomplete arguments" -msgstr "Argumentos incompletos" - -#: base/users/api.py:90 -msgid "Invalid password length" -msgstr "longitud de la contraseña no válida" - -#: base/users/models.py:13 projects/models.py:281 projects/models.py:331 -#: projects/models.py:356 projects/models.py:379 projects/models.py:404 -#: projects/models.py:427 projects/models.py:454 -msgid "color" -msgstr "color" - -#: base/users/models.py:15 projects/models.py:95 -#: projects/documents/models.py:17 projects/issues/models.py:44 -#: projects/tasks/models.py:40 projects/userstories/models.py:68 -msgid "description" -msgstr "descripción" - -#: base/users/models.py:17 -msgid "photo" -msgstr "fotografía" - -#: base/users/models.py:21 -msgid "default timezone" -msgstr "zona horaria por defecto" - -#: base/users/models.py:23 -msgid "token" -msgstr "token" - -#: base/users/models.py:25 -msgid "colorize tags" -msgstr "etiquetas coloreadas" - -#: base/users/models.py:45 projects/models.py:91 projects/models.py:275 -#: projects/models.py:300 projects/models.py:325 projects/models.py:352 -#: projects/models.py:375 projects/models.py:398 projects/models.py:423 -#: projects/models.py:448 projects/milestones/models.py:20 -msgid "name" -msgstr "nombre" - -#: base/users/models.py:47 projects/models.py:93 -#: projects/documents/models.py:13 projects/milestones/models.py:22 -#: projects/wiki/models.py:15 -msgid "slug" -msgstr "slug" - -#: base/users/models.py:49 -msgid "permissions" -msgstr "permisos" - -#: base/users/models.py:51 projects/models.py:277 projects/models.py:302 -#: projects/models.py:327 projects/models.py:354 projects/models.py:377 -#: projects/models.py:400 projects/models.py:425 projects/models.py:450 -#: projects/milestones/models.py:40 projects/userstories/models.py:59 -msgid "order" -msgstr "orden" - -#: base/users/serializers.py:33 -msgid "invalid token" -msgstr "token inválido" - -#: projects/api.py:89 -msgid "Email address is already taken." -msgstr "Dirección de correo ya utilizada" - -#: projects/choices.py:7 -msgid "Open" -msgstr "Abierta" - -#: projects/choices.py:8 projects/choices.py:15 projects/choices.py:52 -#: projects/choices.py:65 -msgid "Closed" -msgstr "Cerrada" - -#: projects/choices.py:12 projects/choices.py:49 -msgid "New" -msgstr "Nueva" - -#: projects/choices.py:13 projects/choices.py:50 -msgid "In progress" -msgstr "En progreso" - -#: projects/choices.py:14 projects/choices.py:51 -msgid "Ready for test" -msgstr "Listo para probar" - -#: projects/choices.py:16 projects/choices.py:53 -msgid "Needs Info" -msgstr "Necesita información" - -#: projects/choices.py:35 -msgid "Low" -msgstr "Baja" - -#: projects/choices.py:36 projects/choices.py:43 -msgid "Normal" -msgstr "Normal" - -#: projects/choices.py:37 -msgid "High" -msgstr "Alta" - -#: projects/choices.py:41 -msgid "Wishlist" -msgstr "Deseo" - -#: projects/choices.py:42 -msgid "Minor" -msgstr "Menor" - -#: projects/choices.py:44 -msgid "Important" -msgstr "Importante" - -#: projects/choices.py:45 -msgid "Critical" -msgstr "Crítica" - -#: projects/choices.py:54 -msgid "Rejected" -msgstr "Rechazada" - -#: projects/choices.py:55 -msgid "Postponed" -msgstr "Pospuesto" - -#: projects/choices.py:59 -msgid "Bug" -msgstr "Bug" - -#: projects/choices.py:63 -msgid "Pending" -msgstr "Pendiente" - -#: projects/choices.py:64 -msgid "Answered" -msgstr "Respondida" - -#: projects/models.py:57 -msgid "default points" -msgstr "puntos por defecto" - -#: projects/models.py:61 -msgid "default US status" -msgstr "estado por defecto de las USs" - -#: projects/models.py:65 -msgid "default task status" -msgstr "estado por defecto de las tareas" - -#: projects/models.py:68 -msgid "default priority" -msgstr "prioridad por defecto" - -#: projects/models.py:71 -msgid "default severity" -msgstr "severidad por defecto" - -#: projects/models.py:75 -msgid "default issue status" -msgstr "estado por defecto de las peticiones" - -#: projects/models.py:79 -msgid "default issue type" -msgstr "tipo por defecto de las peticiones" - -#: projects/models.py:83 -msgid "default questions status" -msgstr "Estado por defecto de las preguntas" - -#: projects/models.py:97 projects/models.py:253 -#: projects/documents/models.py:19 projects/issues/models.py:37 -#: projects/milestones/models.py:32 projects/questions/models.py:39 -#: projects/tasks/models.py:33 projects/userstories/models.py:61 -#: projects/wiki/models.py:24 -msgid "created date" -msgstr "fecha de creación" - -#: projects/models.py:99 projects/models.py:255 -#: projects/documents/models.py:21 projects/issues/models.py:39 -#: projects/milestones/models.py:34 projects/questions/models.py:41 -#: projects/tasks/models.py:35 projects/userstories/models.py:63 -#: projects/wiki/models.py:26 -msgid "modified date" -msgstr "fecha de modificación" - -#: projects/models.py:101 projects/models.py:244 -#: projects/documents/models.py:27 projects/issues/models.py:22 -#: projects/milestones/models.py:24 projects/questions/models.py:22 -#: projects/tasks/models.py:24 projects/userstories/models.py:49 -#: projects/wiki/models.py:19 -msgid "owner" -msgstr "propietario" - -#: projects/models.py:103 -msgid "members" -msgstr "miembros" - -#: projects/models.py:105 -msgid "public" -msgstr "público" - -#: projects/models.py:107 -msgid "last us ref" -msgstr "última referencia de US" - -#: projects/models.py:109 -msgid "last task ref" -msgstr "última referencia de tarea" - -#: projects/models.py:111 -msgid "last issue ref" -msgstr "última referencia de issue" - -#: projects/models.py:113 -msgid "total of milestones" -msgstr "total de sprints" - -#: projects/models.py:115 -msgid "total story points" -msgstr "total de puntos de historia" - -#: projects/models.py:116 projects/documents/models.py:32 -#: projects/issues/models.py:51 projects/questions/models.py:45 -#: projects/tasks/models.py:46 projects/userstories/models.py:76 +#: taiga/base/tags.py:25 msgid "tags" msgstr "etiquetas" -#: projects/models.py:246 projects/models.py:283 projects/models.py:306 -#: projects/models.py:333 projects/models.py:358 projects/models.py:381 -#: projects/models.py:406 projects/models.py:429 projects/models.py:457 -#: projects/documents/models.py:24 projects/issues/models.py:35 -#: projects/milestones/models.py:26 projects/questions/models.py:29 -#: projects/tasks/models.py:28 projects/userstories/models.py:47 -#: projects/wiki/models.py:13 +#: taiga/base/templates/emails/base-body-html.jinja:6 +msgid "Taiga" +msgstr "Taiga" + +#: taiga/base/templates/emails/base-body-html.jinja:406 +#: taiga/base/templates/emails/hero-body-html.jinja:380 +#: taiga/base/templates/emails/updates-body-html.jinja:442 +msgid "Follow us on Twitter" +msgstr "Síguenos en Twitter" + +#: taiga/base/templates/emails/base-body-html.jinja:406 +#: taiga/base/templates/emails/hero-body-html.jinja:380 +#: taiga/base/templates/emails/updates-body-html.jinja:442 +msgid "Twitter" +msgstr "Twitter" + +#: taiga/base/templates/emails/base-body-html.jinja:407 +#: taiga/base/templates/emails/hero-body-html.jinja:381 +#: taiga/base/templates/emails/updates-body-html.jinja:443 +msgid "Get the code on GitHub" +msgstr "Copia el código en GitHub" + +#: taiga/base/templates/emails/base-body-html.jinja:407 +#: taiga/base/templates/emails/hero-body-html.jinja:381 +#: taiga/base/templates/emails/updates-body-html.jinja:443 +msgid "GitHub" +msgstr "GitHub" + +#: taiga/base/templates/emails/base-body-html.jinja:408 +#: taiga/base/templates/emails/hero-body-html.jinja:382 +#: taiga/base/templates/emails/updates-body-html.jinja:444 +msgid "Visit our website" +msgstr "Visita nuestra web" + +#: taiga/base/templates/emails/base-body-html.jinja:408 +#: taiga/base/templates/emails/hero-body-html.jinja:382 +#: taiga/base/templates/emails/updates-body-html.jinja:444 +msgid "Taiga.io" +msgstr "Taiga.io" + +#: taiga/base/templates/emails/hero-body-html.jinja:6 +msgid "You have been Taigatized" +msgstr "Te hemos Taigatizado" + +#: taiga/base/templates/emails/hero-body-html.jinja:359 +msgid "" +"\n" +"

You have been Taigatized!" +"

\n" +"

Welcome to Taiga, an Open " +"Source, Agile Project Management Tool

\n" +" " +msgstr "" + +#: taiga/base/templates/emails/updates-body-html.jinja:6 +msgid "[Taiga] Updates" +msgstr "" + +#: taiga/base/templates/emails/updates-body-html.jinja:417 +msgid "Updates" +msgstr "" + +#: taiga/base/templates/emails/updates-body-html.jinja:423 +#, python-format +msgid "" +"\n" +"

comment:" +"

\n" +"

" +"%(comment)s

\n" +" " +msgstr "" + +#: taiga/base/templates/emails/updates-body-text.jinja:6 +#, python-format +msgid "" +"\n" +" Comment: %(comment)s\n" +" " +msgstr "" + +#: taiga/export_import/api.py:183 +msgid "Needed dump file" +msgstr "" + +#: taiga/export_import/api.py:190 +msgid "Invalid dump format" +msgstr "" + +#: taiga/export_import/serializers.py:377 +#: taiga/projects/custom_attributes/serializers.py:104 +msgid "Invalid content. It must be {\"key\": \"value\",...}" +msgstr "" + +#: taiga/export_import/serializers.py:392 +#: taiga/projects/custom_attributes/serializers.py:119 +msgid "It contain invalid custom fields." +msgstr "" + +#: taiga/export_import/templates/emails/dump_project-subject.jinja:1 +#, python-format +msgid "[%(project)s] Your project dump has been generated" +msgstr "" + +#: taiga/export_import/templates/emails/export_error-subject.jinja:1 +#, python-format +msgid "[%(project)s] %(error_subject)s" +msgstr "" + +#: taiga/export_import/templates/emails/import_error-subject.jinja:1 +#, python-format +msgid "[Taiga] %(error_subject)s" +msgstr "" + +#: taiga/export_import/templates/emails/load_dump-subject.jinja:1 +#, python-format +msgid "[%(project)s] Your project dump has been imported" +msgstr "" + +#: taiga/feedback/models.py:23 taiga/users/models.py:111 +msgid "full name" +msgstr "nombre completo" + +#: taiga/feedback/models.py:25 taiga/users/models.py:106 +msgid "email address" +msgstr "dirección de email" + +#: taiga/feedback/models.py:27 +msgid "comment" +msgstr "" + +#: taiga/feedback/models.py:29 taiga/projects/attachments/models.py:63 +#: taiga/projects/custom_attributes/models.py:38 +#: taiga/projects/issues/models.py:53 taiga/projects/milestones/models.py:45 +#: taiga/projects/models.py:126 taiga/projects/models.py:549 +#: taiga/projects/tasks/models.py:46 taiga/projects/userstories/models.py:82 +#: taiga/projects/wiki/models.py:38 taiga/userstorage/models.py:27 +msgid "created date" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:4 +#, python-format +msgid "" +"\n" +"

Feedback

\n" +"

Taiga has received feedback from %(full_name)s <%(email)s>

\n" +" " +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:9 +#, python-format +msgid "" +"\n" +"

Comment

\n" +"

%(comment)s

\n" +" " +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-html.jinja:18 +#: taiga/users/admin.py:51 +msgid "Extra info" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-text.jinja:1 +#, python-format +msgid "" +"---------\n" +"- From: %(full_name)s <%(email)s>\n" +"---------\n" +"- Comment:\n" +"%(comment)s\n" +"---------" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-body-text.jinja:8 +msgid "- Extra info:" +msgstr "" + +#: taiga/feedback/templates/emails/feedback_notification-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Feedback from %(full_name)s <%(email)s>\n" +msgstr "" + +#: taiga/hooks/api.py:52 +msgid "The payload is not a valid json" +msgstr "" + +#: taiga/hooks/api.py:61 +msgid "The project doesn't exist" +msgstr "El proyecto no existe" + +#: taiga/hooks/api.py:64 +msgid "Bad signature" +msgstr "" + +#: taiga/hooks/bitbucket/api.py:40 +msgid "The payload is not a valid application/x-www-form-urlencoded" +msgstr "" + +#: taiga/hooks/bitbucket/event_hooks.py:46 +msgid "The payload is not valid" +msgstr "" + +#: taiga/hooks/bitbucket/event_hooks.py:82 +#: taiga/hooks/github/event_hooks.py:75 taiga/hooks/gitlab/event_hooks.py:74 +msgid "The referenced element doesn't exist" +msgstr "" + +#: taiga/hooks/bitbucket/event_hooks.py:89 +#: taiga/hooks/github/event_hooks.py:82 taiga/hooks/gitlab/event_hooks.py:81 +msgid "The status doesn't exist" +msgstr "" + +#: taiga/hooks/github/event_hooks.py:113 taiga/hooks/gitlab/event_hooks.py:114 +msgid "Invalid issue information" +msgstr "" + +#: taiga/hooks/github/event_hooks.py:135 taiga/hooks/github/event_hooks.py:144 +msgid "Invalid issue comment information" +msgstr "" + +#: taiga/permissions/permissions.py:21 taiga/permissions/permissions.py:31 +#: taiga/permissions/permissions.py:52 +msgid "View project" +msgstr "" + +#: taiga/permissions/permissions.py:22 taiga/permissions/permissions.py:32 +#: taiga/permissions/permissions.py:54 +msgid "View milestones" +msgstr "" + +#: taiga/permissions/permissions.py:23 taiga/permissions/permissions.py:33 +msgid "View user stories" +msgstr "Ver historias de usuarios" + +#: taiga/permissions/permissions.py:24 taiga/permissions/permissions.py:36 +#: taiga/permissions/permissions.py:64 +msgid "View tasks" +msgstr "Ver tareas" + +#: taiga/permissions/permissions.py:25 taiga/permissions/permissions.py:34 +#: taiga/permissions/permissions.py:69 +msgid "View issues" +msgstr "" + +#: taiga/permissions/permissions.py:26 taiga/permissions/permissions.py:37 +#: taiga/permissions/permissions.py:75 +msgid "View wiki pages" +msgstr "Ver páginas del wiki" + +#: taiga/permissions/permissions.py:27 taiga/permissions/permissions.py:38 +#: taiga/permissions/permissions.py:80 +msgid "View wiki links" +msgstr "Ver enlaces del wiki" + +#: taiga/permissions/permissions.py:35 taiga/permissions/permissions.py:70 +msgid "Vote issues" +msgstr "" + +#: taiga/permissions/permissions.py:39 +msgid "Request membership" +msgstr "" + +#: taiga/permissions/permissions.py:40 +msgid "Add user story to project" +msgstr "Añadir historias de usuario al proyecto" + +#: taiga/permissions/permissions.py:41 +msgid "Add comments to user stories" +msgstr "" + +#: taiga/permissions/permissions.py:42 +msgid "Add comments to tasks" +msgstr "" + +#: taiga/permissions/permissions.py:43 +msgid "Add issues" +msgstr "" + +#: taiga/permissions/permissions.py:44 +msgid "Add comments to issues" +msgstr "" + +#: taiga/permissions/permissions.py:45 taiga/permissions/permissions.py:76 +msgid "Add wiki page" +msgstr "" + +#: taiga/permissions/permissions.py:46 taiga/permissions/permissions.py:77 +msgid "Modify wiki page" +msgstr "" + +#: taiga/permissions/permissions.py:47 taiga/permissions/permissions.py:81 +msgid "Add wiki link" +msgstr "" + +#: taiga/permissions/permissions.py:48 taiga/permissions/permissions.py:82 +msgid "Modify wiki link" +msgstr "" + +#: taiga/permissions/permissions.py:55 +msgid "Add milestone" +msgstr "" + +#: taiga/permissions/permissions.py:56 +msgid "Modify milestone" +msgstr "" + +#: taiga/permissions/permissions.py:57 +msgid "Delete milestone" +msgstr "" + +#: taiga/permissions/permissions.py:59 +msgid "View user story" +msgstr "" + +#: taiga/permissions/permissions.py:60 +msgid "Add user story" +msgstr "" + +#: taiga/permissions/permissions.py:61 +msgid "Modify user story" +msgstr "" + +#: taiga/permissions/permissions.py:62 +msgid "Delete user story" +msgstr "" + +#: taiga/permissions/permissions.py:65 +msgid "Add task" +msgstr "" + +#: taiga/permissions/permissions.py:66 +msgid "Modify task" +msgstr "" + +#: taiga/permissions/permissions.py:67 +msgid "Delete task" +msgstr "" + +#: taiga/permissions/permissions.py:71 +msgid "Add issue" +msgstr "" + +#: taiga/permissions/permissions.py:72 +msgid "Modify issue" +msgstr "" + +#: taiga/permissions/permissions.py:73 +msgid "Delete issue" +msgstr "" + +#: taiga/permissions/permissions.py:78 +msgid "Delete wiki page" +msgstr "" + +#: taiga/permissions/permissions.py:83 +msgid "Delete wiki link" +msgstr "" + +#: taiga/permissions/permissions.py:87 +msgid "Modify project" +msgstr "" + +#: taiga/permissions/permissions.py:88 +msgid "Add member" +msgstr "" + +#: taiga/permissions/permissions.py:89 +msgid "Remove member" +msgstr "" + +#: taiga/permissions/permissions.py:90 +msgid "Delete project" +msgstr "" + +#: taiga/permissions/permissions.py:91 +msgid "Admin project values" +msgstr "" + +#: taiga/permissions/permissions.py:92 +msgid "Admin roles" +msgstr "" + +#: taiga/projects/api.py:454 taiga/projects/serializers.py:227 +msgid "At least one of the user must be an active admin" +msgstr "" + +#: taiga/projects/api.py:484 +msgid "You don't have permisions to see that." +msgstr "" + +#: taiga/projects/attachments/models.py:54 taiga/projects/issues/models.py:38 +#: taiga/projects/milestones/models.py:39 taiga/projects/models.py:131 +#: taiga/projects/tasks/models.py:37 taiga/projects/userstories/models.py:64 +#: taiga/projects/wiki/models.py:34 taiga/userstorage/models.py:25 +msgid "owner" +msgstr "" + +#: taiga/projects/attachments/models.py:56 +#: taiga/projects/custom_attributes/models.py:35 +#: taiga/projects/issues/models.py:51 taiga/projects/milestones/models.py:41 +#: taiga/projects/models.py:326 taiga/projects/models.py:352 +#: taiga/projects/models.py:383 taiga/projects/models.py:412 +#: taiga/projects/models.py:445 taiga/projects/models.py:468 +#: taiga/projects/models.py:495 taiga/projects/models.py:526 +#: taiga/projects/tasks/models.py:41 taiga/projects/userstories/models.py:62 +#: taiga/projects/wiki/models.py:28 taiga/projects/wiki/models.py:66 +#: taiga/users/models.py:193 msgid "project" -msgstr "proyecto" +msgstr "" -#: projects/models.py:248 +#: taiga/projects/attachments/models.py:58 msgid "content type" -msgstr "tipo de contenido" +msgstr "" -#: projects/models.py:250 +#: taiga/projects/attachments/models.py:60 msgid "object id" -msgstr "id de objeto" +msgstr "" -#: projects/models.py:258 +#: taiga/projects/attachments/models.py:66 +#: taiga/projects/custom_attributes/models.py:40 +#: taiga/projects/issues/models.py:56 taiga/projects/milestones/models.py:48 +#: taiga/projects/models.py:129 taiga/projects/models.py:552 +#: taiga/projects/tasks/models.py:49 taiga/projects/userstories/models.py:85 +#: taiga/projects/wiki/models.py:41 taiga/userstorage/models.py:29 +msgid "modified date" +msgstr "" + +#: taiga/projects/attachments/models.py:71 msgid "attached file" -msgstr "fichero adjunto" +msgstr "" -#: projects/models.py:279 projects/models.py:329 projects/models.py:402 -#: projects/models.py:452 projects/milestones/models.py:36 -msgid "is closed" -msgstr "está cerrado" +#: taiga/projects/attachments/models.py:74 +msgid "is deprecated" +msgstr "" -#: projects/models.py:304 -msgid "value" -msgstr "valor" +#: taiga/projects/attachments/models.py:75 +#: taiga/projects/custom_attributes/models.py:32 +#: taiga/projects/history/templatetags/functions.py:25 +#: taiga/projects/issues/models.py:61 taiga/projects/models.py:124 +#: taiga/projects/models.py:547 taiga/projects/tasks/models.py:60 +#: taiga/projects/userstories/models.py:90 +msgid "description" +msgstr "" -#: projects/documents/models.py:15 -msgid "title" -msgstr "título" +#: taiga/projects/attachments/models.py:76 +#: taiga/projects/custom_attributes/models.py:33 +#: taiga/projects/milestones/models.py:54 taiga/projects/models.py:342 +#: taiga/projects/models.py:379 taiga/projects/models.py:406 +#: taiga/projects/models.py:441 taiga/projects/models.py:464 +#: taiga/projects/models.py:489 taiga/projects/models.py:522 +#: taiga/projects/wiki/models.py:71 taiga/users/models.py:188 +msgid "order" +msgstr "" -#: projects/documents/models.py:30 -msgid "attached_file" -msgstr "fichero_adjunto" +#: taiga/projects/custom_attributes/models.py:31 +#: taiga/projects/milestones/models.py:34 taiga/projects/models.py:120 +#: taiga/projects/models.py:338 taiga/projects/models.py:377 +#: taiga/projects/models.py:402 taiga/projects/models.py:439 +#: taiga/projects/models.py:462 taiga/projects/models.py:485 +#: taiga/projects/models.py:520 taiga/projects/models.py:543 +#: taiga/users/models.py:180 taiga/webhooks/models.py:27 +msgid "name" +msgstr "" -#: projects/issues/api.py:82 projects/issues/api.py:85 -#: projects/issues/api.py:88 projects/issues/api.py:91 -#: projects/issues/api.py:94 projects/issues/api.py:97 -msgid "You don't have permissions for add/modify this issue." -msgstr "No tienes permisos para crear/modificar esta petición." +#: taiga/projects/custom_attributes/models.py:81 +msgid "attributes_values" +msgstr "" -#: projects/issues/api.py:131 -msgid "You don't have permissions for add attachments to this issue" -msgstr "No tienes permisos para añadir ficheros adjuntos a esta petición" - -#: projects/issues/models.py:20 projects/questions/models.py:20 -#: projects/tasks/models.py:22 projects/userstories/models.py:42 -msgid "ref" -msgstr "ref" - -#: projects/issues/models.py:24 projects/questions/models.py:24 -#: projects/tasks/models.py:26 projects/userstories/models.py:52 -msgid "status" -msgstr "estado" - -#: projects/issues/models.py:26 -msgid "severity" -msgstr "severidad" - -#: projects/issues/models.py:28 -msgid "priority" -msgstr "prioridad" - -#: projects/issues/models.py:30 -msgid "type" -msgstr "tipo" - -#: projects/issues/models.py:33 projects/questions/models.py:32 -#: projects/tasks/models.py:31 projects/userstories/models.py:45 -msgid "milestone" -msgstr "sprint" - -#: projects/issues/models.py:41 projects/questions/models.py:34 -#: projects/tasks/models.py:37 -msgid "finished date" -msgstr "fecha de fin" - -#: projects/issues/models.py:43 projects/questions/models.py:26 -#: projects/tasks/models.py:39 projects/userstories/models.py:67 -msgid "subject" -msgstr "asunto" - -#: projects/issues/models.py:47 projects/tasks/models.py:43 -msgid "assigned to" -msgstr "assignada a" - -#: projects/issues/models.py:50 projects/questions/models.py:44 -#: projects/tasks/models.py:45 projects/userstories/models.py:70 -#: projects/wiki/models.py:22 -msgid "watchers" -msgstr "observadores" - -#: projects/issues/models.py:86 projects/tasks/models.py:76 -msgid "Unassigned" -msgstr "Sin asignar" - -#: projects/milestones/api.py:37 -msgid "You must not add a new milestone to this project." -msgstr "No debes añadir un nuevo sprint a este proyecto." - -#: projects/milestones/models.py:28 -msgid "estimated start" -msgstr "inicio estimado" - -#: projects/milestones/models.py:30 -msgid "estimated finish" -msgstr "fin estimado" - -#: projects/milestones/models.py:38 -msgid "disponibility" -msgstr "disponibilidad" - -#: projects/questions/models.py:27 projects/wiki/models.py:17 -msgid "content" -msgstr "contenido" - -#: projects/questions/models.py:37 -msgid "assigned_to" -msgstr "assignada_a" - -#: projects/tasks/api.py:47 -msgid "You don't have permissions for add attachments to this task." -msgstr "No tienes permisos para añadir ficheros adjuntos a esta tarea." - -#: projects/tasks/api.py:74 projects/tasks/api.py:77 projects/tasks/api.py:80 -#: projects/tasks/api.py:83 -msgid "You don't have permissions for add/modify this task." -msgstr "No tienes permisos para añadir/modificar esta tarea." - -#: projects/tasks/models.py:20 projects/userstories/models.py:20 +#: taiga/projects/custom_attributes/models.py:91 +#: taiga/projects/tasks/models.py:33 taiga/projects/userstories/models.py:34 msgid "user story" -msgstr "historia de usuario" - -#: projects/tasks/models.py:49 -msgid "is iocaine" -msgstr "es iocaina" - -#: projects/userstories/api.py:55 -msgid "You don't have permissions for add attachments to this user story" msgstr "" -"No tienes permisos para añadir ficheros adjuntos a esta historia de " -"usuario." -#: projects/userstories/api.py:75 projects/userstories/api.py:99 -msgid "bulkStories parameter is mandatory" -msgstr "El parámetro bulkStories es obligatorio" +#: taiga/projects/custom_attributes/models.py:106 +msgid "task" +msgstr "" -#: projects/userstories/api.py:79 -msgid "projectId parameter is mandatory" -msgstr "El parámetro projectID es obligatorio" +#: taiga/projects/custom_attributes/models.py:121 +msgid "issue" +msgstr "" -#: projects/userstories/api.py:84 projects/userstories/api.py:108 -msgid "You don't have permisions to create user stories." -msgstr "No tienes permisos para crear historias de usuario." +#: taiga/projects/custom_attributes/serializers.py:58 +msgid "Already exists one with the same name." +msgstr "" -#: projects/userstories/api.py:103 -msgid "projectId parameter ir mandatory" -msgstr "El parámetro projectID es obligatorio" +#: taiga/projects/history/choices.py:27 +msgid "Change" +msgstr "" -#: projects/userstories/api.py:126 projects/userstories/api.py:129 -#: projects/userstories/api.py:132 -msgid "You don't have permissions for add/modify this user story" -msgstr "No tienes permisos para crear o modificar esta historia de usuario." +#: taiga/projects/history/choices.py:28 +msgid "Create" +msgstr "" -#: projects/userstories/models.py:23 -msgid "role" -msgstr "rol" +#: taiga/projects/history/choices.py:29 +msgid "Delete" +msgstr "" -#: projects/userstories/models.py:26 projects/userstories/models.py:57 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:22 +#, python-format +msgid "%(role)s role points" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:25 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:130 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:133 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:156 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:192 +msgid "from" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:31 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:141 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:144 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:162 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:179 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:198 +msgid "to" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:43 +msgid "Added new attachment" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:61 +msgid "Updated attachment" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:67 +msgid "deprecated" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:69 +msgid "not deprecated" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:85 +msgid "Deleted attachment" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:104 +msgid "added" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:109 +msgid "removed" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:134 +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:145 +msgid "Unassigned" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-html.jinja:209 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:86 +msgid "-deleted-" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:20 +msgid "to:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:20 +msgid "from:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:26 +msgid "Added" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:33 +msgid "Changed" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:40 +msgid "Deleted" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:54 +msgid "added:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:57 +msgid "removed:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:62 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:79 +msgid "From:" +msgstr "" + +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:63 +#: taiga/projects/history/templates/emails/includes/fields_diff-text.jinja:80 +msgid "To:" +msgstr "" + +#: taiga/projects/history/templatetags/functions.py:26 +#: taiga/projects/wiki/models.py:32 +msgid "content" +msgstr "" + +#: taiga/projects/history/templatetags/functions.py:27 +#: taiga/projects/mixins/blocked.py:31 +msgid "blocked note" +msgstr "" + +#: taiga/projects/issues/api.py:139 +msgid "You don't have permissions to set this sprint to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:143 +msgid "You don't have permissions to set this status to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:147 +msgid "You don't have permissions to set this severity to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:151 +msgid "You don't have permissions to set this priority to this issue." +msgstr "" + +#: taiga/projects/issues/api.py:155 +msgid "You don't have permissions to set this type to this issue." +msgstr "" + +#: taiga/projects/issues/models.py:36 taiga/projects/tasks/models.py:35 +#: taiga/projects/userstories/models.py:57 +msgid "ref" +msgstr "" + +#: taiga/projects/issues/models.py:40 taiga/projects/tasks/models.py:39 +#: taiga/projects/userstories/models.py:67 +msgid "status" +msgstr "" + +#: taiga/projects/issues/models.py:42 +msgid "severity" +msgstr "" + +#: taiga/projects/issues/models.py:44 +msgid "priority" +msgstr "" + +#: taiga/projects/issues/models.py:46 +msgid "type" +msgstr "" + +#: taiga/projects/issues/models.py:49 taiga/projects/tasks/models.py:44 +#: taiga/projects/userstories/models.py:60 +msgid "milestone" +msgstr "" + +#: taiga/projects/issues/models.py:58 taiga/projects/tasks/models.py:51 +msgid "finished date" +msgstr "" + +#: taiga/projects/issues/models.py:60 taiga/projects/tasks/models.py:53 +#: taiga/projects/userstories/models.py:89 +msgid "subject" +msgstr "" + +#: taiga/projects/issues/models.py:64 taiga/projects/tasks/models.py:63 +#: taiga/projects/userstories/models.py:93 +msgid "assigned to" +msgstr "" + +#: taiga/projects/issues/models.py:66 taiga/projects/tasks/models.py:67 +#: taiga/projects/userstories/models.py:103 +msgid "external reference" +msgstr "" + +#: taiga/projects/milestones/models.py:37 taiga/projects/models.py:122 +#: taiga/projects/models.py:340 taiga/projects/models.py:404 +#: taiga/projects/models.py:487 taiga/projects/models.py:545 +#: taiga/projects/wiki/models.py:30 taiga/users/models.py:182 +msgid "slug" +msgstr "" + +#: taiga/projects/milestones/models.py:42 +msgid "estimated start date" +msgstr "" + +#: taiga/projects/milestones/models.py:43 +msgid "estimated finish date" +msgstr "" + +#: taiga/projects/milestones/models.py:50 taiga/projects/models.py:344 +#: taiga/projects/models.py:408 taiga/projects/models.py:491 +msgid "is closed" +msgstr "" + +#: taiga/projects/milestones/models.py:52 +msgid "disponibility" +msgstr "" + +#: taiga/projects/milestones/validators.py:12 +msgid "There's no sprint with that id" +msgstr "" + +#: taiga/projects/mixins/blocked.py:29 +msgid "is blocked" +msgstr "" + +#: taiga/projects/mixins/ordering.py:47 +#, python-brace-format +msgid "{param} parameter is mandatory" +msgstr "" + +#: taiga/projects/mixins/ordering.py:51 +msgid "project parameter is mandatory" +msgstr "" + +#: taiga/projects/models.py:59 +msgid "email" +msgstr "" + +#: taiga/projects/models.py:61 +msgid "creado el" +msgstr "" + +#: taiga/projects/models.py:63 taiga/users/models.py:126 +msgid "token" +msgstr "" + +#: taiga/projects/models.py:69 +msgid "invitation extra text" +msgstr "" + +#: taiga/projects/models.py:75 +msgid "The user is already member of the project" +msgstr "" + +#: taiga/projects/models.py:90 +msgid "default points" +msgstr "" + +#: taiga/projects/models.py:94 +msgid "default US status" +msgstr "" + +#: taiga/projects/models.py:98 +msgid "default task status" +msgstr "" + +#: taiga/projects/models.py:101 +msgid "default priority" +msgstr "" + +#: taiga/projects/models.py:104 +msgid "default severity" +msgstr "" + +#: taiga/projects/models.py:108 +msgid "default issue status" +msgstr "" + +#: taiga/projects/models.py:112 +msgid "default issue type" +msgstr "" + +#: taiga/projects/models.py:133 +msgid "members" +msgstr "" + +#: taiga/projects/models.py:136 +msgid "total of milestones" +msgstr "" + +#: taiga/projects/models.py:137 +msgid "total story points" +msgstr "" + +#: taiga/projects/models.py:140 taiga/projects/models.py:558 +msgid "active backlog panel" +msgstr "" + +#: taiga/projects/models.py:142 taiga/projects/models.py:560 +msgid "active kanban panel" +msgstr "" + +#: taiga/projects/models.py:144 taiga/projects/models.py:562 +msgid "active wiki panel" +msgstr "" + +#: taiga/projects/models.py:146 taiga/projects/models.py:564 +msgid "active issues panel" +msgstr "" + +#: taiga/projects/models.py:149 taiga/projects/models.py:567 +msgid "videoconference system" +msgstr "" + +#: taiga/projects/models.py:151 taiga/projects/models.py:569 +msgid "videoconference room salt" +msgstr "" + +#: taiga/projects/models.py:156 +msgid "creation template" +msgstr "" + +#: taiga/projects/models.py:159 +msgid "anonymous permissions" +msgstr "" + +#: taiga/projects/models.py:163 +msgid "user permissions" +msgstr "" + +#: taiga/projects/models.py:166 +msgid "is private" +msgstr "" + +#: taiga/projects/models.py:177 +msgid "tags colors" +msgstr "" + +#: taiga/projects/models.py:327 +msgid "modules config" +msgstr "" + +#: taiga/projects/models.py:346 +msgid "is archived" +msgstr "" + +#: taiga/projects/models.py:348 taiga/projects/models.py:410 +#: taiga/projects/models.py:443 taiga/projects/models.py:466 +#: taiga/projects/models.py:493 taiga/projects/models.py:524 +#: taiga/users/models.py:113 +msgid "color" +msgstr "" + +#: taiga/projects/models.py:350 +msgid "work in progress limit" +msgstr "" + +#: taiga/projects/models.py:381 taiga/userstorage/models.py:31 +msgid "value" +msgstr "" + +#: taiga/projects/models.py:555 +msgid "default owner's role" +msgstr "" + +#: taiga/projects/models.py:571 +msgid "default options" +msgstr "" + +#: taiga/projects/models.py:572 +msgid "us statuses" +msgstr "" + +#: taiga/projects/models.py:573 taiga/projects/userstories/models.py:40 +#: taiga/projects/userstories/models.py:72 msgid "points" -msgstr "puntos" - -#: projects/userstories/models.py:65 -msgid "finish date" -msgstr "fecha de fin" - -#: projects/userstories/models.py:72 -msgid "is client requirement" -msgstr "es requisito del cliente" - -#: projects/userstories/models.py:74 -msgid "is team requirement" -msgstr "es requisito del equipo" - -#: projects/wiki/api.py:39 -msgid "You don't have permissions for add attachments to this wiki page." msgstr "" -"No tienes permisos para añadir ficheros adjuntos a esta página de wiki." -#: projects/wiki/api.py:65 -msgid "You don't haver permissions for add/modify this wiki page." -msgstr "No tienes permisos para crear or modificar esta página de wiki." +#: taiga/projects/models.py:574 +msgid "task statuses" +msgstr "" -#: settings/common.py:28 -msgid "English" -msgstr "Inglés" +#: taiga/projects/models.py:575 +msgid "issue statuses" +msgstr "" -#: settings/common.py:29 -msgid "Spanish" -msgstr "Español" +#: taiga/projects/models.py:576 +msgid "issue types" +msgstr "" + +#: taiga/projects/models.py:577 +msgid "priorities" +msgstr "" + +#: taiga/projects/models.py:578 +msgid "severities" +msgstr "" + +#: taiga/projects/models.py:579 +msgid "roles" +msgstr "" + +#: taiga/projects/notifications/choices.py:28 +msgid "Not watching" +msgstr "" + +#: taiga/projects/notifications/choices.py:29 +msgid "Watching" +msgstr "" + +#: taiga/projects/notifications/choices.py:30 +msgid "Ignoring" +msgstr "" + +#: taiga/projects/notifications/mixins.py:87 +msgid "watchers" +msgstr "" + +#: taiga/projects/notifications/models.py:57 +msgid "created date time" +msgstr "" + +#: taiga/projects/notifications/models.py:59 +msgid "updated date time" +msgstr "" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-change-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Updated the Wiki Page \"%(page)s\"\n" +msgstr "" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-create-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Created the Wiki Page \"%(page)s\"\n" +msgstr "" + +#: taiga/projects/notifications/templates/emails/wiki/wikipage-delete-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[%(project)s] Deleted the Wiki Page \"%(page)s\"\n" +msgstr "" + +#: taiga/projects/occ/mixins.py:91 +msgid "version" +msgstr "" + +#: taiga/projects/permissions.py:39 +msgid "You can't leave the project if there are no more owners" +msgstr "" + +#: taiga/projects/serializers.py:203 +msgid "Email address is already taken" +msgstr "" + +#: taiga/projects/serializers.py:215 +msgid "Invalid role for the project" +msgstr "" + +#: taiga/projects/serializers.py:370 +msgid "Default options" +msgstr "" + +#: taiga/projects/serializers.py:371 +msgid "User story's statuses" +msgstr "" + +#: taiga/projects/serializers.py:372 +msgid "Points" +msgstr "" + +#: taiga/projects/serializers.py:373 +msgid "Task's statuses" +msgstr "" + +#: taiga/projects/serializers.py:374 +msgid "Issue's statuses" +msgstr "" + +#: taiga/projects/serializers.py:375 +msgid "Issue's types" +msgstr "" + +#: taiga/projects/serializers.py:376 +msgid "Priorities" +msgstr "" + +#: taiga/projects/serializers.py:377 +msgid "Severities" +msgstr "" + +#: taiga/projects/serializers.py:378 +msgid "Roles" +msgstr "" + +#: taiga/projects/tasks/api.py:57 taiga/projects/tasks/api.py:60 +#: taiga/projects/tasks/api.py:63 taiga/projects/tasks/api.py:66 +msgid "You don't have permissions for add/modify this task." +msgstr "" + +#: taiga/projects/tasks/models.py:56 +msgid "us order" +msgstr "" + +#: taiga/projects/tasks/models.py:58 +msgid "taskboard order" +msgstr "" + +#: taiga/projects/tasks/models.py:66 +msgid "is iocaine" +msgstr "" + +#: taiga/projects/tasks/validators.py:12 +msgid "There's no task with that id" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:6 +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:4 +msgid "someone" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:18 +#, python-format +msgid "" +"\n" +"

And now a few words from the jolly good fellow or sistren
" +"who thought so kindly as to invite you

\n" +"

%(extra)s

\n" +" " +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:25 +msgid "Accept your invitation to Taiga" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:25 +msgid "Accept your invitation" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-html.jinja:26 +msgid "The Taiga Team" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:13 +#, python-format +msgid "" +"\n" +"And now a few words from the jolly good fellow or sistren who thought so " +"kindly as to invite you:\n" +"\n" +"%(extra)s\n" +" " +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:19 +msgid "Accept your invitation to Taiga following whis link:" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-body-text.jinja:21 +msgid "" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/projects/templates/emails/membership_invitation-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Invitation to join to the project '%(project)s'\n" +msgstr "" + +#: taiga/projects/templates/emails/membership_notification-subject.jinja:1 +#, python-format +msgid "" +"\n" +"[Taiga] Added to the project '%(project)s'\n" +msgstr "" + +#: taiga/projects/userstories/api.py:170 +#, python-brace-format +msgid "" +"Generating the user story [US #{ref} - {subject}](:us:{ref} \"US #{ref} - " +"{subject}\")" +msgstr "" + +#: taiga/projects/userstories/models.py:37 +msgid "role" +msgstr "" + +#: taiga/projects/userstories/models.py:75 +msgid "backlog order" +msgstr "" + +#: taiga/projects/userstories/models.py:77 +#: taiga/projects/userstories/models.py:79 +msgid "sprint order" +msgstr "" + +#: taiga/projects/userstories/models.py:87 +msgid "finish date" +msgstr "" + +#: taiga/projects/userstories/models.py:95 +msgid "is client requirement" +msgstr "" + +#: taiga/projects/userstories/models.py:97 +msgid "is team requirement" +msgstr "" + +#: taiga/projects/userstories/models.py:102 +msgid "generated from issue" +msgstr "" + +#: taiga/projects/userstories/validators.py:12 +msgid "There's no user story with that id" +msgstr "" + +#: taiga/projects/validators.py:12 +msgid "There's no project with that id" +msgstr "" + +#: taiga/projects/validators.py:21 +msgid "There's no user story status with that id" +msgstr "" + +#: taiga/projects/validators.py:30 +msgid "There's no task status with that id" +msgstr "" + +#: taiga/projects/votes/models.py:31 taiga/projects/votes/models.py:32 +#: taiga/projects/votes/models.py:54 +msgid "Votes" +msgstr "" + +#: taiga/projects/votes/models.py:50 +msgid "votes" +msgstr "" + +#: taiga/projects/votes/models.py:53 +msgid "Vote" +msgstr "" + +#: taiga/projects/wiki/api.py:60 +msgid "No content parameter" +msgstr "" + +#: taiga/projects/wiki/api.py:63 +msgid "No project_id parameter" +msgstr "" + +#: taiga/projects/wiki/models.py:36 +msgid "last modifier" +msgstr "última modificación por" + +#: taiga/projects/wiki/models.py:69 +msgid "href" +msgstr "" + +#: taiga/users/admin.py:50 +msgid "Personal info" +msgstr "Información personal" + +#: taiga/users/admin.py:52 +msgid "Permissions" +msgstr "Permisos" + +#: taiga/users/admin.py:53 +msgid "Important dates" +msgstr "" + +#: taiga/users/api.py:87 taiga/users/api.py:94 +msgid "Invalid username or email" +msgstr "Nombre de usuario o email no válidos" + +#: taiga/users/api.py:103 +msgid "Mail sended successful!" +msgstr "¡Correo enviado con éxito!" + +#: taiga/users/api.py:116 taiga/users/api.py:121 +msgid "Token is invalid" +msgstr "" + +#: taiga/users/api.py:142 +msgid "Current password parameter needed" +msgstr "" + +#: taiga/users/api.py:145 +msgid "New password parameter needed" +msgstr "" + +#: taiga/users/api.py:148 +msgid "Invalid password length at least 6 charaters needed" +msgstr "" + +#: taiga/users/api.py:151 +msgid "Invalid current password" +msgstr "" + +#: taiga/users/api.py:167 +msgid "Incomplete arguments" +msgstr "" + +#: taiga/users/api.py:172 +msgid "Invalid image format" +msgstr "Formato de imagen no válido" + +#: taiga/users/api.py:225 +msgid "Duplicated email" +msgstr "Email duplicado" + +#: taiga/users/api.py:227 +msgid "Not valid email" +msgstr "Email no válido" + +#: taiga/users/api.py:246 taiga/users/api.py:252 +msgid "" +"Invalid, are you sure the token is correct and you didn't use it before?" +msgstr "" + +#: taiga/users/api.py:279 taiga/users/api.py:287 taiga/users/api.py:290 +msgid "Invalid, are you sure the token is correct?" +msgstr "" + +#: taiga/users/models.py:69 +msgid "superuser status" +msgstr "" + +#: taiga/users/models.py:70 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "" + +#: taiga/users/models.py:100 +msgid "username" +msgstr "" + +#: taiga/users/models.py:101 +msgid "" +"Required. 30 characters or fewer. Letters, numbers and /./-/_ characters" +msgstr "" + +#: taiga/users/models.py:104 +msgid "Enter a valid username." +msgstr "" + +#: taiga/users/models.py:107 +msgid "active" +msgstr "" + +#: taiga/users/models.py:108 +msgid "" +"Designates whether this user should be treated as active. Unselect this " +"instead of deleting accounts." +msgstr "" + +#: taiga/users/models.py:114 +msgid "biography" +msgstr "" + +#: taiga/users/models.py:117 +msgid "photo" +msgstr "" + +#: taiga/users/models.py:118 +msgid "date joined" +msgstr "" + +#: taiga/users/models.py:120 +msgid "default language" +msgstr "idioma por defecto" + +#: taiga/users/models.py:122 +msgid "default timezone" +msgstr "zona horaria por defecto" + +#: taiga/users/models.py:124 +msgid "colorize tags" +msgstr "añade color a las etiquetas" + +#: taiga/users/models.py:129 +msgid "email token" +msgstr "" + +#: taiga/users/models.py:131 +msgid "new email address" +msgstr "nueva dirección de email" + +#: taiga/users/models.py:185 +msgid "permissions" +msgstr "permisos" + +#: taiga/users/serializers.py:52 +msgid "invalid username" +msgstr "nombre de usuario no válido" + +#: taiga/users/serializers.py:53 +msgid "invalid" +msgstr "no válido" + +#: taiga/users/serializers.py:58 +msgid "" +"Required. 255 characters or fewer. Letters, numbers and /./-/_ characters'" +msgstr "" + +#: taiga/users/serializers.py:64 +msgid "Invalid username. Try with a different one." +msgstr "" + +#: taiga/users/templates/emails/change_email-body-html.jinja:4 +#, python-format +msgid "" +"\n" +"

Change your email

\n" +"

Hello %(full_name)s,
please confirm your email

\n" +" Confirm " +"email\n" +"

You can ignore this message if you did not request.

\n" +"

The Taiga Team

\n" +" " +msgstr "" + +#: taiga/users/templates/emails/change_email-body-text.jinja:1 +#, python-format +msgid "" +"\n" +"Hello %(full_name)s, please confirm your email\n" +"\n" +"%(url)s\n" +"\n" +"You can ignore this message if you did not request.\n" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/change_email-subject.jinja:1 +msgid "[Taiga] Change email" +msgstr "" + +#: taiga/users/templates/emails/password_recovery-body-text.jinja:1 +#, python-format +msgid "" +"\n" +"Hello %(full_name)s, you asked to recover your password\n" +"\n" +"%(url)s\n" +"\n" +"You can ignore this message if you did not request.\n" +"\n" +"---\n" +"The Taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/password_recovery-subject.jinja:1 +msgid "[Taiga] Password recovery" +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-html.jinja:6 +msgid "" +"\n" +" \n" +"

Thank you for registering in Taiga

\n" +"

We hope you enjoy it

\n" +"

We built Taiga because we wanted the project management tool " +"that sits open on our computers all day long, to serve as a continued " +"reminder of why we love to collaborate, code and design.

\n" +"

We built it to be beautiful, elegant, simple to use and fun - " +"without forsaking flexibility and power.

\n" +" The taiga Team\n" +" You may remove your account from this service clicking " +"here\n" +" " +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-text.jinja:1 +msgid "" +"\n" +"Thank you for registering in Taiga\n" +"\n" +"We hope you enjoy it\n" +"\n" +"We built Taiga because we wanted the project management tool that sits open " +"on our computers all day long, to serve as a continued reminder of why we " +"love to collaborate, code and design.\n" +"\n" +"We built it to be beautiful, elegant, simple to use and fun - without " +"forsaking flexibility and power.\n" +"\n" +"--\n" +"The taiga Team\n" +msgstr "" + +#: taiga/users/templates/emails/registered_user-body-text.jinja:13 +#, python-format +msgid "" +"\n" +"You may remove your account from this service: %(url)s\n" +msgstr "" + +#: taiga/users/templates/emails/registered_user-subject.jinja:1 +msgid "You've been Taigatized!" +msgstr "¡Te hemos Taigatizado!" + +#: taiga/users/validators.py:29 +msgid "There's no role with that id" +msgstr "" + +#: taiga/userstorage/api.py:50 +msgid "" +"Duplicate key value violates unique constraint. Key '{}' already exists." +msgstr "" + +#: taiga/userstorage/models.py:30 +msgid "key" +msgstr "" + +#: taiga/webhooks/models.py:28 taiga/webhooks/models.py:38 +msgid "URL" +msgstr "URL" + +#: taiga/webhooks/models.py:29 +msgid "secret key" +msgstr "" + +#: taiga/webhooks/models.py:39 +msgid "Status code" +msgstr "" + +#: taiga/webhooks/models.py:40 +msgid "Request data" +msgstr "" + +#: taiga/webhooks/models.py:41 +msgid "Request headers" +msgstr "" + +#: taiga/webhooks/models.py:42 +msgid "Response data" +msgstr "" + +#: taiga/webhooks/models.py:43 +msgid "Response headers" +msgstr "" + +#: taiga/webhooks/models.py:44 +msgid "Duration" +msgstr "Duración"