app/views/sketchily/_embed.js.erb~ in sketchily-1.0.2 vs app/views/sketchily/_embed.js.erb~ in sketchily-1.0.3

- old
+ new

@@ -7,25 +7,30 @@ # hide_image_tool # hide_hyperlink_tool %> var svgCanvas_<%= id %> = null; +function submitHandler_<%= id %>(e) { + svgCanvas_<%= id %>.getSvgString()(handleSvgData_<%= id %>); + e.preventDefault(); + e.stopImmediatePropagation(); +} + function attachSubmitHandler_<%= id %>() { - $("input#<%= id %>").closest("form").one("submit", function(event) { - svgCanvas_<%= id %>.getSvgString()(handleSvgData_<%= id %>); - return false; - }); + $("input#<%= id %>").closest("form").on("submit", submitHandler_<%= id %>); } function handleSvgData_<%= id %>(data, error) { if (error) { alert('Error: ' + error); } else { $("input#<%= id %>").attr("value", svgedit.utilities.encode64("<?xml version=\"1.0\"?>\n" + data)); + $("input#<%= id %>").closest("form").off("submit", submitHandler_<%= id %>); + waitingForCallback_<%= id %> = false; + $("input#<%= id %>").closest("form").one("submit", attachSubmitHandler_<%= id %>); $("input#<%= id %>").closest("form").submit(); - attachSubmitHandler_<%= id %>(); } } function initEmbed_<%= id %>() { var frame = document.getElementById('svgedit_<%= id %>'); @@ -51,12 +56,12 @@ <% if hide_hyperlink_tool %> var hyperlinkTool = doc.getElementById('tool_make_link'); hyperlinkTool.parentNode.removeChild(hyperlinkTool); <% end %> - - attachSubmitHandler_<%= id %>(); svgCanvas_<%= id %>.setSvgString(svgedit.utilities.decode64("<%= value.try(:squish) %>")); + + attachSubmitHandler_<%= id %>(); } -$().load(initEmbed_<%= id %>); +$("#svgedit_<%= id %>").load(initEmbed_<%= id %>);