Carrotware.CMS.Mvc.UI.Admin.Models.SiteImportWordpressModel.BuildFolderList C# (CSharp) Method

BuildFolderList() protected method

protected BuildFolderList ( ) : void
return void
        protected void BuildFolderList()
        {
            List<FileData> lstFolders = new List<FileData>();

            string sRoot = HttpContext.Current.Server.MapPath("~/");

            string[] subdirs;
            try {
                subdirs = Directory.GetDirectories(sRoot);
            } catch {
                subdirs = null;
            }

            if (subdirs != null) {
                foreach (string theDir in subdirs) {
                    string w = FileDataHelper.MakeWebFolderPath(theDir);
                    lstFolders.Add(new FileData { FileName = w, FolderPath = w, FileDate = DateTime.Now });
                }
            }

            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith(SiteData.AdminFolderPath));
            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/app_code/"));
            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/app_data/"));
            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/app_start/"));
            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/aspnet_client/"));
            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/bin/"));
            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/obj/"));
            lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/views/"));

            this.DownloadFolders = lstFolders.OrderBy(f => f.FileName).ToList();
        }