public static string GetEmailTemplateTokenForCommunicationToken(CommunicationTokens key) { string emailTemplateToken; switch (key) { case CommunicationTokens.FullName: emailTemplateToken = "FullName"; break; default: throw new ArgumentOutOfRangeException("key"); } return(string.Format("{0}{1}{0}", TemplateTokenDelimiter, emailTemplateToken)); }
public static string GetEmailTemplateTokenForCommunicationToken(CommunicationTokens key) { string emailTemplateToken; switch (key) { case CommunicationTokens.CandidateFirstName: emailTemplateToken = "Candidate.FirstName"; break; case CommunicationTokens.CandidateLastName: emailTemplateToken = "Candidate.LastName"; break; case CommunicationTokens.Username: emailTemplateToken = "Candidate.EmailAddress"; break; case CommunicationTokens.ActivationCode: emailTemplateToken = "Candidate.ActivationCode"; break; case CommunicationTokens.ActivationCodeExpiryDays: emailTemplateToken = "Candidate.ActivationCodeExpiryDays"; break; case CommunicationTokens.PasswordResetCode: emailTemplateToken = "Candidate.PasswordResetCode"; break; case CommunicationTokens.PasswordResetCodeExpiryDays: emailTemplateToken = "Candidate.PasswordResetCodeExpiryDays"; break; case CommunicationTokens.AccountUnlockCode: emailTemplateToken = "Candidate.AccountUnlockCode"; break; case CommunicationTokens.ApplicationVacancyTitle: emailTemplateToken = "Candidate.ApplicationVacancyTitle"; break; case CommunicationTokens.ApplicationVacancyReference: emailTemplateToken = "Candidate.ApplicationVacancyReference"; break; case CommunicationTokens.ApplicationId: emailTemplateToken = "Candidate.ApplicationId"; break; case CommunicationTokens.AccountUnlockCodeExpiryDays: emailTemplateToken = "Candidate.AccountUnlockCodeExpiryDays"; break; case CommunicationTokens.ProviderContact: emailTemplateToken = "Provider.Contact"; break; case CommunicationTokens.ExpiringDraftsCount: emailTemplateToken = "Expiry.Vacancies.Count"; break; case CommunicationTokens.ExpiringDrafts: emailTemplateToken = "Expiry.Vacancies.Info"; break; case CommunicationTokens.UserEmailAddress: emailTemplateToken = "User.EmailAddress"; break; case CommunicationTokens.UserFullName: emailTemplateToken = "User.FullName"; break; case CommunicationTokens.UserEnquiry: emailTemplateToken = "User.Enquiry"; break; case CommunicationTokens.UserEnquiryDetails: emailTemplateToken = "User.EnquiryDetails"; break; default: throw new ArgumentOutOfRangeException("key"); } return(string.Format("{0}{1}{0}", TemplateTokenDelimiter, emailTemplateToken)); }
public CommunicationRequestBuilder WithToken(CommunicationTokens token, string value) { _tokens.Add(new CommunicationToken(token, value)); return(this); }
public static string GetEmailTemplateTokenForCommunicationToken(CommunicationTokens key) { string emailTemplateToken; switch (key) { case CommunicationTokens.Title: emailTemplateToken = "Title"; break; case CommunicationTokens.Firstname: emailTemplateToken = "Firstname"; break; case CommunicationTokens.Lastname: emailTemplateToken = "Lastname"; break; case CommunicationTokens.Fullname: emailTemplateToken = "Fullname"; break; case CommunicationTokens.FullAddress: emailTemplateToken = "FullAddress"; break; case CommunicationTokens.WorkPhoneNumber: emailTemplateToken = "WorkPhoneNumber"; break; case CommunicationTokens.Email: emailTemplateToken = "Email"; break; case CommunicationTokens.MobileNumber: emailTemplateToken = "MobileNumber"; break; case CommunicationTokens.Position: emailTemplateToken = "Position"; break; case CommunicationTokens.Address1: emailTemplateToken = "Address1"; break; case CommunicationTokens.Address2: emailTemplateToken = "Address2"; break; case CommunicationTokens.Address3: emailTemplateToken = "Address3"; break; case CommunicationTokens.Postcode: emailTemplateToken = "Postcode"; break; case CommunicationTokens.City: emailTemplateToken = "City"; break; case CommunicationTokens.Companyname: emailTemplateToken = "Companyname"; break; #region Employer Enquiry Specific tokens start case CommunicationTokens.WorkSector: emailTemplateToken = "WorkSector"; break; case CommunicationTokens.EmployeesCount: emailTemplateToken = "EmployeesCount"; break; case CommunicationTokens.EnquiryDescription: emailTemplateToken = "EnquiryDescription"; break; case CommunicationTokens.EnquirySource: emailTemplateToken = "EnquirySource"; break; case CommunicationTokens.PreviousExperienceType: emailTemplateToken = "PreviousExperienceType"; break; #endregion #region Web Access Request specific tokens case CommunicationTokens.Contactname: emailTemplateToken = "Contactname"; break; case CommunicationTokens.UserType: emailTemplateToken = "UserType"; break; case CommunicationTokens.HasApprenticeshipVacancies: emailTemplateToken = "HasApprenticeshipVacancies"; break; case CommunicationTokens.Systemname: emailTemplateToken = "Systemname"; break; case CommunicationTokens.SelectedServiceTypeIds: emailTemplateToken = "SelectedServiceTypeIds"; break; case CommunicationTokens.AdditionalPhoneNumber: emailTemplateToken = "AdditionalPhoneNumber"; break; case CommunicationTokens.AdditionalEmail: emailTemplateToken = "AdditionalEmail"; break; #endregion default: try { throw new ArgumentOutOfRangeException(string.Format("key: {0} not found", key)); } catch (Exception ex) { emailTemplateToken = ex.Message; //todo: Log that mentioned no matching tokenTemplate avaialble but carry on to add other template tokens. //_logger.Log... } break; } return(string.Format("{0}{1}{0}", TemplateTokenDelimiter, emailTemplateToken)); }
public CommunicationToken(CommunicationTokens key, string value) { Key = key; Value = value; }
private void ResolveEmployerEnquiryElementValues(CommunicationTokens tokenKey, string tokenValue, XElement xElement) { try { string xElementName; switch (tokenKey) { case CommunicationTokens.Title: xElementName = "Title"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Firstname: xElementName = "Forename"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Lastname: xElementName = "Surname"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.WorkPhoneNumber: xElementName = "PrimaryContactLandlineTelephoneNumber"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Email: xElementName = "PrimaryContactEmailAddress"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.MobileNumber: xElementName = "PrimaryContactMobileTelephoneNumber"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Position: xElementName = "Position"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Address1: xElementName = "AddressLine1"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Address2: xElementName = "AddressLine2"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Address3: xElementName = "AddressLine3"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Postcode: xElementName = "PostCode"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.City: xElementName = "Town"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Companyname: xElementName = "EmployerName"; xElement.Element(xElementName).Value = tokenValue; break; #region Employer Enquiry Specific tokens start case CommunicationTokens.WorkSector: xElementName = "Sector"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.EmployeesCount: xElementName = "NumberOfEmployees"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.EnquiryDescription: xElementName = "Question"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.EnquirySource: xElementName = "HowDidYOuhearaboutWebsite"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.PreviousExperienceType: xElementName = "PreviousExperience"; xElement.Element(xElementName).Value = tokenValue; break; //todo: add for EnquiryRelatesTo #endregion default: throw new ArgumentOutOfRangeException(string.Format("key: {0} not found", tokenKey)); } } catch (Exception ex) { //todo: Log that mentioned no matching tokenTemplate avaialble but carry on to add other template tokens. //_logger.Log.. //throw; } }
private void ResolveAccessRequestElementValues(CommunicationTokens tokenKey, string tokenValue, XElement xElement) { try { string xElementName; switch (tokenKey) { case CommunicationTokens.Title: xElementName = "Title"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.UserType: xElementName = "UserType"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Firstname: xElementName = "Firstname"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Position: xElementName = "Position"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Lastname: xElementName = "Lastname"; xElement.Element("PrimaryContactName").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.WorkPhoneNumber: xElementName = "WorkPhoneNumber"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.MobileNumber: xElementName = "MobilePhoneNumber"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Email: xElementName = "EmailAddress"; xElement.Element(xElementName).Value = tokenValue; xElementName = "ConfirmEmailAddress"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Address1: xElementName = "AddressLine1"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Address2: xElementName = "AddressLine2"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Address3: xElementName = "AddressLine3"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Postcode: xElementName = "PostCode"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.City: xElementName = "Town"; xElement.Element("AddressDetails") .Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Companyname: xElementName = "OrganisationName"; xElement.Element(xElementName).Value = tokenValue; xElementName = "CompanyName"; xElement.Element("AddressDetails").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.HasApprenticeshipVacancies: xElementName = "VacancyEnquiry"; xElement.Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Contactname: xElementName = "ContactName"; xElement.Element("SystemDetails").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.AdditionalPhoneNumber: xElementName = "ContactPhoneNumber"; xElement.Element("SystemDetails").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.AdditionalEmail: xElementName = "ContactEmailAddress"; xElement.Element("SystemDetails").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.Systemname: xElementName = "SystemName"; xElement.Element("SystemDetails").Element(xElementName).Value = tokenValue; break; case CommunicationTokens.SelectedServiceTypeIds: xElementName = "ServiceRequired"; xElement.Element("SystemDetails").Element(xElementName).Value = tokenValue; break; default: throw new ArgumentOutOfRangeException(string.Format("key: {0} not found", tokenKey)); } } catch (Exception ex) { //todo: Log that mentioned no matching tokenTemplate avaialble but carry on to add other template tokens. //_logger.Log.. //throw; } }
public static string GetToken(this CommunicationRequest communicationRequest, CommunicationTokens communicationToken) { return(communicationRequest.Tokens.First(t => t.Key == communicationToken).Value); }
public static bool ContainsToken(this CommunicationRequest communicationRequest, CommunicationTokens communicationToken) { return(communicationRequest.Tokens.Count(each => each.Key == communicationToken) > 0); }
public static string GetEmailTemplateTokenForCommunicationToken(CommunicationTokens key) { string emailTemplateToken; switch (key) { case CommunicationTokens.CandidateFirstName: emailTemplateToken = "Candidate.FirstName"; break; case CommunicationTokens.CandidateLastName: emailTemplateToken = "Candidate.LastName"; break; case CommunicationTokens.Username: emailTemplateToken = "Candidate.EmailAddress"; break; case CommunicationTokens.ActivationCode: emailTemplateToken = "Candidate.ActivationCode"; break; case CommunicationTokens.ActivationCodeExpiryDays: emailTemplateToken = "Candidate.ActivationCodeExpiryDays"; break; case CommunicationTokens.PasswordResetCode: emailTemplateToken = "Candidate.PasswordResetCode"; break; case CommunicationTokens.PasswordResetCodeExpiryDays: emailTemplateToken = "Candidate.PasswordResetCodeExpiryDays"; break; case CommunicationTokens.AccountUnlockCode: emailTemplateToken = "Candidate.AccountUnlockCode"; break; case CommunicationTokens.ApplicationVacancyEmployerName: emailTemplateToken = "Candidate.ApplicationVacancyEmployerName"; break; case CommunicationTokens.ApplicationVacancyTitle: emailTemplateToken = "Candidate.ApplicationVacancyTitle"; break; case CommunicationTokens.ApplicationVacancyReference: emailTemplateToken = "Candidate.ApplicationVacancyReference"; break; case CommunicationTokens.ApplicationId: emailTemplateToken = "Candidate.ApplicationId"; break; case CommunicationTokens.AccountUnlockCodeExpiryDays: emailTemplateToken = "Candidate.AccountUnlockCodeExpiryDays"; break; case CommunicationTokens.ProviderContact: emailTemplateToken = "Provider.Contact"; break; case CommunicationTokens.ExpiringDrafts: emailTemplateToken = "Expiring.Drafts"; break; case CommunicationTokens.UserEmailAddress: emailTemplateToken = "User.EmailAddress"; break; case CommunicationTokens.UserFullName: emailTemplateToken = "User.FullName"; break; case CommunicationTokens.UserEnquiry: emailTemplateToken = "User.Enquiry"; break; case CommunicationTokens.UserEnquiryDetails: emailTemplateToken = "User.EnquiryDetails"; break; case CommunicationTokens.ApplicationStatusAlerts: emailTemplateToken = "Application.Status.Alert"; break; case CommunicationTokens.SavedSearchAlerts: emailTemplateToken = "Saved.Search.Alerts"; break; case CommunicationTokens.UserPendingUsername: emailTemplateToken = "User.PendingUsername"; break; case CommunicationTokens.UserPendingUsernameCode: emailTemplateToken = "User.PendingUsernameCode"; break; case CommunicationTokens.CandidateSiteDomainName: emailTemplateToken = "Candidate.SiteDomainName"; break; case CommunicationTokens.CandidateSubscriberId: emailTemplateToken = "Candidate.SubscriberId"; break; case CommunicationTokens.CandidateSubscriptionType: emailTemplateToken = "Candidate.SubscriptionType"; break; case CommunicationTokens.LastLogin: emailTemplateToken = "Candidate.LastLogin"; break; case CommunicationTokens.AccountExpiryDate: emailTemplateToken = "Candidate.AccountExpiryDate"; break; case CommunicationTokens.ProviderUserEmailVerificationCode: emailTemplateToken = "ProviderUser.EmailVerificationCode"; break; case CommunicationTokens.ProviderUserFullName: emailTemplateToken = "ProviderUser.FullName"; break; case CommunicationTokens.ProviderUserUsername: emailTemplateToken = "ProviderUser.Username"; break; case CommunicationTokens.EmployerApplicationLinks: emailTemplateToken = "Employer.ApplicationLinks"; break; case CommunicationTokens.ProviderName: emailTemplateToken = "Provider.Name"; break; case CommunicationTokens.EmployerApplicationLinksExpiry: emailTemplateToken = "Employer.ApplicationLinksExpiry"; break; default: throw new ArgumentOutOfRangeException(nameof(key), key, string.Format("Unknown communication token '{0}'.", key)); } return(string.Format("{0}{1}{0}", TemplateTokenDelimiter, emailTemplateToken)); }