Improved users_bindings
parent
ea7187b30d
commit
a952d200fc
|
@ -26,6 +26,7 @@ from taiga.users.gravatar import get_user_gravatar_id
|
||||||
from taiga.projects.serializers import ProjectSerializer
|
from taiga.projects.serializers import ProjectSerializer
|
||||||
|
|
||||||
from taiga.importers import permissions, exceptions
|
from taiga.importers import permissions, exceptions
|
||||||
|
from taiga.importers.services import resolve_users_bindings
|
||||||
from .importer import AsanaImporter
|
from .importer import AsanaImporter
|
||||||
from . import tasks
|
from . import tasks
|
||||||
|
|
||||||
|
@ -89,7 +90,7 @@ class AsanaImporterViewSet(viewsets.ViewSet):
|
||||||
"name": request.DATA.get('name', None),
|
"name": request.DATA.get('name', None),
|
||||||
"description": request.DATA.get('description', None),
|
"description": request.DATA.get('description', None),
|
||||||
"template": request.DATA.get('template', "scrum"),
|
"template": request.DATA.get('template', "scrum"),
|
||||||
"users_bindings": request.DATA.get("users_bindings", {}),
|
"users_bindings": resolve_users_bindings(request.DATA.get("users_bindings", {})),
|
||||||
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
||||||
"is_private": request.DATA.get("is_private", False),
|
"is_private": request.DATA.get("is_private", False),
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,6 +27,7 @@ from taiga.projects.serializers import ProjectSerializer
|
||||||
|
|
||||||
from taiga.importers import permissions
|
from taiga.importers import permissions
|
||||||
from taiga.importers import exceptions
|
from taiga.importers import exceptions
|
||||||
|
from taiga.importers.services import resolve_users_bindings
|
||||||
from .importer import GithubImporter
|
from .importer import GithubImporter
|
||||||
from . import tasks
|
from . import tasks
|
||||||
|
|
||||||
|
@ -85,7 +86,7 @@ class GithubImporterViewSet(viewsets.ViewSet):
|
||||||
"description": request.DATA.get('description', None),
|
"description": request.DATA.get('description', None),
|
||||||
"template": template,
|
"template": template,
|
||||||
"type": items_type,
|
"type": items_type,
|
||||||
"users_bindings": request.DATA.get("users_bindings", {}),
|
"users_bindings": resolve_users_bindings(request.DATA.get("users_bindings", {})),
|
||||||
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
||||||
"is_private": request.DATA.get("is_private", False),
|
"is_private": request.DATA.get("is_private", False),
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@ from taiga.users.services import get_user_photo_url
|
||||||
from taiga.users.gravatar import get_user_gravatar_id
|
from taiga.users.gravatar import get_user_gravatar_id
|
||||||
|
|
||||||
from taiga.importers import permissions
|
from taiga.importers import permissions
|
||||||
|
from taiga.importers.services import resolve_users_bindings
|
||||||
from .normal import JiraNormalImporter
|
from .normal import JiraNormalImporter
|
||||||
from .agile import JiraAgileImporter
|
from .agile import JiraAgileImporter
|
||||||
from . import tasks
|
from . import tasks
|
||||||
|
@ -107,7 +108,7 @@ class JiraImporterViewSet(viewsets.ViewSet):
|
||||||
options = {
|
options = {
|
||||||
"name": request.DATA.get('name', None),
|
"name": request.DATA.get('name', None),
|
||||||
"description": request.DATA.get('description', None),
|
"description": request.DATA.get('description', None),
|
||||||
"users_bindings": request.DATA.get("user_bindings", {}),
|
"users_bindings": resolve_users_bindings(request.DATA.get("users_bindings", {})),
|
||||||
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
||||||
"is_private": request.DATA.get("is_private", False),
|
"is_private": request.DATA.get("is_private", False),
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
from taiga.users.models import User
|
||||||
|
|
||||||
|
|
||||||
|
def resolve_users_bindings(users_bindings):
|
||||||
|
new_users_bindings = {}
|
||||||
|
for key,value in users_bindings.items():
|
||||||
|
if isinstance(value, str):
|
||||||
|
try:
|
||||||
|
new_users_bindings[int(key)] = User.objects.get(email_iexact=value)
|
||||||
|
except User.MultipleObjectsReturned:
|
||||||
|
new_users_bindings[int(key)] = User.objects.get(email=value)
|
||||||
|
except User.DoesNotExists:
|
||||||
|
new_users_bindings[int(key)] = None
|
||||||
|
else:
|
||||||
|
new_users_bindings[int(key)] = User.objects.get(id=value)
|
||||||
|
return new_users_bindings
|
|
@ -29,6 +29,7 @@ from taiga.projects.serializers import ProjectSerializer
|
||||||
|
|
||||||
from .importer import TrelloImporter
|
from .importer import TrelloImporter
|
||||||
from taiga.importers import permissions
|
from taiga.importers import permissions
|
||||||
|
from taiga.importers.services import resolve_users_bindings
|
||||||
from . import tasks
|
from . import tasks
|
||||||
|
|
||||||
|
|
||||||
|
@ -86,7 +87,7 @@ class TrelloImporterViewSet(viewsets.ViewSet):
|
||||||
"name": request.DATA.get('name', None),
|
"name": request.DATA.get('name', None),
|
||||||
"description": request.DATA.get('description', None),
|
"description": request.DATA.get('description', None),
|
||||||
"template": request.DATA.get('template', "kanban"),
|
"template": request.DATA.get('template', "kanban"),
|
||||||
"users_bindings": request.DATA.get("users_bindings", {}),
|
"users_bindings": resolve_users_bindings(request.DATA.get("users_bindings", {})),
|
||||||
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
"keep_external_reference": request.DATA.get("keep_external_reference", False),
|
||||||
"is_private": request.DATA.get("is_private", False),
|
"is_private": request.DATA.get("is_private", False),
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue