]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - jssource/src_files/include/SugarCharts/Jit/FlashCanvas/canvas2png.js
Release 6.5.0
[Github/sugarcrm.git] / jssource / src_files / include / SugarCharts / Jit / FlashCanvas / canvas2png.js
1 /*
2  * canvas2png.js
3  *
4  * Copyright (c) 2010-2011 Shinya Muramatsu
5  * Released under the MIT License
6  * http://flashcanvas.net/
7  */
8
9 (function(doc) {
10
11 var scripts = doc.getElementsByTagName("script");
12 var script  = scripts[scripts.length - 1];
13 var url     = script.getAttribute("src").replace(/[^\/]+$/, "save.php");
14
15 window.canvas2png = function(canvas) {
16     var tagName = canvas.tagName.toLowerCase();
17     if (tagName !== "canvas") {
18         return;
19     }
20
21     if (typeof FlashCanvas !== "undefined") {
22         FlashCanvas.saveImage(canvas);
23     } else {
24         var form  = doc.createElement("form");
25         var input = doc.createElement("input");
26
27         form.setAttribute("action", url);
28         form.setAttribute("method", "post");
29
30         input.setAttribute("type",  "hidden");
31         input.setAttribute("name",  "dataurl");
32         input.setAttribute("value", canvas.toDataURL());
33
34         doc.body.appendChild(form);
35         form.appendChild(input);
36         form.submit();
37         form.removeChild(input);
38         doc.body.removeChild(form);
39     }
40 }
41
42 })(document);