﻿var _globalValues = null;

var setGlobalisationValues = function(obj) {
	_globalValues = obj;
};

$(document).ready(function() {
	$("a[rel='External']").attr("target", "_blank");

	$(".locationtop_menu ul li.roll_over, .top_menu ul li.roll_over").each(function() {
		$(this).hoverIntent({
			sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)
			interval: 50,   // number = milliseconds for onMouseOver polling interval
			over: topMenuShowChildren,     // function = onMouseOver callback (required)
			timeout: 300,   // number = milliseconds delay before onMouseOut
			out: topMenuHideChildren       // function = onMouseOut callback (required)
		});
	});

	$("#frmLanguages").each(function() {

		$("#submit_lang").hide();
		$(this).show();

		var sel = $(this).find("select");

		var root = $(this).parent();

		if (sel.find("option").length < 4) {

			sel
							.css("position", "absolute")
							.css("top", "-1000px");

			var ul = $("<ul class=language />");

			sel.find("option").each(function() {
				var li = $("<li />", { text: $(this).text() })
					.data("val", $(this).val())
					.data("select", sel)
					.click(function() {
						$(this).data("select").val($(this).data("val")).change();
					});

				if ($(this).index() == $(this).siblings("option").length) {
					li.addClass("last");
				};

				if ($(this).attr("selected") == "selected") {
					li.wrapInner("<strong />");
				};

				li.wrapInner("<a href=javascript:void(0)/>");

				ul.append(li);
			});

			$(root).append(ul);

		};

		sel.change(function() {
			$(this).closest("form").submit();
		});

		return $(this);

	});

	$("#inp_CompanyName").foldFieldTitle();
	$("#inp_Description").foldFieldTitle();

	$("#inp_Category").removeFieldTitle();
	$("#inp_FileOne").removeFieldTitle();

	$(document).ready(function() {

		if ($("form.members_download .satisfied").height() !== null) {
			$("form.members_download").after("<ul id=yes-no><li><img src=/images/submit-yes.gif alt=Yes /></li><li><img src=/images/submit-no.gif alt=No /></li></ul><div class=padding_b15></div><div class=divider_small></div><div class=padding_b15></div> ");
			$("#yes-no img").click(function() {
				selectOption($(this).attr("alt"));
			});
			$("form.members_download")
				.css("position", "absolute")
				.css("left", "-1000px")
				.css("top", "-1000px")
				.end();
		};

	});


	var selectOption = function(value) {
		$("#yes-no").fadeOut("fast");
		$("#yes-no").before("<div>Please wait...</div>");
		$("form.members_download select:eq(0)").val(value);
		$("form.members_download").submit();
	};

});


$.fn.removeFieldTitle = function() {

	var l = $(this).find(".data_left:eq(0)");
	var t = l.text();

	l.remove();

	return null;
};

$.fn.foldFieldTitle = function() {

	if (!$(this).hasClass("watermark")) {
		return null;
	}

	var f = $(this).find(".data_right:eq(0) input[type='text'],textarea");

	if (f.height() === null) {
		return;
	};

	var l = $(this).find(".data_left:eq(0)");
	var t = l.text();

	l.remove();

	f.fieldWaterMark({
		text: t
	});

	return null;
};

$.fn.fieldWaterMark = function(obj) {
	$(this)
		.data("watermark", obj)
		.focus(function() {
			if ($(this).data("watermark").text == $(this).val()) {
				$(this).val("");
			};
		})
		.blur(function() {
			if ("" == $(this).val()) {
				$(this).val($(this).data("watermark").text);
			};
		})
		.blur()
		.closest("form")
			.submit(function() {
				$(this).find("input[type='text'],textarea").each(function() {
					var data = $(this).data("watermark");
					if (typeof data != "undefined") {
						if ($(this).data("watermark").text == $(this).val()) {
							$(this).val("");
						};
					};
				});
			})
		.end();
};

function topMenuShowChildren() {

	var root = $(".locationtop_menu:eq(0)");

	$(this).find("div").remove();

	var menu = $(this);
	$(this).append("<div />");

	var d = $(this).find("div");

	d.hide();
	d.fadeIn("fast");

	$.ajax({
		type: "POST",
		url: "/MenuData.ashx",
		data: { url: $(this).find("a").attr("href"), region: _globalValues.region, language: _globalValues.language },
		beforeSend: function(xhrObj) {
			xhrObj.setRequestHeader("X-Request-Type", "application/remote-form");
		},
		success: function(data) {

			if (typeof data.menu.top == "undefined" || data.menu.top.length == 0) {
				topMenuHideChildren();
				return;
			}

			var colWidth = root.width();

			d.css("left", root.position().left + "px");

			d.animate({
				width: colWidth + "px",
				height: "233px"
			}, 200, function() {

				d.addClass("full");

				d.append("<div id=top-rollover-items />");
				d.append("<div id=secondary-rollover-items />");

				appendLinksOnRollOver("#top-rollover-items", data.menu.top, "#secondary-rollover-items", data.menu.second);

				var l = parseInt(d.find("#secondary-rollover-items").position().left);

				d.find("#secondary-rollover-items").css("width", colWidth - l);

			});

		},
		error: function(data) {
		},
		complete: function(data) {
		}
	});

};

function topMenuHideChildren() {
	var menu = $(this);
	$(this).find("div").fadeOut("fast", function() {
		$(this).remove();
	});
};

var appendLinksOnRollOver = function(id, items, idChildren, children) {

	if (items.length == 0) {
		return;
	}

	for (var i = 0; i < items.length; i++) {

		var a = newLink(items[i].text, items[i].url);

		$(id).append(a);

		var parent = items[i].id;

		a.data("parent", parent);

		a.hoverIntent({
			sensitivity: 1,
			interval: 50,
			over: function() {
				showChildren($(this).data("parent"));
			},
			timeout: 300,
			out: function() { }
		});

		$(idChildren).append("<span id=\"secondary-rollover-links-" + parent + "\" />");

		for (var c = 0; c < children.length; c++) {
			if (parent == children[c].parent) {
				$("#secondary-rollover-links-" + parent).append(newLink(children[c].text, children[c].url));
			};
		};

	};

	showChildren(items[0].id);

};

var showChildren = function(id) {
	$("#secondary-rollover-items span").hide();
	$("#secondary-rollover-links-" + id)
		.css("height", $("#secondary-rollover-links-" + id).height() + "px")
		.css("display", "block")
		.show();
//alert($("#secondary-rollover-links-" + id).height())
};

var newLink = function(t, h) {
	var a = $("<a />");

	a.attr("href", h);
	a.html(t);

	return a;

};
