﻿
function validateEmail(addr) {
         var invalidChars = '\/\'\\ ";:?!()[]\{\}^|';
        for (i = 0; i < invalidChars.length; i++) {
            if (addr.indexOf(invalidChars.charAt(i), 0) > -1) {
                alert('email address contains invalid characters');
                return false;
            }
        }
        for (i = 0; i < addr.length; i++) {
            if (addr.charCodeAt(i) > 127) {
                alert("email address contains non ascii characters.");
                return false;
            }
        }

        var atPos = addr.indexOf('@', 0);
        if (atPos == -1) {
            alert('email address must contain an @');
            return false;
        }
        if (atPos == 0) {
            alert('email address must not start with @');
            return false;
        }
        if (addr.indexOf('@', atPos + 1) > -1) {
            alert('email address must contain only one @');
            return false;
        }
        if (addr.indexOf('.', atPos) == -1) {
            alert('email address must contain a period in the domain name');
            return false;
        }
        if (addr.indexOf('@.', 0) != -1) {
            alert('period must not immediately follow @ in email address');
            return false;
        }
        if (addr.indexOf('.@', 0) != -1) {
            alert('period must not immediately precede @ in email address');
            return false;
        }
        if (addr.indexOf('..', 0) != -1) {
            alert('two periods must not be adjacent in email address');
            return false;
        }
        var suffix = addr.substring(addr.lastIndexOf('.') + 1);
        if (suffix.length != 2 && suffix != 'com' && suffix != 'net' && suffix != 'org' && suffix != 'edu' && suffix != 'int' && suffix != 'mil' && suffix != 'gov' & suffix != 'arpa' && suffix != 'biz' && suffix != 'aero' && suffix != 'name' && suffix != 'coop' && suffix != 'info' && suffix != 'pro' && suffix != 'museum') {
            alert('invalid primary domain in email address');
            return false;
        }
        return true;
    }

    function sendContactUs(){
        if (DataFloat.Agora.Util.ValidateForm("frmContact") && validateEmail($('#req_fromEmail').val())){
            
            var params = DataFloat.Agora.Util.SerializeForm("frmContact");
                params += "&subject=Website Contact Us&cc=1&trackAction=1";
            
            var ajaxManager = new DataFloat.Agora.AjaxManager(params);
            ajaxManager.NewSystemRequest(DataFloat.Agora.Services.ServiceSendEmail, 1, function(msg) {
                closeContact();
                if(msg == "True")
                 alert("Email Sent Successfully!");
                 SendAutoResponse();
            });
            
            /* this code was to send email to two mail ids but it was gong to "To" not "Cc" or "Bcc" */
            
            /*var params = DataFloat.Agora.Util.SerializeForm("frmContact");
                params += "&subject=Website Contact Us";
                
            if(!DataFloat.Agora.Util.IsEmptyOrNull(DataFloat.Agora.Util.Request.QueryString['toEmail']))
	        {
                params = DataFloat.Agora.Util.ReplaceAll(DataFloat.Agora.Util.Request.QueryString['toEmail'], "toEmail", "ccEmail");
                
                var ajaxManager = new DataFloat.Agora.AjaxManager(params);
                ajaxManager.NewSystemRequest(DataFloat.Agora.Services.ServiceSendEmail, 1, function(msg) {
                
                });
            }*/
       }
    }
     
    function SendAutoResponse() {
        var urlArray = window.location.href.replace("http://", "").split("/");
        var messageSource = "Prudential Carolinas";

        if (urlArray[0].indexOf("pruysu") != -1)
            messageSource = "Prudential York Simpson Underwood";
            
        var Subject = "Response from " + messageSource + " Realty";
        
        var params = "&HtmlInterface =" + $('#HtmlInterface').val() + "&fromEmail=" + $('#toEmail').val() + "&toEmail=" + $('#req_fromEmail').val() + "&subject=" + Subject + "&autoresponse=1";
        var ajaxManager = new DataFloat.Agora.AjaxManager(params);
        ajaxManager.NewSystemRequest(DataFloat.Agora.Services.ServiceSendEmail, 1, function(msg) {
            tb_remove();
         });
    }
    
    function sendPressRelease()
    {
        if (DataFloat.Agora.Util.ValidateForm("frmPressRelease")){
            var params = DataFloat.Agora.Util.SerializeForm("frmPressRelease");
                params += "&subject=Website Press Release";
            var ajaxManager = new DataFloat.Agora.AjaxManager(params);
            ajaxManager.NewSystemRequest(DataFloat.Agora.Services.ServiceSendEmail, 1, function(msg){
                closePressRelease();
            });
       }    
    }

    function sendCharitable()
    {
        if (DataFloat.Agora.Util.ValidateForm("frmCharitable")){
            var params = DataFloat.Agora.Util.SerializeForm("frmCharitable");
                params += "&subject=Charitable Giving";
            var ajaxManager = new DataFloat.Agora.AjaxManager(params);
            ajaxManager.NewSystemRequest(DataFloat.Agora.Services.ServiceSendEmail, 1, function(msg){
                closeCharitable();
            });
       }    
    }
    
    function sendIntranetDemo()
    {
        if (DataFloat.Agora.Util.ValidateForm("frmIntranetDemo")){
            var params = DataFloat.Agora.Util.SerializeForm("frmIntranetDemo");
                params += "&subject=Company Intranet Demo";
            var ajaxManager = new DataFloat.Agora.AjaxManager(params);
            ajaxManager.NewSystemRequest(DataFloat.Agora.Services.ServiceSendEmail, 1, function(msg){
                closeCompanyIntranet();
            });
       }    
    }    
    
    function sendAgentTraining()
    {
        if (DataFloat.Agora.Util.ValidateForm("frmAgentTraining")){
            var params = DataFloat.Agora.Util.SerializeForm("frmAgentTraining");
                params += "&subject=Agent Training";
            var ajaxManager = new DataFloat.Agora.AjaxManager(params);
            ajaxManager.NewSystemRequest(DataFloat.Agora.Services.ServiceSendEmail, 1, function(msg){
                closeAgentTraining();
            });
       }
   }

   function openAgentContact() {
       var ContactEmail = "";
        if (AgentWebSite != undefined && AgentWebSite != '' && AgentWebSite != 'datafloat' && AgentWebSite != 'localhost' && AgentWebSite != 'prucarolinas' && AgentWebSite != 'pruysu') {
            oAgentSearch = new DataFloat.Agora.AjaxManager("RecordType=3&HtmlInterface=TransformToJSON&n_dt=0&0630=" + AgentWebSite + "&fld_0590=AGENTEMAIL");
            oAgentSearch.NewSystemRequest(DataFloat.Agora.Services.ServiceContentManagerGetContentJSON, 1, function(msg) {
                var data = JSON.parse(msg);
                ContactEmail = data[0].AGENTEMAIL;
                
            });
        }
        openContact(ContactEmail);
   }
   