public bool SendEmailCode(int userId, ActivationCodeModel codeModel) { SmtpClient client = GetSmtpClient(); var user = _unitOfWork.UserRepository.FindSingleBy(u => u.Id == userId); string emailFrom = BusinessSettings.SmtpUserName; string emailTo = user.Email; string subject = "Classified Activation"; string body = codeModel.Code; using (MailMessage mail = new MailMessage()) { mail.From = new MailAddress(emailFrom); mail.To.Add(emailTo); mail.Subject = subject; mail.Body = body; mail.IsBodyHtml = true; try { client.Send(mail); return(true); } catch (Exception) { return(false); } } }
public ActivationCodeModel GenerateCode(int userId, string reason) { _unitOfWork.ActivationCodeRepository.Delete(x => x.UserId == userId && x.Reason == reason); _unitOfWork.Save(); string code = RandomString(6); DateTime issuedOn = BusinessSettings.ServerNow; DateTime expiredOn = BusinessSettings.ServerNow.AddDays(1); var activationCode = new ActivationCode { UserId = userId, Code = code, IssuedOn = issuedOn, ExpiresOn = expiredOn, Reason = reason }; Mapper.CreateMap <User, UserModel>(); var userModel = Mapper.Map <User, UserModel>(_unitOfWork.UserRepository.FindSingleBy(u => u.Id == userId)); _unitOfWork.ActivationCodeRepository.Add(activationCode); _unitOfWork.Save(); var activatopnCodeModel = new ActivationCodeModel() { UserId = userId, IssuedOn = issuedOn, Code = code, ExpiresOn = expiredOn, Reason = reason, User = userModel }; return(activatopnCodeModel); }
public async Task <SyriatelWebService.SendSMSResponse> SendCode(int userId, ActivationCodeModel codeModel) { SyriatelWebService.APISoapClient client = new SyriatelWebService.APISoapClient(); SyriatelWebService.SendSMSResponse response = await client.SendSMSAsync(BusinessSettings.SyriatelJobName, BusinessSettings.SyriatelUserName, BusinessSettings.SyriatelPassword, codeModel.Code, BusinessSettings.SyriatelSender, _unitOfWork.UserRepository.FindSingleBy(u => u.Id == userId).GSM, //"041111", null, null, null); return(response); }
public void AddActivationCode(string actCode) { using (_repository) { var code = new ActivationCodeModel { ActivationCode = actCode, ActivationCodeId = Guid.NewGuid().ToString() }.SerializeAndEncrypt(); if (_repository.GetCallCenterId() <= 0) { _repository.AddActivationCode(code); } else { _repository.UpdateActivationCode(code); } } }