[Backport] Fix issue #4061: Invalid error when try to add more memberships

remotes/origin/issue/4795/notification_even_they_are_disabled
David Barragán Merino 2016-04-05 18:32:35 +02:00
parent 1f6382a09e
commit 472b8df982
17 changed files with 230 additions and 199 deletions

View File

@ -9,7 +9,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -185,7 +185,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1176,13 +1176,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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çò."
@ -2394,6 +2394,14 @@ msgstr "Severitats"
msgid "Roles" msgid "Roles"
msgstr "Rols" msgstr "Rols"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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 ""
@ -3287,14 +3295,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +17,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -215,7 +215,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1366,13 +1366,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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"
@ -2866,6 +2866,14 @@ msgstr "Gewichtung"
msgid "Roles" msgid "Roles"
msgstr "Rollen" msgstr "Rollen"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3812,14 +3820,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19: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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "" msgstr ""
@ -2360,6 +2360,14 @@ msgstr ""
msgid "Roles" msgid "Roles"
msgstr "" msgstr ""
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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 ""
@ -3230,14 +3238,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +16,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -202,7 +202,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1346,7 +1346,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:668 #: taiga/projects/api.py:671
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 +1354,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:708 #: taiga/projects/api.py:705
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."
@ -2801,6 +2801,14 @@ msgstr "Gravedades"
msgid "Roles" msgid "Roles"
msgstr "Roles" msgstr "Roles"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3750,14 +3758,6 @@ msgstr "No puedes tener más proyectos privados"
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "No puedes tener más proyectos públicos" msgstr "No puedes tener más proyectos públicos"
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +9,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -187,7 +187,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1305,13 +1305,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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ä."
@ -2763,6 +2763,14 @@ msgstr "Vakavuudet"
msgid "Roles" msgid "Roles"
msgstr "Roolit" msgstr "Roolit"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3688,14 +3696,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +22,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -211,7 +211,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1318,13 +1318,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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"
@ -2560,6 +2560,14 @@ msgstr "Sévérités"
msgid "Roles" msgid "Roles"
msgstr "Rôles" msgstr "Rôles"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3476,14 +3484,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +14,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -196,7 +196,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1439,13 +1439,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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."
@ -3038,6 +3038,14 @@ msgstr "Criticità"
msgid "Roles" msgid "Roles"
msgstr "Ruoli" msgstr "Ruoli"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3988,14 +3996,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +9,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -196,7 +196,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1239,13 +1239,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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."
@ -2483,6 +2483,14 @@ msgstr "Ernstniveaus"
msgid "Roles" msgid "Roles"
msgstr "Rollen" msgstr "Rollen"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3381,14 +3389,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +10,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -190,7 +190,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1347,13 +1347,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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ć."
@ -2820,6 +2820,14 @@ msgstr "Ważność"
msgid "Roles" msgid "Roles"
msgstr "Role" msgstr "Role"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3752,14 +3760,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +19,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -197,7 +197,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1353,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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"
@ -2804,6 +2804,14 @@ msgstr "Severidades"
msgid "Roles" msgid "Roles"
msgstr "Funções" msgstr "Funções"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3731,14 +3739,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +15,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -200,7 +200,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1354,13 +1354,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "У вас нет разрешения на просмотр." msgstr "У вас нет разрешения на просмотр."
@ -2819,6 +2819,14 @@ msgstr "Степени важности"
msgid "Roles" msgid "Roles"
msgstr "Роли" msgstr "Роли"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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 "Будущий спринт"
@ -3746,14 +3754,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +8,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -189,7 +189,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1194,13 +1194,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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. "
@ -2406,6 +2406,14 @@ msgstr "Allvarsgrad"
msgid "Roles" msgid "Roles"
msgstr "Roller" msgstr "Roller"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3296,14 +3304,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-04-04 13:40+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: catborise <muhammetalisag@gmail.com>\n"
"com>\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"
@ -197,13 +196,13 @@ 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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
#: taiga/webhooks/api.py:67 #: taiga/webhooks/api.py:67
msgid "Blocked element" msgid "Blocked element"
msgstr "" msgstr "Engellenmiş nesne"
#: taiga/base/api/pagination.py:213 #: taiga/base/api/pagination.py:213
msgid "Page is not 'last', nor can it be converted to an int." msgid "Page is not 'last', nor can it be converted to an int."
@ -355,7 +354,7 @@ msgstr "Ön şart hatası"
#: taiga/base/exceptions.py:217 #: taiga/base/exceptions.py:217
msgid "No room left for more projects." msgid "No room left for more projects."
msgstr "" msgstr "Daha fazla proje için yer kalmadı."
#: taiga/base/filters.py:79 taiga/base/filters.py:444 #: taiga/base/filters.py:79 taiga/base/filters.py:444
msgid "Error in filter params types." msgid "Error in filter params types."
@ -1291,23 +1290,23 @@ msgstr "Geçersiz şablon tanımı"
#: taiga/projects/api.py:356 #: taiga/projects/api.py:356
msgid "Invalid user id" msgid "Invalid user id"
msgstr "" msgstr "Geçersiz kullanıcı id"
#: taiga/projects/api.py:362 #: taiga/projects/api.py:362
msgid "The user doesn't exist" msgid "The user doesn't exist"
msgstr "" msgstr "Kullanıcı mevcut değil"
#: taiga/projects/api.py:366 #: taiga/projects/api.py:366
msgid "The user must be already a project member" msgid "The user must be already a project member"
msgstr "" msgstr "Kullanıcı zaten proje üyesi durumunda"
#: taiga/projects/api.py:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
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."
@ -1406,7 +1405,7 @@ msgstr ""
#: taiga/projects/choices.py:34 #: taiga/projects/choices.py:34
msgid "This project is blocked because the owner left" msgid "This project is blocked because the owner left"
msgstr "" msgstr "Yetkili kalmadığı için proje bloklandı"
#: taiga/projects/custom_attributes/choices.py:27 #: taiga/projects/custom_attributes/choices.py:27
msgid "Text" msgid "Text"
@ -1422,7 +1421,7 @@ msgstr "Tarih"
#: taiga/projects/custom_attributes/choices.py:30 #: taiga/projects/custom_attributes/choices.py:30
msgid "Url" msgid "Url"
msgstr "" msgstr "Url"
#: taiga/projects/custom_attributes/models.py:39 #: taiga/projects/custom_attributes/models.py:39
#: taiga/projects/issues/models.py:47 #: taiga/projects/issues/models.py:47
@ -1828,7 +1827,7 @@ msgstr ""
#: taiga/projects/models.py:225 #: taiga/projects/models.py:225
msgid "blocked code" msgid "blocked code"
msgstr "" msgstr "engellenmiş kod"
#: taiga/projects/models.py:229 taiga/projects/notifications/models.py:65 #: taiga/projects/models.py:229 taiga/projects/notifications/models.py:65
msgid "updated date time" msgid "updated date time"
@ -2579,6 +2578,14 @@ msgstr "Önem dereceleri"
msgid "Roles" msgid "Roles"
msgstr "Roller" msgstr "Roller"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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"
@ -3464,14 +3471,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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,7 +11,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-01 11:09+0200\n" "POT-Creation-Date: 2016-04-05 19:23+0200\n"
"PO-Revision-Date: 2016-03-30 10:59+0000\n" "PO-Revision-Date: 2016-03-30 10:59+0000\n"
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail." "Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
"com>\n" "com>\n"
@ -183,7 +183,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:629 #: taiga/hooks/api.py:68 taiga/projects/api.py:641
#: 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
@ -1327,13 +1327,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:668 #: taiga/projects/api.py:671
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:708 #: taiga/projects/api.py:705
msgid "You don't have permisions to see that." msgid "You don't have permisions to see that."
msgstr "您無觀看權限" msgstr "您無觀看權限"
@ -2789,6 +2789,14 @@ msgstr "嚴重性"
msgid "Roles" msgid "Roles"
msgstr "角色" msgstr "角色"
#: taiga/projects/services/members.py:147 taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/projects/services/members.py:151 taiga/users/services.py:634
msgid "You have reached 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 "未來之衝刺"
@ -3701,14 +3709,6 @@ msgstr ""
msgid "You can't have more public projects" msgid "You can't have more public projects"
msgstr "" msgstr ""
#: taiga/users/services.py:625
msgid "You have reached your current limit of memberships for private projects"
msgstr ""
#: taiga/users/services.py:634
msgid "You have reached your current limit of memberships for 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

@ -615,6 +615,18 @@ class MembershipViewSet(BlockedByProjectMixin, ModelCrudViewSet):
else: else:
return self.serializer_class return self.serializer_class
def _check_if_project_can_have_more_memberships(self, project, total_new_memberships):
(can_add_memberships, error_type) = services.check_if_project_can_have_more_memberships(
project,
total_new_memberships
)
if not can_add_memberships:
raise exc.NotEnoughSlotsForProject(
project.is_private,
total_new_memberships,
error_type
)
@list_route(methods=["POST"]) @list_route(methods=["POST"])
def bulk_create(self, request, **kwargs): def bulk_create(self, request, **kwargs):
serializer = serializers.MembersBulkSerializer(data=request.DATA) serializer = serializers.MembersBulkSerializer(data=request.DATA)
@ -628,18 +640,9 @@ class MembershipViewSet(BlockedByProjectMixin, ModelCrudViewSet):
if project.blocked_code is not None: if project.blocked_code is not None:
raise exc.Blocked(_("Blocked element")) raise exc.Blocked(_("Blocked element"))
# TODO: this should be moved to main exception handler instead
# of handling explicit exception catchin here.
if "bulk_memberships" in data and isinstance(data["bulk_memberships"], list): if "bulk_memberships" in data and isinstance(data["bulk_memberships"], list):
members = len(data["bulk_memberships"]) total_new_memberships = len(data["bulk_memberships"])
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project( self._check_if_project_can_have_more_memberships(project, total_new_memberships)
project.owner,
project,
members
)
if not enough_slots:
raise exc.NotEnoughSlotsForProject(project.is_private, members, not_enough_slots_error)
try: try:
members = services.create_members_in_bulk(data["bulk_memberships"], members = services.create_members_in_bulk(data["bulk_memberships"],
@ -665,18 +668,12 @@ class MembershipViewSet(BlockedByProjectMixin, ModelCrudViewSet):
def pre_delete(self, obj): def pre_delete(self, obj):
if obj.user is not None and not services.can_user_leave_project(obj.user, obj.project): if obj.user is not None and not services.can_user_leave_project(obj.user, obj.project):
raise exc.BadRequest(_("The project must have an owner and at least one of the users must be an active admin")) raise exc.BadRequest(_("The project must have an owner and at least one of the users "
"must be an active admin"))
def pre_save(self, obj): def pre_save(self, obj):
if not obj.id: if not obj.id:
members = 1 self._check_if_project_can_have_more_memberships(obj.project, 1)
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project(
self.request.user,
obj.project,
members
)
if not enough_slots:
raise exc.NotEnoughSlotsForProject(obj.project.is_private, members, not_enough_slots_error)
if not obj.token: if not obj.token:
obj.token = str(uuid.uuid1()) obj.token = str(uuid.uuid1())

View File

@ -40,6 +40,7 @@ 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_privacity_can_be_changed
from .members import check_if_project_can_have_more_memberships
from .modules_config import get_modules_config from .modules_config import get_modules_config

View File

@ -1,4 +1,22 @@
# 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 taiga.base.utils import db, text from taiga.base.utils import db, text
from django.utils.translation import ugettext as _
from .. import models from .. import models
@ -120,3 +138,19 @@ def check_if_project_privacity_can_be_changed(project):
return {'can_be_updated': False, 'reason': error_project_exceeded} return {'can_be_updated': False, 'reason': error_project_exceeded}
return {'can_be_updated': True, 'reason': None} return {'can_be_updated': True, 'reason': None}
def check_if_project_can_have_more_memberships(project, total_new_memberships):
if project.is_private:
total_memberships = project.memberships.count() + total_new_memberships
max_memberships = project.owner.max_memberships_private_projects
error_members_exceeded = _("You have reached your current limit of memberships for private projects")
else:
total_memberships = project.memberships.count() + total_new_memberships
max_memberships = project.owner.max_memberships_public_projects
error_members_exceeded = _("You have reached your current limit of memberships for public projects")
if max_memberships is not None and total_memberships > max_memberships:
return False, error_members_exceeded
return True, None