private static void Init(Entities.Culture culture) { JobProgress progress = progressController.Jobs.GetByName("Init"); if (progress == null) { progress = progressController.CreateJob(0, 27, "Init"); } else { progress.MinValue = 0; progress.MaxValue = 27; } Currencies.Init(settings.SqlConnectionString); progress.Value++; Types.Init(settings.SqlConnectionString); progress.Value++; Categories.Init(settings.SqlConnectionString); progress.Value++; Employees.Init(settings.SqlConnectionString); progress.Value++; SignUpTypes.Init(settings.SqlConnectionString, culture); progress.Value++; PersonTitleTypes.Init(settings.SqlConnectionString, culture); progress.Value++; ContactMediaTypes.Init(settings.SqlConnectionString, culture); progress.Value++; TourTypes.Init(settings.SqlConnectionString, culture); progress.Value++; PaymentTypes.Init(settings.SqlConnectionString, culture); progress.Value++; TourMembershipTypes.Init(settings.SqlConnectionString, culture); progress.Value++; Phonebook.Init(settings.SqlConnectionString); progress.Value++; TourStates.Init(settings.SqlConnectionString, culture); progress.Value++; TourCostConstraintTypes.Init(settings.SqlConnectionString, culture); progress.Value++; Tours.Init(settings.SqlConnectionString); progress.Value++; ServiceTypes.Init(settings.SqlConnectionString, culture); progress.Value++; MailEventTypes.Init(settings.SqlConnectionString, culture); progress.Value++; TourRuleConstraints.Init(settings.SqlConnectionString); progress.Value++; TourCostRules.Init(settings.SqlConnectionString); progress.Value++; TourCostGroups.Init(settings.SqlConnectionString); progress.Value++; TourGroupServiceCosts.Init(settings.SqlConnectionString); progress.Value++; TourGroupServicePayments.Init(settings.SqlConnectionString); progress.Value++; TourGroupMembers.Init(settings.SqlConnectionString); progress.Value++; TourGroupEmployees.Init(settings.SqlConnectionString); progress.Value++; TourGroups.Init(settings.SqlConnectionString); progress.Value++; Services.Init(settings.SqlConnectionString); progress.Value++; TourGroupServices.Init(settings.SqlConnectionString); progress.Value++; Mails.Init(settings.SqlConnectionString); progress.Value++; // Note: please fix # of progress jobs if you added // anything else here. }
public static bool Send(Mail mail, UserCollection recipients) { bool res; try { using (TransactionScope ts = new TransactionScope()) { // Insert mail res = _mailsRepo.InsertMail(mail); // Insert Send event if (res) { var me = new MailEvent { EventTime = DateTime.Now, EventUser = DomainModel.Application.User, EventType = MailEventTypes.GetById(21) // Send }; res = _mailsRepo.InsertEvent(mail, me); if (res) { mail.EventLog.Add(me); } } // Insert Receieve events foreach (User user in recipients) { var me = new MailEvent { EventTime = DateTime.Now, EventUser = user, EventType = MailEventTypes.GetById(22) // Receive }; if (!(res = _mailsRepo.InsertEvent(mail, me))) { break; } mail.EventLog.Add(me); } if (res) { ts.Complete(); } else { } } } catch (Exception ex) { res = false; try { DomainModel.Application.Status.Update( StatusController.Abstract.StatusTypes.Error, "", ex.Message); } catch (Exception) { } } return(res); }