private void PopulateFolderGridData()
    {
        System.Web.UI.WebControls.BoundColumn colBound = new System.Web.UI.WebControls.BoundColumn();
        string BlogFolderParm = (string)(m_bBlockBlogFolders ? "1" : "0");
        string currentFolderCheckbox = "";

        colBound.DataField = "ITEM1";
        colBound.HeaderText = "";
        colBound.ItemStyle.CssClass = "label";
        colBound.ItemStyle.Wrap = false;
        colBound.HeaderStyle.Height = Unit.Percentage(0);
        ContentGrid.Columns.Add(colBound);

        colBound = new System.Web.UI.WebControls.BoundColumn();
        colBound.DataField = "ITEM2";
        colBound.HeaderText = "";
        colBound.ItemStyle.CssClass = "label";
        colBound.ItemStyle.Wrap = false;
        colBound.HeaderStyle.Height = Unit.Percentage(0);
        ContentGrid.Columns.Add(colBound);

        colBound = new System.Web.UI.WebControls.BoundColumn();
        colBound.DataField = "ITEM3";
        colBound.HeaderText = "";
        colBound.ItemStyle.CssClass = "label";
        colBound.ItemStyle.Wrap = false;
        colBound.HeaderStyle.Height = Unit.Percentage(0);
        ContentGrid.Columns.Add(colBound);

        DataTable dt = new DataTable();
        DataRow dr;
        dt.Columns.Add(new DataColumn("ITEM1", typeof(string)));
        dt.Columns.Add(new DataColumn("ITEM2", typeof(string)));
        dt.Columns.Add(new DataColumn("ITEM3", typeof(string)));

        dr = dt.NewRow();
        dr[0] = m_refMsg.GetMessage("alt select sub folders by navigating") + ":";
        dr[1] = "remove-item";
        dr[2] = "remove-item";
        dt.Rows.Add(dr);

        dr = dt.NewRow();
        dr[0] = "";
        dr[1] = "remove-item";
        dr[2] = "remove-item";
        dt.Rows.Add(dr);

        if ("siteupdateactivity" == strPageAction)
        {
            dr = dt.NewRow();
            dr[0] = "<input type=\"checkbox\" id=\"selectall\" name=\"selectall\" onclick=\"checkAll();\"/>" + m_refMsg.GetMessage("generic select all msg");
            dr[1] = "remove-item";
            dr[2] = "remove-item";
            dt.Rows.Add(dr);

            dr = dt.NewRow();
            dr[0] = "<input type=\"checkbox\" name=\"allsubfolders\" id=\"allsubfolders\"";
            if (m_bSubFolder)
            {
                dr[0] = dr[0] + " checked";
            }
            dr[0] = dr[0] + "/>" + m_refMsg.GetMessage("lbl include sub-folders");
            dr[1] = "remove-item";
            dr[2] = "remove-item";
            dt.Rows.Add(dr);

            dr = dt.NewRow();
            dr[0] = "";
            dr[1] = "remove-item";
            dr[2] = "remove-item";
            dt.Rows.Add(dr);

            currentFolderCheckbox = "<input type=\"checkbox\" id = \"selectedfolder\" name=\"selectedfolder\" value=\"" + FolderId + "\" />&nbsp;" + "<input type=\"hidden\" id=\"selfolder" + FolderId + "\" value=\"" + FolderName + "\" />&nbsp;" + "<input type=\"hidden\" id=\"rootFolder\" value=\"" + FolderId + "\" />&nbsp;";
        }

        dr = dt.NewRow();
        dr[0] = "" + m_refMsg.GetMessage("lbl Selected Folder") + "<span class=\"selectedContent\">" + currentFolderCheckbox + fPath + "</span>";
        dr[1] = "remove-item";
        dr[2] = "remove-item";
        dt.Rows.Add(dr);

        if ((FolderId != 0 && (int)gtNavs["FolderType"] != 2) || (strRedirectFromReport == "report"))
        {
            dr = dt.NewRow();
            if ((string)(strRedirectFromReport) == "report")
            {
                if (FolderId != 0)
                {
                    dr[0] = "<a href=# onclick=\"RecursiveSubmit(" + ParentFolderId + ",&quot;" + BlogFolderParm + "&quot;,&quot;report&quot;,&quot;" + strPageAction + "&quot;);return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\"><img src=\"" + AppPath + "images/ui/icons/folderUp.png" + "\" border=\"0\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\" alt=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\" align=\"absbottom\"></a><a href=# onclick=\"RecursiveSubmit(" + ParentFolderId + ",&quot;" + BlogFolderParm + "&quot;,&quot;report&quot;,&quot;" + strPageAction + "&quot;);return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\">..</a>";
                }
                else
                {
                    if ("siteupdateactivity" == strPageAction)
                    {
                        // SiteUpdateReport: don't show up-folder button if already at root:
                        dr[0] = "";
                    }
                    else
                    {
                        dr[0] = "<a href=# onclick=\"return SaveSelCreateContent(&quot;" + strPageAction + "&quot;,&quot;0&quot;);return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\"><img src=\"" + AppPath + "images/ui/icons/folderUp.png" + "\" border=\"0\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\" alt=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\" align=\"absbottom\"></a><a href=# onclick=\"return SaveSelCreateContent(&quot;" + strPageAction + "&quot;,&quot;0&quot;);return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\">..</a>";
                    }
                }
            }
            else
            {
                dr[0] = "<a href=# onclick=\"RecursiveSubmit(" + ParentFolderId + ",&quot;" + BlogFolderParm + "&quot;,&quot;&quot;,&quot;&quot;,&quot;Folder&quot;" + ");return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\"><img src=\"" + AppPath + "images/ui/icons/folderUp.png" + "\" border=\"0\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\" alt=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\" align=\"absbottom\"></a><a href=# onclick=\"RecursiveSubmit(" + ParentFolderId + ",&quot;" + BlogFolderParm + "&quot;,&quot;&quot;,&quot;&quot;,&quot;Folder&quot;" + ");return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\">..</a>";
            }

            dr[1] = "&nbsp;";
            dr[2] = "&nbsp;";
            dt.Rows.Add(dr);
        }

        string folder_image = "";

        if (!String.IsNullOrEmpty(FolderType))
        {
            FolderType = Request.QueryString["FolderType"];
        }
        if (!String.IsNullOrEmpty(FolderType))
        {
            if (FolderType == "9")
            {
                System.Collections.Generic.List<Ektron.Cms.Commerce.CatalogData> catalogData = new System.Collections.Generic.List<Ektron.Cms.Commerce.CatalogData>();
                Ektron.Cms.Commerce.CatalogEntry CatalogManager = new Ektron.Cms.Commerce.CatalogEntry(m_refContentApi.RequestInformationRef);

                catalogData = CatalogManager.GetCatalogList(1, 1);

                folder_image = m_refContentApi.AppPath + "images/ui/icons/tree/folderGreenExpanded.png";
                for (int catalogFolders = 0; catalogFolders <= catalogData.Count - 1; catalogFolders++)
                {
                    dr = dt.NewRow();
                    FolderId = catalogData[catalogFolders].Id;
                    gtNavs = m_refContent.GetFolderInfoWithPath(FolderId);
                    string Path = (string)(gtNavs["Path"]);
                    Path = Path.Replace("\\", "\\\\");
                    dr[0] += "<a href=# onclick=\"SelectCatalog(\'" + catalogData[catalogFolders].Id + "\',\'" + Path + "\');return false;\" title=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\"><img src=\"" + folder_image + "\" border=\"0\" title=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\" alt=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\" align=\"absbottom\"></a><a href=# onclick=\"SelectCatalog(\'" + catalogData[catalogFolders].Id + "\',\'" + Path + "\');return false;\" title=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\">" + catalogData[catalogFolders].Name + "</a>";
                    dt.Rows.Add(dr);
                }
            }

        }
        else
        {
            bool bGo = false;
            foreach (Collection folder in (IEnumerable)cFolders)
            {
                bGo = false;
                int __foldertype = (int)folder["FolderType"];
                // Do not show blog type folders when they're explicitly unwanted:
                if (m_bBlockBlogFolders)
                {

                    if (__foldertype == 0 || __foldertype == 2 || __foldertype == 6 || __foldertype == 8)
                        bGo = true;
                    else
                        bGo = false;
                }
                else
                {
                    if (__foldertype == 0 || __foldertype == 1 || __foldertype == 6 || __foldertype == 8 || __foldertype == 9)
                        bGo = true;
                    else
                        bGo = false;
                }
                if (bGo)
                {
                    dr = dt.NewRow();
                    folder_image = AppPath + "images/ui/icons/folder.png";
                    if (__foldertype == 6)
                    {
                        folder_image = AppPath + "images/ui/icons/folderCommunity.png";
                    }
                    else if (__foldertype == 9)
                    {
                        folder_image = AppPath + "images/ui/icons/folderGreen.png";
                    }
                    else if (__foldertype == 8)
                    {
                        folder_image = AppPath + "images/ui/icons/tree/folderCalendarClosed.png";
                    }

                    if ((string)(strRedirectFromReport) == "report")
                    {
                        if ("siteupdateactivity" == strPageAction)
                        {
                            dr[0] = "<input type=\"checkbox\" name=\"selectedfolder\" value=\"" + folder["id"] + "\" >";
                            dr[0] = dr[0] + "<input type=\"hidden\" id=\"selfolder" + folder["id"] + "\" value=\"" + folder["Name"] + "\" >";
                        }
                        dr[0] += "<a href=# onclick=\"RecursiveSubmit(" + folder["id"] + ",&quot;" + BlogFolderParm + "&quot;,&quot;report&quot;,&quot;" + strPageAction + "&quot;);\"return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\">" + "<img src=\"" + folder_image + "\" border=\"0\" title=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\" alt=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\" align=\"absbottom\"></a><a href=# onclick=\"RecursiveSubmit(" + folder["id"] + ",&quot;" + BlogFolderParm + "&quot;,&quot;report&quot;,&quot;" + strPageAction + "&quot;);\"return false;\" title=\"" + m_refMsg.GetMessage("alt: generic previous dir text") + "\">" + folder["Name"] + "</a>";
                    }
                    else
                    {
                        dr[0] = "<a href=# onclick=\"RecursiveSubmit(" + folder["id"] + ",&quot;" + BlogFolderParm + "&quot;,&quot;&quot;,&quot;&quot;,&quot;Folder&quot;" + ");return false;\" title=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\"><img src=\"" + folder_image + "\" border=\"0\" title=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\" alt=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\" align=\"absbottom\"></a><a href=# onclick=\"RecursiveSubmit(" + folder["id"] + ",&quot;" + BlogFolderParm + "&quot;,&quot;&quot;,&quot;&quot;,&quot;Folder&quot;" + ");return false;\" title=\"" + m_refMsg.GetMessage("alt: generic view folder content text") + "\">" + folder["Name"] + "</a>";
                    }

                    dr[1] = "&nbsp;";
                    dr[2] = "&nbsp;";
                    dt.Rows.Add(dr);
                }
            }
        }
        DataView dv = new DataView(dt);
        ContentGrid.DataSource = dv;
        ContentGrid.DataBind();
    }