Repository: wicket Updated Branches: refs/heads/wicket-6.x e53e77fd5 -> 4535aec9d
WICKET-6155 escape JavaScript object values Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/4535aec9 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/4535aec9 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/4535aec9 Branch: refs/heads/wicket-6.x Commit: 4535aec9dffdcf88f06dba207fb7d7a19108466b Parents: e53e77f Author: Sven Meier <[email protected]> Authored: Fri May 20 17:26:01 2016 +0200 Committer: Sven Meier <[email protected]> Committed: Fri May 20 19:00:52 2016 +0200 ---------------------------------------------------------------------- .../examples/ajax/builtin/modal/ModalWindowPage.java | 2 +- .../extensions/ajax/markup/html/modal/ModalWindow.java | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/4535aec9/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/modal/ModalWindowPage.java ---------------------------------------------------------------------- diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/modal/ModalWindowPage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/modal/ModalWindowPage.java index aebe38a..7e9fa5f 100644 --- a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/modal/ModalWindowPage.java +++ b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/modal/ModalWindowPage.java @@ -91,7 +91,7 @@ public class ModalWindowPage extends BasePage add(modal2 = new ModalWindow("modal2")); modal2.setContent(new ModalPanel1(modal2.getContentId())); - modal2.setTitle("This is modal window with panel content."); + modal2.setTitle("Modal window\n'panel\" content."); modal2.setCookieName("modal-2"); modal2.setCloseButtonCallback(new ModalWindow.CloseButtonCallback() http://git-wip-us.apache.org/repos/asf/wicket/blob/4535aec9/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java index 4831872..b3bbf12 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java @@ -41,6 +41,7 @@ import org.apache.wicket.resource.CoreLibrariesContributor; import org.apache.wicket.util.io.IClusterable; import org.apache.wicket.util.lang.EnumeratedType; import org.apache.wicket.util.string.AppendingStringBuffer; +import org.apache.wicket.util.string.Strings; /** * Modal window component. @@ -1177,10 +1178,16 @@ public class ModalWindow extends Panel * @param key * @param value */ - private void appendAssignment(final AppendingStringBuffer buffer, final CharSequence key, - final CharSequence value) + private void appendAssignment(final AppendingStringBuffer buffer, final CharSequence key, CharSequence value) { buffer.append(key).append("=\""); + + if (value != null) + { + value = Strings.replaceAll(value, "\"", "\\\""); + value = Strings.replaceAll(value, "\n", "\\n"); + } + buffer.append(value); buffer.append("\";\n"); }
