Fixed signature insert.
This commit is contained in:
parent
ae7babcb81
commit
977c05204c
2 changed files with 36 additions and 18 deletions
|
@ -232,23 +232,21 @@ class App.TicketCreate extends App.Controller
|
||||||
if signature isnt undefined && signature.body && type is 'email-out'
|
if signature isnt undefined && signature.body && type is 'email-out'
|
||||||
signatureFinished = App.Utils.replaceTags(signature.body, { user: App.Session.get() })
|
signatureFinished = App.Utils.replaceTags(signature.body, { user: App.Session.get() })
|
||||||
|
|
||||||
# get current body
|
body = @$('[data-name=body]')
|
||||||
body = @$('[data-name="body"]').html() || ''
|
if App.Utils.signatureCheck(body.html() || '', signatureFinished)
|
||||||
if App.Utils.signatureCheck(body, signatureFinished)
|
|
||||||
|
|
||||||
# if signature has changed, replace it
|
# if signature has changed, in case remove old signature
|
||||||
signature_id = @$('[data-signature=true]').data('signature-id')
|
signature_id = @$('[data-signature=true]').data('signature-id')
|
||||||
if signature_id && signature_id.toString() isnt signature.id.toString()
|
if signature_id && signature_id.toString() isnt signature.id.toString()
|
||||||
|
|
||||||
# remove old signature
|
|
||||||
@$('[data-signature="true"]').remove()
|
@$('[data-signature="true"]').remove()
|
||||||
body = @$('[data-name="body"]').html() || ''
|
|
||||||
|
|
||||||
if !App.Utils.lastLineEmpty(body)
|
if !App.Utils.htmlLastLineEmpty(body)
|
||||||
body = body + '<br>'
|
body.append('<br><br>')
|
||||||
body = body + "<div><div data-signature=\"true\" data-signature-id=\"#{signature.id}\">#{signatureFinished}</div></div>"
|
signature = $("<div data-signature=\"true\" data-signature-id=\"#{signature.id}\">#{signatureFinished}</div>")
|
||||||
|
App.Utils.htmlStrip(signature)
|
||||||
@$('[data-name="body"]').html(body)
|
body.append(signature)
|
||||||
|
@$('[data-name=body]').replaceWith(body)
|
||||||
|
|
||||||
# remove old signature
|
# remove old signature
|
||||||
else
|
else
|
||||||
|
|
|
@ -109,6 +109,33 @@ class App.Utils
|
||||||
.replace(/"/g, '"')
|
.replace(/"/g, '"')
|
||||||
.replace(/'/g, ''')
|
.replace(/'/g, ''')
|
||||||
|
|
||||||
|
# App.Utils.htmlStrip(element)
|
||||||
|
@htmlStrip: (element) ->
|
||||||
|
loop
|
||||||
|
el = element.get(0)
|
||||||
|
break if !el
|
||||||
|
child = el.firstChild
|
||||||
|
break if !child
|
||||||
|
break if child.nodeType isnt 1 || child.tagName isnt 'BR'
|
||||||
|
child.remove()
|
||||||
|
|
||||||
|
loop
|
||||||
|
el = element.get(0)
|
||||||
|
break if !el
|
||||||
|
child = el.lastChild
|
||||||
|
break if !child
|
||||||
|
break if child.nodeType isnt 1 || child.tagName isnt 'BR'
|
||||||
|
child.remove()
|
||||||
|
|
||||||
|
# true|false = App.Utils.htmlLastLineEmpty(element)
|
||||||
|
@htmlLastLineEmpty: (element) ->
|
||||||
|
el = element.get(0)
|
||||||
|
return false if !el
|
||||||
|
child = el.lastChild
|
||||||
|
return false if !child
|
||||||
|
return false if child.nodeType isnt 1 || child.tagName isnt 'BR'
|
||||||
|
true
|
||||||
|
|
||||||
# textWithoutTags = App.Utils.htmlRemoveTags(html)
|
# textWithoutTags = App.Utils.htmlRemoveTags(html)
|
||||||
@htmlRemoveTags: (html) ->
|
@htmlRemoveTags: (html) ->
|
||||||
html = @_checkTypeOf(html)
|
html = @_checkTypeOf(html)
|
||||||
|
@ -503,13 +530,6 @@ class App.Utils
|
||||||
value
|
value
|
||||||
)
|
)
|
||||||
|
|
||||||
# true|false = App.Utils.lastLineEmpty(message)
|
|
||||||
@lastLineEmpty: (message) ->
|
|
||||||
messageCleanup = message.replace(/>\s+</g, '><').replace(/(\n|\r|\t)/g, '').trim()
|
|
||||||
return true if messageCleanup.match(/<(br|\s+?|\/)>$/im)
|
|
||||||
return true if messageCleanup.match(/<div(|\s.+?)><\/div>$/im)
|
|
||||||
false
|
|
||||||
|
|
||||||
# string = App.Utils.removeEmptyLines(stringWithEmptyLines)
|
# string = App.Utils.removeEmptyLines(stringWithEmptyLines)
|
||||||
@removeEmptyLines: (string) ->
|
@removeEmptyLines: (string) ->
|
||||||
string.replace(/^\s*[\r\n]/gm, '')
|
string.replace(/^\s*[\r\n]/gm, '')
|
||||||
|
|
Loading…
Reference in a new issue