if (!window.tinydbToys) {
	tinydbToys = {};
}

tinydbToys.addUrlId = function (id) {
	var comma = ',';
	if ($('#url').attr('href').match(/(\/|=)$/)) { comma = ''; }
	$('#url').attr('href', $('#url').attr('href') + comma + id)
		.html($('#url').html() + comma + id);
};

tinydbToys.load = function (id) {
	jQuery.tinydb.read(id, function (data) {
		tinydbToys.addUrlId(id);
		if (!data.toytype) {
			data.toytype = 'default';
		}

		if (tinydbToys[data.toytype] && tinydbToys[data.toytype].callback) {
			tinydbToys[data.toytype].callback(data);
		}
		else {
			alert('Couldn\'t find a handler for data of toytype: ' + data.toytype);
		}
	});		
};

$(document).ready(function () {
	for (toy in tinydbToys) {
		var toy = tinydbToys[toy];
		if (toy.onload) {
			toy.onload();
		}
	}

	var url = document.location.href.split('/');
	var id = url[url.length-1]
	if (id) {
		var ids = id.split(',');
		for (i=0; i < ids.length; i++) {
			tinydbToys.load(ids[i]);
		}
	}
});
