summaryrefslogtreecommitdiff
path: root/client/assets/javascripts/app.js
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2014-06-03 16:24:10 -0400
committerJules Laplace <jules@okfoc.us>2014-06-03 16:24:28 -0400
commit607f69c67a5b4dc72d2754192e3cdf67d0ad11d0 (patch)
tree6556e7922c5bedb274bb1650e5dd100643a7895d /client/assets/javascripts/app.js
parentd31259291d807c851de4396921e0c26b6dd8dce2 (diff)
partitioning client and serveR
Diffstat (limited to 'client/assets/javascripts/app.js')
-rw-r--r--client/assets/javascripts/app.js119
1 files changed, 119 insertions, 0 deletions
diff --git a/client/assets/javascripts/app.js b/client/assets/javascripts/app.js
new file mode 100644
index 0000000..1f7fc7d
--- /dev/null
+++ b/client/assets/javascripts/app.js
@@ -0,0 +1,119 @@
+
+var is_iphone = (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i));
+var is_ipad = (navigator.userAgent.match(/iPad/i));
+var is_android = (navigator.userAgent.match(/Android/i))
+var is_mobile = is_iphone || is_ipad || is_android;
+
+if (is_mobile) {
+ window.location.href = "mobile.html"
+}
+else if ($.browser.msie || ! has3d()) {
+ window.location.href = "error.html"
+}
+
+var scene,
+ cam,
+ map;
+
+var viewHeight = window.viewHeight || 150
+
+var app = new function(){}
+app.dragging = false
+
+app.init = function () {
+
+ var mainbox,
+ coords,
+ box, size,
+ floor,
+ movements
+
+ scene = new MX.Scene().addTo('#scene')
+ scene.width = window.innerWidth
+ scene.height = window.innerHeight
+ scene.perspective = window.innerHeight
+
+ window.onresize = function () {
+ scene.width = window.innerWidth
+ scene.height = window.innerHeight
+ scene.perspective = window.innerHeight
+ scene.update()
+ }
+
+ cam = scene.camera
+ cam.y = viewHeight
+
+ app.tube = new Tube ()
+
+ if (MX.Map) map = app.map = new MX.Map()
+
+ movements = app.movements = new MX.Movements(cam, viewHeight)
+ movements.init()
+
+ function animate (t) {
+ requestAnimationFrame(animate)
+ environment.update(t)
+ window.path && path.update(t)
+ movements.update()
+ scene.update()
+ }
+
+ window.inAnimation = true
+
+ var loader = new Loader(function(){
+ $("#loader").hide()
+ window.environment && window.environment.init()
+ window.editor && window.editor.init()
+ window.path && window.path.init()
+ animate()
+ })
+
+ // loader.preloadImages([])
+ loader.ready()
+}
+
+app.on = function(){
+ app.tube.on.apply(app.tube, arguments)
+}
+
+app.off = function(){
+ app.tube.off.apply(app.tube, arguments)
+}
+
+app.position = function(obj){
+ return {
+ x: obj.x,
+ y: obj.y,
+ z: obj.z,
+ rotationX: obj.rotationX,
+ rotationY: obj.rotationY
+ }
+}
+
+var share = {
+ init: function(){
+ share.bind()
+ },
+ bind: function(){
+ $("#facebook").click(share.facebook)
+ $("#twitter").click(share.twitter)
+ },
+ url: "http://vvalls.com/",
+ facebook_msg: "",
+ twitter_msg: "",
+ openLink: function (url) {
+ window.open(url, "_blank");
+ },
+ facebook: function () {
+ var url = "https://www.facebook.com/share.php?u=" + encodeURIComponent(share.url) + "&t=" + encodeURIComponent(share.facebook_msg);
+ share.openLink(url);
+ return false;
+ },
+ twitter: function () {
+ var url = "https://twitter.com/home?status=" + encodeURIComponent(share.url + " " + share.twitter_msg);
+ share.openLink(url);
+ return false;
+ }
+}
+
+document.addEventListener('DOMContentLoaded', app.init)