public void Apply(Person person, Application application, string siteId)
{
var seminar = SiteService.GetLatestSeminar(siteId);
// deal with the mailing list
_notificationService.RemoveFromMailingList(seminar, person, MailingLists.Invitation);
_notificationService.AddToMailingList(seminar, person, MailingLists.Applied);
// send email to confirm application
_notificationService.GenerateConfirmation(application);
// update the person's record
_personService.UpdatePerson(person, application);
}