Added html quoting, text2html and linkify.
This commit is contained in:
parent
69420df8a5
commit
3a44804c96
3 changed files with 66 additions and 44 deletions
|
@ -543,7 +543,7 @@ class App.ErrorModal extends App.ControllerModal
|
||||||
class App.SessionMessage extends App.ControllerModal
|
class App.SessionMessage extends App.ControllerModal
|
||||||
constructor: ->
|
constructor: ->
|
||||||
super
|
super
|
||||||
@show()
|
@show(@content)
|
||||||
|
|
||||||
# reload page on modal hidden
|
# reload page on modal hidden
|
||||||
onHide: (e) =>
|
onHide: (e) =>
|
||||||
|
|
|
@ -16,9 +16,13 @@ class Widget extends App.Controller
|
||||||
@disconnectClient()
|
@disconnectClient()
|
||||||
button = 'Reload application'
|
button = 'Reload application'
|
||||||
|
|
||||||
|
# convert to html and linkify
|
||||||
|
message.message = App.Utils.textCleanup( message.message )
|
||||||
|
message.message = App.Utils.text2html( message.message )
|
||||||
|
|
||||||
new App.SessionMessage(
|
new App.SessionMessage(
|
||||||
head: message.head
|
head: message.head
|
||||||
message: message.message
|
content: message.message
|
||||||
keyboard: true
|
keyboard: true
|
||||||
backdrop: true
|
backdrop: true
|
||||||
close: true
|
close: true
|
||||||
|
|
|
@ -3,7 +3,11 @@ require 'browser_test_helper'
|
||||||
|
|
||||||
class MaintenanceMessageTest < TestCase
|
class MaintenanceMessageTest < TestCase
|
||||||
def test_websocket
|
def test_websocket
|
||||||
message = 'message 1äöüß ' + rand(99999999999999999).to_s
|
string = rand(99999999999999999).to_s
|
||||||
|
title_html = "test <b>#{string}</b>"
|
||||||
|
title_text = "test <b>#{string}<\/b>"
|
||||||
|
message_html = "message <b>1äöüß</b> #{string}\n\n\nhttp://zammad.org"
|
||||||
|
message_text = "message <b>1äöüß<\/b> #{string}\n\nhttp:\/\/zammad.org"
|
||||||
tests = [
|
tests = [
|
||||||
{
|
{
|
||||||
:name => 'check #1',
|
:name => 'check #1',
|
||||||
|
@ -33,13 +37,13 @@ class MaintenanceMessageTest < TestCase
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
:execute => 'set',
|
:execute => 'set',
|
||||||
:css => '#content input[name="head"]',
|
:css => '#content input[name="head"]',
|
||||||
:value => message,
|
:value => title_html,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
:execute => 'set',
|
:execute => 'set',
|
||||||
:css => '#content textarea[name="message"]',
|
:css => '#content textarea[name="message"]',
|
||||||
:value => message,
|
:value => message_html,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
|
@ -51,17 +55,23 @@ class MaintenanceMessageTest < TestCase
|
||||||
:value => 5,
|
:value => 5,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance2,
|
||||||
:execute => 'match',
|
:execute => 'watch_for',
|
||||||
:css => 'body',
|
:area => '.modal',
|
||||||
:value => message,
|
:value => title_text,
|
||||||
:match_result => false,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance2,
|
:where => :instance2,
|
||||||
:execute => 'watch_for',
|
:execute => 'watch_for',
|
||||||
:area => '.modal',
|
:area => '.modal',
|
||||||
:value => message,
|
:value => message_text,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
:where => :instance1,
|
||||||
|
:execute => 'match',
|
||||||
|
:css => 'body',
|
||||||
|
:value => message_text,
|
||||||
|
:match_result => false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance2,
|
:where => :instance2,
|
||||||
|
@ -91,13 +101,13 @@ class MaintenanceMessageTest < TestCase
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
:execute => 'set',
|
:execute => 'set',
|
||||||
:css => '#content input[name="head"]',
|
:css => '#content input[name="head"]',
|
||||||
:value => message + ' #2',
|
:value => title_html + ' #2',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
:execute => 'set',
|
:execute => 'set',
|
||||||
:css => '#content textarea[name="message"]',
|
:css => '#content textarea[name="message"]',
|
||||||
:value => message + ' #2',
|
:value => message_html + ' #2',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
|
@ -105,21 +115,23 @@ class MaintenanceMessageTest < TestCase
|
||||||
:css => '#content button[type="submit"]',
|
:css => '#content button[type="submit"]',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:execute => 'wait',
|
:where => :instance2,
|
||||||
:value => 5,
|
:execute => 'watch_for',
|
||||||
},
|
:area => '.modal',
|
||||||
{
|
:value => title_text,
|
||||||
:where => :instance1,
|
|
||||||
:execute => 'match',
|
|
||||||
:css => 'body',
|
|
||||||
:value => message + ' #2',
|
|
||||||
:match_result => false,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance2,
|
:where => :instance2,
|
||||||
:execute => 'watch_for',
|
:execute => 'watch_for',
|
||||||
:area => '.modal',
|
:area => '.modal',
|
||||||
:value => message + ' #2',
|
:value => message_text + ' #2',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
:where => :instance1,
|
||||||
|
:execute => 'match',
|
||||||
|
:css => 'body',
|
||||||
|
:value => message_text + ' #2',
|
||||||
|
:match_result => false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance2,
|
:where => :instance2,
|
||||||
|
@ -149,13 +161,13 @@ class MaintenanceMessageTest < TestCase
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
:execute => 'set',
|
:execute => 'set',
|
||||||
:css => '#content input[name="head"]',
|
:css => '#content input[name="head"]',
|
||||||
:value => message + ' #3' ,
|
:value => title_html + ' #3' ,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
:execute => 'set',
|
:execute => 'set',
|
||||||
:css => '#content textarea[name="message"]',
|
:css => '#content textarea[name="message"]',
|
||||||
:value => message + ' #3',
|
:value => message_html + ' #3',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance1,
|
||||||
|
@ -178,17 +190,23 @@ class MaintenanceMessageTest < TestCase
|
||||||
:result => false,
|
:result => false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance1,
|
:where => :instance2,
|
||||||
:execute => 'match',
|
:execute => 'watch_for',
|
||||||
:css => 'body',
|
:area => '.modal',
|
||||||
:value => message + ' #3',
|
:value => title_text,
|
||||||
:match_result => false,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance2,
|
:where => :instance2,
|
||||||
:execute => 'watch_for',
|
:execute => 'watch_for',
|
||||||
:area => '.modal',
|
:area => '.modal',
|
||||||
:value => message + ' #3',
|
:value => message_text + ' #3',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
:where => :instance1,
|
||||||
|
:execute => 'match',
|
||||||
|
:css => 'body',
|
||||||
|
:value => message_text + ' #3',
|
||||||
|
:match_result => false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
:where => :instance2,
|
:where => :instance2,
|
||||||
|
|
Loading…
Reference in a new issue