summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2015-04-13 16:45:01 -0400
committerJules Laplace <jules@okfoc.us>2015-04-13 16:45:20 -0400
commite791ea8b3d6855b62962e4c89ad2c9f86126daf1 (patch)
tree09709428f7845337954ef79dd12e6f6e71b5e883
parent741bb035e10a1d89dfaa60ab79d25a63d2ff4726 (diff)
stub in loader
-rw-r--r--site/public/assets/javascripts/_env.js29
-rw-r--r--site/public/assets/javascripts/app.js2
-rw-r--r--site/public/assets/javascripts/vendor/loader.js23
3 files changed, 47 insertions, 7 deletions
diff --git a/site/public/assets/javascripts/_env.js b/site/public/assets/javascripts/_env.js
index ca94ee2..2c183aa 100644
--- a/site/public/assets/javascripts/_env.js
+++ b/site/public/assets/javascripts/_env.js
@@ -13,9 +13,7 @@ var done_loading = false, menu_open = false, entry_open = false
var environment = {}, hashes = {}
environment.init = function(){
- var loader = new Loader(function(){
- environment.ready()
- })
+ var loader = new Loader(environment.ready, new HustleLoader)
var preloadImages = $("#preload-image-list").html().split("\n").filter(function(s){ return !!s })
loader.preloadImages(box_images.map(function(url){
return base_href + url
@@ -495,3 +493,28 @@ Strip.prototype.update = function(t){
el.y = el.height / 2
})
}
+
+function HustleLoader () {
+ function init(){
+ build()
+ }
+ function build(){
+ setTimeout(function(){ $("#loader_svg").addClass("slide") }, 100)
+
+// loading_text.innerHTML = "<span>" + loading_text.innerHTML.split("").join("</span><span>") + "</span>"
+ }
+ this.update = function (i) {
+// loading_status.style.width = ((100*(1-i))|0) + "%"
+// loader_svg_status.setAttribute("y", (i) * 245)
+ }
+ this.finish = function(cb){
+ $("#loader_rapper").addClass("hidden")
+ setTimeout(cb, 100)
+ setTimeout(function(){
+ $("#loader_rapper").hide()
+ }, 300)
+ }
+ init()
+}
+
+
diff --git a/site/public/assets/javascripts/app.js b/site/public/assets/javascripts/app.js
index dd68726..8d20e65 100644
--- a/site/public/assets/javascripts/app.js
+++ b/site/public/assets/javascripts/app.js
@@ -18,7 +18,7 @@ app.init = function () {
}
app.launch = function () {
- if ($.browser.msie || ! has3d()) { return app.fallback() }
+ // if ($.browser.msie || ! has3d()) { return app.fallback() }
scene = new MX.Scene().addTo('#scene')
diff --git a/site/public/assets/javascripts/vendor/loader.js b/site/public/assets/javascripts/vendor/loader.js
index 4c1c8cd..b939941 100644
--- a/site/public/assets/javascripts/vendor/loader.js
+++ b/site/public/assets/javascripts/vendor/loader.js
@@ -1,13 +1,17 @@
var Loader = Loader || (function(){
- function Loader (readyCallback){
+ function Loader (readyCallback, view){
this.assets = {};
this.images = [];
this.readyCallback = readyCallback;
+ this.count = 0
+ this.view = view
+ this.loaded = false
}
// Register an asset as loading
Loader.prototype.register = function(s){
this.assets[s] = false;
+ this.count += 1
}
// Signal that an asset has loaded
@@ -16,10 +20,18 @@ var Loader = Loader || (function(){
this.assets[s] = true;
if (this.loaded) return;
+
+ this.view && this.view.update( this.percentRemaining() )
+
if (! this.isReady()) return;
this.loaded = true;
- this.readyCallback && this.readyCallback();
+ if (this.view) {
+ this.view && this.view.finish(this.readyCallback)
+ }
+ else {
+ this.readyCallback && this.readyCallback();
+ }
}
// (boolean) Is the loader ready?
@@ -31,6 +43,11 @@ var Loader = Loader || (function(){
}
return true;
}
+
+ // (float) Percentage of assets remaining
+ Loader.prototype.percentRemaining = function(){
+ return this.remainingAssets() / this.count
+ }
// (int) Number of assets remaining
Loader.prototype.remainingAssets = function(){
@@ -38,7 +55,7 @@ var Loader = Loader || (function(){
for (var s in this.assets) {
if (this.assets.hasOwnProperty(s) && this.assets[s] != true) {
n++;
- console.log('remaining: ' + s);
+ // console.log('remaining: ' + s);
}
}
return n;