internal PageContext(OneNote.IApplication application, PageTitleEnum pageTitle) : this(application) { var today = DateTime.Today; var sectionGroup = today.Year.ToString(); var section = today.ToString("MMMM"); NotebookId = _Application.GetNotebookId(Component.FriendlyName); SectionGroupId = _Application.GetSectionGroupId(sectionGroup, NotebookId); SectionId = _Application.GetSectionId(section, SectionGroupId); PageName = today.Format(pageTitle); PageId = _Application.GetPageId(PageName, SectionId); }
/// <summary> /// Formats a DateTime value using a format specified by the PageTitleEnum /// XmlEnumAttribute decorator value. /// </summary> internal static string Format(this DateTime dt, PageTitleEnum pageTitle) { var result = dt.ToString(pageTitle.XmlEnumValue()); switch (pageTitle) { case PageTitleEnum.DayOfMonthDate_DDD_DD: case PageTitleEnum.DayOfMonthDate_DDDD_DD: case PageTitleEnum.DayOfMonthDate_MMMM_DD: return(string.Concat(result, dt.OrdinalDaySuffix())); default: return(result); } }