var INTERSYSTEM = INTERSYSTEM || {};
(function(I, $){
;

I.setupLinksForServerUp = function() {
	var links = $('a.onlyForServerUp'),
		testUrl = I.testGtiUrl;
	links.each(function(){
		var link = $(this),
			href = link.attr('href'),
			loadOutside = link.hasClass('loadOutside');
		
		link.click(function(){
			$.getJSON(testUrl, null, function(data){
				if (data.server.isUp) {
					if (loadOutside) {
						window.open(href);
					}
					else {
						location.href = href;
					}
				}
				else {
					I.popupServerError();
				}
			});
			return false;
		});
	});
};

I.serverErrorDialog = {
	box: null,
	setup: function() {
		this.box = $("#serverErrorDialog");
		this.box.dialog({
			autoOpen: false,
			modal: true,
			title: 'Portal'
		});
	}
};

I.popupServerError = function() {
	I.serverErrorDialog.box.dialog('open');
};

$(document).ready(function(){
	I.setupLinksForServerUp();
	I.serverErrorDialog.setup();
});

})(INTERSYSTEM, jQuery);