diff --git a/public/assets/chat/chat.coffee b/public/assets/chat/chat.coffee index f9a7d216d..a31fbb58f 100644 --- a/public/assets/chat/chat.coffee +++ b/public/assets/chat/chat.coffee @@ -471,7 +471,7 @@ do($ = window.jQuery, window) -> from: if message.created_by_id then 'agent' else 'customer' if unfinishedMessage - @input.val unfinishedMessage + @input.html(unfinishedMessage) # show wait list if data.position @@ -489,7 +489,7 @@ do($ = window.jQuery, window) -> @el.find('.zammad-chat-message--unread') .removeClass 'zammad-chat-message--unread' - sessionStorage.setItem 'unfinished_message', @input.val() + sessionStorage.setItem 'unfinished_message', @input.html() @onTyping() @@ -520,7 +520,7 @@ do($ = window.jQuery, window) -> @sendMessage() sendMessage: -> - message = @input.val() + message = @input.html() return if !message @inactiveTimeout.start() @@ -543,7 +543,7 @@ do($ = window.jQuery, window) -> @lastAddedType = 'message--customer' @el.find('.zammad-chat-body').append messageElement - @input.val('') + @input.html('') @scrollToBottom() # send message event diff --git a/public/assets/chat/chat.js b/public/assets/chat/chat.js index 3bdb1803c..7cb133435 100644 --- a/public/assets/chat/chat.js +++ b/public/assets/chat/chat.js @@ -1,3 +1,64 @@ +if (!window.zammadChatTemplates) { + window.zammadChatTemplates = {}; +} +window.zammadChatTemplates["agent"] = function (__obj) { + if (!__obj) __obj = {}; + var __out = [], __capture = function(callback) { + var out = __out, result; + __out = []; + callback.call(this); + result = __out.join(''); + __out = out; + return __safe(result); + }, __sanitize = function(value) { + if (value && value.ecoSafe) { + return value; + } else if (typeof value !== 'undefined' && value != null) { + return __escape(value); + } else { + return ''; + } + }, __safe, __objSafe = __obj.safe, __escape = __obj.escape; + __safe = __obj.safe = function(value) { + if (value && value.ecoSafe) { + return value; + } else { + if (!(typeof value !== 'undefined' && value != null)) value = ''; + var result = new String(value); + result.ecoSafe = true; + return result; + } + }; + if (!__escape) { + __escape = __obj.escape = function(value) { + return ('' + value) + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"'); + }; + } + (function() { + (function() { + if (this.agent.avatar) { + __out.push('\n\n'); + } + + __out.push('\n\n '); + + __out.push(__sanitize(this.agent.name)); + + __out.push('\n'); + + }).call(this); + + }).call(__obj); + __obj.safe = __objSafe, __obj.escape = __escape; + return __out.join(''); +}; + var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; }, slice = [].slice, extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, @@ -699,7 +760,7 @@ var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }); } if (unfinishedMessage) { - this.input.val(unfinishedMessage); + this.input.html(unfinishedMessage); } } if (data.position) { @@ -715,7 +776,7 @@ var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); ZammadChat.prototype.onInput = function() { this.el.find('.zammad-chat-message--unread').removeClass('zammad-chat-message--unread'); - sessionStorage.setItem('unfinished_message', this.input.val()); + sessionStorage.setItem('unfinished_message', this.input.html()); return this.onTyping(); }; @@ -749,7 +810,7 @@ var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); ZammadChat.prototype.sendMessage = function() { var message, messageElement; - message = this.input.val(); + message = this.input.html(); if (!message) { return; } @@ -769,7 +830,7 @@ var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); this.lastAddedType = 'message--customer'; this.el.find('.zammad-chat-body').append(messageElement); } - this.input.val(''); + this.input.html(''); this.scrollToBottom(); return this.send('chat_session_message', { content: message, @@ -1334,67 +1395,6 @@ var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); return window.ZammadChat = ZammadChat; })(window.jQuery, window); -if (!window.zammadChatTemplates) { - window.zammadChatTemplates = {}; -} -window.zammadChatTemplates["agent"] = function (__obj) { - if (!__obj) __obj = {}; - var __out = [], __capture = function(callback) { - var out = __out, result; - __out = []; - callback.call(this); - result = __out.join(''); - __out = out; - return __safe(result); - }, __sanitize = function(value) { - if (value && value.ecoSafe) { - return value; - } else if (typeof value !== 'undefined' && value != null) { - return __escape(value); - } else { - return ''; - } - }, __safe, __objSafe = __obj.safe, __escape = __obj.escape; - __safe = __obj.safe = function(value) { - if (value && value.ecoSafe) { - return value; - } else { - if (!(typeof value !== 'undefined' && value != null)) value = ''; - var result = new String(value); - result.ecoSafe = true; - return result; - } - }; - if (!__escape) { - __escape = __obj.escape = function(value) { - return ('' + value) - .replace(/&/g, '&') - .replace(//g, '>') - .replace(/"/g, '"'); - }; - } - (function() { - (function() { - if (this.agent.avatar) { - __out.push('\n\n'); - } - - __out.push('\n\n '); - - __out.push(__sanitize(this.agent.name)); - - __out.push('\n'); - - }).call(this); - - }).call(__obj); - __obj.safe = __objSafe, __obj.escape = __escape; - return __out.join(''); -}; - /*! * ---------------------------------------------------------------------------- * "THE BEER-WARE LICENSE" (Revision 42): @@ -1555,11 +1555,11 @@ window.zammadChatTemplates["chat"] = function (__obj) { __out.push(this.T(this.scrollHint)); - __out.push('\n \n
\n