diff options
Diffstat (limited to 'js/api/set.js')
| -rw-r--r-- | js/api/set.js | 57 |
1 files changed, 37 insertions, 20 deletions
diff --git a/js/api/set.js b/js/api/set.js index 92cc071..19f3f26 100644 --- a/js/api/set.js +++ b/js/api/set.js @@ -6,18 +6,23 @@ function save_shader(){ image_url: $("#url").val(), username: user.username, name: $("#shader-name").val() || "", - shader_id: shader_id_root + shader_id: shader_id_root, + width: $("#width").int() || "", + height: $("#height").int() || "" } - var blob = dataUriToBlob(cc.clone().resize(200,200).canvas.toDataURL("image/png")) + var thumb = make_thumbnail() + status('saving..') console.log(params) - $.post("http://asdf.us/cgi-bin/im/shader/save", params, function(resp){ + $.post("/cgi-bin/im/shader/save", params, function(resp){ console.log(resp); data = JSON.parse(resp) if (data.ERROR){ + status('error saving shader') alert(data.ERROR) return false } + status('uploading thumbnail') if (! shader_id_root) { shader_id_root = data.id; } @@ -28,23 +33,35 @@ function save_shader(){ $shader = display_shader(params) $("#shader-gallery").prepend($shader) - var form = new FormData(); + save_thumbnail(data.id, thumb, $shader) + }) +} - form.append("id", data.id); - form.append("qqfile", blob); - $.ajax({ - url: "http://asdf.us/cgi-bin/im/shader/thumbnail_upload", - type: "POST", - data: form, - processData: false, - contentType: false, - }).done(function(resp){ - console.log(resp); - var data = JSON.parse(resp) - if (data.success) { - $shader.find("img").attr("src", data.url) - } - }); +function make_thumbnail(){ + return dataUriToBlob(cc.clone().resize(200,200).canvas.toDataURL("image/png")) +} - }) +function save_thumbnail(id, thumb, $shader){ + if (! id || id == "") return + + thumb = thumb || make_thumbnail() + + var form = new FormData(); + + form.append("id", id); + form.append("qqfile", thumb); + $.ajax({ + url: "/cgi-bin/im/shader/thumbnail_upload", + type: "POST", + data: form, + processData: false, + contentType: false, + }).done(function(resp){ + console.log(resp); + status('') + var data = JSON.parse(resp) + if (data.success) { + $shader.find("img").attr("src", data.url) + } + }); } |
