protected void MasterDetail_Item_List_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                WebModuleInfo    MasterDetailModule = (WebModuleInfo)e.Row.DataItem;
                WebpageInfo      page = MasterDetailModule.Webpage;
                MasterDetailItem item = MasterDetailItem.GetSafeResource(MasterDetailModule.Id);
                System.Web.UI.HtmlControls.HtmlAnchor selectLink = (System.Web.UI.HtmlControls.HtmlAnchor)e.Row.FindControl("SelectLink");
                selectLink.HRef = ResolveUrl(MasterDetailModule.GetEditUrl())
                                  //cheesy
                                  + "&returnTo=" + Server.UrlEncode(Request.Url.PathAndQuery);

                selectLink.InnerHtml = MasterDetailItem.Chop(page.Title, 45, true);

                Literal postDateCtl = (Literal)e.Row.FindControl("PostDateCtl");
                if (page.PostDate.HasValue)
                {
                    postDateCtl.Text = page.PostDate.Value.ToShortDateString();
                    if (page.PostDate.Value.TimeOfDay.TotalSeconds > .001)
                    {
                        postDateCtl.Text = string.Format("{0} {1}", postDateCtl.Text, page.PostDate.Value.ToShortTimeString());
                    }
                }

                CheckBox visibleCtl = (CheckBox)e.Row.FindControl("VisibleCtl");
                visibleCtl.Checked = page.Visible;

                CheckBox featuredCtl = (CheckBox)e.Row.FindControl("FeaturedCtl");
                featuredCtl.Checked = item.IsFeatured;
            }
        }
        protected void SummaryListRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                WebModuleInfo    module = (WebModuleInfo)e.Item.DataItem;
                WebpageInfo      page   = module.Webpage;
                MasterDetailItem item   = MasterDetailItem.GetSafeResource(module.Id);

                if (item != null)
                {
                    if (item.IsFeatured)
                    {
                        HtmlControl divSummary = (HtmlControl)e.Item.FindControl("divSummary");
                        if (divSummary != null)
                        {
                            divSummary.Attributes["class"] += " MasterDetail_ListItemFeatured";
                        }

                        HtmlControl trFeaturedHeader = (HtmlControl)e.Item.FindControl("trFeaturedHeader");
                        if (trFeaturedHeader != null)
                        {
                            trFeaturedHeader.Visible = item.IsFeatured;
                        }
                    }

                    Image         imgMain    = (Image)e.Item.FindControl("imgMain");
                    HtmlTableCell tdImageCol = (HtmlTableCell)e.Item.FindControl("tdImageCol");
                    imgMain.Visible = !string.IsNullOrEmpty(item.ImagePath);
                    if (imgMain.Visible)
                    {
                        imgMain.ImageUrl = ResolveUrl(string.Format("~/Image.ashx?File={0}&Size=100", item.ImagePath));
                    }
                    else
                    {
                        if (!_itemList.ShowImageIfBlank)
                        {
                            tdImageCol.Visible = false;
                        }
                    }

                    if (_itemList.IsPostDateVisible)
                    {
                        Label postDateCtl = (Label)e.Item.FindControl("lblPostDate");
                        if (page.PostDate.HasValue)
                        {
                            postDateCtl.Text = page.PostDate.Value.ToLongDateString();
                        }
                    }

                    HyperLink hypTitle = (HyperLink)e.Item.FindControl("hypTitle");
                    hypTitle.NavigateUrl = ResolveUrl(page.Path);
                    hypTitle.Text        = MasterDetailItem.Chop(page.Text, 150, true);

                    HyperLink hypReadMore = (HyperLink)e.Item.FindControl("hypReadMore");
                    hypReadMore.NavigateUrl = ResolveUrl(page.Path);

                    Literal litSummary = (Literal)e.Item.FindControl("litSummary");
                    litSummary.Text = item.GetSummary(page);

                    if (item.Tags != null)
                    {
                        // Build unique list of tags for all articles in the summary display
                        string[] tagArray = item.Tags.Split(',');
                        foreach (var s in tagArray)
                        {
                            if (!TagList.Contains(s))
                            {
                                TagList.Add(s);
                            }
                        }
                    }
                }
                else
                {
                    e.Item.Visible = false;
                }
            }
        }