summaryrefslogtreecommitdiff
path: root/public/assets/javascripts/rectangles
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2014-06-23 18:11:59 -0400
committerJules Laplace <jules@okfoc.us>2014-06-23 18:11:59 -0400
commiteac88be42cc1a7f85c7a0533414e1047e0addc39 (patch)
treebe950e424f09bac52450d99d89854c72ef28cd5d /public/assets/javascripts/rectangles
parentb0ab3271996d542e718e8e3fc910053d60cf81f6 (diff)
stubbing in stuff for videos/embeds
Diffstat (limited to 'public/assets/javascripts/rectangles')
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/_scenery.js6
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/types/_object.js3
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/types/embed.js38
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/types/image.js1
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/types/video.js12
5 files changed, 58 insertions, 2 deletions
diff --git a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
index 74801e9..d44ad41 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
@@ -19,9 +19,13 @@ var Scenery = new function(){
scene_media = new Scenery.types.image ({ media: media, wall: wall, id: id })
break
+ case 'video':
+ scene_media = new Scenery.types.video ({ media: media, wall: wall, id: id })
+ break
+
case 'youtube':
case 'vimeo':
- scene_media = new Scenery.types.video ({ media: media, wall: wall, id: id })
+ scene_media = new Scenery.types.embed ({ media: media, wall: wall, id: id })
break
}
diff --git a/public/assets/javascripts/rectangles/engine/scenery/types/_object.js b/public/assets/javascripts/rectangles/engine/scenery/types/_object.js
index 05c760b..65f3a94 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/types/_object.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/types/_object.js
@@ -35,6 +35,9 @@ Scenery.types.base = Fiber.extend(function(base){
destroy: function(){
this.unbind()
scene.remove(this.mx)
+ this.mx.media = null
+ this.mx.ops = null
+ this.mx = null
this.move = null
this.media = null
this.dimensions = null
diff --git a/public/assets/javascripts/rectangles/engine/scenery/types/embed.js b/public/assets/javascripts/rectangles/engine/scenery/types/embed.js
new file mode 100644
index 0000000..58bc58d
--- /dev/null
+++ b/public/assets/javascripts/rectangles/engine/scenery/types/embed.js
@@ -0,0 +1,38 @@
+
+Scenery.types.embed = Scenery.types.base.extend(function(base){
+
+ var exports = {
+
+ init: function(opt){
+ base.init.call(this, opt)
+ this.scale = this.media.scale = 300 / max(300, this.media.width)
+
+ this.build()
+ this.bind()
+ this.set_wall()
+ this.recenter()
+ },
+
+ build: function(){
+ this.mx = new MX.Embed({
+ src: this.media.url,
+ poster: this.media.thumbnail,
+ media: this.media,
+ y: this.scale * this.media.height/2,
+ backface: false,
+ })
+ scene.add( this.mx )
+ },
+
+ serialize: function(){
+ var data = base.serialize.call(this)
+ return data
+ },
+
+ deserialize: function(data){
+ this.mx.move(data.position)
+ },
+ }
+
+ return exports
+})
diff --git a/public/assets/javascripts/rectangles/engine/scenery/types/image.js b/public/assets/javascripts/rectangles/engine/scenery/types/image.js
index b668e6a..99c1810 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/types/image.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/types/image.js
@@ -17,6 +17,7 @@ Scenery.types.image = Scenery.types.base.extend(function(base){
this.mx = new MX.Image({
src: this.media.url,
scale: this.scale,
+ media: this.media,
y: this.scale * this.media.height/2,
backface: false,
})
diff --git a/public/assets/javascripts/rectangles/engine/scenery/types/video.js b/public/assets/javascripts/rectangles/engine/scenery/types/video.js
index b34e55c..a8b3722 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/types/video.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/types/video.js
@@ -14,13 +14,23 @@ Scenery.types.video = Scenery.types.base.extend(function(base){
},
build: function(){
- this.mx = new MX.Image({
+ this.mx = new MX.Video({
src: this.media.url,
+ media: this.media,
y: this.scale * this.media.height/2,
backface: false,
})
scene.add( this.mx )
},
+
+ play: function(){
+ },
+
+ pause: function(){
+ },
+
+ seek: function(){
+ },
serialize: function(){
var data = base.serialize.call(this)