/************************************************************************************************
*************************************************************************************************

  $Id: core.js 1 2009-05-27 18:31:53Z bkuberek $
  
  @type         JavaScript
  @author       Bastian Kuberek - http://bkuberek.com
  @copyright    Copyright (C) 2009 BellWell Charters. All rights reserved.                              

*************************************************************************************************
************************************************************************************************/

// use at the end of includes to avoid browser from caching files. Will refresh once a day.
var decache = function() {
	var date = new Date(),
		m = ((date.getMonth()+1) < 10) ? '0'+(date.getMonth()+1) : date.getMonth()+1,
		d = (date.getDate() < 10) ? '0'+date.getDate() : date.getDate();
	return '?d='+m+''+d;
};

// includes a script file
var include_script = function(file, docwrite) {
	var docwrite = (docwrite === true) ? true : false;
	if (docwrite === true) {
		document.write(unescape('%3Cscript type="text/javascript" charset="utf-8" src="'+file+''+decache()+'"%3E%3C/script%3E'));
	} else {
		var script		= document.createElement('script');
		script.type		= 'text/javascript';
		script.charset	= 'utf-8';
		script.src		= file+''+decache();
		document.getElementsByTagName('head').item(0).appendChild(script);
	};
};

// Define Constants and Load additional scripts
var PATH = (function(){
	var default_includes = 'lib/prototype,lib/scriptaculous,control.modal,bellwell';
	var s = document.getElementsByTagName("script");
	for (i=0; i<s.length; i++) {
		if (s[i].src && s[i].src.match(/core\.js(\?.*)?$/)) {			
			var path = s[i].src.replace(/scripts\/core\.js(\?.*)?$/,'');
			var includes = s[i].src.match(/\?.*load=([a-z,]*)/);
			includes = (includes ? includes[1] : default_includes).split(',');
			for (n=0; n<includes.length; n++) {
				include_script(path+'scripts/'+includes[n]+'.js', true);
			};
			return path;
		};
	};
})();
var PATH_SCRIPTS	= PATH+'scripts/';
var PATH_CSS		= PATH+'css/';
var PATH_IMAGES		= PATH+'images/';

// ==============
// PAGE namespace
// ==============
if(typeof(PAGE) == "undefined") {
	var PAGE = {
		images: []
	};
};
