﻿// JScript File

function ToggleWindow(divname)
{
    var MsgWindow = document.getElementById(divname);
    
    // Message Window Placement
    var DivStatus = MsgWindow.style.visibility;
    var DivLeft = (screen.width / 2) - (MsgWindow.offsetWidth / 2);
    MsgWindow.style.left = DivLeft;
    //............................
    
    if(DivStatus == "hidden")
    {
        MsgWindow.style.visibility = "visible";
        //MsgWindow.style.position = "static";
    }        
    else
    {
        MsgWindow.style.visibility = "hidden";
        //MsgWindow.style.position = "absolute";
    }
}

function ToggleMessageWindow()
{
    var MsgWindow = document.getElementById("DIVSendMessage");
    document.getElementById("spnMessageError").innerHTML = "";
    
    //Default Message Composition
    var ContactPerson = document.getElementById("lblContactPerson").innerHTML;
    var PropertyTitle = document.getElementById("lblPropertyTitle").innerHTML;
    var Vicinity = document.getElementById("lblVicinity").innerHTML;
    var City = document.getElementById("lblCity").innerHTML;
    
    var defaultMessage = "Dear " + ContactPerson + ", I would like to inquire " +
                         "about your property " + PropertyTitle + " in " + Vicinity + ", " + City +
                         ". Please contact me at your convenience.";
    
    document.getElementById("txtMessage").value = defaultMessage;
    //...............................
    
    // Message Window Placement
    var DivStatus = MsgWindow.style.visibility;
    var DivLeft = (screen.width / 2) - (MsgWindow.offsetWidth / 2);
    MsgWindow.style.left = DivLeft;
    //............................
    
    if(DivStatus == "hidden")
    {
        MsgWindow.style.visibility = "visible";
        //MsgWindow.style.position = "static";
    }        
    else
    {
        MsgWindow.style.visibility = "hidden";
        //MsgWindow.style.position = "absolute";
    }    
}

function SendMessage()
{
    document.getElementById("spnMessageError").innerHTML = "";
    
    var PropertyID = getPropertyURL();
    var UserID = document.getElementById("UserID").value;
    var SenderName = document.getElementById("txtSenderName").value;
    var Mobile = document.getElementById("txtMobile").value;
    var Phone = document.getElementById("txtPhone").value;
    var Email = document.getElementById("txtEmail").value;
    var Subject = document.getElementById("txtSubject").value;
    var Message = document.getElementById("txtMessage").value;
    
    //----Validating
    req = true;
        
    if(SenderName == "")
    {
       req = false;
       reqstatus = "Your Name is Required.";
    }
    else if(CheckSpecial(SenderName))
    {
        req = false;
        reqstatus = "Your Name: Special Characters not allowed. e.g.(!,@,#,$,%,^,&) etc";
    }
    else if(Mobile == "")
    {
        req = false;
        reqstatus = "Your Mobile Number is Required.";
    }    
    else if(Phone == "")
    {
        req = false;
        reqstatus = "Your Phone Number is Required.";
    }    
    else if(Email == "")
    {
        req = false;
        reqstatus = "Your Email Address is Required.";
    }
    else if(!IsEmailAddressOk(Email))
    {
        req = false;
        reqstatus = "Email Address is Invalid";
    }
    else if(Subject == "")
    {
       req = false;
       reqstatus = "Message Subject is Required.";
    }    
    else if(Message == "")
    {
       req = false;
       reqstatus = "Message is Required.";
    }   
    
    //Flag Check
    if(req)
    {
        document.getElementById("btnSendMessage").disabled = true;
        document.getElementById("spnMessageError").innerHTML = "Sending...";
        
        Messaging.NewMessage(PropertyID, UserID, SenderName, Mobile, Phone, Email, Subject, Message, SendMessage_CallBack);
    }
    else
    {
        document.getElementById("spnMessageError").innerHTML = reqstatus;
    }    
    //...............
}

function SendMessage_CallBack(response)
{
    if(response.value)
    {
        document.getElementById("btnSendMessage").disabled = false;
        document.getElementById("spnMessageError").innerHTML = "Message Sent.";
    }
    else
    {
        document.getElementById("btnSendMessage").disabled = false;
        document.getElementById("spnMessageError").innerHTML = "Message Sending Failed.";
    }
}

function ChkFav()
{
    var PropertyID = getQueryVariable("ID");
    RealEstate.ChkFav(PropertyID, ChkFav_CallBack);
}

function ChkFav_CallBack(response)
{
    if(response.value == "OK")
    {
        document.getElementById("Fav").innerHTML = "Favorite.";
        document.getElementById("Fav").onclick = "Javascript:alert('Already in your Favorites.');";        
    }
}

function AddtoFav()
{
    var PropertyID = getQueryVariable("ID");    
    RealEstate.AddToFavs(PropertyID, AddtoFav_CallBack);
}

function AddtoFav_CallBack(response)
{
    var status = response.value;
    
    switch(status)
    {
        case "Not Logged In":
            alert("Please login to use this functionality");
        break;
        
        case "OK":
            document.getElementById("Fav").innerHTML = "Favorited.";
            document.getElementById("Fav").onclick = "Javascript:alert('Already in your Favorites.');";
        break;
        
        case "Failed":
            alert("Request Failed. Please Try again.");
        break;
    }
}