public int SetMailTemplate(BasicMailTemplate mailTemplate) { return(SetMailTemplate(mailTemplate.TemplateId, mailTemplate.TemplateName, mailTemplate.LanguageCode, mailTemplate.CountryCode, mailTemplate.OrganizationId, mailTemplate.TemplateBody)); }
public static MailTemplate FromNameAndOrg(string name, Organization sender) { if (name == "") { return(MailTemplate.None); } Country country = sender.DefaultCountry; string countrycode = country.Code; string lang = country.Culture.Substring(0, 2); BasicMailTemplate basic = MailTemplateCache.GetBestMatch(name, lang, countrycode, sender); return(FromBasic(basic)); }
//----------------------------------------------// // Cached retreval public static MailTemplate FromNameCountryAndOrg(string name, string countrycode, int orgId) { if (name == "") { return(MailTemplate.None); } Country country = Country.FromCode(countrycode); string lang = country.Culture.Substring(0, 2); Organization org = Organization.FromIdentity(orgId); BasicMailTemplate basic = MailTemplateCache.GetBestMatch(name, lang, countrycode, org); return(FromBasic(basic)); }
static public BasicMailTemplate GetBestMatch(string templateName, string language, string country, Organization org) { List <BasicMailTemplate> tmplList = GetCachedTemplates(templateName); Organizations orgLine = (org != null) ? org.GetLine() : new Organizations(); int[] lineIDs = orgLine.Identities; List <int> idlist = new List <int>(lineIDs); BasicMailTemplate templateDefault = null; BasicMailTemplate countryDefault = null; BasicMailTemplate bestSofar = null; int bestIndex = -1; foreach (BasicMailTemplate bmt in tmplList) { int thisIndex = idlist.IndexOf(bmt.OrganizationId); if (thisIndex > bestIndex) { bestIndex = thisIndex; bestSofar = bmt; } else if (bmt.CountryCode.ToUpper() == country && bmt.OrganizationId < 1) { countryDefault = bmt; } else if (bmt.CountryCode == "" && bmt.OrganizationId < 1) { templateDefault = bmt; } } if (bestSofar != null) { return(bestSofar); } else if (countryDefault != null) { return(countryDefault); } else if (templateDefault != null) { return(templateDefault); } else { return(null); } }
internal static MailTemplate FromBasic(BasicMailTemplate basic) { MailTemplate templ = new MailTemplate(basic); return(templ); }
public static MailTemplate FromIdentity(int templateId) { BasicMailTemplate basic = SwarmDb.GetDatabaseForReading().GetMailTemplateById(templateId); return(FromBasic(basic)); }
public MailTemplate(BasicMailTemplate basic) : base(basic) { originallyLoadedContent = basic.TemplateBody; }