private void downloadMenu_Click(object sender, System.EventArgs e)
        {
            ResolveFileCallback old = BlogXData.Resolver;

            BlogXData.Resolver = new ResolveFileCallback(ResolvePathToCache);

            Debug.WriteLine("Begin GetDaysWithEntries");
            DateTime[] dates = browse.GetDaysWithEntries();
            Debug.WriteLine("End GetDaysWithEntries");

            foreach (DateTime date in dates)
            {
                Debug.WriteLine("Begin GetDayEntry");
                DayEntry dayEntry = browse.GetDayEntry(date);
                Debug.WriteLine("End GetDayEntry");
                dayEntry.Save();

                Debug.WriteLine("Begin GetDayExtra");
                DayExtra dayExtra = browse.GetDayExtra(date);
                Debug.WriteLine("End GetDayExtra");
                if (dayExtra.Comments.Count > 0)
                {
                    dayExtra.Save();
                }
            }

            BlogXData.Resolver = old;
        }
        private void add_Click(object sender, System.EventArgs e)
        {
            if (SiteConfig.GetSiteConfig().CommentSpamGuard)
            {
                string word = SiteConfig.GetCommentWords()[(int)ViewState["spamCode"]];
                if (!word.Equals(securityWord.Text))
                {
                    // UNDONE : Should show an error page...
                    //
                    return;
                }
            }

            string entryId = ViewState["entryId"].ToString().ToUpper();

            if (rememberMe.Checked)
            {
                Response.Cookies.Add(new HttpCookie("name", name.Text));
                Response.Cookies.Add(new HttpCookie("email", email.Text));
                Response.Cookies.Add(new HttpCookie("homepage", homepage.Text));
            }
            EntryIdCache ecache = new EntryIdCache();

            ecache.Ensure(data);

            DateTime dateFound = new DateTime();
            bool     found     = false;

            foreach (EntryIdCacheEntry ece in ecache.Entries)
            {
                if (ece.EntryId.ToUpper() == entryId)
                {
                    dateFound = ece.Date;
                    entryId   = ece.EntryId;
                    found     = true;
                    break;
                }
            }

            if (found)
            {
                if (SiteConfig.GetSiteConfig().AllowComments)
                {
                    DayExtra extra = data.GetDayExtra(dateFound);
                    extra.Load();
                    Comment c = new Comment();
                    c.Initialize();
                    c.Author         = name.Text;
                    c.AuthorEmail    = email.Text;
                    c.AuthorHomepage = homepage.Text;
                    c.Content        = Server.HtmlEncode(comment.Text);
                    c.TargetEntryId  = entryId;
                    extra.Comments.Add(c);
                    extra.Save();

                    data.IncrementExtraChange();
                }

                name.Text     = "";
                email.Text    = "";
                homepage.Text = "";
                comment.Text  = "";
                Response.Redirect("default.aspx", false);
            }
        }