// All globals will live in here
var g = {}

// Load templates
templateFiles = [
	'base',
	'chat',
	'comments',
	'compare',
	'crumb',
	'crumblast',
	'event',
	'groups',
	'items',
	'itemsheader',
	'people'
];
g.templates = [];
loadedTemplates = 0;
function loadTemplates() {
	$.each(templateFiles, function(index, templateFile) {
		$.ajax({
			url: 't/' + templateFile + '.htm',
			isLocal: true,
			success: function(template) {
				g.templates[templateFile] = template;
				loadedTemplates++;
			}
		});
	});
}

// Load demo data
dataFiles = [
	'groups',
	'items',
	'people'
];
g.data = [];
loadedDataFiles = 0;
function loadDataFiles() {
	$.each(dataFiles, function(index, dataFile) {
		$.getJSON('d/' + dataFile + '.json', function(data) {
			g.data[dataFile] = data;
			loadedDataFiles++;
		});
	});
}

// Wait for the stuff to load before kicking off the demo
function init() {
	if (
		loadedTemplates != templateFiles.length &&
		loadedDataFiles != dataFiles.length
	) {
		setTimeout(init, 100);
        return;
	}

	demoMain();
}

$(document).ready(function() {
	loadTemplates();
	loadDataFiles();
	init();
});
