/// <summary> /// Save contact confirmation email /// </summary> /// <param name="contact">Contact saved</param> /// <param name="distributorId">Name of the owner of the site</param> /// /// /// <param name="extension">Website extension</param> /// /// /// <param name="locale">Customer locale</param> /// /// /// <param name="domain">Domain for this locale</param> /// /// /// <param name="primaryLocale"></param> /// <param name="registrationSource">Where did the customer got the invitation</param> /// <param name="distributorName"></param> /// <param name="distributorEmail"></param> /// <param name="isDistributorCopied"></param> /// <returns>True if success</returns> public static bool SendContactConfirmationEmail( Contact_V01 contact, string distributorId, string extension, string locale, string domain, String distributorName, String distributorEmail, Boolean isDistributorCopied, String primaryLocale, RegistrationSource registrationSource = RegistrationSource.Other ) { if (contact.EmailAddresses.Count < 1) { throw new ArgumentException("Argument can not be null", "Contact Email"); } if (contact.LocalName == null) { throw new ArgumentException("Argument can not be null", "Contact Name"); } if (string.IsNullOrEmpty(contact.DistributorID)) { throw new ArgumentException("Argument can not be null", "Distributor ID"); } var request = new TriggeredSendRequestRequest_V01(); request.Data = new TriggeredSaveContactConformationSendData_V01 { CustomerEmail = contact.EmailAddresses[0].Address, CustomerName = contact.LocalName, CustomerPhoneNumber = (contact.Phones.Count > 0) ? contact.Phones.FirstOrDefault().Number : String.Empty, DistributorEmail = distributorEmail, DistributorId = distributorId, DistributorName = distributorName, DataKey = Guid.NewGuid().ToString(), Locale = primaryLocale, Extension = extension, IsDistributorCopied = isDistributorCopied, Domain = domain, RegistrationSource = registrationSource, EmailLanguageLocale = locale }; using (var proxy = ServiceClientProvider.GetDistributorCRMServiceProxy()) { try { var response = proxy.SendTriggeredMessage(new SendTriggeredMessageRequest(request)); return(response.SendTriggeredMessageResult.Status == ServiceResponseStatusType.Success); } catch (Exception ex) { Log(ex, proxy); return(false); } } }
RegistrationSourceViewModel CreateViewModel(RegistrationSource registrationSource) { return(new RegistrationSourceViewModel(registrationSource.Id, _navigator, registrationSource.Description)); }