var source_cache = {};
var last_source  = '';

function load_source(filename, reload)
{
	if(typeof source_cache[filename] == 'undefined' || reload == true) {
		new Insertion.Top('source', '<p><em>Laddar <strong>' + filename + '</strong>...</em></p>');
		new Ajax.Updater('source', '/source/' + filename, {
			encoding:   'iso-8859-1',
			method:     'get',
			onComplete: function() {
				source_cache[filename] = $('source').innerHTML;
			}
		});
	} else {
		$('source').innerHTML = source_cache[filename];
	}
}

function show_source(filename)
{
	if(!$('source').visible())
		$('source').show();

	load_source(filename, last_source == filename ? true : false);
	last_source = filename;
}

