function InitializeQtipHelp() {
	$('.tt, .ttText, .ttComment, .ttError, .ttWarning').each(function (i) {
		var id = $(this)[0].id;
		var content = $('#' + id + 'Content');

		var contentClass = "";
		var cornerClassSuffix = "";
		var isComment = $(this).hasClass("ttComment");
		var isError = $(this).hasClass("ttError");
		var isWarning = $(this).hasClass("ttWarning");

		var tooltipWidth = $(this).hasAttr("ttWidth") ? $(this).attr("ttWidth") : "350";

		if (isComment) {
			contentClass = "qtipContentComment";
			cornerClassSuffix = "Comment";
		}
		else if (isError) {
			contentClass = "qtipContentError";
			cornerClassSuffix = "Error";
		}
		else if (isWarning) {
			contentClass = "qtipContentWarning";
			cornerClassSuffix = "Warning";
		}

		var cornerTarget = "bottomLeft";
		var cornerTooltip = "bottomLeft";
		var cornerClass = "qtipRightBottom" + cornerClassSuffix;
		var tooltipAdjustX = 30;
		var tooltipAdjustY = 16;

		if ($(this).hasAttr("ttPosition", "LeftBottom")) {
			cornerTarget = "bottomLeft";
			cornerTooltip = "bottomRight";
			cornerClass = "qtipLeftBottom" + cornerClassSuffix;
			tooltipAdjustX = -15;
			tooltipAdjustY = 17;
		}
		else if ($(this).hasAttr("ttPosition", "LeftTop")) {
			cornerTarget = "leftTop";
			cornerTooltip = "topRight";
			cornerClass = "qtipLeftTop" + cornerClassSuffix;
			tooltipAdjustX = -15;
			tooltipAdjustY = -14;
		}
		else if ($(this).hasAttr("ttPosition", "TopRight")) {
			cornerTarget = "bottomRight";
			cornerTooltip = "bottomRight";
			cornerClass = "qtipTopRight" + cornerClassSuffix;
			tooltipAdjustX = 15;
			tooltipAdjustY = -30;
		}
		else if ($(this).hasAttr("ttPosition", "TopLeft")) {
			cornerTarget = "bottomRight";
			cornerTooltip = "bottomLeft";
			cornerClass = "qtipTopLeft" + cornerClassSuffix;
			tooltipAdjustX = -30;
			tooltipAdjustY = -30;
		}
		else if ($(this).hasAttr("ttPosition", "BottomLeft")) {
			cornerTarget = "topRight";
			cornerTooltip = "topRight";
			cornerClass = "qtipBottomRight" + cornerClassSuffix;
			tooltipAdjustX = 15;
			tooltipAdjustY = 30;
		}
		else if ($(this).hasAttr("ttPosition", "BottomRight")) {
			cornerTarget = "topRight";
			cornerTooltip = "topLeft";
			cornerClass = "qtipBottomLeft" + cornerClassSuffix;
			tooltipAdjustX = -30;
			tooltipAdjustY = 30;
		}
		else if ($(this).hasAttr("ttPosition", "RightTop")) {
			cornerTarget = "leftTop";
			cornerTooltip = "topLeft";
			cornerClass = "qtipRightTop" + cornerClassSuffix;
			tooltipAdjustX = 30;
			tooltipAdjustY = -16;
		}
		/*
		else if ($(this).hasAttr("ttPosition","RightBottom")) {
		// default
		}
		*/

		$(this).qtip({
			content: content.html(),
			position: {
				corner: {
					target: cornerTarget,
					tooltip: cornerTooltip
				},
				adjust: {
					x: tooltipAdjustX,
					y: tooltipAdjustY
				}
			},
			style: {
				width: tooltipWidth * 1,
				padding: 12,
				border: {
					radius: 0,
					width: 0
				},
				classes: {
					tooltip: cornerClass,
					content: contentClass
				}
			},
			show: {
				delay: 0,
				when: {
					event: 'click'
				},
				effect: {
					length: 150
				}
			},
			hide: {
				delay: 0,
				when: {
					event: 'unfocus'
				},
				effect: {
					length: 150
				}
			},
			api: {
				onShow: function () {
					$(this.elements.target).toggleClass('active');
					// This specifies whether the user's window will jump to the tooltip position.
					// var top = $(this.elements.target).position().top;
					// window.scrollTo(0, top);
				},
				onHide: function () { $(this.elements.target).toggleClass('active'); }
			}
		});
	});
}

