﻿var hdnCityID = '';
var hdnAreaID = '';
var hdnStateID = '';
var ddlCountryID = '';

function initAutocomplete(txtCID, url, onItemSelect, params) {
	$('input[id$="' + txtCID + '"]').autocomplete(
        url,
        {
        	extraParams: params
        }).result(onItemSelect);
}

function initCIDs(tObj) {
	hdnCityID = tObj.hdnCityCID;
	hdnAreaID = tObj.hdnAreaCID;
	hdnStateID = tObj.hdnStateCID;
	ddlCountryID = tObj.ddlCountryCID;
}

function onCitySelect(event, data, formatted) {
	$("#" + hdnCityID).val(data ? data.Value : '');
}

function onStateSelect(event, data, formatted) {
	$("#" + hdnStateID).val(data ? data.Value : '');
}

function onAreaSelect(event, data, formatted) {
	$("#" + hdnAreaID).val(data ? data.Value : '');
}

function onAsgnItemSelect(event, data, formatted) {
	$("#hdnAsgnItem").val(data ? data.Value + '#' + data.Text : '');
}

function ValidateAsgnItem(obj, args) {
	if (args.Value != '' && args.Value == $('#hdnAsgnItem').val().split('#')[1]) {
		args.IsValid = true;
	} else {
		args.IsValid = false;
	}
}

function deleteImage(delBtn, imgId) {
	if (confirm("Are you sure you want to delete the photo?")) {
		toggleLoadingProgress();
		$.ajax({
			type: "POST",
			url: "/Ajax.asmx/DeleteImage",
			data: "{'imageId':" + imgId + "}",
			contentType: "application/json; charset=utf-8",
			success: function (data) {
				toggleLoadingProgress();
				var res = data.d;
				if (res) {
					$(delBtn).remove();
					$("#ph" + imgId).fadeOut();
				}
			},
			error: function (data) {
				toggleLoadingProgress();
				alert("Error occured!");
			}
		});
	}
}

function removeConfirmed() {
	return confirm("Are you sure you want to remove this?");
}

function shorten(obj, updated) {
	if (obj.get(0).scrollHeight > obj.height()) {
		var myText = obj.text();
		if (updated == true) {
			myText = myText.substring(0, myText.length - 4);
		}
		myText = myText.split(" ");
		myText.length = myText.length - 1;
		obj.text(myText.join(" ") + " ...");
		shorten(obj, true);
	}
}

function getFeaturedHotels() {
	$.ajax({
		type: "POST",
		url: "/Ajax.asmx/GetFeaturedHotels",
		contentType: "application/json; charset=utf-8",
		success: function (data) {
			rotateFHotels(data);
			setTimeout("getFeaturedHotels();", 9000);
		},
		error: function (data) {
			alert("Error occured!");
		}
	});
}

function rotateFHotels(data) {
	var elements = $("#featured-hotels .h-cont");
	updateFHotels(elements[0], data.d[0]);
	setTimeout(function () { updateFHotels(elements[1], data.d[1]); }, 50);
	setTimeout(function () { updateFHotels(elements[2], data.d[2]); }, 100);
	setTimeout(function () { updateFHotels(elements[3], data.d[3]); }, 150);
	setTimeout(function () { updateFHotels(elements[4], data.d[4]); }, 200);
}

function updateFHotels(container, hotel) {
	var obj = $(container);
	obj.fadeOut(1000, function () {
		obj.find(".h-l").attr('href', hotel.Url);
		if (hotel.PhotoUrl == '') {
			obj.find(".h-i").hide();
			obj.find(".h-ni").show();
		}
		else {
			obj.find(".h-i").show();
			obj.find(".h-ni").hide();
			obj.find(".h-i").css('background-image', 'url(' + hotel.PhotoUrl + ')');
		}
		var hnCont = obj.find(".h-sn");
		hnCont.attr('title', hotel.Name);
		hnCont.text(hotel.Name);
		shorten(hnCont, false);
		obj.find("strong").text(hotel.Address);
	});
	obj.fadeIn(1000);
}

/*Login functionality BEGIN*/
function raiseAuth(tbxLoginCID, tbxPwdCID) {
	$("#hdnLogin").val($("#" + tbxLoginCID).val());
	$("#hdnPwd").val($("#" + tbxPwdCID).val());
	$('#btnSignIn').click();
}
/*Login functionality END*/

function handleEnter(e, btnCID)
{
	var key;
    if(window.event)
    {
        key = window.event.keyCode;
    }
    else if(e.which) 
    {
    	key = e.which;
    }
    if (key == 13) {
		$("#" + btnCID).click();
    }
}

function onPopupSignUp() {
    var data = [$("#tbxUsername").val(), $("#tbxFName").val(), $("#tbxLName").val(), $("#tbxEmail").val()];
    $("#hdnSignUpData").val(data.join("#split#"));
    $("#btnSignUp").click();
}

function onPmntTypeChanged(tbxId, disable) {
	if (disable) {
		$("#" + tbxId).attr("disabled", "disabled");
		$("#" + tbxId).val("0");
	}
	else {
		$("#" + tbxId).removeAttr("disabled");
	}
}

function showLoadingProgress() {
	$("#updateProgressAjaxIndicator").show();
}

function toggleLoadingProgress() {
	$("#updateProgressAjaxIndicator").toggle();
}
