X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=engine%2Fjs%2Fonavail.js;fp=engine%2Fjs%2Fonavail.js;h=6740503d09a6569ab585be58bb84c6f00ef2d5c4;hb=fe182ddbd5b3815179db48154db105e60a336e3f;hp=0000000000000000000000000000000000000000;hpb=e93fed6669bd5055da5683753d47df616a0108ce;p=unfold.git diff --git a/engine/js/onavail.js b/engine/js/onavail.js new file mode 100644 index 00000000..6740503d --- /dev/null +++ b/engine/js/onavail.js @@ -0,0 +1,18 @@ +onavail_debug=false; + +function onFunctionAvailable(sMethod, oCallback, oObject, bScope) { + if (eval('typeof ' + sMethod) == 'function') { + if (onavail_debug) console.log("onFunctionAvailable, running"); + bScope ? oCallback.call(oObject) : oCallback(oObject); + } else { + if (onavail_debug) console.log("onFunctionAvailable, delaying for 50 ms"); + setTimeout(function () {onFunctionAvailable(sMethod, oCallback, oObject, bScope);}, 50); + } +} +function onObjectAvailable(sMethod, oCallback, oObject, bScope) { + if (eval('typeof ' + sMethod) == 'object') { + bScope ? oCallback.call(oObject) : oCallback(oObject); + } else { + setTimeout(function () {onObjectAvailable(sMethod, oCallback, oObject, bScope);}, 50); + } +}