Set default permissions for anon user when importing from Trello

remotes/origin/4.0rc
Daniel García 2018-10-17 15:21:40 +02:00 committed by Alex Hermida
parent b6d852b5dd
commit 01ac21ba5e
2 changed files with 15 additions and 0 deletions

View File

@ -19,6 +19,8 @@
from taiga.users.models import User
from taiga.projects.models import Membership
from taiga.permissions.choices import ANON_PERMISSIONS
def resolve_users_bindings(users_bindings):
new_users_bindings = {}
@ -50,3 +52,15 @@ def create_memberships(users_bindings, project, creator, role_name):
is_admin=False,
invited_by=creator,
)
def set_base_permissions_for_project(project):
if project.is_private:
return
anon_permissions = list(
map(lambda perm: perm[0], ANON_PERMISSIONS))
project.anon_permissions = list(
set((project.anon_permissions or []) + anon_permissions))
project.public_permissions = list(
set((project.public_permissions or []) + anon_permissions))
project.save()

View File

@ -262,6 +262,7 @@ class TrelloImporter:
project=project
)
import_service.create_memberships(options.get('users_bindings', {}), project, self._user, "trello")
import_service.set_base_permissions_for_project(project)
return project
def _import_user_stories_data(self, data, project, options):