private static IEnumerable <string> GetLegalTextIds(SiteConfigurationData siteConfig, string ageBandKey, bool registration)
    {
        LegalGroup legalGroup = DictionaryUtils.TryGetValue(siteConfig.legal, ageBandKey);

        return(UseCreate(registration, legalGroup) ? (from proxy in legalGroup.CREATE
                                                      select CreateTextId(proxy)) : legalGroup.documents.Keys.Distinct());
    }
Esempio n. 2
0
        private static IEnumerable <ILegalDocument> BuildLegalDocs(IDictionary <string, LegalGroup> groups, string ageBandKey, bool registration, IList <RegistrationText> legalTexts)
        {
            LegalGroup legalGroup = DictionaryUtils.TryGetValue(groups, ageBandKey);
            IEnumerable <ILegalDocument> source = (UseCreate(registration, legalGroup) ? CreateDocuments(legalGroup.CREATE, legalTexts) : CreateDocuments(legalGroup.documents, legalTexts));
            List <ILegalDocument>        list   = new List <ILegalDocument>(source.Count());

            foreach (string type in legalGroup.documentTypeOrder)
            {
                Func <ILegalDocument, bool> predicate = (ILegalDocument doc) => doc.Type == type;
                list.AddRange(source.Where(predicate));
            }
            return(list);
        }
 private static void GetAgeBandByAge(SiteConfigurationData siteConfig, int age, out ConfigurationAgeBand configurationAgeBand, out string configurationAgeBandKey)
 {
     configurationAgeBand    = null;
     configurationAgeBandKey = null;
     foreach (KeyValuePair <string, ConfigurationAgeBand> ageBand in siteConfig.compliance.ageBands)
     {
         string key = ageBand.Key;
         ConfigurationAgeBand value = ageBand.Value;
         if (value != null && age >= value.minAge && age <= value.maxAge && ValidateAgeBandKey(key))
         {
             LegalGroup legalGroup = DictionaryUtils.TryGetValue(siteConfig.legal, key);
             if (legalGroup != null)
             {
                 configurationAgeBand    = value;
                 configurationAgeBandKey = key;
             }
         }
     }
 }
    private static void GetAgeBandByKey(SiteConfigurationData siteConfig, string ageBandKey, out ConfigurationAgeBand configurationAgeBand, out string configurationAgeBandKey)
    {
        configurationAgeBand    = null;
        configurationAgeBandKey = null;
        if (!ValidateAgeBandKey(ageBandKey))
        {
            return;
        }
        ConfigurationAgeBand configurationAgeBand2 = DictionaryUtils.TryGetValue(siteConfig.compliance.ageBands, ageBandKey);

        if (configurationAgeBand2 != null)
        {
            LegalGroup legalGroup = DictionaryUtils.TryGetValue(siteConfig.legal, ageBandKey);
            if (legalGroup != null)
            {
                configurationAgeBand    = configurationAgeBand2;
                configurationAgeBandKey = ageBandKey;
            }
        }
    }
 private static bool UseCreate(bool registration, LegalGroup group)
 {
     return(registration && group.CREATE != null);
 }
    private static IEnumerable <string> GetLegalDocumentsTypeOrder(IDictionary <string, LegalGroup> groups, string ageBandKey)
    {
        LegalGroup legalGroup = DictionaryUtils.TryGetValue(groups, ageBandKey);

        return((legalGroup != null) ? legalGroup.documentTypeOrder : Enumerable.Empty <string>());
    }