Esempio n. 1
0
        public void SendApplicationEmailToSysadmin(Application application)
        {
            var developer = application.Developer;
            var sysEMail  = PreferenceService.GetTyped <EmailInfo>(Preference.SYSTEM_EMAIL);
            var mail      = PrepareMailToSysadmins(new EmailInfo {
                Email = developer.Email
            });

            switch (application.State)
            {
            case ApplicationStateEnum.SubmitForApprove:
                mail.Subject = PreferenceService.Get(Preference.APPLICATION_SUBMITTED_EMAIL_SUBJECT).Value;
                mail.Body    = string.Format(PreferenceService.Get(Preference.APPLICATION_SUBMITTED_EMAIL_BODY).Value, application.Name);
                break;

            case ApplicationStateEnum.Live:
                mail.Subject = PreferenceService.Get(Preference.APPLICATION_GO_LIVE_EMAIL_SUBJECT).Value;
                mail.Body    = string.Format(PreferenceService.Get(Preference.APPLICATION_GO_LIVE_EMAIL_BODY).Value,
                                             application.Name, developer.DisplayName);
                break;

            default: throw new ChalkableException(ChlkResources.EMAIL_INCORRECT_APP_STATE);
            }
            SendMail(mail, sysEMail);
        }
Esempio n. 2
0
        public void SendApplicationEmailToDeveloper(Application application)
        {
            var sysEMail  = PreferenceService.GetTyped <EmailInfo>(Preference.SYSTEM_EMAIL);
            var mail      = PrepareDefaultMail(sysEMail);
            var developer = application.Developer;

            switch (application.State)
            {
            case ApplicationStateEnum.Approved:
                mail.Subject = PreferenceService.Get(Preference.APPLICATION_APPROVED_EMAIL_SUBJECT).Value;
                var confirmationKey = developer.User.ConfirmationKey;
                var url             = string.Format(DEVELOPER_CONFIRM_URL_FORMAT, PreferenceService.Get(Preference.APPLICATION_URL).Value
                                                    , confirmationKey, application.Id);
                mail.Body = string.Format(PreferenceService.Get(Preference.APPLICATION_APPROVED_EMAIL_BODY).Value,
                                          application.Name, developer.Name, url);
                break;

            case ApplicationStateEnum.Rejected:
                mail.Subject = PreferenceService.Get(Preference.APPLICATION_REJECTED_EMAIL_SUBJECT).Value;
                mail.Body    = string.Format(PreferenceService.Get(Preference.APPLICATION_REJECTED_EMAIL_BODY).Value,
                                             application.Name, developer.DisplayName);
                break;

            default: throw new ChalkableException(ChlkResources.EMAIL_INCORRECT_APP_STATE);
            }
            if (EmailTools.IsValidEmailAddress(developer.Email))
            {
                mail.To.Add(developer.Email);
            }
            SendMail(mail, sysEMail);
        }
Esempio n. 3
0
        public void SendResettedPasswordToDeveloper(Developer developer, string confirmationKey)
        {
            var bodyTemplate = PreferenceService.Get(Preference.RESETTED_PASSWORD_EMAIL_BODY).Value;
            var url          = string.Format(CONFIRM_URL_FORMAT, PreferenceService.Get(Preference.APPLICATION_URL).Value, confirmationKey);
            var body         = string.Format(bodyTemplate, developer.DisplayName, "", url);

            SendResettedPassword(developer.Email, body);
        }
Esempio n. 4
0
        public void SendResettedPasswordToPerson(User user, string confirmationKey)
        {
            var bodyTemplate = PreferenceService.Get(Preference.RESETTED_PASSWORD_EMAIL_BODY).Value;
            var url          = string.Format(CONFIRM_URL_FORMAT, PreferenceService.Get(Preference.APPLICATION_URL).Value, confirmationKey);
            var body         = string.Format(bodyTemplate, user.FullName, "", url);

            SendResettedPassword(user.Login, body);
        }
Esempio n. 5
0
        private Guid?InternalGetAssessmentId()
        {
            var key = ApplicationSecurity.HasAssessmentEnabled(Context)
                ? Preference.ASSESSMENT_APLICATION_ID
                : null;

            Guid res;

            return(key != null ? (Guid.TryParse(PreferenceService.Get(key).Value, out res) ? res : (Guid?)null) : null);
        }
Esempio n. 6
0
        public void SendMailToFriend(string fromMail, string toMail, string message, string subject = null)
        {
            var sysEMail  = PreferenceService.GetTyped <EmailInfo>(Preference.SYSTEM_EMAIL);
            var emailfrom = new EmailInfo {
                Email = fromMail
            };
            var mailMessage = PrepareDefaultMail(emailfrom);

            mailMessage.To.Add(new MailAddress(toMail));
            mailMessage.Body    = message;
            mailMessage.Subject = subject;
            SendMail(mailMessage, sysEMail);
        }
Esempio n. 7
0
 public UserContext DemoLogin(string roleName, string demoPrefix)
 {
     using (var uow = Update())
     {
         var demoUser = GetDemoUser(roleName, demoPrefix);
         if (demoUser != null)
         {
             demoUser.OriginalPassword = PreferenceService.Get(Preference.DEMO_USER_PASSWORD).Value;
         }
         var res = DemoUserLogin(demoUser, uow, DemoSchoolConstants.CurrentSchoolYearId);
         uow.Commit();
         return(res);
     }
 }
Esempio n. 8
0
        private void SendResettedPassword(string email, string body)
        {
            var fromEmail = PreferenceService.GetTyped <EmailInfo>(Preference.FORGOTPASSWORD_SYSTEM_EMAIL);
            var mail      = PrepareMailToSysadmins(fromEmail);

            if (EmailTools.IsValidEmailAddress(email))
            {
                mail.To.Add(email);
            }
            else
            {
                Trace.TraceWarning(ChlkResources.ERR_EMAIL_INVALID, email);
                return;
            }
            mail.Subject = ChlkResources.EMAIL_CHALKABLE_PASSWORD_RESET;
            mail.Body    = body;
            SendMail(mail, fromEmail);
        }
Esempio n. 9
0
 private void SendChangeEmailToUser(string userName, string oldEmail, string newEmail)
 {
     if (!IsAutogenerated(oldEmail))
     {
         var sysEMail   = PreferenceService.GetTyped <EmailInfo>(Preference.SYSTEM_EMAIL);
         var personMail = oldEmail;
         var mail       = PrepareDefaultMail(sysEMail);
         if (EmailTools.IsValidEmailAddress(personMail))
         {
             mail.To.Add(personMail);
         }
         else
         {
             Trace.TraceWarning(ChlkResources.ERR_EMAIL_INVALID, personMail);
             return;
         }
         var bodyTemplate = PreferenceService.Get(Preference.EMAIL_CHANGE_EMAIL_BODY).Value;
         mail.Body = string.Format(bodyTemplate, userName, newEmail);
         SendMail(mail, sysEMail);
     }
 }
Esempio n. 10
0
        private void SendMail(MailMessage mail, EmailInfo emailInfo)
        {
            var client = new SmtpClient
            {
                Credentials = new System.Net.NetworkCredential(emailInfo.UserName, emailInfo.Password),
                Port        = Int32.Parse(PreferenceService.Get(Preference.SERVER_PORT).Value),
                Host        = PreferenceService.Get(Preference.SERVER_NAME).Value,
                EnableSsl   = true
            };

            try
            {
                client.Send(mail);
            }
            catch (Exception ex)
            {
                Trace.TraceError(ChlkResources.ERR_EMAIL_WASNT_SEND);
                Trace.TraceError(ex.Message);
                Trace.TraceError(ex.StackTrace);
            }
        }