Merge pull request #128 from taigaio/us/1396/extra-text-for-inviting-users
Us/1396/extra text for inviting usersstable
commit
a366706695
|
@ -7,6 +7,7 @@
|
|||
- Add visual difference to closed USs in backlog panel.
|
||||
- Show crerated date of attachments in the hover of the filename.
|
||||
- Add beta ribbon.
|
||||
- Support for custom text when inviting users.
|
||||
|
||||
### Misc
|
||||
- Lots of small and not so small bugfixes
|
||||
|
|
|
@ -24,13 +24,19 @@ debounce = @.taiga.debounce
|
|||
|
||||
module = angular.module("taigaKanban")
|
||||
|
||||
MAX_MEMBERSHIP_FIELDSETS = 6
|
||||
MAX_MEMBERSHIP_FIELDSETS = 4
|
||||
|
||||
#############################################################################
|
||||
## Create Members Lightbox Directive
|
||||
#############################################################################
|
||||
|
||||
CreateMembersDirective = ($rs, $rootScope, $confirm, lightboxService) ->
|
||||
extraTextTemplate = """
|
||||
<fieldset class="extra-text">
|
||||
<textarea placeholder="(Optional) Add a personalized text to the invitation. Tell something lovely to your new members ;-)"></textarea>
|
||||
</fieldset>
|
||||
"""
|
||||
|
||||
template = _.template("""
|
||||
<div class="add-member-wrapper">
|
||||
<fieldset>
|
||||
|
@ -53,11 +59,14 @@ CreateMembersDirective = ($rs, $rootScope, $confirm, lightboxService) ->
|
|||
return template(ctx)
|
||||
|
||||
resetForm = ->
|
||||
$el.find("form > .add-member-wrapper").remove()
|
||||
$el.find("form textarea").remove("")
|
||||
$el.find("form .add-member-wrapper").remove()
|
||||
|
||||
invitations = $el.find(".add-member-forms")
|
||||
invitations.html(extraTextTemplate)
|
||||
|
||||
title = $el.find("h2")
|
||||
fieldSet = createFieldSet()
|
||||
title.after(fieldSet)
|
||||
invitations.prepend(fieldSet)
|
||||
|
||||
$scope.$on "membersform:new", ->
|
||||
resetForm()
|
||||
|
@ -91,7 +100,7 @@ CreateMembersDirective = ($rs, $rootScope, $confirm, lightboxService) ->
|
|||
fieldSet.after(newFieldSet)
|
||||
|
||||
if $el.find(".add-member-wrapper").length == MAX_MEMBERSHIP_FIELDSETS
|
||||
$el.find("fieldset:last > a").removeClass("icon-plus add-fieldset")
|
||||
$el.find(".add-member-wrapper fieldset:last > a").removeClass("icon-plus add-fieldset")
|
||||
.addClass("icon-delete delete-fieldset")
|
||||
|
||||
$el.on "click", ".button-green", debounce 2000, (event) ->
|
||||
|
@ -112,12 +121,10 @@ CreateMembersDirective = ($rs, $rootScope, $confirm, lightboxService) ->
|
|||
#checksley find new fields
|
||||
form.destroy()
|
||||
form.initialize()
|
||||
|
||||
if not form.validate()
|
||||
return
|
||||
|
||||
memberWrappers = $el.find("form > .add-member-wrapper")
|
||||
|
||||
memberWrappers = $el.find("form .add-member-wrapper")
|
||||
memberWrappers = _.filter memberWrappers, (mw) ->
|
||||
angular.element(mw).find("input").hasClass('checksley-ok')
|
||||
|
||||
|
@ -132,7 +139,9 @@ CreateMembersDirective = ($rs, $rootScope, $confirm, lightboxService) ->
|
|||
}
|
||||
|
||||
if invitations.length
|
||||
$rs.memberships.bulkCreateMemberships($scope.project.id, invitations).then(onSuccess, onError)
|
||||
invitation_extra_text = $el.find("form textarea").val()
|
||||
|
||||
$rs.memberships.bulkCreateMemberships($scope.project.id, invitations, invitation_extra_text).then(onSuccess, onError)
|
||||
|
||||
return {link: link}
|
||||
|
||||
|
|
|
@ -42,9 +42,9 @@ resourceProvider = ($repo, $http, $urls) ->
|
|||
url = $urls.resolve("memberships")
|
||||
return $http.post("#{url}/#{id}/resend_invitation", {})
|
||||
|
||||
service.bulkCreateMemberships = (projectId, data) ->
|
||||
service.bulkCreateMemberships = (projectId, data, invitation_extra_text) ->
|
||||
url = $urls.resolve("bulk-create-memberships")
|
||||
params = {project_id: projectId, bulk_memberships: data}
|
||||
params = {project_id: projectId, bulk_memberships: data, invitation_extra_text: invitation_extra_text}
|
||||
return $http.post(url, params)
|
||||
|
||||
return (instance) ->
|
||||
|
|
|
@ -4,6 +4,7 @@ form
|
|||
h2.title New Member
|
||||
|
||||
//- Form is set in a directive
|
||||
.add-member-forms
|
||||
|
||||
a.button.button-green(href="", title="Save")
|
||||
span Create
|
||||
|
|
|
@ -150,16 +150,23 @@
|
|||
.lightbox-add-member {
|
||||
.add-member-wrapper {
|
||||
@include table-flex();
|
||||
}
|
||||
fieldset {
|
||||
position: relative;
|
||||
&:first-child {
|
||||
@include table-flex-child(3, 400px);
|
||||
}
|
||||
margin-bottom: .5rem;
|
||||
&:last-child {
|
||||
@include table-flex-child(1, 200px);
|
||||
margin-left: .5rem;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
fieldset {
|
||||
position: relative;
|
||||
&:first-child {
|
||||
@include table-flex-child(3, 400px);
|
||||
}
|
||||
&:last-child {
|
||||
@include table-flex-child(1, 200px);
|
||||
margin-left: .5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
.extra-text {
|
||||
margin-top: 1rem;
|
||||
}
|
||||
input[type=email],
|
||||
select {
|
||||
|
|
Loading…
Reference in New Issue