public ChmArea(ChmBaseInfo chmInfo) { ChmInfo = chmInfo; }
public static ChmBaseInfo[] GetInfos(string basePath) { ChmBaseInfo[] chmBases = new ChmBaseInfo[] { new ChmBaseInfo { Folder = "about-online-help", Placeholder = "site.aoh_chm", ChmName = "about-online-help.chm" }, new ChmBaseInfo { Folder = "accounting", Placeholder = "site.acc_chm", ChmName = "accounting.chm" }, new ChmBaseInfo { Folder = "building-assemblies", Placeholder = "site.ba_chm", ChmName = "building-assemblies.chm" }, new ChmBaseInfo { Folder = "business-processes-in-everest", Placeholder = "site.bp_chm", ChmName = "business-processes.chm" }, new ChmBaseInfo { Folder = "contact-manager", Placeholder = "site.cm_chm", ChmName = "contact-manager.chm" }, new ChmBaseInfo { Folder = "custom-tracking", Placeholder = "site.ct_chm", ChmName = "custom-tracking.chm" }, new ChmBaseInfo { Folder = "everest-advanced-dashboard", Placeholder = "site.db_chm", ChmName = "everest_advanced_dashboard.chm" }, new ChmBaseInfo { Folder = "everest-advanced-edition-utilities", Placeholder = "site.advutl_chm", ChmName = "everest-advanced-edition-utilities.chm" }, new ChmBaseInfo { Folder = "everest-crm", Placeholder = "site.crm_chm", ChmName = "acrm.chm" }, new ChmBaseInfo { Folder = "everest-e-mail", Placeholder = "site.eml_chm", ChmName = "everest-e-mail.chm" }, new ChmBaseInfo { Folder = "everest-mailbridge", Placeholder = "site.mb_chm", ChmName = "mailbridge.chm" }, new ChmBaseInfo { Folder = "everest-us-payroll", Placeholder = "site.prl_chm", ChmName = "everest-us-payroll.chm" }, new ChmBaseInfo { Folder = "forms-designer", Placeholder = "site.fd_chm", ChmName = "forms_designer.chm" }, new ChmBaseInfo { Folder = "glossary", Placeholder = "site.gloss_chm", ChmName = "everest_advance_edition_glossary.chm" }, new ChmBaseInfo { Folder = "managing-customers", Placeholder = "site.mc_chm", ChmName = "managing-customers.chm" }, new ChmBaseInfo { Folder = "managing-items", Placeholder = "site.mi_chm", ChmName = "managing-items.chm" }, new ChmBaseInfo { Folder = "managing-vendors", Placeholder = "site.mv_chm", ChmName = "managing-vendors.chm" }, new ChmBaseInfo { Folder = "point-of-sale", Placeholder = "site.pos_chm", ChmName = "point-of-sale.chm" }, new ChmBaseInfo { Folder = "reports", Placeholder = "site.rpt_chm", ChmName = "reports.chm" }, new ChmBaseInfo { Folder = "reports-manager", Placeholder = "site.rmgr_chm", ChmName = "report-manager.chm" }, new ChmBaseInfo { Folder = "sales", Placeholder = "site.sp_chm", ChmName = "the-sales-process.chm" }, new ChmBaseInfo { Folder = "setting-up-a-company", Placeholder = "site.sc_chm", ChmName = "setting-up-a-company.chm" }, new ChmBaseInfo { Folder = "the-purchase-process", Placeholder = "site.pp_chm", ChmName = "the-purchase-process.chm" }, new ChmBaseInfo { Folder = "time-clock", Placeholder = "site.tc_chm", ChmName = "time-clock.chm" }, new ChmBaseInfo { Folder = "utilities", Placeholder = "site.utl_chm", ChmName = "utility.chm" }, new ChmBaseInfo { Folder = "warehouse-management", Placeholder = "site.wm_chm", ChmName = "warehouse-management.chm" }, new ChmBaseInfo { Folder = "working-with-everest", Placeholder = "site.wwe_chm", ChmName = "working-with-everest.chm" }, }; var chmBasesResult = new List <ChmBaseInfo>(); string[] srcFolders = chmBases.Select(x => x.Folder).ToArray(); var dirs = Directory.EnumerateDirectories(basePath, "*", SearchOption.TopDirectoryOnly); foreach (var dir in dirs) { string folder = dir.Substring(dir.LastIndexOf('\\') + 1); var chmBaseInfo = chmBases.FirstOrDefault(x => x.Folder == folder); if (chmBaseInfo != null) { chmBaseInfo.Path = dir + "\\"; chmBasesResult.Add(chmBaseInfo); } } if (chmBasesResult.Count != chmBases.Length) { Console.WriteLine($"WARN: Epxected {chmBases.Length} folder, but found {chmBasesResult.Count}"); } return(chmBasesResult.ToArray()); }