summaryrefslogtreecommitdiff
path: root/public/assets/javascripts/mx/primitives/mx.youtube.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/javascripts/mx/primitives/mx.youtube.js')
-rw-r--r--public/assets/javascripts/mx/primitives/mx.youtube.js29
1 files changed, 18 insertions, 11 deletions
diff --git a/public/assets/javascripts/mx/primitives/mx.youtube.js b/public/assets/javascripts/mx/primitives/mx.youtube.js
index b1d3dfb..9925c22 100644
--- a/public/assets/javascripts/mx/primitives/mx.youtube.js
+++ b/public/assets/javascripts/mx/primitives/mx.youtube.js
@@ -24,6 +24,7 @@ MX.Youtube = MX.Object3D.extend({
},
load: function (ops) {
+ var base = this
var uid = 'player-' + Uid ()
var preload = document.createElement("div")
preload.id = uid
@@ -34,16 +35,22 @@ MX.Youtube = MX.Object3D.extend({
preload.className = "preload"
this.el.appendChild(preload)
- // simply defer if not loaded yet
- YT = YT || {
- Player: function(){
- var args = arguments
- setTimeout(function(){
- base.player = YT.loading ? YT.Player (args) : new YT.Player(args)
- }, 300)
- }
- }
-
+ this.defer(uid)
+ },
+
+ defer: function (uid){
+ if (! YT || ! YT.loaded) {
+ setTimeout(function(){
+ console.log("hwat")
+ this.defer(uid)
+ }.bind(this), 300)
+ }
+ else {
+ this.build(uid)
+ }
+ },
+
+ build: function(uid){
this.player = new YT.Player(uid, {
videoId: this.media.token,
width: this.width,
@@ -120,5 +127,5 @@ MX.Youtube = MX.Object3D.extend({
})
window.onYouTubePlayerAPIReady = function(){
- // console.log("youtube ready")
+ console.log("youtube ready")
}