/*
---

script: PagePreLoader.js

description: A plugin that hides the page content until it's ready.

license: MIT-style license

authors:
- Samuel Birch

requires:
- core:1.2.4
- more:Assets

provides: [PagePreLoader]

...
*/

var PagePreLoader=new Class({Implements:[Options,Events],options:{css:"/_common/css/loading.css",delay:0,fade:false,typekitId:null},initialize:function(a){this.setOptions(a);
this.loaders=new Hash();this.timer=$time();this.css=new Asset.css(this.options.css);if(this.options.typekitId){this.add("typekit");
this.loadFonts()}this.add("loaded")},add:function(b){var a=b||$time();this.loaders.set(a,false);return a},update:function(b,a){this.loaders.set(b,a||true);
this.check()},remove:function(a){this.loaders.erase(a)},check:function(){if(!this.loaders.hasValue(false)){var a=$time();
if(a>this.timer+(this.options.delay*1000)){this.show()}else{this.show.delay((this.timer+(this.options.delay*1000))-a,this)
}}},show:function(){if(this.options.fade&&!Browser.Engine.trident){$(document.body).fade("hide")}if(Browser.Engine.trident5){this.css.href=""
}this.css.destroy();if(this.options.fade&&!Browser.Engine.trident){$(document.body).fade("in")}this.fireEvent("complete");
$(document.body).focus()},loadFonts:function(){var a=this;WebFont.load({typekit:{id:this.options.typekitId},loading:function(){},fontloading:function(b,c){},fontactive:function(b,c){},fontinactive:function(b,c){},active:function(){a.update("typekit")
},inactive:function(){a.update("typekit")}})}});


var loader=new PagePreLoader({css:"/css/lib/mooPagePreLoader.css",fade:true});window.addEvent("load",function(){loader.update("loaded")});
