Esempio n. 1
0
 /// <summary>
 /// Cere BLL sa trimita mesaj primit de la utilizator
 /// </summary>
 /// <param name="token">token string</param>
 /// <param name="contactMessageDto"></param>
 /// <returns>true sau false</returns>
 public bool SendMessage(string token, ContactMessageDTO contactMessageDto)
 {
     try
     {
         _bl.MessageLogic.SendMessage(token, contactMessageDto);
         return(true);
     }
     catch (Exception ex)
     {
         return(false);
     }
 }
Esempio n. 2
0
        public async Task Api_ContactMessage_BatchCreate()
        {
            for (int i = 1; i < 100; i++)
            {
                var cmd = new ContactMessageDTO
                {
                    Name    = "batchTest_contact_name",
                    Phone   = "111-222-3333",
                    Email   = $"test_email_{i}@sync.co",
                    Message = "test_message",
                };
                var hr = await ContactMessageApi.CreateMessageAsync(cmd).ConfigureAwait(false);

                var rs = await hr.GetResultAsync().ConfigureAwait(false);

                Assert.IsTrue(rs.IsSuccess());
                Assert.IsNotNull(rs);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Trimitere mesaj
        /// </summary>
        /// <param name="token"></param>
        /// <param name="contactMessageDTO"></param>
        public void SendMessage(string token, ContactMessageDTO contactMessageDTO)
        {
            if (string.IsNullOrWhiteSpace(contactMessageDTO.Category) || string.IsNullOrWhiteSpace(contactMessageDTO.Message) || contactMessageDTO.Receiver < 0)
            {
                throw new System.Exception("Values cannot be null");
            }

            List <User> adminsList;
            User        receiver;
            int         userID   = _dataAccess.TokenRepository.FindFirstBy(t => t.TokenString.Equals(token)).UserID;
            string      username = _dataAccess.UserRepository.FindFirstBy(u => u.UserID == userID).Username;

            MailMessage mail       = new MailMessage();
            SmtpClient  SmtpServer = new SmtpClient("smtp.gmail.com");

            mail.From       = new MailAddress("*****@*****.**");
            mail.Subject    = contactMessageDTO.Category + " from " + username;
            mail.Body       = "<p>" + contactMessageDTO.Message + "</p>";
            mail.IsBodyHtml = true;

            if (contactMessageDTO.Receiver == 0)
            {
                adminsList = _dataAccess.UserRepository.FindAllBy(user => user.Role.Equals("admin")).ToList();
                foreach (User admin in adminsList)
                {
                    mail.Bcc.Add(new MailAddress(admin.Email));
                }
            }
            else
            {
                receiver = _dataAccess.UserRepository.FindFirstBy(user => user.UserID == contactMessageDTO.Receiver);
                mail.To.Add(new MailAddress(receiver.Email));
                mail.Bcc.Add(new MailAddress("*****@*****.**"));
            }

            SmtpServer.Port        = 587;
            SmtpServer.Credentials = new System.Net.NetworkCredential("*****@*****.**", "votemypollteam1234");
            SmtpServer.EnableSsl   = true;

            SmtpServer.Send(mail);
        }
Esempio n. 4
0
        public HttpResponseMessage Post(ContactMessageDTO contactMessageDTO)
        {
            HttpResponseMessage responseMessage;
            JSendMessage        json;
            // Preluare token pentru a identifica utilizatorul
            string token    = Request.Headers.SingleOrDefault(x => x.Key == "token").Value.First();
            bool   response = contactModel.SendMessage(token, contactMessageDTO);

            if (response)
            {
                json            = new JSendMessage("success", "Message sent successfully");
                responseMessage = Request.CreateResponse(HttpStatusCode.OK, json);
            }
            else
            {
                json            = new JSendMessage("fail", "Something bad happened");
                responseMessage = Request.CreateResponse(HttpStatusCode.BadRequest, json);
            }

            return(responseMessage);
        }
Esempio n. 5
0
        public async Task <string> CreateMessageAsync(CreateContactMessageCommand cmd)
        {
            var dto = new ContactMessageDTO
            {
                ID           = Guid.NewGuid(),
                Name         = cmd.Name,
                Phone        = cmd.Phone,
                Email        = cmd.Email,
                Message      = cmd.Message,
                CreatedOnUtc = DateTime.UtcNow
            };

            var msgCode = await ContactMessageDAL.InsertMessageAsync(dto).ConfigureAwait(false);

            if (msgCode.IsSuccess())
            {
                var subject = $"[mylightangel.com]: Contact message from {dto.Email}";
                var body    = $"<p>Name: {dto.Name}</p><p>Phone: {dto.Phone}</p><p>Email: {dto.Email}</p><p>Message: {dto.Message}</p>";

                msgCode = await EmailSender.SendAsync(subject, body).ConfigureAwait(false);
            }

            return(msgCode);
        }
Esempio n. 6
0
        // *******************************************************************************************************************************
        #region -  CRUD  -

        public Task <string> InsertMessageAsync(ContactMessageDTO dto)
        => DB.ContactMessages.TryInsertOneAsync(dto);