/// <summary>
/// Return a substring after the last instance of the passed in character.
/// </summary>
function stringAfterLast(data, character)
{
	return (data.lastIndexOf(character) > 0) ? data.substring(data.lastIndexOf(character) + 1, data.length) : data;
}

/// <summary>
/// Utility function that opens any new window commands.
/// </summary>
$(document).ready(function() {
    $("a[@rel = 'external']").click(
		function () {
			var link = $(this);
			var qs = getQueryString(link.attr("href"));
			window.open(link.attr("href"), link.attr("id"), "width=" + qs.w + ";height=" + qs.h + ";");
			return false;
		}
    );
}); 

/// <summary>
/// Utility function that parses the query string to a structured object.
/// </summary>
function getQueryString(url)
{ 
	var args = new Object(); 
	var query = url.substring(url.indexOf("?") + 1);
	var pairs = query.split("&"); 
	for(var i = 0; i < pairs.length; i++)
	{ 
		var pos = pairs[i].indexOf("="); 
		if (pos == -1) continue; 
		var argname = pairs[i].substring(0,pos); 
		var value = pairs[i].substring(pos+1); 
		args[argname] = unescape(value); 
	} 
	return args; 
}