Ejemplo n.º 1
0
        public async Task <Invitation> Invite(string emailTo, string fromUserId, string fromUserName)
        {
            var invited = await _invitationRepository.IsInvited(emailTo);

            if (invited)
            {
                return(null);
            }
            var mailBuilder = new InvitationEmail(_mailConfig);

            _mailService.Send(mailBuilder.Build(new MailAddress(emailTo), fromUserName, "/app/signup"));
            return(await _invitationRepository.InviteUser(fromUserId, emailTo));
        }
Ejemplo n.º 2
0
        public ActionResult InviteUser(int _teamId, string userEmail)
        {
            var teamToInvite    = db.Teams.Find(_teamId);
            var newInvitedEmail = new InvitationEmail()
            {
                Email = userEmail
            };

            teamToInvite.InvitedEmails.Add(newInvitedEmail);
            db.SaveChanges();

            return(RedirectToAction("TeamInfo", new { teamId = _teamId }));
        }
Ejemplo n.º 3
0
        public static string ToHtmlContent(this InvitationEmail email, string contentRootPath)
        {
            var builder      = new StringBuilder();
            var templateFile = Path.Combine(contentRootPath, EmailPaths.Welcome);

            builder.Append(File.ReadAllText(templateFile));

            builder.Replace(EmailFields.Url, email.Url);
            builder.Replace(EmailFields.Email, email.Email);
            builder.Replace(EmailFields.UserName, email.UserName);
            builder.Replace(EmailFields.Password, email.Password);

            return(builder.ToString());
        }
        private static InvitationEmail ConvertFrom_UserEf_To_InvitationEmail(UserEf entity, InvitationEmail model)
        {
            var instance = model ?? new InvitationEmail();

            instance.Email       = entity.Email;
            instance.UserName    = entity.Name;
            instance.Password    = entity.Password;
            instance.Residential = entity.Residential?.Name;

            return(instance);
        }