[Backport] Fix issue 4056, 4075 and a minor refactor

remotes/origin/issue/4795/notification_even_they_are_disabled
David Barragán Merino 2016-04-08 12:16:57 +02:00 committed by Alejandro Alonso
parent 47be184901
commit ced6f435c2
24 changed files with 1093 additions and 837 deletions

View File

@ -91,13 +91,18 @@ class ProjectImporterViewSet(mixins.ImportThrottlingPolicyMixin, CreateModelMixi
data = request.DATA.copy() data = request.DATA.copy()
data['owner'] = data.get('owner', request.user.email) data['owner'] = data.get('owner', request.user.email)
# Validate if the project can be imported
is_private = data.get('is_private', False) is_private = data.get('is_private', False)
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project( total_memberships = len([m for m in data.get("memberships", [])
if m.get("email", None) != data["owner"]])
total_memberships = total_memberships + 1 # 1 is the owner
(enough_slots, error_message) = users_service.has_available_slot_for_import_new_project(
self.request.user, self.request.user,
Project(is_private=is_private, id=None) is_private,
total_memberships
) )
if not enough_slots: if not enough_slots:
raise exc.NotEnoughSlotsForProject(is_private, 1, not_enough_slots_error) raise exc.NotEnoughSlotsForProject(is_private, total_memberships, error_message)
# Create Project # Create Project
project_serialized = service.store_project(data) project_serialized = service.store_project(data)
@ -115,14 +120,6 @@ class ProjectImporterViewSet(mixins.ImportThrottlingPolicyMixin, CreateModelMixi
# Create memberships # Create memberships
if "memberships" in data: if "memberships" in data:
members = len([m for m in data.get("memberships", []) if m.get("email", None) != data["owner"]])
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project(
self.request.user,
Project(is_private=is_private, id=None),
members
)
if not enough_slots:
raise exc.NotEnoughSlotsForProject(is_private, max(members, 1), not_enough_slots_error)
service.store_memberships(project_serialized.object, data) service.store_memberships(project_serialized.object, data)
try: try:
@ -200,53 +197,6 @@ class ProjectImporterViewSet(mixins.ImportThrottlingPolicyMixin, CreateModelMixi
headers = self.get_success_headers(response_data) headers = self.get_success_headers(response_data)
return response.Created(response_data, headers=headers) return response.Created(response_data, headers=headers)
@list_route(methods=["POST"])
@method_decorator(atomic)
def load_dump(self, request):
throttle = throttling.ImportDumpModeRateThrottle()
if not throttle.allow_request(request, self):
self.throttled(request, throttle.wait())
self.check_permissions(request, "load_dump", None)
dump = request.FILES.get('dump', None)
if not dump:
raise exc.WrongArguments(_("Needed dump file"))
reader = codecs.getreader("utf-8")
try:
dump = json.load(reader(dump))
is_private = dump.get("is_private", False)
except Exception:
raise exc.WrongArguments(_("Invalid dump format"))
slug = dump.get('slug', None)
if slug is not None and Project.objects.filter(slug=slug).exists():
del dump['slug']
user = request.user
dump['owner'] = user.email
members = len([m for m in dump.get("memberships", []) if m.get("email", None) != dump["owner"]])
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project(
user,
Project(is_private=is_private, id=None),
members
)
if not enough_slots:
raise exc.NotEnoughSlotsForProject(is_private, max(members, 1), not_enough_slots_error)
if settings.CELERY_ENABLED:
task = tasks.load_project_dump.delay(user, dump)
return response.Accepted({"import_id": task.id})
project = dump_service.dict_to_project(dump, request.user)
response_data = ProjectSerializer(project).data
return response.Created(response_data)
@detail_route(methods=['post']) @detail_route(methods=['post'])
@method_decorator(atomic) @method_decorator(atomic)
def issue(self, request, *args, **kwargs): def issue(self, request, *args, **kwargs):
@ -342,3 +292,54 @@ class ProjectImporterViewSet(mixins.ImportThrottlingPolicyMixin, CreateModelMixi
headers = self.get_success_headers(wiki_link.data) headers = self.get_success_headers(wiki_link.data)
return response.Created(wiki_link.data, headers=headers) return response.Created(wiki_link.data, headers=headers)
@list_route(methods=["POST"])
@method_decorator(atomic)
def load_dump(self, request):
throttle = throttling.ImportDumpModeRateThrottle()
if not throttle.allow_request(request, self):
self.throttled(request, throttle.wait())
self.check_permissions(request, "load_dump", None)
dump = request.FILES.get('dump', None)
if not dump:
raise exc.WrongArguments(_("Needed dump file"))
reader = codecs.getreader("utf-8")
try:
dump = json.load(reader(dump))
except Exception:
raise exc.WrongArguments(_("Invalid dump format"))
slug = dump.get('slug', None)
if slug is not None and Project.objects.filter(slug=slug).exists():
del dump['slug']
user = request.user
dump['owner'] = user.email
# Validate if the project can be imported
is_private = dump.get("is_private", False)
total_memberships = len([m for m in dump.get("memberships", [])
if m.get("email", None) != dump["owner"]])
total_memberships = total_memberships + 1 # 1 is the owner
(enough_slots, error_message) = users_service.has_available_slot_for_import_new_project(
user,
is_private,
total_memberships
)
if not enough_slots:
raise exc.NotEnoughSlotsForProject(is_private, total_memberships, error_message)
if settings.CELERY_ENABLED:
task = tasks.load_project_dump.delay(user, dump)
return response.Accepted({"import_id": task.id})
project = dump_service.dict_to_project(dump, request.user)
response_data = ProjectSerializer(project).data
return response.Created(response_data)

View File

@ -15,6 +15,9 @@
# You should have received a copy of the GNU Affero General Public License # You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.db.transaction import atomic
from django.utils.decorators import method_decorator
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from taiga.projects.models import Membership, Project from taiga.projects.models import Membership, Project
@ -88,17 +91,23 @@ def store_tags_colors(project, data):
return None return None
@method_decorator(atomic)
def dict_to_project(data, owner=None): def dict_to_project(data, owner=None):
if owner: if owner:
data["owner"] = owner.email data["owner"] = owner.email
members = len([m for m in data.get("memberships", []) if m.get("email", None) != data["owner"]])
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project( # Validate if the owner can have this project
is_private = data.get("is_private", False)
total_memberships = len([m for m in data.get("memberships", [])
if m.get("email", None) != data["owner"]])
total_memberships = total_memberships + 1 # 1 is the owner
(enough_slots, error_message) = users_service.has_available_slot_for_import_new_project(
owner, owner,
Project(is_private=data.get("is_private", False), id=None), is_private,
members total_memberships
) )
if not enough_slots: if not enough_slots:
raise TaigaImportError(not_enough_slots_error) raise TaigaImportError(error_message)
project_serialized = service.store_project(data) project_serialized = service.store_project(data)

View File

@ -9,10 +9,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Catalan (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Catalan (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/ca/)\n" "language/ca/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -185,7 +184,7 @@ msgstr ""
"està corrupte." "està corrupte."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -469,71 +468,71 @@ msgstr ""
" Comentari: %(comment)s\n" " Comentari: %(comment)s\n"
" " " "
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "" msgstr ""
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Es necessita arxiu dump." msgstr "Es necessita arxiu dump."
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Format d'arxiu dump invàlid" msgstr "Format d'arxiu dump invàlid"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "" msgstr ""
@ -723,7 +722,7 @@ msgstr ""
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "Nom" msgstr "Nom"
@ -1176,13 +1175,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "No tens permisos per a veure açò." msgstr "No tens permisos per a veure açò."
@ -1212,7 +1211,7 @@ msgstr "Amo"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "Projecte" msgstr "Projecte"
@ -1251,7 +1250,7 @@ msgstr "està obsolet "
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "Ordre" msgstr "Ordre"
@ -1531,7 +1530,7 @@ msgstr "Fans"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "slug" msgstr "slug"
@ -2358,50 +2357,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Opcions per defecte" msgstr "Opcions per defecte"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Estatus d'històries d'usuari" msgstr "Estatus d'històries d'usuari"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Punts" msgstr "Punts"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Estatus de tasques" msgstr "Estatus de tasques"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Estatus d'incidéncies" msgstr "Estatus d'incidéncies"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Tipus d'incidéncies" msgstr "Tipus d'incidéncies"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Prioritats" msgstr "Prioritats"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Severitats" msgstr "Severitats"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Rols" msgstr "Rols"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "" msgstr ""
@ -3271,7 +3292,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "permissos" msgstr "permissos"
@ -3287,14 +3308,6 @@ msgstr "Nom d'usuari invàlid"
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "" msgstr ""
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -17,10 +17,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: German (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: German (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/de/)\n" "language/de/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -215,7 +214,7 @@ msgstr ""
"haben, ist entweder kein Bild oder defekt." "haben, ist entweder kein Bild oder defekt."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -524,71 +523,71 @@ msgstr ""
"Kommentar: %(comment)s\n" "Kommentar: %(comment)s\n"
" " " "
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "Es ist mindestens eine Rolle nötig" msgstr "Es ist mindestens eine Rolle nötig"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Exportdatei erforderlich" msgstr "Exportdatei erforderlich"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Ungültiges Exportdatei Format" msgstr "Ungültiges Exportdatei Format"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "Fehler beim Importieren der Projektdaten" msgstr "Fehler beim Importieren der Projektdaten"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "Fehler beim Importieren der Listen von Projektattributen" msgstr "Fehler beim Importieren der Listen von Projektattributen"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "Fehler beim Importieren der vorgegebenen Projekt Attributwerte " msgstr "Fehler beim Importieren der vorgegebenen Projekt Attributwerte "
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "Fehler beim Importieren der Kundenattribute" msgstr "Fehler beim Importieren der Kundenattribute"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "Fehler beim Importieren der Rollen" msgstr "Fehler beim Importieren der Rollen"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "Fehler beim Importieren der Mitgliedschaften" msgstr "Fehler beim Importieren der Mitgliedschaften"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "Fehler beim Import der Sprints" msgstr "Fehler beim Import der Sprints"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "Fehler beim Importieren von Wiki Seiten" msgstr "Fehler beim Importieren von Wiki Seiten"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "Fehler beim Importieren von Wiki Links" msgstr "Fehler beim Importieren von Wiki Links"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "Fehler beim Importieren der Tickets" msgstr "Fehler beim Importieren der Tickets"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "Fehler beim Importieren der User-Stories" msgstr "Fehler beim Importieren der User-Stories"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "Fehler beim Importieren der Aufgaben" msgstr "Fehler beim Importieren der Aufgaben"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "Fehler beim Importieren der Schlagworte" msgstr "Fehler beim Importieren der Schlagworte"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "Fehler beim Importieren der Chroniken" msgstr "Fehler beim Importieren der Chroniken"
@ -871,7 +870,7 @@ msgstr "Authentifizierung erforderlich"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "Name" msgstr "Name"
@ -1366,13 +1365,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Sie haben keine Berechtigungen für diese Ansicht" msgstr "Sie haben keine Berechtigungen für diese Ansicht"
@ -1402,7 +1401,7 @@ msgstr "Besitzer"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "Projekt" msgstr "Projekt"
@ -1441,7 +1440,7 @@ msgstr "wurde verworfen"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "Reihenfolge" msgstr "Reihenfolge"
@ -1725,7 +1724,7 @@ msgstr "Likes"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "Slug" msgstr "Slug"
@ -2830,50 +2829,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Voreingestellte Optionen" msgstr "Voreingestellte Optionen"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Status für User-Stories" msgstr "Status für User-Stories"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Punkte" msgstr "Punkte"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Aufgaben Status" msgstr "Aufgaben Status"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Ticket Status" msgstr "Ticket Status"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Ticket Arten" msgstr "Ticket Arten"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Prioritäten" msgstr "Prioritäten"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Gewichtung" msgstr "Gewichtung"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Rollen" msgstr "Rollen"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Zukünftiger Sprint" msgstr "Zukünftiger Sprint"
@ -3796,7 +3817,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "Berechtigungen" msgstr "Berechtigungen"
@ -3812,14 +3833,6 @@ msgstr "Ungültiger Benutzername. Versuchen Sie es mit einem anderen."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Benutzername oder Passwort stimmen mit keinem Benutzer überein." msgstr "Benutzername oder Passwort stimmen mit keinem Benutzer überein."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2015-03-25 20:09+0100\n" "PO-Revision-Date: 2015-03-25 20:09+0100\n"
"Last-Translator: Taiga Dev Team <support@taiga.io>\n" "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"Language-Team: Taiga Dev Team <support@taiga.io>\n" "Language-Team: Taiga Dev Team <support@taiga.io>\n"
@ -176,7 +176,7 @@ msgid ""
msgstr "" msgstr ""
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -457,71 +457,71 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "" msgstr ""
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "" msgstr ""
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "" msgstr ""
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "" msgstr ""
@ -711,7 +711,7 @@ msgstr ""
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "" msgstr ""
@ -1148,13 +1148,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "" msgstr ""
@ -1184,7 +1184,7 @@ msgstr ""
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "" msgstr ""
@ -1223,7 +1223,7 @@ msgstr ""
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "" msgstr ""
@ -1503,7 +1503,7 @@ msgstr ""
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "" msgstr ""
@ -2324,50 +2324,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "" msgstr ""
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "" msgstr ""
@ -3214,7 +3236,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "" msgstr ""
@ -3230,14 +3252,6 @@ msgstr ""
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "" msgstr ""
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -16,10 +16,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Spanish (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Spanish (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/es/)\n" "language/es/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -202,7 +201,7 @@ msgid ""
msgstr "Adjunta una imagen válida. El fichero no es una imagen o está dañada." msgstr "Adjunta una imagen válida. El fichero no es una imagen o está dañada."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -511,71 +510,71 @@ msgstr ""
"\n" "\n"
"Comentario: %(comment)s" "Comentario: %(comment)s"
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "Necesitamos al menos un rol" msgstr "Necesitamos al menos un rol"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Se necesita el fichero con los datos exportados" msgstr "Se necesita el fichero con los datos exportados"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Formato de fichero de exportación inválido" msgstr "Formato de fichero de exportación inválido"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "error importando los datos del proyecto" msgstr "error importando los datos del proyecto"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "error importando la listados de valores de attributos del proyecto" msgstr "error importando la listados de valores de attributos del proyecto"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "error importando los valores por defecto de los atributos del proyecto" msgstr "error importando los valores por defecto de los atributos del proyecto"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "error importando los atributos personalizados" msgstr "error importando los atributos personalizados"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "error importando los roles" msgstr "error importando los roles"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "error importando los miembros" msgstr "error importando los miembros"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "error importando los sprints" msgstr "error importando los sprints"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "error importando las páginas del wiki" msgstr "error importando las páginas del wiki"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "error importando los enlaces del wiki" msgstr "error importando los enlaces del wiki"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "error importando las peticiones" msgstr "error importando las peticiones"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "error importando las historias de usuario" msgstr "error importando las historias de usuario"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "error importando las tareas" msgstr "error importando las tareas"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "error importando las etiquetas" msgstr "error importando las etiquetas"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "error importando los timelines" msgstr "error importando los timelines"
@ -853,7 +852,7 @@ msgstr "Se requiere autenticación"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "nombre" msgstr "nombre"
@ -1346,7 +1345,7 @@ msgstr "El usuario no existe"
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
@ -1354,7 +1353,7 @@ msgstr ""
"El proyecto debe tener un dueño y al menos uno de los usuarios debe ser un " "El proyecto debe tener un dueño y al menos uno de los usuarios debe ser un "
"administrador activo" "administrador activo"
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "No tienes suficientes permisos para ver esto." msgstr "No tienes suficientes permisos para ver esto."
@ -1384,7 +1383,7 @@ msgstr "Dueño"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "Proyecto" msgstr "Proyecto"
@ -1423,7 +1422,7 @@ msgstr "está desactualizado"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "orden" msgstr "orden"
@ -1703,7 +1702,7 @@ msgstr "Likes"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "slug" msgstr "slug"
@ -2765,50 +2764,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Opciones por defecto" msgstr "Opciones por defecto"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Estados de historia de usuario" msgstr "Estados de historia de usuario"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Puntos" msgstr "Puntos"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Estado de tareas" msgstr "Estado de tareas"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Estados de peticion" msgstr "Estados de peticion"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Tipos de petición" msgstr "Tipos de petición"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Prioridades" msgstr "Prioridades"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Gravedades" msgstr "Gravedades"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Roles" msgstr "Roles"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr "No puedes tener más proyectos privados"
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr "No puedes tener más proyectos públicos"
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Sprint futuro" msgstr "Sprint futuro"
@ -3734,7 +3755,7 @@ msgstr "máximo de membresías para cada proyecto privado poseído"
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "máximo de membresías para cada proyecto público poseído" msgstr "máximo de membresías para cada proyecto público poseído"
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "permisos" msgstr "permisos"
@ -3750,14 +3771,6 @@ msgstr "Nombre de usuario inválido. Prueba con otro."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Nombre de usuario o contraseña inválidos." msgstr "Nombre de usuario o contraseña inválidos."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr "No puedes tener más proyectos privados"
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr "No puedes tener más proyectos públicos"
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -9,10 +9,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Finnish (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Finnish (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/fi/)\n" "language/fi/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -187,7 +186,7 @@ msgstr ""
"vioittunut." "vioittunut."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -494,71 +493,71 @@ msgstr ""
"\n" "\n"
"Kommentti: %(comment)s" "Kommentti: %(comment)s"
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "" msgstr ""
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Tarvitaan tiedosto" msgstr "Tarvitaan tiedosto"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Virheellinen tiedostomuoto" msgstr "Virheellinen tiedostomuoto"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "virhe projektidatan tuonnissa" msgstr "virhe projektidatan tuonnissa"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "virhe atribuuttilistan tuonnissa" msgstr "virhe atribuuttilistan tuonnissa"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "virhe oletusarvojen tuonnissa" msgstr "virhe oletusarvojen tuonnissa"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "virhe omien arvojen tuonnissa" msgstr "virhe omien arvojen tuonnissa"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "virhe roolien tuonnissa" msgstr "virhe roolien tuonnissa"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "virhe jäsenyyksien tuonnissa" msgstr "virhe jäsenyyksien tuonnissa"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "virhe kierroksien tuonnissa" msgstr "virhe kierroksien tuonnissa"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "virhe wiki-sivujen tuonnissa" msgstr "virhe wiki-sivujen tuonnissa"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "virhe viki-linkkien tuonnissa" msgstr "virhe viki-linkkien tuonnissa"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "virhe pyyntöjen tuonnissa" msgstr "virhe pyyntöjen tuonnissa"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "virhe käyttäjätarinoiden tuonnissa" msgstr "virhe käyttäjätarinoiden tuonnissa"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "virhe tehtävien tuonnissa" msgstr "virhe tehtävien tuonnissa"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "virhe avainsanojen sisäänlukemisessa" msgstr "virhe avainsanojen sisäänlukemisessa"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "virhe aikajanojen tuonnissa" msgstr "virhe aikajanojen tuonnissa"
@ -833,7 +832,7 @@ msgstr ""
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "nimi" msgstr "nimi"
@ -1305,13 +1304,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Sinulla ei ole oikeuksia nähdä tätä." msgstr "Sinulla ei ole oikeuksia nähdä tätä."
@ -1341,7 +1340,7 @@ msgstr "omistaja"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "projekti" msgstr "projekti"
@ -1380,7 +1379,7 @@ msgstr "on poistettu"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "order" msgstr "order"
@ -1660,7 +1659,7 @@ msgstr ""
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "hukka-aika" msgstr "hukka-aika"
@ -2727,50 +2726,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Oletusoptiot" msgstr "Oletusoptiot"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Käyttäjätarinatilat" msgstr "Käyttäjätarinatilat"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Pisteet" msgstr "Pisteet"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Tehtävien tilat" msgstr "Tehtävien tilat"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Pyyntöjen tilat" msgstr "Pyyntöjen tilat"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "pyyntötyypit" msgstr "pyyntötyypit"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Kiireellisyydet" msgstr "Kiireellisyydet"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Vakavuudet" msgstr "Vakavuudet"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Roolit" msgstr "Roolit"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Tuleva kierros" msgstr "Tuleva kierros"
@ -3672,7 +3693,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "oikeudet" msgstr "oikeudet"
@ -3688,14 +3709,6 @@ msgstr "Tuntematon käyttäjänimi, yritä uudelleen."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Käyttäjätunnus tai salasana eivät ole oikein." msgstr "Käyttäjätunnus tai salasana eivät ole oikein."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -22,10 +22,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: French (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: French (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/fr/)\n" "language/fr/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -211,7 +210,7 @@ msgstr ""
"image ou était une image corrompue." "image ou était une image corrompue."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -528,72 +527,72 @@ msgstr ""
" Commentaire : %(comment)s\n" " Commentaire : %(comment)s\n"
" " " "
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "Veuillez sélectionner au moins un rôle." msgstr "Veuillez sélectionner au moins un rôle."
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Fichier de dump obligatoire" msgstr "Fichier de dump obligatoire"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Format de dump invalide" msgstr "Format de dump invalide"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "Erreur lors de l'importation de données" msgstr "Erreur lors de l'importation de données"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "erreur lors de l'importation des listes des attributs de projet" msgstr "erreur lors de l'importation des listes des attributs de projet"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "" msgstr ""
"erreur lors de l'importation des valeurs par défaut des attributs de projet" "erreur lors de l'importation des valeurs par défaut des attributs de projet"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "Erreur à l'importation des champs personnalisés" msgstr "Erreur à l'importation des champs personnalisés"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "Erreur à l'importation des rôles" msgstr "Erreur à l'importation des rôles"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "Erreur à l'importation des groupes d'utilisateurs" msgstr "Erreur à l'importation des groupes d'utilisateurs"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "Erreur lors de l'importation des sprints." msgstr "Erreur lors de l'importation des sprints."
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "Erreur à l'importation des pages Wiki" msgstr "Erreur à l'importation des pages Wiki"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "Erreur à l'importation des liens Wiki" msgstr "Erreur à l'importation des liens Wiki"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "erreur à l'importation des problèmes" msgstr "erreur à l'importation des problèmes"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "erreur à l'importation des histoires utilisateur" msgstr "erreur à l'importation des histoires utilisateur"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "Erreur lors de l'importation des tâches." msgstr "Erreur lors de l'importation des tâches."
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "erreur lors de l'importation des mots-clés" msgstr "erreur lors de l'importation des mots-clés"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "erreur lors de l'import des timelines" msgstr "erreur lors de l'import des timelines"
@ -857,7 +856,7 @@ msgstr "Authentification requise"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "nom" msgstr "nom"
@ -1318,13 +1317,13 @@ msgstr "L'utilisateur n'existe pas"
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Vous n'avez pas les permissions pour consulter cet élément" msgstr "Vous n'avez pas les permissions pour consulter cet élément"
@ -1354,7 +1353,7 @@ msgstr "propriétaire"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "projet" msgstr "projet"
@ -1393,7 +1392,7 @@ msgstr "est obsolète"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "ordre" msgstr "ordre"
@ -1673,7 +1672,7 @@ msgstr "Aime"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "slug" msgstr "slug"
@ -2524,50 +2523,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Options par défaut" msgstr "Options par défaut"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Etats de la User Story" msgstr "Etats de la User Story"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Points" msgstr "Points"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Etats des tâches" msgstr "Etats des tâches"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Statuts des problèmes" msgstr "Statuts des problèmes"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Types de problèmes" msgstr "Types de problèmes"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Priorités" msgstr "Priorités"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Sévérités" msgstr "Sévérités"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Rôles" msgstr "Rôles"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Sprint futurs" msgstr "Sprint futurs"
@ -3460,7 +3481,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "permissions" msgstr "permissions"
@ -3476,14 +3497,6 @@ msgstr "Nom d'utilisateur invalide. Essayez avec un autre nom."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Aucun utilisateur avec ce nom ou ce mot de passe." msgstr "Aucun utilisateur avec ce nom ou ce mot de passe."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -14,10 +14,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Italian (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Italian (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/it/)\n" "language/it/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -196,7 +195,7 @@ msgstr ""
"o l'immagine potrebbe essere corrotta. " "o l'immagine potrebbe essere corrotta. "
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -518,72 +517,72 @@ msgstr ""
"\n" "\n"
"Commento: %(comment)s" "Commento: %(comment)s"
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "C'è bisogno di almeno un ruolo" msgstr "C'è bisogno di almeno un ruolo"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "E' richiesto un file di dump" msgstr "E' richiesto un file di dump"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Formato di dump invalido" msgstr "Formato di dump invalido"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "Errore nell'importazione del progetto dati" msgstr "Errore nell'importazione del progetto dati"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "Errore nell'importazione della lista degli attributi di progetto" msgstr "Errore nell'importazione della lista degli attributi di progetto"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "" msgstr ""
"Errore nell'importazione dei valori predefiniti degli attributi del progetto." "Errore nell'importazione dei valori predefiniti degli attributi del progetto."
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "Errore nell'importazione degli attributi personalizzati" msgstr "Errore nell'importazione degli attributi personalizzati"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "Errore nell'importazione i ruoli" msgstr "Errore nell'importazione i ruoli"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "Errore nell'importazione delle iscrizioni" msgstr "Errore nell'importazione delle iscrizioni"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "errore nell'importazione degli sprints" msgstr "errore nell'importazione degli sprints"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "Errore nell'importazione delle pagine wiki" msgstr "Errore nell'importazione delle pagine wiki"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "Errore nell'importazione dei link di wiki" msgstr "Errore nell'importazione dei link di wiki"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "errore nell'importazione dei problemi" msgstr "errore nell'importazione dei problemi"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "Errore nell'importazione delle user story" msgstr "Errore nell'importazione delle user story"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "Errore nell'importazione dei compiti " msgstr "Errore nell'importazione dei compiti "
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "Errore nell'importazione dei tags" msgstr "Errore nell'importazione dei tags"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "Errore nell'importazione delle timelines" msgstr "Errore nell'importazione delle timelines"
@ -920,7 +919,7 @@ msgstr "E' richiesta l'autenticazione"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "nome" msgstr "nome"
@ -1439,13 +1438,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Non hai il permesso di vedere questo elemento." msgstr "Non hai il permesso di vedere questo elemento."
@ -1475,7 +1474,7 @@ msgstr "proprietario"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "progetto" msgstr "progetto"
@ -1514,7 +1513,7 @@ msgstr "non approvato"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "ordine" msgstr "ordine"
@ -1794,7 +1793,7 @@ msgstr "Piaciuto"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "lumaca" msgstr "lumaca"
@ -3002,50 +3001,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Opzioni predefinite" msgstr "Opzioni predefinite"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Stati della storia utente" msgstr "Stati della storia utente"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Punti" msgstr "Punti"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Stati del compito" msgstr "Stati del compito"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Stati del problema" msgstr "Stati del problema"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Tipologie del problema" msgstr "Tipologie del problema"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Priorità" msgstr "Priorità"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Criticità" msgstr "Criticità"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Ruoli" msgstr "Ruoli"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Sprint futuri" msgstr "Sprint futuri"
@ -3972,7 +3993,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "permessi" msgstr "permessi"
@ -3988,14 +4009,6 @@ msgstr "Nome utente non valido. Provane uno diverso."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Il nome utente o la password non corrispondono all'utente." msgstr "Il nome utente o la password non corrispondono all'utente."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -9,10 +9,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Dutch (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Dutch (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/nl/)\n" "language/nl/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -196,7 +195,7 @@ msgstr ""
"een afbeelding ofwel een corrupte afbeelding." "een afbeelding ofwel een corrupte afbeelding."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -507,71 +506,71 @@ msgstr ""
" Commentaar: %(comment)s\n" " Commentaar: %(comment)s\n"
" " " "
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "We hadden minstens één rol nodig" msgstr "We hadden minstens één rol nodig"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Dump file nodig" msgstr "Dump file nodig"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Ongeldig dump formaat" msgstr "Ongeldig dump formaat"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "fout bij het importeren van project data" msgstr "fout bij het importeren van project data"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "fout bij importeren van project attributenlijst" msgstr "fout bij importeren van project attributenlijst"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "fout bij importeren van standaard projectattributen waarden" msgstr "fout bij importeren van standaard projectattributen waarden"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "fout bij importeren eigen attributen" msgstr "fout bij importeren eigen attributen"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "fout bij importeren rollen" msgstr "fout bij importeren rollen"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "fout bij importeren lidmaatschappen" msgstr "fout bij importeren lidmaatschappen"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "fout bij importeren sprints" msgstr "fout bij importeren sprints"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "fout bij importeren wiki pagina's" msgstr "fout bij importeren wiki pagina's"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "fout bij importeren wiki links" msgstr "fout bij importeren wiki links"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "fout bij importeren issues" msgstr "fout bij importeren issues"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "fout bij importeren user stories" msgstr "fout bij importeren user stories"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "fout bij importeren taken" msgstr "fout bij importeren taken"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "fout bij importeren tags" msgstr "fout bij importeren tags"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "fout bij importeren tijdlijnen" msgstr "fout bij importeren tijdlijnen"
@ -783,7 +782,7 @@ msgstr ""
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "naam" msgstr "naam"
@ -1239,13 +1238,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Je hebt geen toestamming om dat te bekijken." msgstr "Je hebt geen toestamming om dat te bekijken."
@ -1275,7 +1274,7 @@ msgstr "eigenaar"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "project" msgstr "project"
@ -1314,7 +1313,7 @@ msgstr "is verouderd"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "volgorde" msgstr "volgorde"
@ -1596,7 +1595,7 @@ msgstr "Personen die dit leuk vinden"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "slug" msgstr "slug"
@ -2447,50 +2446,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Standaard opties" msgstr "Standaard opties"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Status van User story" msgstr "Status van User story"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Punten" msgstr "Punten"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Statussen van taken" msgstr "Statussen van taken"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Statussen van Issues" msgstr "Statussen van Issues"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Types van issue" msgstr "Types van issue"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Prioriteiten" msgstr "Prioriteiten"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Ernstniveaus" msgstr "Ernstniveaus"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Rollen" msgstr "Rollen"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Toekomstige sprint" msgstr "Toekomstige sprint"
@ -3365,7 +3386,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "toestemmingen" msgstr "toestemmingen"
@ -3381,14 +3402,6 @@ msgstr "Ongeldige gebruikersnaam. Probeer met een andere."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Gebruikersnaam of wachtwoord stemt niet overeen met gebruiker." msgstr "Gebruikersnaam of wachtwoord stemt niet overeen met gebruiker."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -10,10 +10,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Polish (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Polish (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/pl/)\n" "language/pl/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -190,7 +189,7 @@ msgstr ""
"jest uszkodzony." "jest uszkodzony."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -508,71 +507,71 @@ msgstr ""
" Komentarz: %(comment)s\n" " Komentarz: %(comment)s\n"
" " " "
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "Potrzeba conajmiej jednej roli" msgstr "Potrzeba conajmiej jednej roli"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Wymagany plik zrzutu" msgstr "Wymagany plik zrzutu"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Nieprawidłowy format zrzutu" msgstr "Nieprawidłowy format zrzutu"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "błąd w trakcie importu danych projektu" msgstr "błąd w trakcie importu danych projektu"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "błąd w trakcie importu atrybutów projektu" msgstr "błąd w trakcie importu atrybutów projektu"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "błąd w trakcie importu domyślnych atrybutów projektu" msgstr "błąd w trakcie importu domyślnych atrybutów projektu"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "błąd w trakcie importu niestandardowych atrybutów" msgstr "błąd w trakcie importu niestandardowych atrybutów"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "błąd w trakcie importu ról" msgstr "błąd w trakcie importu ról"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "błąd w trakcie importu członkostw" msgstr "błąd w trakcie importu członkostw"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "błąd w trakcie importu sprintów" msgstr "błąd w trakcie importu sprintów"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "błąd w trakcie importu stron Wiki" msgstr "błąd w trakcie importu stron Wiki"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "błąd w trakcie importu linków Wiki" msgstr "błąd w trakcie importu linków Wiki"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "błąd w trakcie importu zgłoszeń" msgstr "błąd w trakcie importu zgłoszeń"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "błąd w trakcie importu historyjek użytkownika" msgstr "błąd w trakcie importu historyjek użytkownika"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "błąd w trakcie importu zadań" msgstr "błąd w trakcie importu zadań"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "błąd w trakcie importu tagów" msgstr "błąd w trakcie importu tagów"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "błąd w trakcie importu osi czasu" msgstr "błąd w trakcie importu osi czasu"
@ -851,7 +850,7 @@ msgstr ""
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "nazwa" msgstr "nazwa"
@ -1347,13 +1346,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Nie masz uprawnień by to zobaczyć." msgstr "Nie masz uprawnień by to zobaczyć."
@ -1383,7 +1382,7 @@ msgstr "właściciel"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "projekt" msgstr "projekt"
@ -1422,7 +1421,7 @@ msgstr "jest przestarzałe"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "kolejność" msgstr "kolejność"
@ -1702,7 +1701,7 @@ msgstr ""
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "slug" msgstr "slug"
@ -2784,50 +2783,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Domyślne opcje" msgstr "Domyślne opcje"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Statusy historyjek użytkownika" msgstr "Statusy historyjek użytkownika"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Punkty" msgstr "Punkty"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Statusy zadań" msgstr "Statusy zadań"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Statusy zgłoszeń" msgstr "Statusy zgłoszeń"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Typu zgłoszeń" msgstr "Typu zgłoszeń"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Priorytety" msgstr "Priorytety"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Ważność" msgstr "Ważność"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Role" msgstr "Role"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Przyszły sprint" msgstr "Przyszły sprint"
@ -3736,7 +3757,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "uprawnienia" msgstr "uprawnienia"
@ -3752,14 +3773,6 @@ msgstr "Niepoprawna nazwa użytkownika. Spróbuj podać inną."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Nazwa użytkownika lub hasło są nieprawidłowe" msgstr "Nazwa użytkownika lub hasło są nieprawidłowe"
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -19,10 +19,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/taiga-agile-llc/" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/taiga-agile-llc/"
"taiga-back/language/pt_BR/)\n" "taiga-back/language/pt_BR/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -197,7 +196,7 @@ msgstr ""
"está corrompido." "está corrompido."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -516,71 +515,71 @@ msgstr ""
" Comentário: %(comment)s\n" " Comentário: %(comment)s\n"
" " " "
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "Nós precisamos de pelo menos uma função" msgstr "Nós precisamos de pelo menos uma função"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Necessário de arquivo de restauração" msgstr "Necessário de arquivo de restauração"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Formato de aquivo de restauração inválido" msgstr "Formato de aquivo de restauração inválido"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "erro ao importar informações de projeto" msgstr "erro ao importar informações de projeto"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "erro importando lista de atributos do projeto" msgstr "erro importando lista de atributos do projeto"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "erro importando valores de atributos do projeto padrão" msgstr "erro importando valores de atributos do projeto padrão"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "erro importando atributos personalizados" msgstr "erro importando atributos personalizados"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "erro importando funcões" msgstr "erro importando funcões"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "erro importando filiações" msgstr "erro importando filiações"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "erro importando sprints" msgstr "erro importando sprints"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "erro importando páginas wiki" msgstr "erro importando páginas wiki"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "erro importando wiki links" msgstr "erro importando wiki links"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "erro importando casos" msgstr "erro importando casos"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "erro importando user stories" msgstr "erro importando user stories"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "erro importando tarefas" msgstr "erro importando tarefas"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "erro importando tags" msgstr "erro importando tags"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "erro importando linha do tempo" msgstr "erro importando linha do tempo"
@ -858,7 +857,7 @@ msgstr "Autenticação necessária"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "Nome" msgstr "Nome"
@ -1353,13 +1352,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Você não tem permissão para ver isso" msgstr "Você não tem permissão para ver isso"
@ -1389,7 +1388,7 @@ msgstr "dono"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "projeto" msgstr "projeto"
@ -1428,7 +1427,7 @@ msgstr "está obsoleto"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "ordem" msgstr "ordem"
@ -1708,7 +1707,7 @@ msgstr "Curtidas"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "slug" msgstr "slug"
@ -2768,50 +2767,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Opções padrão" msgstr "Opções padrão"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Status de user story" msgstr "Status de user story"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Pontos" msgstr "Pontos"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Status de tarefas" msgstr "Status de tarefas"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Status de casos" msgstr "Status de casos"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Tipos de casos" msgstr "Tipos de casos"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Prioridades" msgstr "Prioridades"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Severidades" msgstr "Severidades"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Funções" msgstr "Funções"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Sprint futuro" msgstr "Sprint futuro"
@ -3715,7 +3736,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "permissões" msgstr "permissões"
@ -3731,14 +3752,6 @@ msgstr "Usuário inválido. Tente com um diferente."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Usuário ou senha não correspondem ao usuário" msgstr "Usuário ou senha não correspondem ao usuário"
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -15,10 +15,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Russian (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Russian (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/ru/)\n" "language/ru/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -200,7 +199,7 @@ msgstr ""
"изображение, либо не корректное изображение." "изображение, либо не корректное изображение."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -518,71 +517,71 @@ msgstr ""
" Комментарий: %(comment)s\n" " Комментарий: %(comment)s\n"
" " " "
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "Нам была нужна хотя бы одна роль" msgstr "Нам была нужна хотя бы одна роль"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Необходим дамп-файл" msgstr "Необходим дамп-файл"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Неправильный формат дампа" msgstr "Неправильный формат дампа"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "ошибка при импорте данных проекта" msgstr "ошибка при импорте данных проекта"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "ошибка при импорте списков свойств проекта" msgstr "ошибка при импорте списков свойств проекта"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "ошибка при импорте значений по умолчанию свойств проекта" msgstr "ошибка при импорте значений по умолчанию свойств проекта"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "ошибка при импорте пользовательских свойств" msgstr "ошибка при импорте пользовательских свойств"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "ошибка при импорте ролей" msgstr "ошибка при импорте ролей"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "ошибка при импорте членства" msgstr "ошибка при импорте членства"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "ошибка при импорте спринтов" msgstr "ошибка при импорте спринтов"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "ошибка при импорте вики-страниц" msgstr "ошибка при импорте вики-страниц"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "ошибка при импорте вики-ссылок" msgstr "ошибка при импорте вики-ссылок"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "ошибка при импорте запросов" msgstr "ошибка при импорте запросов"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "ошибка импорта историй от пользователей" msgstr "ошибка импорта историй от пользователей"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "ошибка импорта задач" msgstr "ошибка импорта задач"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "ошибка импорта тэгов" msgstr "ошибка импорта тэгов"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "ошибка импорта хронологии проекта" msgstr "ошибка импорта хронологии проекта"
@ -858,7 +857,7 @@ msgstr "Необходима аутентификация"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "имя" msgstr "имя"
@ -1354,13 +1353,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "У вас нет разрешения на просмотр." msgstr "У вас нет разрешения на просмотр."
@ -1390,7 +1389,7 @@ msgstr "владелец"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "проект" msgstr "проект"
@ -1429,7 +1428,7 @@ msgstr "устаревшее"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "порядок" msgstr "порядок"
@ -1713,7 +1712,7 @@ msgstr "Лайки"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "ссылочное имя" msgstr "ссылочное имя"
@ -2783,50 +2782,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Параметры по умолчанию" msgstr "Параметры по умолчанию"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Статусу пользовательских историй" msgstr "Статусу пользовательских историй"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Очки" msgstr "Очки"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Статусы задачи" msgstr "Статусы задачи"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Статусы запроса" msgstr "Статусы запроса"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Типы запроса" msgstr "Типы запроса"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Приоритеты" msgstr "Приоритеты"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Степени важности" msgstr "Степени важности"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Роли" msgstr "Роли"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Будущий спринт" msgstr "Будущий спринт"
@ -3730,7 +3751,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "разрешения" msgstr "разрешения"
@ -3746,14 +3767,6 @@ msgstr "Неверное имя пользователя. Попробуйте
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Имя пользователя или пароль не соответствуют пользователю." msgstr "Имя пользователя или пароль не соответствуют пользователю."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -8,10 +8,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Swedish (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Swedish (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/sv/)\n" "language/sv/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -189,7 +188,7 @@ msgstr ""
"eller en skadad bild." "eller en skadad bild."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -492,71 +491,71 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "Vi behöver minst en roll" msgstr "Vi behöver minst en roll"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "Behöver en hämtningsfil" msgstr "Behöver en hämtningsfil"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Invalid hämtningsfilformat" msgstr "Invalid hämtningsfilformat"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "fel vid import av projektdata" msgstr "fel vid import av projektdata"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "fel vid import av en lista på projektegenskaper" msgstr "fel vid import av en lista på projektegenskaper"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "fel vid import av standard projektegenskapsvärden" msgstr "fel vid import av standard projektegenskapsvärden"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "fel vid import av anpassade egenskaper" msgstr "fel vid import av anpassade egenskaper"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "fel vid importering av roller" msgstr "fel vid importering av roller"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "fel vid import av medlemskap" msgstr "fel vid import av medlemskap"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "felaktig import av sprintar" msgstr "felaktig import av sprintar"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "vel vid import av wiki-sidor" msgstr "vel vid import av wiki-sidor"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "fel vid import av wiki-länkar" msgstr "fel vid import av wiki-länkar"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "fel vid import av ärenden" msgstr "fel vid import av ärenden"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "fel vid import av användarhistorier" msgstr "fel vid import av användarhistorier"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "fel vid import av uppgifter" msgstr "fel vid import av uppgifter"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "fel vid importering av taggar" msgstr "fel vid importering av taggar"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "fel vid importering av tidslinje" msgstr "fel vid importering av tidslinje"
@ -746,7 +745,7 @@ msgstr "Verifiering krävs"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "namn" msgstr "namn"
@ -1194,13 +1193,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Du har inte behörighet att se det. " msgstr "Du har inte behörighet att se det. "
@ -1230,7 +1229,7 @@ msgstr "ägare"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "projekt" msgstr "projekt"
@ -1269,7 +1268,7 @@ msgstr "undviks"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "sortera" msgstr "sortera"
@ -1549,7 +1548,7 @@ msgstr "Gillar"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "slugg" msgstr "slugg"
@ -2370,50 +2369,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Standardval" msgstr "Standardval"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Status för användarhistorien" msgstr "Status för användarhistorien"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Poäng" msgstr "Poäng"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Status för uppgifter" msgstr "Status för uppgifter"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Status för ärenden" msgstr "Status för ärenden"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Ärendetyper" msgstr "Ärendetyper"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Prioritet" msgstr "Prioritet"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Allvarsgrad" msgstr "Allvarsgrad"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Roller" msgstr "Roller"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Framtidig sprint" msgstr "Framtidig sprint"
@ -3280,7 +3301,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "behörigheter" msgstr "behörigheter"
@ -3296,14 +3317,6 @@ msgstr "Felaktigt användarnamn. Försök med ett annat användarnamn."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Användarnamn eller lösenord passar inte." msgstr "Användarnamn eller lösenord passar inte."
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -10,9 +10,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-04-04 13:40+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: catborise <muhammetalisag@gmail.com>\n" "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"Language-Team: Turkish (http://www.transifex.com/taiga-agile-llc/taiga-back/" "Language-Team: Turkish (http://www.transifex.com/taiga-agile-llc/taiga-back/"
"language/tr/)\n" "language/tr/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -196,7 +196,7 @@ msgstr ""
"resim dosyası değil." "resim dosyası değil."
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -501,71 +501,71 @@ msgstr ""
"\n" "\n"
"Yorumlar: %(comment)s" "Yorumlar: %(comment)s"
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "En azından bir role ihtiyacımız var" msgstr "En azından bir role ihtiyacımız var"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "İhtiyaç duyulan döküm dosyası" msgstr "İhtiyaç duyulan döküm dosyası"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "Geçersiz döküm biçemi" msgstr "Geçersiz döküm biçemi"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "İçeri aktarılan proje verisinde hata" msgstr "İçeri aktarılan proje verisinde hata"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "proje öznitelikleri listesi içeriye aktarılırken hata oluştu" msgstr "proje öznitelikleri listesi içeriye aktarılırken hata oluştu"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "varsayılan proje öznitelikleri değerlerinin içeriye aktarımında hata" msgstr "varsayılan proje öznitelikleri değerlerinin içeriye aktarımında hata"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "özel öznitelikler içeri aktarılırken hata" msgstr "özel öznitelikler içeri aktarılırken hata"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "İçeri aktarılan rollerde hata" msgstr "İçeri aktarılan rollerde hata"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "İçeri aktarılan üyeliklerde hata" msgstr "İçeri aktarılan üyeliklerde hata"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "İçeri aktarılan sprintlerde hata" msgstr "İçeri aktarılan sprintlerde hata"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "İçeri aktarılan wiki sayfalarında hata" msgstr "İçeri aktarılan wiki sayfalarında hata"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "İçeri aktarılan wiki bağlantılarında hata" msgstr "İçeri aktarılan wiki bağlantılarında hata"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "İçeri aktarılan taleplerde hata" msgstr "İçeri aktarılan taleplerde hata"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "İçeri aktarılan kullanıcı hikayelerinde hata" msgstr "İçeri aktarılan kullanıcı hikayelerinde hata"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "İçeri aktarılan görevlerde hata" msgstr "İçeri aktarılan görevlerde hata"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "İçeri aktarılan etiketlerde hata" msgstr "İçeri aktarılan etiketlerde hata"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "zaman çizelgesi içeri aktarılırken hata" msgstr "zaman çizelgesi içeri aktarılırken hata"
@ -840,7 +840,7 @@ msgstr "Kimlik doğrulama gerekli"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "isim" msgstr "isim"
@ -1300,13 +1300,13 @@ msgstr "Kullanıcı mevcut değil"
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "Kullanıcı zaten proje üyesi durumunda" msgstr "Kullanıcı zaten proje üyesi durumunda"
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "Görebilmek için yetkiniz yok." msgstr "Görebilmek için yetkiniz yok."
@ -1336,7 +1336,7 @@ msgstr "sahip"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "proje" msgstr "proje"
@ -1375,7 +1375,7 @@ msgstr "kaldırıldı"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "sıra" msgstr "sıra"
@ -1655,7 +1655,7 @@ msgstr "Beğeniler"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "satır" msgstr "satır"
@ -2542,50 +2542,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "Varsayılan ayarlar" msgstr "Varsayılan ayarlar"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "Kullanıcı hikayelerinin durumları" msgstr "Kullanıcı hikayelerinin durumları"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "Puanlar" msgstr "Puanlar"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "Görevlerin durumları" msgstr "Görevlerin durumları"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "Taleplerin durumları" msgstr "Taleplerin durumları"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "Taleplerin tipleri" msgstr "Taleplerin tipleri"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "Öncelikler" msgstr "Öncelikler"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "Önem dereceleri" msgstr "Önem dereceleri"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "Roller" msgstr "Roller"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "Gelecek sprint" msgstr "Gelecek sprint"
@ -3447,7 +3469,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "izinler" msgstr "izinler"
@ -3463,14 +3485,6 @@ msgstr "Geçersiz kullanıcı adı. Farklı birşeyle yeniden deneyin."
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "Kullanıcı adı veya parola kullanıcıyla uyuşmuyor" msgstr "Kullanıcı adı veya parola kullanıcıyla uyuşmuyor"
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -11,10 +11,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: taiga-back\n" "Project-Id-Version: taiga-back\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-05 19:23+0200\n" "POT-Creation-Date: 2016-04-08 13:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-08 11:23+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Taiga Dev Team <support@taiga.io>\n"
"com>\n"
"Language-Team: Chinese Traditional (http://www.transifex.com/taiga-agile-llc/" "Language-Team: Chinese Traditional (http://www.transifex.com/taiga-agile-llc/"
"taiga-back/language/zh-Hant/)\n" "taiga-back/language/zh-Hant/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -183,7 +182,7 @@ msgid ""
msgstr "上傳有效圖片,你所上傳的檔案非圖檔或已損壞" msgstr "上傳有效圖片,你所上傳的檔案非圖檔或已損壞"
#: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209 #: taiga/base/api/mixins.py:255 taiga/base/exceptions.py:209
#: taiga/hooks/api.py:68 taiga/projects/api.py:641 #: taiga/hooks/api.py:68 taiga/projects/api.py:642
#: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58 #: taiga/projects/issues/api.py:233 taiga/projects/mixins/ordering.py:58
#: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174 #: taiga/projects/tasks/api.py:152 taiga/projects/tasks/api.py:174
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238 #: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
@ -499,71 +498,71 @@ msgstr ""
"\n" "\n"
"評論: %(comment)s" "評論: %(comment)s"
#: taiga/export_import/api.py:114 #: taiga/export_import/api.py:119
msgid "We needed at least one role" msgid "We needed at least one role"
msgstr "我們至少需要一個角色" msgstr "我們至少需要一個角色"
#: taiga/export_import/api.py:216 #: taiga/export_import/api.py:309
msgid "Needed dump file" msgid "Needed dump file"
msgstr "需要的堆存檔案" msgstr "需要的堆存檔案"
#: taiga/export_import/api.py:224 #: taiga/export_import/api.py:316
msgid "Invalid dump format" msgid "Invalid dump format"
msgstr "無效堆存格式" msgstr "無效堆存格式"
#: taiga/export_import/dump_service.py:106 #: taiga/export_import/dump_service.py:115
msgid "error importing project data" msgid "error importing project data"
msgstr "滙入重要專案資料出錯" msgstr "滙入重要專案資料出錯"
#: taiga/export_import/dump_service.py:119 #: taiga/export_import/dump_service.py:128
msgid "error importing lists of project attributes" msgid "error importing lists of project attributes"
msgstr "滙入標籤出錯" msgstr "滙入標籤出錯"
#: taiga/export_import/dump_service.py:124 #: taiga/export_import/dump_service.py:133
msgid "error importing default project attributes values" msgid "error importing default project attributes values"
msgstr "滙入預設專案屬性數值出錯" msgstr "滙入預設專案屬性數值出錯"
#: taiga/export_import/dump_service.py:134 #: taiga/export_import/dump_service.py:143
msgid "error importing custom attributes" msgid "error importing custom attributes"
msgstr "滙入客制性屬出錯" msgstr "滙入客制性屬出錯"
#: taiga/export_import/dump_service.py:139 #: taiga/export_import/dump_service.py:148
msgid "error importing roles" msgid "error importing roles"
msgstr "滙入角色出錯" msgstr "滙入角色出錯"
#: taiga/export_import/dump_service.py:154 #: taiga/export_import/dump_service.py:163
msgid "error importing memberships" msgid "error importing memberships"
msgstr "滙入成員資格出錯" msgstr "滙入成員資格出錯"
#: taiga/export_import/dump_service.py:159 #: taiga/export_import/dump_service.py:168
msgid "error importing sprints" msgid "error importing sprints"
msgstr "滙入衝刺任務出錯" msgstr "滙入衝刺任務出錯"
#: taiga/export_import/dump_service.py:164 #: taiga/export_import/dump_service.py:173
msgid "error importing wiki pages" msgid "error importing wiki pages"
msgstr "滙入維基頁出錯" msgstr "滙入維基頁出錯"
#: taiga/export_import/dump_service.py:169 #: taiga/export_import/dump_service.py:178
msgid "error importing wiki links" msgid "error importing wiki links"
msgstr "滙入維基連結出錯" msgstr "滙入維基連結出錯"
#: taiga/export_import/dump_service.py:174 #: taiga/export_import/dump_service.py:183
msgid "error importing issues" msgid "error importing issues"
msgstr "滙入問題出錯" msgstr "滙入問題出錯"
#: taiga/export_import/dump_service.py:179 #: taiga/export_import/dump_service.py:188
msgid "error importing user stories" msgid "error importing user stories"
msgstr "滙入使用者故事出錯" msgstr "滙入使用者故事出錯"
#: taiga/export_import/dump_service.py:184 #: taiga/export_import/dump_service.py:193
msgid "error importing tasks" msgid "error importing tasks"
msgstr "滙入任務出錯" msgstr "滙入任務出錯"
#: taiga/export_import/dump_service.py:189 #: taiga/export_import/dump_service.py:198
msgid "error importing tags" msgid "error importing tags"
msgstr "滙入標籤出錯" msgstr "滙入標籤出錯"
#: taiga/export_import/dump_service.py:193 #: taiga/export_import/dump_service.py:202
msgid "error importing timelines" msgid "error importing timelines"
msgstr "滙入時間軸出錯" msgstr "滙入時間軸出錯"
@ -838,7 +837,7 @@ msgstr "要求取得授權"
#: taiga/projects/models.py:536 taiga/projects/models.py:573 #: taiga/projects/models.py:536 taiga/projects/models.py:573
#: taiga/projects/models.py:596 taiga/projects/models.py:619 #: taiga/projects/models.py:596 taiga/projects/models.py:619
#: taiga/projects/models.py:654 taiga/projects/models.py:677 #: taiga/projects/models.py:654 taiga/projects/models.py:677
#: taiga/users/models.py:289 taiga/webhooks/models.py:28 #: taiga/users/models.py:292 taiga/webhooks/models.py:28
msgid "name" msgid "name"
msgstr "姓名" msgstr "姓名"
@ -1327,13 +1326,13 @@ msgstr ""
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr ""
#: taiga/projects/api.py:671 #: taiga/projects/api.py:672
msgid "" msgid ""
"The project must have an owner and at least one of the users must be an " "The project must have an owner and at least one of the users must be an "
"active admin" "active admin"
msgstr "" msgstr ""
#: taiga/projects/api.py:705 #: taiga/projects/api.py:706
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "您無觀看權限" msgstr "您無觀看權限"
@ -1363,7 +1362,7 @@ msgstr "所有者"
#: taiga/projects/notifications/models.py:73 #: taiga/projects/notifications/models.py:73
#: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42 #: taiga/projects/notifications/models.py:90 taiga/projects/tasks/models.py:42
#: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30 #: taiga/projects/userstories/models.py:64 taiga/projects/wiki/models.py:30
#: taiga/projects/wiki/models.py:68 taiga/users/models.py:302 #: taiga/projects/wiki/models.py:68 taiga/users/models.py:305
msgid "project" msgid "project"
msgstr "專案" msgstr "專案"
@ -1402,7 +1401,7 @@ msgstr "棄用"
#: taiga/projects/models.py:513 taiga/projects/models.py:540 #: taiga/projects/models.py:513 taiga/projects/models.py:540
#: taiga/projects/models.py:575 taiga/projects/models.py:598 #: taiga/projects/models.py:575 taiga/projects/models.py:598
#: taiga/projects/models.py:623 taiga/projects/models.py:656 #: taiga/projects/models.py:623 taiga/projects/models.py:656
#: taiga/projects/wiki/models.py:73 taiga/users/models.py:297 #: taiga/projects/wiki/models.py:73 taiga/users/models.py:300
msgid "order" msgid "order"
msgstr "次序" msgstr "次序"
@ -1682,7 +1681,7 @@ msgstr "喜歡"
#: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148 #: taiga/projects/milestones/models.py:41 taiga/projects/models.py:148
#: taiga/projects/models.py:474 taiga/projects/models.py:538 #: taiga/projects/models.py:474 taiga/projects/models.py:538
#: taiga/projects/models.py:621 taiga/projects/models.py:679 #: taiga/projects/models.py:621 taiga/projects/models.py:679
#: taiga/projects/wiki/models.py:32 taiga/users/models.py:291 #: taiga/projects/wiki/models.py:32 taiga/users/models.py:294
msgid "slug" msgid "slug"
msgstr "代稱" msgstr "代稱"
@ -2753,50 +2752,72 @@ msgstr ""
msgid "At least one user must be an active admin for this project." msgid "At least one user must be an active admin for this project."
msgstr "" msgstr ""
#: taiga/projects/serializers.py:394 #: taiga/projects/serializers.py:392
msgid "Default options" msgid "Default options"
msgstr "預設選項" msgstr "預設選項"
#: taiga/projects/serializers.py:395 #: taiga/projects/serializers.py:393
msgid "User story's statuses" msgid "User story's statuses"
msgstr "使用者故事狀態" msgstr "使用者故事狀態"
#: taiga/projects/serializers.py:396 #: taiga/projects/serializers.py:394
msgid "Points" msgid "Points"
msgstr "點數" msgstr "點數"
#: taiga/projects/serializers.py:397 #: taiga/projects/serializers.py:395
msgid "Task's statuses" msgid "Task's statuses"
msgstr "任務狀態" msgstr "任務狀態"
#: taiga/projects/serializers.py:398 #: taiga/projects/serializers.py:396
msgid "Issue's statuses" msgid "Issue's statuses"
msgstr "問題狀態" msgstr "問題狀態"
#: taiga/projects/serializers.py:399 #: taiga/projects/serializers.py:397
msgid "Issue's types" msgid "Issue's types"
msgstr "問題類型" msgstr "問題類型"
#: taiga/projects/serializers.py:400 #: taiga/projects/serializers.py:398
msgid "Priorities" msgid "Priorities"
msgstr "優先性" msgstr "優先性"
#: taiga/projects/serializers.py:401 #: taiga/projects/serializers.py:399
msgid "Severities" msgid "Severities"
msgstr "嚴重性" msgstr "嚴重性"
#: taiga/projects/serializers.py:402 #: taiga/projects/serializers.py:400
msgid "Roles" msgid "Roles"
msgstr "角色" msgstr "角色"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625 #: taiga/projects/services/members.py:116
msgid "You have reached your current limit of memberships for private projects" msgid "You have reached your current limit of memberships for private projects"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634 #: taiga/projects/services/members.py:120
msgid "You have reached your current limit of memberships for public projects" msgid "You have reached your current limit of memberships for public projects"
msgstr "" msgstr ""
#: taiga/projects/services/projects.py:69
#: taiga/projects/services/projects.py:106 taiga/users/services.py:582
msgid "You can't have more private projects"
msgstr ""
#: taiga/projects/services/projects.py:73
#: taiga/projects/services/projects.py:110 taiga/users/services.py:585
msgid ""
"This project reaches your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/projects.py:77
#: taiga/projects/services/projects.py:114 taiga/users/services.py:589
msgid "You can't have more public projects"
msgstr ""
#: taiga/projects/services/projects.py:81
#: taiga/projects/services/projects.py:118 taiga/users/services.py:592
msgid ""
"This project reaches your current limit of memberships for public projects"
msgstr ""
#: taiga/projects/services/stats.py:196 #: taiga/projects/services/stats.py:196
msgid "Future sprint" msgid "Future sprint"
msgstr "未來之衝刺" msgstr "未來之衝刺"
@ -3685,7 +3706,7 @@ msgstr ""
msgid "max number of memberships for each owned public project" msgid "max number of memberships for each owned public project"
msgstr "" msgstr ""
#: taiga/users/models.py:294 #: taiga/users/models.py:297
msgid "permissions" msgid "permissions"
msgstr "許可" msgstr "許可"
@ -3701,14 +3722,6 @@ msgstr "無效使用者名稱,請重試其它名稱 "
msgid "Username or password does not matches user." msgid "Username or password does not matches user."
msgstr "用戶名稱與密碼不符" msgstr "用戶名稱與密碼不符"
#: taiga/users/services.py:602
msgid "You can't have more private projects"
msgstr ""
#: taiga/users/services.py:612
msgid "You can't have more public projects"
msgstr ""
#: taiga/users/templates/emails/change_email-body-html.jinja:4 #: taiga/users/templates/emails/change_email-body-html.jinja:4
#, python-format #, python-format
msgid "" msgid ""

View File

@ -378,13 +378,13 @@ class ProjectViewSet(LikedResourceMixin, HistoryResourceMixin,
project = self.get_object() project = self.get_object()
self.check_permissions(request, "transfer_accept", project) self.check_permissions(request, "transfer_accept", project)
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project( (can_transfer, error_message) = services.check_if_project_can_be_transfered(
request.user,
project, project,
request.user,
) )
if not enough_slots: if not can_transfer:
members = project.memberships.count() members = project.memberships.count()
raise exc.NotEnoughSlotsForProject(project.is_private, members, not_enough_slots_error) raise exc.NotEnoughSlotsForProject(project.is_private, members, error_message)
reason = request.DATA.get('reason', None) reason = request.DATA.get('reason', None)
services.accept_project_transfer(project, request.user, token, reason) services.accept_project_transfer(project, request.user, token, reason)
@ -422,12 +422,13 @@ class ProjectViewSet(LikedResourceMixin, HistoryResourceMixin,
obj.owner = self.request.user obj.owner = self.request.user
obj.template = self.request.QUERY_PARAMS.get('template', None) obj.template = self.request.QUERY_PARAMS.get('template', None)
# Validate if the owner have enought slots to create or update the project if not obj.id or self.get_object().is_private != obj.is_private:
# TODO: Move to the ProjectAdminSerializer # Validate if the owner have enought slots to create the project
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project(obj.owner, obj) # or if you are changing the privacity
if not enough_slots: (can_create_or_update, error_message) = services.check_if_project_can_be_created_or_updated(obj)
members = max(obj.memberships.count(), 1) if not can_create_or_update:
raise exc.NotEnoughSlotsForProject(obj.is_private, members, not_enough_slots_error) members = max(obj.memberships.count(), 1)
raise exc.NotEnoughSlotsForProject(obj.is_private, members, error_message)
self._set_base_permissions(obj) self._set_base_permissions(obj)
super().pre_save(obj) super().pre_save(obj)

View File

@ -373,8 +373,6 @@ class ProjectDetailAdminSerializer(ProjectDetailSerializer):
return services.get_max_memberships_for_project(obj) return services.get_max_memberships_for_project(obj)
###################################################### ######################################################
## Liked ## Liked
###################################################### ######################################################

View File

@ -39,17 +39,19 @@ from .members import create_members_in_bulk
from .members import get_members_from_bulk from .members import get_members_from_bulk
from .members import remove_user_from_project, project_has_valid_admins, can_user_leave_project from .members import remove_user_from_project, project_has_valid_admins, can_user_leave_project
from .members import get_max_memberships_for_project, get_total_project_memberships from .members import get_max_memberships_for_project, get_total_project_memberships
from .members import check_if_project_privacity_can_be_changed
from .members import check_if_project_can_have_more_memberships from .members import check_if_project_can_have_more_memberships
from .modules_config import get_modules_config from .modules_config import get_modules_config
from .projects import check_if_project_privacity_can_be_changed
from .projects import check_if_project_can_be_created_or_updated
from .projects import check_if_project_can_be_transfered
from .stats import get_stats_for_project_issues from .stats import get_stats_for_project_issues
from .stats import get_stats_for_project from .stats import get_stats_for_project
from .stats import get_member_stats_for_project from .stats import get_member_stats_for_project
from .tags_colors import update_project_tags_colors_handler from .tags_colors import update_project_tags_colors_handler
from .modules_config import get_modules_config
from .transfer import request_project_transfer, start_project_transfer from .transfer import request_project_transfer, start_project_transfer
from .transfer import accept_project_transfer, reject_project_transfer from .transfer import accept_project_transfer, reject_project_transfer

View File

@ -102,45 +102,14 @@ def get_total_project_memberships(project):
return project.memberships.count() return project.memberships.count()
ERROR_MAX_PUBLIC_PROJECTS_MEMBERSHIPS = 'max_public_projects_memberships' def check_if_project_can_have_more_memberships(project, total_new_memberships):
ERROR_MAX_PRIVATE_PROJECTS_MEMBERSHIPS = 'max_private_projects_memberships' """Return if a project can have more n new memberships.
ERROR_MAX_PUBLIC_PROJECTS = 'max_public_projects'
ERROR_MAX_PRIVATE_PROJECTS = 'max_private_projects'
def check_if_project_privacity_can_be_changed(project):
"""Return if the project privacity can be changed from private to public or viceversa.
:param project: A project object. :param project: A project object.
:param total_new_memberships: the total of new memberships to add (int).
:return: True if it can be changed or False if can't. :return: {bool, error_mesage} return a tuple (can add new members?, error message).
""" """
if project.is_private:
current_memberships = project.memberships.count()
max_memberships = project.owner.max_memberships_public_projects
error_members_exceeded = ERROR_MAX_PUBLIC_PROJECTS_MEMBERSHIPS
current_projects = project.owner.owned_projects.filter(is_private=False).count()
max_projects = project.owner.max_public_projects
error_project_exceeded = ERROR_MAX_PUBLIC_PROJECTS
else:
current_memberships = project.memberships.count()
max_memberships = project.owner.max_memberships_private_projects
error_members_exceeded = ERROR_MAX_PRIVATE_PROJECTS_MEMBERSHIPS
current_projects = project.owner.owned_projects.filter(is_private=True).count()
max_projects = project.owner.max_private_projects
error_project_exceeded = ERROR_MAX_PRIVATE_PROJECTS
if max_memberships is not None and current_memberships > max_memberships:
return {'can_be_updated': False, 'reason': error_members_exceeded}
if max_projects is not None and current_projects >= max_projects:
return {'can_be_updated': False, 'reason': error_project_exceeded}
return {'can_be_updated': True, 'reason': None}
def check_if_project_can_have_more_memberships(project, total_new_memberships):
if project.is_private: if project.is_private:
total_memberships = project.memberships.count() + total_new_memberships total_memberships = project.memberships.count() + total_new_memberships
max_memberships = project.owner.max_memberships_private_projects max_memberships = project.owner.max_memberships_private_projects

View File

@ -0,0 +1,126 @@
# Copyright (C) 2014-2016 Andrey Antukh <niwi@niwi.nz>
# Copyright (C) 2014-2016 Jesús Espino <jespinog@gmail.com>
# Copyright (C) 2014-2016 David Barragán <bameda@dbarragan.com>
# Copyright (C) 2014-2016 Alejandro Alonso <alejandro.alonso@kaleidos.net>
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.utils.translation import ugettext as _
ERROR_MAX_PUBLIC_PROJECTS_MEMBERSHIPS = 'max_public_projects_memberships'
ERROR_MAX_PRIVATE_PROJECTS_MEMBERSHIPS = 'max_private_projects_memberships'
ERROR_MAX_PUBLIC_PROJECTS = 'max_public_projects'
ERROR_MAX_PRIVATE_PROJECTS = 'max_private_projects'
def check_if_project_privacity_can_be_changed(project):
"""Return if the project privacity can be changed from private to public or viceversa.
:param project: A project object.
:return: A dict like this {'can_be_updated': bool, 'reason': error message}.
"""
if project.is_private:
current_memberships = project.memberships.count()
max_memberships = project.owner.max_memberships_public_projects
error_memberships_exceeded = ERROR_MAX_PUBLIC_PROJECTS_MEMBERSHIPS
current_projects = project.owner.owned_projects.filter(is_private=False).count()
max_projects = project.owner.max_public_projects
error_project_exceeded = ERROR_MAX_PUBLIC_PROJECTS
else:
current_memberships = project.memberships.count()
max_memberships = project.owner.max_memberships_private_projects
error_memberships_exceeded = ERROR_MAX_PRIVATE_PROJECTS_MEMBERSHIPS
current_projects = project.owner.owned_projects.filter(is_private=True).count()
max_projects = project.owner.max_private_projects
error_project_exceeded = ERROR_MAX_PRIVATE_PROJECTS
if max_memberships is not None and current_memberships > max_memberships:
return {'can_be_updated': False, 'reason': error_memberships_exceeded}
if max_projects is not None and current_projects >= max_projects:
return {'can_be_updated': False, 'reason': error_project_exceeded}
return {'can_be_updated': True, 'reason': None}
def check_if_project_can_be_created_or_updated(project):
"""Return if the project can be create or update (the privacity).
:param project: A project object.
:return: {bool, error_mesage} return a tuple (can be created or updated, error message).
"""
if project.is_private:
current_projects = project.owner.owned_projects.filter(is_private=True).count()
max_projects = project.owner.max_private_projects
error_project_exceeded = _("You can't have more private projects")
current_memberships = project.memberships.count() or 1
max_memberships = project.owner.max_memberships_private_projects
error_memberships_exceeded = _("This project reaches your current limit of memberships for private projects")
else:
current_projects = project.owner.owned_projects.filter(is_private=False).count()
max_projects = project.owner.max_public_projects
error_project_exceeded = _("You can't have more public projects")
current_memberships = project.memberships.count() or 1
max_memberships = project.owner.max_memberships_public_projects
error_memberships_exceeded = _("This project reaches your current limit of memberships for public projects")
if max_projects is not None and current_projects >= max_projects:
return (False, error_project_exceeded)
if max_memberships is not None and current_memberships > max_memberships:
return (False, error_memberships_exceeded)
return (True, None)
def check_if_project_can_be_transfered(project, new_owner):
"""Return if the project can be transfered to another member.
:param project: A project object.
:param new_owner: The new owner.
:return: {bool, error_mesage} return a tuple (can be transfered?, error message).
"""
if project.owner == new_owner:
return (True, None)
if project.is_private:
current_projects = new_owner.owned_projects.filter(is_private=True).count()
max_projects = new_owner.max_private_projects
error_project_exceeded = _("You can't have more private projects")
current_memberships = project.memberships.count()
max_memberships = new_owner.max_memberships_private_projects
error_memberships_exceeded = _("This project reaches your current limit of memberships for private projects")
else:
current_projects = new_owner.owned_projects.filter(is_private=False).count()
max_projects = new_owner.max_public_projects
error_project_exceeded = _("You can't have more public projects")
current_memberships = project.memberships.count()
max_memberships = new_owner.max_memberships_public_projects
error_memberships_exceeded = _("This project reaches your current limit of memberships for public projects")
if max_projects is not None and current_projects >= max_projects:
return (False, error_project_exceeded)
if max_memberships is not None and current_memberships > max_memberships:
return (False, error_memberships_exceeded)
return (True, None)

View File

@ -575,60 +575,26 @@ def get_voted_list(for_user, from_user, type=None, q=None):
] ]
def has_available_slot_for_project(user, project, new_members=0): def has_available_slot_for_import_new_project(owner, is_private, total_memberships):
# TODO: Refactor: Create one service for every type of action and move to project services if is_private:
# current_projects = owner.owned_projects.filter(is_private=True).count()
# - has_available_slot_to_create_new_project() max_projects = owner.max_private_projects
# - has_available_slot_to_update_this_project() error_project_exceeded = _("You can't have more private projects")
# - has_available_slot_to_transfer_this_project()
# - has_available_slot_to_import_this_project()
# - has_available_slot_to_add_members_to_this_project()
(enough, error) = _has_available_slot_for_project_type(user, project)
if not enough:
return (enough, error)
return _has_available_slot_for_project_members(user, project, new_members)
def _has_available_slot_for_project_type(user, project):
if project.is_private:
if user.max_private_projects is None:
return (True, None)
current_private_projects = user.owned_projects.filter(is_private=True).exclude(id=project.id).count()
if current_private_projects < user.max_private_projects:
return (True, None)
return (False, _("You can't have more private projects"))
max_memberships = owner.max_memberships_private_projects
error_memberships_exceeded = _("This project reaches your current limit of memberships for private projects")
else: else:
if user.max_public_projects is None: current_projects = owner.owned_projects.filter(is_private=False).count()
return (True, None) max_projects = owner.max_public_projects
error_project_exceeded = _("You can't have more public projects")
current_public_project = user.owned_projects.filter(is_private=False).exclude(id=project.id).count() max_memberships = owner.max_memberships_public_projects
if current_public_project < user.max_public_projects: error_memberships_exceeded = _("This project reaches your current limit of memberships for public projects")
return (True, None)
return (False, _("You can't have more public projects")) if max_projects is not None and current_projects >= max_projects:
return (False, error_project_exceeded)
if max_memberships is not None and total_memberships > max_memberships:
return (False, error_memberships_exceeded)
def _has_available_slot_for_project_members(user, project, new_members): return (True, None)
current_memberships = max(project.memberships.count(), 1)
if project.is_private:
if user.max_memberships_private_projects is None:
return (True, None)
if current_memberships + new_members <= user.max_memberships_private_projects:
return (True, None)
return (False, _("You have reached your current limit of memberships for private projects"))
else:
if user.max_memberships_public_projects is None:
return (True, None)
if current_memberships + new_members <= user.max_memberships_public_projects:
return (True, None)
return (False, _("You have reached your current limit of memberships for public projects"))

View File

@ -1061,7 +1061,7 @@ def test_dict_to_project_with_no_members_private_project_slots_available(client)
with pytest.raises(TaigaImportError) as excinfo: with pytest.raises(TaigaImportError) as excinfo:
project = dict_to_project(data, owner=user) project = dict_to_project(data, owner=user)
assert "reached your current limit of memberships for private" in str(excinfo.value) assert "reaches your current limit of memberships for private" in str(excinfo.value)
def test_dict_to_project_with_no_members_public_project_slots_available(client): def test_dict_to_project_with_no_members_public_project_slots_available(client):
@ -1096,7 +1096,7 @@ def test_dict_to_project_with_no_members_public_project_slots_available(client):
with pytest.raises(TaigaImportError) as excinfo: with pytest.raises(TaigaImportError) as excinfo:
project = dict_to_project(data, owner=user) project = dict_to_project(data, owner=user)
assert "reached your current limit of memberships for public" in str(excinfo.value) assert "reaches your current limit of memberships for public" in str(excinfo.value)
def test_invalid_dump_import(client): def test_invalid_dump_import(client):
@ -1322,7 +1322,7 @@ def test_valid_dump_import_without_enough_membership_private_project_slots_one_p
response = client.post(url, {'dump': data}) response = client.post(url, {'dump': data})
assert response.status_code == 400 assert response.status_code == 400
assert "reached your current limit of memberships for private" in response.data["_error_message"] assert "reaches your current limit of memberships for private" in response.data["_error_message"]
assert Project.objects.filter(slug="project-without-memberships-slots").count() == 0 assert Project.objects.filter(slug="project-without-memberships-slots").count() == 0
@ -1369,7 +1369,7 @@ def test_valid_dump_import_without_enough_membership_public_project_slots_one_pr
response = client.post(url, {'dump': data}) response = client.post(url, {'dump': data})
assert response.status_code == 400 assert response.status_code == 400
assert "reached your current limit of memberships for public" in response.data["_error_message"] assert "reaches your current limit of memberships for public" in response.data["_error_message"]
assert Project.objects.filter(slug="project-without-memberships-slots").count() == 0 assert Project.objects.filter(slug="project-without-memberships-slots").count() == 0

View File

@ -1423,10 +1423,10 @@ def test_project_transfer_validate_token_from_no_admin_member_with_valid_token(c
#################################################################################### ####################################################################################
# Test taiga.projects.services.members.check_if_project_privacity_can_be_changed # Test taiga.projects.services.projects.check_if_project_privacity_can_be_changed
#################################################################################### ####################################################################################
from taiga.projects.services.members import ( from taiga.projects.services.projects import (
check_if_project_privacity_can_be_changed, check_if_project_privacity_can_be_changed,
ERROR_MAX_PUBLIC_PROJECTS_MEMBERSHIPS, ERROR_MAX_PUBLIC_PROJECTS_MEMBERSHIPS,
ERROR_MAX_PUBLIC_PROJECTS, ERROR_MAX_PUBLIC_PROJECTS,