var LinkAppend =
{
	location: function (params)
	{
		var defaultParams =
		{
			"url": (params && params.url)? params.url: "",
			"query": (params && params.query)? params.query: "",
			"win": (params && params.win)? params.win: window,
			"target": (params && params.target)? params.target: "_blank",
			"width": (params && params.width)? params.width: 800,
			"height": (params && params.height)? params.height: 600,
			"scrollbars": (params && params.scrollbars)? params.scrollbars: "yes",
			"resizable": (params && params.resizable)? params.resizable: "yes",
			"titlebar": (params && params.titlebar)? params.titlebar: "yes",
			"location": (params && params.location)? params.location: "yes",
			"menubar": (params && params.menubar)? params.menubar: "yes",
			"status": (params && params.status)? params.status: "no",
			"toolbar": (params && params.toolbar)? params.toolbar: "no"
		};
		var top = screen.height / 2 - defaultParams.height / 2;
		var left = screen.width / 2 - defaultParams.width / 2;
		var url = this.addQueryString (defaultParams.url, defaultParams.query);
		
		window.open (url, defaultParams.target,
				     "top=" + top +
				     ",left=" + left +
				     ",width=" + defaultParams.width +
				     ",height=" + defaultParams.height +
				     ",scrollbars=" + defaultParams.scrollbars +
				     ",resizable=" + defaultParams.resizable +
				     ",titlebar=" + defaultParams.titlebar +
				     ",location=" + defaultParams.location +
				     ",menubar=" + defaultParams.menubar +
				     ",status=" + defaultParams.status +
				     ",toolbar=" + defaultParams.toolbar);
					 
		return;
	},
	
	addQueryString: function (url, queryString)
	{
		var newUrl = url;
		
		if (queryString.length > 0)
		{
			var questionIndex = newUrl.indexOf ("?");
			if (questionIndex >= 0)
			{
				var lastCharacter = newUrl [newUrl.length - 1];
				if ((lastCharacter == "?") || (lastCharacter == "&"))
				{
					newUrl += queryString;
				}
				else
				{
					newUrl += "&" + queryString;
				}
			}
			else
			{
				newUrl += "?" + queryString;
			}
		}

		return newUrl;
	}	
};
