﻿

function CallREService(methodName, dataObject, callback) {
    var jsonSO = JSON.stringify(dataObject);
    var webMethod = "/RealEstateService.svc/webHttpBinding/" + methodName;
    $.ajax({
        type: "POST",
        url: webMethod,
        data: jsonSO,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        processData: false,
        success: callback,
        error: function (e) {
            alert("Failed calling " + methodName);
        }
    });
}

function dumpobject(object) {
    var output = "";
    for (property in object) {
        output += property + ': ' + object[property] + '; ';
    }
    alert(output);
}

function IsNumeric(input) {
    var t = new Number(input);
    if (isNaN(t) == true)
        return false;
    return true;
}

function querySt(ji) {
    hu = window.location.search.substring(1);
    gy = hu.split("&");
    for (i = 0; i < gy.length; i++) {
        ft = gy[i].split("=");
        if (ft[0] == ji) {
            return ft[1];
        }
    }
}
function formatCurrency(num) {
    num = num.toString().replace(/\$|\,/g, '');
    if (isNaN(num))
        num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num * 100 + 0.50000000001);
    cents = num % 100;
    num = Math.floor(num / 100).toString();
    if (cents < 10)
        cents = "0" + cents;
    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
        num = num.substring(0, num.length - (4 * i + 3)) + ',' +
num.substring(num.length - (4 * i + 3));
    return (((sign) ? '' : '-') + '$' + num + '.' + cents);
}

var $busyDlg = null;
function ShowBusy() {
    $("#ajaxSpinnerContainer").css("display", "block");
}

function HideBusy() {
    $("#ajaxSpinnerContainer").css("display", "none");
}

$(document)
.ajaxStart(function () {
    ShowBusy();
})
.ajaxStop(function () {
    HideBusy();
});

function CheckRegistered() {
    if (IsRegistered() == false) {
        ShowRegisterUser();
    }
}
function IsRegistered() {
    return !g_IsAnonymous;
}
function SaveFavorite(MLS, PropType, CallBack) {
    if (IsRegistered() == false) {
        // call self back on successful login
        LoginSuccessCallBack = function () {
            SaveFavorite(MLS, PropType, CallBack);
        }
        CheckRegistered();
    }
    else {
        //SaveFavorite(CurrentMLS, CurrentPropType, RefreshFavorite);
        var data = { userID: g_ProfileID, mlsNumber: MLS, proptype: PropType };
        CallREService("AddFavorite", data, CallBack);
    }
}

function IsNumeric(input) {
    var temp = '' + input;
    return (input - 0) == input && temp.length > 0;
}
function getint(val, name) {
    if (val == null || val == "" || val.indexOf(' ') != -1)
        return 0;
    else {
        val = val.replace(".", "");
        val = val.replace(",", "");
        val = val.replace("$", "");
        if (val == null || val == "")
            return 0;

        if (IsNumeric(val) == false) {
            alert(name + " must be a number");
            return 0;
        }
        return val;
    }
}


function toggledisplay(obj) {
    if($("#" + obj).css("display") == "block")
        $("#" + obj).css("display", "none")
    else
        $("#" + obj).css("display", "block")
}
