Esempio n. 1
0
        public ActionResult ReplyToMessage(string listingDetailsID, string toUserId, string message, string CommentID = null)
        {
            var brokerListings        = new BrokerListings();
            var serialization         = new Serialization();
            var sharedFunctions       = new SharedFunctions();
            var emailNotifications    = new EmailNotifications();
            var outgoingEmailLogModel = new OutgoingEmailLogModel();
            var HashCriteria          = new Hashtable();
            var actualCriteria        = string.Empty;
            var CommentSubject        = " You got reply ";

            HashCriteria.Add("ID", listingDetailsID);
            HashCriteria.Add("ToUserID", toUserId);
            HashCriteria.Add("Message", message);
            HashCriteria.Add("UserID", userID);
            HashCriteria.Add("ReplyToComment", CommentID);
            HashCriteria.Add("CommentSubject", CommentSubject);
            HashCriteria.Add("IsContactToBroker", true);
            actualCriteria = serialization.SerializeBinary((object)HashCriteria);
            var result    = Convert.ToString(brokerListings.ReplyToMessage(actualCriteria));
            var commentID = Convert.ToInt64(serialization.DeSerializeBinary(Convert.ToString(result)));

            HashCriteria   = new Hashtable();
            actualCriteria = string.Empty;
            HashCriteria.Add("ID", commentID);
            actualCriteria = Convert.ToString(serialization.SerializeBinary((object)HashCriteria));
            var resultEmail = Convert.ToString(emailNotifications.GetNotificationDetails(actualCriteria));

            outgoingEmailLogModel = (OutgoingEmailLogModel)(serialization.DeSerializeBinary(Convert.ToString(resultEmail)));
            outgoingEmailLogModel.ExternalEmail = System.Configuration.ConfigurationManager.AppSettings["ExternalEmail"];
            var response = sharedFunctions.SendEmail(outgoingEmailLogModel.EmailTo, Convert.ToString(EmailTemplates.MessageCenter), "Synoptek : " + outgoingEmailLogModel.MessageSender + " sent you message on - " + outgoingEmailLogModel.DealName, null, outgoingEmailLogModel);

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
        public bool SendContactRequestEmail(long commentID, bool IsContactBroker)
        {
            var    serialization            = new Serialization();
            var    sharedFunctions          = new SharedFunctions();
            var    emailNotifications       = new EmailNotifications();
            var    outgoingEmailLogModel    = new OutgoingEmailLogModel();
            var    HashCriteriaNotification = new Hashtable();
            string actualCriteriaNotification;

            HashCriteriaNotification.Add("ID", commentID);
            actualCriteriaNotification = serialization.SerializeBinary((object)HashCriteriaNotification);
            var resultEmail = emailNotifications.GetNotificationDetails(actualCriteriaNotification);

            outgoingEmailLogModel = (OutgoingEmailLogModel)(serialization.DeSerializeBinary(Convert.ToString(resultEmail)));
            outgoingEmailLogModel.ExternalEmail = System.Configuration.ConfigurationManager.AppSettings["ExternalEmail"];
            //For schedule consulations end email to law
            var scheduleConsulationEmail = System.Configuration.ConfigurationManager.AppSettings["ScheduleConsulationEmail"];

            if (IsContactBroker)
            {
                if (outgoingEmailLogModel.DealName == null || outgoingEmailLogModel.DealName == "")
                {
                    sharedFunctions.SendEmail(outgoingEmailLogModel.EmailTo, Convert.ToString(EmailTemplates.ContactBrokerUnlikeListing), "Synoptek : " + outgoingEmailLogModel.MessageSender + " wants to contact you.", null, outgoingEmailLogModel);
                }
                else
                {
                    sharedFunctions.SendEmail(outgoingEmailLogModel.EmailTo, Convert.ToString(EmailTemplates.ContactBroker), "Synoptek : " + outgoingEmailLogModel.MessageSender + " wants to contact you for - " + outgoingEmailLogModel.DealName, null, outgoingEmailLogModel);
                }
            }
            else
            {
                //Added by Jyotibala P. for public user set Emailto is external address specified in web.config
                if (string.IsNullOrWhiteSpace(outgoingEmailLogModel.EmailTo))
                {
                    if (scheduleConsulationEmail != null && scheduleConsulationEmail != "")
                    {
                        outgoingEmailLogModel.EmailTo = scheduleConsulationEmail;
                    }
                    outgoingEmailLogModel.DealName     = "Portal";
                    outgoingEmailLogModel.ReceiverName = "Admin";
                    sharedFunctions.SendEmail(outgoingEmailLogModel.EmailTo, Convert.ToString(EmailTemplates.ScheduleConsultation), "Synoptek : User needs consultation", null, outgoingEmailLogModel);
                }
                else
                {
                    sharedFunctions.SendEmail(outgoingEmailLogModel.EmailTo, Convert.ToString(EmailTemplates.ScheduleConsultation), "Synoptek : " + outgoingEmailLogModel.MessageSender + " needs consultation for - " + outgoingEmailLogModel.DealName, null, outgoingEmailLogModel);
                }
            }
            return(true);
        }