﻿/// <reference path="jquery-1.3.2-vsdoc2.js"/>
/// <reference name="MicrosoftAjax.js"/>
//$(document).ready(function() {
//	$("a[rel^='prettyPhoto']").prettyPhoto();
//});
////OnLoad
$(document).ready(function() {
	SubNavigation_OnLoad();
	NavBar_Onload();
	Init_PrettyPhoto();
	Init_Search();
	Init_Controls();
	ShowExternalLinksIcon();
});

function notifyPayment(lnk) {
	jConfirm('Bạn phải đăng ký mới xem được thông tin. Nhấn OK để tiếp tục.', 'Cổng Thông Tin Thị Trường Nước Ngoài', function(ok) {
		if (ok) {
			location.href = "/Using/Help.aspx";
		}
	});
	return false;
}

function notifyReadPayment(lnk, amount, canRead) {
	if (isNaN(amount)) {
		jAlert("Tài khoản của bạn không còn giá trị sử dụng.", "Cổng Thông Tin Thị Trường Nước Ngoài");
		return false;
	}
	if (canRead) {
		jConfirm("Đây là tin có tính phí, bạn sẽ bị trừ " + formatNumber(amount, 0) + "VNĐ trong tài khoản.", 'Cổng Thông Tin Thị Trường Nước Ngoài', function(ok) {
			if (ok) {
				location.href = lnk.href;
			}
		});
	}
	else {
		jAlert("Mức phí cho một lần xem là " + formatNumber(amount, 0) + "VNĐ. Số tiền hiện tại trong tài khoản của bạn không đủ để xem.", "Cổng Thông Tin Thị Trường Nước Ngoài");
	}
	return false;
}

function Init_Search() {
  $("#search_button").click(function() {
    var txt = $("#search_txt");
    if (txt.val().length > 0) {
      location.href = "/Search.aspx?q=" + encodeURIComponent(txt.val());
    }
  });
  $("#search_txt").keydown(function(e) {
  	if (e.keyCode == 13) { $("#search_button").click(); return false; }
  }).keyup(function() {
  	if ($(this).val().length > 0)
  		$("#search_button").removeAttr("disabled");
  	else
  		$("#search_button").attr("disabled", "disabled");
  }).bind('paste', function() {
  	if (window && window.clipboardData) {
  		if (window.clipboardData.getData('Text').length > 0)
  			$("#search_button").removeAttr("disabled");
  		else
  			$("#search_button").attr("disabled", "disabled");
  	}
  });
 }


function Init_Controls() {
	$(".solid:text").focus(function() {
		$(this).css({ "border-color": "teal", "background-color": "#f2f2f2" });
	}).blur(function() {
		$(this).css({ "border-color": "", "background-color": "" });
	});

	$("#lnkLogin").click(function() {
		var login = $("#bannerLogin");
		var adv = $("#advContact");
		if (adv.is(":visible")) {
			adv.hide();
			if (login.css("display") == "block")
				login.css({ display: "none" });
			$(this).text("Bỏ qua");
		} else {
			adv.show();
			$(this).text("Đăng nhập");
		}
		$("#bannerContainer").slideToggle('slow', function() {
			if ($(this).is(":visible")) {
				$(this).height("112px");
			}
		});
		login.slideToggle('slow', function() {
			if ($(this).is(":visible")) {
				$(this).height("112px");
			}
		});
	});

	$("#lnkRegPayment").click(function() {
		jConfirm("<div id='divRegPayment'></div>", "Đăng ký đọc tin trả phí", function(ok) {
			var username = $("input[id*='TxtRegUsername']");
			var email = $("input[id*='TxtRegEmail']");
			var password = $("input[id*='TxtRegPassword']");
			var password2 = $("input[id*='TxtRegPassword2']");
			var type = $("select[id*='DdlRegPaymentType']");
			var title = "Lỗi dữ liệu";
			if (ok) {
				if (password.val() != password2.val()) {
					jAlert("Mật khẩu không khớp.", title);
				}
				else if (password.val().length == 0) {
					jAlert("Bạn phải nhập vào mật khẩu.", title);
				}
				else if (username.val().length == 0) {
					jAlert("Bạn phải nhập vào tên truy nhập.", title);
				}
				else if (email.val().length == 0) {
					jAlert("Bạn phải nhập vào email.", title);
				}
				else {
					try {
						$.get("User.ashx", { f: 'exists', status: 'yes', 'username': username.val(), 'email': email.val() }, function(data) {
							if (data == "1") {
								jAlert("Tên truy nhập hoặc email đã được đăng ký.", title);
							}
							else {
								$.post("User.ashx", { f: 'register', 'username': username.val(), 'email': email.val(), 'password': password.val(), 'type': type.val() }, function() {
									jAlert("Thông tin đã được đăng ký thành công. Chúng tôi sẽ liên hệ lại với bạn qua email khi tài khoản được kích hoạt.", "Đăng ký");
								});
								username.val("");
								email.val("");
								type.val("0");
								password.val("");
								password2.val("");
							}
						});
					}
					catch (e) { }
				}
			}
		});
		$("#divRegPayment").append($("#regPaymentContent"));
		$("#regPaymentContent").show();
	});
}

function SubNavigation_OnLoad() {
	var country = $("select[id$='_Country'].solid");
	country.change(function() {
		if (this.selectedIndex > 0 && this.selectedIndex != $(this).data("initializedIndex"))
			window.location.href = "/Country/" + this.value + "/Overview.aspx";
	});
	var region = $("select[id$='_Region'].solid");
	region.change(function() {
	  if (this.selectedIndex > 0 && this.selectedIndex != $(this).data("initializedIndex"))
			window.location.href = "/Region/" + this.value + "/Overview.aspx";
	});
	var tradeOffice = $("select[id$='_TradeOffice'].solid");
	var department = $("option[value='-1']", tradeOffice);
	if (department.length == 2) {
		var index = department.get(1).index;
		var select = tradeOffice.get(0);
		for (var i = index + 1; i < select.length; i++) {
			select[i].value = "$" + select[i].value;
		}
	}
	tradeOffice.change(function() {
	  if (this.value != -1 && this.selectedIndex != $(this).data("initializedIndex")) {
			var hasPrefix = this.value.indexOf("$") >= 0;
			window.location.href = "/" + (hasPrefix ? "TradeOffice" : "Country") + "/" + (hasPrefix ? this.value.substr(1, this.value.length - 1) : this.value) + "/TradeOffice.aspx";
		}
	});
	var category = $("select[id$='_Category'].solid");
	category.change(function() {
	  if (this.selectedIndex > 0 && this.selectedIndex != $(this).data("initializedIndex"))
			window.location.href = "/Category/" + this.value + "/Default.aspx";
	});

	FillTitleForDropDownList(country[0]);
	FillTitleForDropDownList(region[0]);
	FillTitleForDropDownList(tradeOffice[0]);
	FillTitleForDropDownList(category[0]);

	var segment = jQuery.url.segment;
	var regionType = segment(0);
	if (regionType) {
		var id = parseInt(segment(1));
		switch (regionType) {
		  case "Country":
		    country.val(id);
		    country.data("initializedIndex", country.attr("selectedIndex"));
		    if (segment(segment() - 1) == 'TradeOffice.aspx') {
		      tradeOffice.val(id);
		      tradeOffice.data("initializedIndex", tradeOffice.attr("selectedIndex"));
		    }
		    break;
			case "Region":
			  region.val(id);
			  region.data("initializedIndex", region.attr("selectedIndex"));
				break;
			case "TradeOffice":
			  tradeOffice.val('$' + id);
			  tradeOffice.data("initializedIndex", tradeOffice.attr("selectedIndex"));
				break;
			case "Category":
			  category.val(id);
			  category.data("initializedIndex", category.attr("selectedIndex"));
				break;
		}
	}
	if (!$.browser.msie) {
		$("a[disabled='disabled']").removeAttr("href").css("color", "gray").css("cursor", "pointer");
	}
}

function ShowExternalLinksIcon() {
	$("a:not(:has(img))").filter(function() {
    return this.hostname && (this.hostname).split(":")[0] !== (location.hostname).split(":")[0];
  }).addClass("external").attr("target", "_blank");
}

function NavBar_Onload() {
	var file = jQuery.url.segment(2);
	var navbar = $("#navbar");
	if (file && navbar.length > 0) {
		var length = jQuery.url.segment();
		if (jQuery.url.segment(length - 1).toLowerCase() == "businesschance.aspx") {
			file = "businesschance";
		}

		file = file.toLowerCase();

		switch (file) {
			case "default.aspx":
			case "news":
				$("a#navbar_news", navbar).addClass("selected");
				break;
			default:
				file = (file.indexOf(".aspx") >= 0 ? file.substr(0, file.length - 5) : file);
				$("a#navbar_" + file, navbar).addClass("selected");
				break;
		}
	}

	var advImages = $("img[src*='ImageHandler.ashx?f=~/App_Data/Adv/']");
	for (var i = 0; i < advImages.length; i++) {
		var flash = advImages[i];
		if (flash.src.indexOf(".swf") >= 0) {
			var _src = flash.src;
			var _width = flash.width;
			var index = _src.indexOf("&h=");
			var _height = 100;
			if (index >= 0) {
				index += 3;
				var index2 = _src.indexOf("&", index);
				if (index2 < 0)
					index2 = _src.length;
				var sh = _src.substr(index, index2 - index);
				_height = parseInt(sh);
			}
			var a = $(flash).parent();
			var swf = "<OBJECT CLASSID=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" WIDTH=\"" + _width + "\" HEIGHT=\"" + _height + "\" CODEBASE=\"http://active.macromedia.com/flash5/cabs/swflash.cab#version=5,0,0,0\"><PARAM NAME=\"MOVIE\" VALUE=\"" + _src + "\"><PARAM NAME=\"PLAY\" VALUE=\"true\"><PARAM NAME=\"LOOP\" VALUE=\"true\"><PARAM NAME=\"QUALITY\" VALUE=\"high\"><PARAM NAME=\"SCALE\" value=\"noborder\"><EMBED SRC=\"" + _src + "\" WIDTH=\"" + _width + "\" HEIGHT=\"" + _height + "\" PLAY=\"true\" LOOP=\"true\" QUALITY=\"high\" scale=\"noborder\" PLUGINSPAGE=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\"> </EMBED></OBJECT>";
			a.html(swf); 
		}
	}

	var cm = $("#cmPaidNews");
	$("#acmPaidNews, #acmPaidPrice, #acmPaidTurnover").hover(function () {
	  var p = $(this).position();
	  cm.css({ marginLeft: 0, marginTop: 0, top: p.top + 10, left: p.left - cm.width() - 5 });
	  cm.show();

	  $(document).click(function () {
	    cm.hide();
	  });
	},
  function () {

  });
}

function Init_PrettyPhoto() {
	var photos = $("a[rel^='prettyPhoto']");
	if (photos.length > 0) {
		if (!($.fn.prettyPhoto)) { 
			$.getScript("/Js/jquery.prettyPhoto.js", Init_PrettyPhoto);
		}
		else {
			photos.prettyPhoto({
				animationSpeed: 'normal', /* fast/slow/normal */
				padding: 40, /* padding for each side of the picture */
				opacity: 0.35, /* Value betwee 0 and 1 */
				showTitle: true, /* true/false */
				allowresize: true, /* true/false */
				counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */
				theme: 'light_rounded', /* light_rounded / dark_rounded / light_square / dark_square */
				callback: function() { }
			});
		}
	}
}

function FillTitleForDropDownList(ddl) {
	for (var i = 0; i < ddl.length; i++) {
		ddl[i].title = ddl[i].text;
	}
}

//Prevent memory leak from UpdatePanel in all browsers
//http://malnotna.wordpress.com/2009/01/21/solutions-to-the-jquerydata-updatepanel-memory-leak-problem/
jQuery(function() {
	return;
	if (Sys && Sys.WebForms && !Sys.WebForms.PageRequestManager.jQueryDestroyTreeOverriden) {
		Sys.WebForms.PageRequestManager.jQueryDestroyTreeOverriden = true;
		var oldFn = Sys.WebForms.PageRequestManager.prototype._destroyTree;
		var depth = 0;
		Sys.WebForms.PageRequestManager.prototype._destroyTree = function(element) {
			depth++;
			oldFn.apply(this, [element]);
			if (--depth == 0) {
				jQuery(element).empty();
			}
		}
	}
});


function formatNumber(anynum, decimal) {
	//decimal  - the number of decimals after the digit from 0 to 3
	//-- Returns the passed number as a string in the xxx,xxx.xx format.
	divider = 10;
	switch (decimal) {
		case 0:
			divider = 1;
			break;
		case 1:
			divider = 10;
			break;
		case 2:
			divider = 100;
			break;
		default:       //for 3 decimal places
			divider = 1000;
	}

	workNum = Math.abs((Math.round(anynum * divider) / divider));

	workStr = "" + workNum

	if (workStr.indexOf(".") == -1) { workStr += "." }

	dStr = workStr.substr(0, workStr.indexOf(".")); dNum = dStr - 0
	pStr = workStr.substr(workStr.indexOf("."))

	while (pStr.length - 1 < decimal) { pStr += "0" }

	if (pStr == '.') pStr = '';

	if (dNum >= 1000) {
		dLen = dStr.length
		dStr = parseInt("" + (dNum / 1000)) + "." + dStr.substring(dLen - 3, dLen)
	}

	if (dNum >= 1000000) {
		dLen = dStr.length
		dStr = parseInt("" + (dNum / 1000000)) + "." + dStr.substring(dLen - 7, dLen)
	}
	retval = dStr + pStr
	if (anynum < 0) { retval = "(" + retval + ")"; }

	return retval;
}