private void Send()
        {
            if (Message.Equals(AppResources.MessageUsTextBoxWaterMark) || String.IsNullOrEmpty(Message))
            {
                base.ShowPopup(CustomPopupMessageType.Error, AppResources.MessageUsNoMessagePopupText, AppResources.CustomPopupGenericOkMessage, null);
                return;
            }

            if (!Email.Equals(AppResources.MessageUsEmailTextBoxWaterMark))
            {
                try
                {
                    ValueObjects.Email fromEmail = new ValueObjects.Email(Email);
                }
                catch (Exception) 
                {
                    base.ShowPopup(CustomPopupMessageType.Error, AppResources.InvalidEmailAlert, AppResources.CustomPopupGenericOkMessage, null);
                    return;
                }
            }
            else if (Email.Equals(AppResources.MessageUsEmailTextBoxWaterMark))
            {
                base.ShowPopup(CustomPopupMessageType.Error, AppResources.MessageUsNoEmailPopupText, AppResources.CustomPopupGenericOkMessage, null);
                return;
            }

            Action contact = async () =>
            {
                base.ShowHeaderLoader();

                MessageTextBoxIsEnabled = false;
                try
                {
                    ValueObjects.Email fromEmail = new ValueObjects.Email(Email);

                    string messageSubject = "Drumble v2 WP Feedback: " + ((Subject.Equals(AppResources.MessageUsSubjectTextBoxWaterMark)) ? "Empty" : Subject);

                    cancellationTokenSource = new CancellationTokenSource();

                    var contactResult = await DrumbleApi.Contact(cancellationTokenSource.Token, UnitOfWork.UserRepository.GetUser(), fromEmail, messageSubject, Message + "\n\nDevice Details: " + UserAgent());

                    Message = String.Empty;
                    Email = AppResources.MessageUsEmailTextBoxWaterMark;
                    Subject = AppResources.MessageUsSubjectTextBoxWaterMark;

                    base.ShowPopup(CustomPopupMessageType.Sucess, AppResources.MessageUsSuccessPopupText, AppResources.CustomPopupGenericOkMessage, null);
                }
                catch (Exception e)
                {
                    if (e.Message != "Cancelled")
                        base.ShowPopup(CustomPopupMessageType.Error, e.Message, AppResources.CustomPopupGenericOkMessage, null);
                }

                base.HideHeaderLoader();
                MessageTextBoxIsEnabled = true;

            };

            DispatcherHelper.CheckBeginInvokeOnUI(contact);
        }
        public ICommandResult Handle(RegisterCustomerCommand command)
        {
            if (_customerRepository.DocumentExists(command.Document))
            {
                AddNotification("Document", "Este CPF já está cadastrado!");
                return(null);
            }

            var email    = new ValueObjects.Email(command.Email);
            var document = new ValueObjects.Document(command.Document);
            var user     = new User(command.Username, command.Password, command.ConfirmPassword);

            var customer = new Customer(command.FirstName
                                        , command.LastName
                                        , email
                                        , document
                                        , user
                                        );

            AddNotifications(email.Notifications);
            AddNotifications(document.Notifications);
            AddNotifications(user.Notifications);
            AddNotifications(customer.Notifications);

            if (!customer.IsValid())
            {
                return(null);
            }

            _customerRepository.Save(customer);

            _emailService.Send($"{customer.FirstName} {customer.LastName}"
                               , customer.Email.Address
                               , $"Bem vindo { customer.FirstName }"
                               , $"Olá {customer.FirstName}, blá blá blá");

            return(new RegisterCustomerCommandResult(customer.Id, $"{customer.FirstName} {customer.LastName}"));
        }
示例#3
0
        private void Send()
        {
            if (Message.Equals(AppResources.MessageUsTextBoxWaterMark) || String.IsNullOrEmpty(Message))
            {
                base.ShowPopup(CustomPopupMessageType.Error, AppResources.MessageUsNoMessagePopupText, AppResources.CustomPopupGenericOkMessage, null);
                return;
            }

            if (!Email.Equals(AppResources.MessageUsEmailTextBoxWaterMark))
            {
                try
                {
                    ValueObjects.Email fromEmail = new ValueObjects.Email(Email);
                }
                catch (Exception)
                {
                    base.ShowPopup(CustomPopupMessageType.Error, AppResources.InvalidEmailAlert, AppResources.CustomPopupGenericOkMessage, null);
                    return;
                }
            }
            else if (Email.Equals(AppResources.MessageUsEmailTextBoxWaterMark))
            {
                base.ShowPopup(CustomPopupMessageType.Error, AppResources.MessageUsNoEmailPopupText, AppResources.CustomPopupGenericOkMessage, null);
                return;
            }

            Action contact = async() =>
            {
                base.ShowHeaderLoader();

                MessageTextBoxIsEnabled = false;
                try
                {
                    ValueObjects.Email fromEmail = new ValueObjects.Email(Email);

                    string messageSubject = "Drumble v2 WP Feedback: " + ((Subject.Equals(AppResources.MessageUsSubjectTextBoxWaterMark)) ? "Empty" : Subject);

                    cancellationTokenSource = new CancellationTokenSource();

                    var contactResult = await DrumbleApi.Contact(cancellationTokenSource.Token, UnitOfWork.UserRepository.GetUser(), fromEmail, messageSubject, Message + "\n\nDevice Details: " + UserAgent());

                    Message = String.Empty;
                    Email   = AppResources.MessageUsEmailTextBoxWaterMark;
                    Subject = AppResources.MessageUsSubjectTextBoxWaterMark;

                    base.ShowPopup(CustomPopupMessageType.Sucess, AppResources.MessageUsSuccessPopupText, AppResources.CustomPopupGenericOkMessage, null);
                }
                catch (Exception e)
                {
                    if (e.Message != "Cancelled")
                    {
                        base.ShowPopup(CustomPopupMessageType.Error, e.Message, AppResources.CustomPopupGenericOkMessage, null);
                    }
                }

                base.HideHeaderLoader();
                MessageTextBoxIsEnabled = true;
            };

            DispatcherHelper.CheckBeginInvokeOnUI(contact);
        }