[Backport] Fix issue #4061: Invalid error when try to add more memberships
parent
1f6382a09e
commit
472b8df982
|
@ -9,7 +9,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -185,7 +185,7 @@ msgstr ""
|
|||
"està corrupte."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "No tens permisos per a veure açò."
|
||||
|
||||
|
@ -2394,6 +2394,14 @@ msgstr "Severitats"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr ""
|
||||
|
@ -3287,14 +3295,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -17,7 +17,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -215,7 +215,7 @@ msgstr ""
|
|||
"haben, ist entweder kein Bild oder defekt."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Sie haben keine Berechtigungen für diese Ansicht"
|
||||
|
||||
|
@ -2866,6 +2866,14 @@ msgstr "Gewichtung"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Zukünftiger Sprint"
|
||||
|
@ -3812,14 +3820,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Taiga Dev Team <support@taiga.io>\n"
|
||||
"Language-Team: Taiga Dev Team <support@taiga.io>\n"
|
||||
|
@ -176,7 +176,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr ""
|
||||
|
||||
|
@ -2360,6 +2360,14 @@ msgstr ""
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr ""
|
||||
|
@ -3230,14 +3238,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -16,7 +16,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -202,7 +202,7 @@ msgid ""
|
|||
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/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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
|
@ -1354,7 +1354,7 @@ msgstr ""
|
|||
"El proyecto debe tener un dueño y al menos uno de los usuarios debe ser un "
|
||||
"administrador activo"
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "No tienes suficientes permisos para ver esto."
|
||||
|
||||
|
@ -2801,6 +2801,14 @@ msgstr "Gravedades"
|
|||
msgid "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
|
||||
msgid "Future sprint"
|
||||
msgstr "Sprint futuro"
|
||||
|
@ -3750,14 +3758,6 @@ msgstr "No puedes tener más proyectos privados"
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -9,7 +9,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -187,7 +187,7 @@ msgstr ""
|
|||
"vioittunut."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Sinulla ei ole oikeuksia nähdä tätä."
|
||||
|
||||
|
@ -2763,6 +2763,14 @@ msgstr "Vakavuudet"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Tuleva kierros"
|
||||
|
@ -3688,14 +3696,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -22,7 +22,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -211,7 +211,7 @@ msgstr ""
|
|||
"image ou était une image corrompue."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Vous n'avez pas les permissions pour consulter cet élément"
|
||||
|
||||
|
@ -2560,6 +2560,14 @@ msgstr "Sévérités"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Sprint futurs"
|
||||
|
@ -3476,14 +3484,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -14,7 +14,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -196,7 +196,7 @@ msgstr ""
|
|||
"o l'immagine potrebbe essere corrotta. "
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Non hai il permesso di vedere questo elemento."
|
||||
|
||||
|
@ -3038,6 +3038,14 @@ msgstr "Criticità"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Sprint futuri"
|
||||
|
@ -3988,14 +3996,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -9,7 +9,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -196,7 +196,7 @@ msgstr ""
|
|||
"een afbeelding ofwel een corrupte afbeelding."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Je hebt geen toestamming om dat te bekijken."
|
||||
|
||||
|
@ -2483,6 +2483,14 @@ msgstr "Ernstniveaus"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Toekomstige sprint"
|
||||
|
@ -3381,14 +3389,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -10,7 +10,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -190,7 +190,7 @@ msgstr ""
|
|||
"jest uszkodzony."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Nie masz uprawnień by to zobaczyć."
|
||||
|
||||
|
@ -2820,6 +2820,14 @@ msgstr "Ważność"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Przyszły sprint"
|
||||
|
@ -3752,14 +3760,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -19,7 +19,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -197,7 +197,7 @@ msgstr ""
|
|||
"está corrompido."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Você não tem permissão para ver isso"
|
||||
|
||||
|
@ -2804,6 +2804,14 @@ msgstr "Severidades"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Sprint futuro"
|
||||
|
@ -3731,14 +3739,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -15,7 +15,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -200,7 +200,7 @@ msgstr ""
|
|||
"изображение, либо не корректное изображение."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "У вас нет разрешения на просмотр."
|
||||
|
||||
|
@ -2819,6 +2819,14 @@ msgstr "Степени важности"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Будущий спринт"
|
||||
|
@ -3746,14 +3754,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -189,7 +189,7 @@ msgstr ""
|
|||
"eller en skadad bild."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Du har inte behörighet att se det. "
|
||||
|
||||
|
@ -2406,6 +2406,14 @@ msgstr "Allvarsgrad"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Framtidig sprint"
|
||||
|
@ -3296,14 +3304,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -10,10 +10,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-04-01 11:09+0200\n"
|
||||
"PO-Revision-Date: 2016-03-30 10:59+0000\n"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
"POT-Creation-Date: 2016-04-05 19:23+0200\n"
|
||||
"PO-Revision-Date: 2016-04-04 13:40+0000\n"
|
||||
"Last-Translator: catborise <muhammetalisag@gmail.com>\n"
|
||||
"Language-Team: Turkish (http://www.transifex.com/taiga-agile-llc/taiga-back/"
|
||||
"language/tr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -197,13 +196,13 @@ msgstr ""
|
|||
"resim dosyası değil."
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: taiga/projects/userstories/api.py:218 taiga/projects/userstories/api.py:238
|
||||
#: taiga/webhooks/api.py:67
|
||||
msgid "Blocked element"
|
||||
msgstr ""
|
||||
msgstr "Engellenmiş nesne"
|
||||
|
||||
#: taiga/base/api/pagination.py:213
|
||||
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
|
||||
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
|
||||
msgid "Error in filter params types."
|
||||
|
@ -1291,23 +1290,23 @@ msgstr "Geçersiz şablon tanımı"
|
|||
|
||||
#: taiga/projects/api.py:356
|
||||
msgid "Invalid user id"
|
||||
msgstr ""
|
||||
msgstr "Geçersiz kullanıcı id"
|
||||
|
||||
#: taiga/projects/api.py:362
|
||||
msgid "The user doesn't exist"
|
||||
msgstr ""
|
||||
msgstr "Kullanıcı mevcut değil"
|
||||
|
||||
#: taiga/projects/api.py:366
|
||||
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 ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "Görebilmek için yetkiniz yok."
|
||||
|
||||
|
@ -1406,7 +1405,7 @@ msgstr ""
|
|||
|
||||
#: taiga/projects/choices.py:34
|
||||
msgid "This project is blocked because the owner left"
|
||||
msgstr ""
|
||||
msgstr "Yetkili kalmadığı için proje bloklandı"
|
||||
|
||||
#: taiga/projects/custom_attributes/choices.py:27
|
||||
msgid "Text"
|
||||
|
@ -1422,7 +1421,7 @@ msgstr "Tarih"
|
|||
|
||||
#: taiga/projects/custom_attributes/choices.py:30
|
||||
msgid "Url"
|
||||
msgstr ""
|
||||
msgstr "Url"
|
||||
|
||||
#: taiga/projects/custom_attributes/models.py:39
|
||||
#: taiga/projects/issues/models.py:47
|
||||
|
@ -1828,7 +1827,7 @@ msgstr ""
|
|||
|
||||
#: taiga/projects/models.py:225
|
||||
msgid "blocked code"
|
||||
msgstr ""
|
||||
msgstr "engellenmiş kod"
|
||||
|
||||
#: taiga/projects/models.py:229 taiga/projects/notifications/models.py:65
|
||||
msgid "updated date time"
|
||||
|
@ -2579,6 +2578,14 @@ msgstr "Önem dereceleri"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "Gelecek sprint"
|
||||
|
@ -3464,14 +3471,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -11,7 +11,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: taiga-back\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"
|
||||
"Last-Translator: Alejandro Alonso Fernández <alejandroalonsofernandez@gmail."
|
||||
"com>\n"
|
||||
|
@ -183,7 +183,7 @@ msgid ""
|
|||
msgstr "上傳有效圖片,你所上傳的檔案非圖檔或已損壞"
|
||||
|
||||
#: 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/tasks/api.py:152 taiga/projects/tasks/api.py:174
|
||||
#: 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"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:668
|
||||
#: taiga/projects/api.py:671
|
||||
msgid ""
|
||||
"The project must have an owner and at least one of the users must be an "
|
||||
"active admin"
|
||||
msgstr ""
|
||||
|
||||
#: taiga/projects/api.py:708
|
||||
#: taiga/projects/api.py:705
|
||||
msgid "You don't have permisions to see that."
|
||||
msgstr "您無觀看權限"
|
||||
|
||||
|
@ -2789,6 +2789,14 @@ msgstr "嚴重性"
|
|||
msgid "Roles"
|
||||
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
|
||||
msgid "Future sprint"
|
||||
msgstr "未來之衝刺"
|
||||
|
@ -3701,14 +3709,6 @@ msgstr ""
|
|||
msgid "You can't have more public projects"
|
||||
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
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
|
|
@ -615,6 +615,18 @@ class MembershipViewSet(BlockedByProjectMixin, ModelCrudViewSet):
|
|||
else:
|
||||
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"])
|
||||
def bulk_create(self, request, **kwargs):
|
||||
serializer = serializers.MembersBulkSerializer(data=request.DATA)
|
||||
|
@ -628,18 +640,9 @@ class MembershipViewSet(BlockedByProjectMixin, ModelCrudViewSet):
|
|||
if project.blocked_code is not None:
|
||||
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):
|
||||
members = len(data["bulk_memberships"])
|
||||
(enough_slots, not_enough_slots_error) = users_service.has_available_slot_for_project(
|
||||
project.owner,
|
||||
project,
|
||||
members
|
||||
)
|
||||
if not enough_slots:
|
||||
raise exc.NotEnoughSlotsForProject(project.is_private, members, not_enough_slots_error)
|
||||
total_new_memberships = len(data["bulk_memberships"])
|
||||
self._check_if_project_can_have_more_memberships(project, total_new_memberships)
|
||||
|
||||
try:
|
||||
members = services.create_members_in_bulk(data["bulk_memberships"],
|
||||
|
@ -665,18 +668,12 @@ class MembershipViewSet(BlockedByProjectMixin, ModelCrudViewSet):
|
|||
|
||||
def pre_delete(self, obj):
|
||||
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):
|
||||
if not obj.id:
|
||||
members = 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)
|
||||
self._check_if_project_can_have_more_memberships(obj.project, 1)
|
||||
|
||||
if not obj.token:
|
||||
obj.token = str(uuid.uuid1())
|
||||
|
|
|
@ -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 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 .modules_config import get_modules_config
|
||||
|
||||
|
|
|
@ -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 django.utils.translation import ugettext as _
|
||||
|
||||
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': 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
|
||||
|
|
Loading…
Reference in New Issue