Repository: wicket Updated Branches: refs/heads/master 76096b7f9 -> e1157cb78
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/c3468068 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/c3468068 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/c3468068 Branch: refs/heads/master Commit: c3468068b8e13c36438e07c8b8d73ec2419076a5 Parents: 76096b7 Author: Sven Meier <[email protected]> Authored: Fri May 20 17:26:01 2016 +0200 Committer: Sven Meier <[email protected]> Committed: Fri May 20 18:22:18 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/c3468068/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 ed40cb5..49b9440 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/c3468068/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 f2f29ad..36e3d20 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 @@ -42,6 +42,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. @@ -1158,10 +1159,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"); }
