diff --git a/app/coffee/modules/admin/lightboxes.coffee b/app/coffee/modules/admin/lightboxes.coffee index ecacf999..38bc07bd 100644 --- a/app/coffee/modules/admin/lightboxes.coffee +++ b/app/coffee/modules/admin/lightboxes.coffee @@ -28,7 +28,7 @@ module = angular.module("taigaKanban") ## Create Members Lightbox Directive ############################################################################# -CreateMembersDirective = ($repo, $rootScope, $q, $confirm) -> +CreateMembersDirective = ($rs, $rootScope, $confirm) -> template = _.template("""
@@ -104,16 +104,13 @@ CreateMembersDirective = ($repo, $rootScope, $q, $confirm) -> fieldset = angular.element(fs) return { email: fieldset.children("input").val() - role: fieldset.children("select").val() - project: $ctrl.scope.project.id + role_id: fieldset.children("select").val() + project_id: $scope.project.id } - promises = _.map invitations, (inv) -> - return $repo.create("memberships", inv) - - $q.all(promises).then(onSuccess, onError) + $rs.memberships.bulkCreateMemberships(invitations).then(onSuccess, onError) return {link: link} -module.directive("tgLbCreateMembers", ["$tgRepo", "$rootScope", "$q", "$tgConfirm", +module.directive("tgLbCreateMembers", ["$tgResources", "$rootScope", "$tgConfirm", CreateMembersDirective]) diff --git a/app/coffee/modules/resources.coffee b/app/coffee/modules/resources.coffee index d32a4002..7cf7a05e 100644 --- a/app/coffee/modules/resources.coffee +++ b/app/coffee/modules/resources.coffee @@ -31,6 +31,7 @@ urls = { "roles": "/api/v1/roles" "projects": "/api/v1/projects" "memberships": "/api/v1/memberships" + "bulk-create-memberships": "/api/v1/memberships/bulk_create" "milestones": "/api/v1/milestones" "userstories": "/api/v1/userstories" "bulk-create-us": "/api/v1/userstories/bulk_create" diff --git a/app/coffee/modules/resources/memberships.coffee b/app/coffee/modules/resources/memberships.coffee index c5599d99..abb80b24 100644 --- a/app/coffee/modules/resources/memberships.coffee +++ b/app/coffee/modules/resources/memberships.coffee @@ -37,6 +37,11 @@ resourceProvider = ($repo, $http, $urls) -> url = $urls.resolve("memberships") return $http.post("#{url}/#{id}/resend_invitation", {}) + service.bulkCreateMemberships = (data) -> + url = $urls.resolve("bulk-create-memberships") + params = {bulk_memberships: data} + return $http.post(url, params) + return (instance) -> instance.memberships = service