/**
 * Custom javascript/css loader for alt-tag.com.
 * By Tom Gregory, 2006
 * tom@alt-tag.com
 *
 * Loads various javascript/css files only if needed.
 *
 * You are free to use this file for non-commercial/educational purposes.
 * Please let me know if you do, and give me a bit of credit!
 **/
if (typeof TagLoader == 'undefined') {
	window.TagLoader = {
		BASE_JS: '/js/min/',
		BASE_CSS: '/css/',
		loaded: {},
		css: [],
		addEvent: function (el, evtName, fn) {
			if (el.addEventListener) {
				el.addEventListener(evtName, fn, false);
				return true;
			}
			if (el.attachEvent){
				var r = el.attachEvent('on'+evtName, fn);
				return r;
			}
		},
		load: function (which) {
			if (this.loaded[which]) {return;}
			switch (which) {
			case 'litebox':
				this.load('prototype.lite');
				this.load('moo.fx');
				this.loadJs('litebox-1.0.js');
				//this.loadJs('litebox-setup.js');
				this.loadCss('lightbox.css');
				this.addEvent(window, 'load', function () {eval('initLightbox()');});
				break;
			case 'prototype.lite':
				if (this.loaded['prototype']) {return;}
				this.loadJs('prototype.lite.js');
				break;
			case 'moo.fx':
				this.loadJs('moo.fx.js');
				break;
			default:
				return;
			}
			this.loaded[which] = 1;
		},
		loadJs: function (fileName) {
			var head = document.getElementsByTagName("head")[0];
			var s = document.createElement('script');
			s.type = 'text/javascript';
			s.src = this.BASE_JS + fileName;
			head.appendChild(s);
//			document.write('<'+'script type="text/javascript" src="');
//			document.write(this.BASE_JS + fileName + '"><' + '/script>');
		},
		loadCss: function (fileName) {
			this.css.push(fileName);
			this.addEvent(window, 'load', function () {
				var objHead = document.getElementsByTagName('head');
				if (!objHead[0]) {return;}
				var objHead = objHead[0];
				var obj;
				for (var i = 0; i < TagLoader.css.length; i++) {
					obj = objHead.appendChild(document.createElement('link'));
					obj.rel = 'stylesheet';
					obj.href = TagLoader.BASE_CSS +TagLoader.css[i];
					obj.type = 'text/css';
				}
			});
		}
	}
}