Exemple #1
0
        public void SubmitMessage(ProviderContactMessage contactMessage)
        {
            switch (contactMessage.Type)
            {
            case ContactMessageTypes.ContactUs:
                SubmitContactUsMessage(contactMessage);
                break;

            default:
                _logService.Error("Invalid contact message type '{0}' for id {1}", contactMessage.Type, contactMessage.EntityId);
                break;
            }
        }
Exemple #2
0
        private void SubmitContactUsMessage(ProviderContactMessage contactMessage)
        {
            var helpdeskEmailAddress = _configurationService.Get <UserAccountConfiguration>().RecruitHelpdeskEmailAddress;
            var userEnquiryDetails   = DefaultCommunicationToken(contactMessage.Details, DefaultUserEnquiryDetails);

            var userName    = _providerReadRepository.GetByEmail(contactMessage.Email);
            var userContact = userName != null ? userName.Username : contactMessage.Email;

            _communicationService.SendMessageToProviderUser(userContact, MessageTypes.ProviderContactUsMessage, new[]
            {
                new CommunicationToken(CommunicationTokens.RecipientEmailAddress, helpdeskEmailAddress),
                new CommunicationToken(CommunicationTokens.UserEmailAddress, contactMessage.Email),
                new CommunicationToken(CommunicationTokens.UserFullName, contactMessage.Name),
                new CommunicationToken(CommunicationTokens.UserEnquiry, contactMessage.Enquiry),
                new CommunicationToken(CommunicationTokens.UserEnquiryDetails, userEnquiryDetails)
            });
        }
Exemple #3
0
        public void SubmitContactMessageTest()
        {
            //Arrange
            ProviderContactMessage providerContactMessage = new ProviderContactMessage
            {
                Email   = "*****@*****.**",
                Details = "Message Details",
                Name    = ValidUsername,
                Type    = ContactMessageTypes.ContactUs,
                Enquiry = "Message Enquiry"
            };

            var communicationTokens = default(IEnumerable <CommunicationToken>);

            _communicationService.Setup(mock =>
                                        mock.SendMessageToProviderUser(
                                            It.IsAny <string>(),
                                            It.IsAny <MessageTypes>(),
                                            It.IsAny <IEnumerable <CommunicationToken> >()))
            .Callback <string, MessageTypes, IEnumerable <CommunicationToken> >(
                (u, m, t) => communicationTokens = t);

            //Act
            _submitContactMessageStrategy.SubmitMessage(providerContactMessage);

            _communicationService.Verify(mock =>
                                         mock.SendMessageToProviderUser(
                                             "john",
                                             MessageTypes.ProviderContactUsMessage,
                                             It.IsAny <IEnumerable <CommunicationToken> >()),
                                         Times.Once);

            communicationTokens.ShouldAllBeEquivalentTo(new[]
            {
                new CommunicationToken(CommunicationTokens.UserFullName, providerContactMessage.Name),
                new CommunicationToken(CommunicationTokens.UserEnquiryDetails, providerContactMessage.Details),
                new CommunicationToken(CommunicationTokens.RecipientEmailAddress, ValidHelpdeskEmailAddress),
                new CommunicationToken(CommunicationTokens.UserEmailAddress, providerContactMessage.Email),
                new CommunicationToken(CommunicationTokens.UserEnquiry, providerContactMessage.Enquiry)
            });
        }
 public void SubmitContactMessage(ProviderContactMessage contactMessage)
 {
     Condition.Requires(contactMessage);
     _submitContactMessageStrategy.SubmitMessage(contactMessage);
 }