summaryrefslogtreecommitdiff
path: root/js/pb.js
diff options
context:
space:
mode:
authoryo mama <pepper@scannerjammer.com>2015-02-12 18:29:27 -0800
committeryo mama <pepper@scannerjammer.com>2015-02-12 18:29:27 -0800
commitae0e6d987781d2fbf225611e2f8df37380a2bbcd (patch)
tree0c19a2a320588c7852bc8cdbff5da40624475b71 /js/pb.js
first
Diffstat (limited to 'js/pb.js')
-rw-r--r--js/pb.js74
1 files changed, 74 insertions, 0 deletions
diff --git a/js/pb.js b/js/pb.js
new file mode 100644
index 0000000..0e44fc8
--- /dev/null
+++ b/js/pb.js
@@ -0,0 +1,74 @@
+var loadUrl = '/img/load';
+function getCookie(name) {
+ var arg = name + "=";
+ var alen = arg.length;
+ var clen = document.cookie.length;
+ var i = 0;
+ while (i < clen) {
+ var j = i + alen;
+ if (document.cookie.substring(i, j) == arg) {
+ return getCookieVal(j);
+ }
+ i = document.cookie.indexOf(" ", i) + 1;
+ if (i == 0)
+ break;
+ }
+ return null;
+}
+
+function saveScene(){
+ if (!renderer) {
+ alert("WebGL Rendering was not started yet!");
+ } else {
+ // Prepare data
+ var dataUrl = renderer.domElement.toDataURL("image/png");
+ //Remove header
+ dataUrl = dataUrl.replace("data:image/png;base64,", "");
+ var seconds = new Date() / 1000;
+ seconds = seconds.toFixed(0);
+ var userName = getCookie("imname");
+ var filename;
+ if (!userName) {
+ filename = seconds + "_imgrid";
+ } else {
+ filename = seconds + "_imgrid_" + userName;
+ }
+ filename += ".png";
+
+ // Send post request
+ $.post(
+ '/cgi-bin/saveImg.cgi',
+ { name: filename, picture: dataUrl },
+ function(response) {
+ console.log(response);
+ }
+ );
+ }
+}
+
+
+function loadNew() {
+ //Get values for url
+ textureURL = document.getElementById("texture").value;
+ heightmapURL = document.getElementById("heightmap").value;
+
+ //Validate urls
+ if (isUrl(textureURL) && isUrl(heightmapURL)){
+ //Post to server
+ $.post(
+ loadUrl,
+ { texture: textureURL, heightmap: heightmapURL },
+ function(response) {
+ console.log(response);
+ }
+ );
+ } else {
+ //Invalid URL(s)
+ alert("Texture and/or heightmap URLs are invalid.\nAlso note that only JPG pictures are supported!");
+ }
+}
+
+function isUrl(s) {
+ var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?\.(jpg|JPG|jpeg|JPEG)/;
+ return regexp.test(s);
+}