/// <summary>
/// Helper method to include the common code between the trainer and the student create notebook when converting
/// Power Point files that have sections
/// </summary>
/// <param name="pptOpenXml"></param>
/// <param name="imgsPath"></param>
/// <param name="note"></param>
/// <param name="sectionId"></param>
/// <param name="sectionNames"></param>
/// <param name="slidesInSections"></param>
/// <param name="isTrainer"></param>
private void ConvertPowerPointWithSectionsToOneNote(PowerPointOpenXml pptOpenXml, string imgsPath, OneNoteGenerator note,
string sectionId, List<string> sectionNames, List<List<int>> slidesInSections, bool isTrainer)
{
var pptSectionsPageIds = new List<string>();
for (int i = 0; i < sectionNames.Count; i++)
{
string pptSectionPageId = note.CreatePage(sectionNames[i], sectionId);
foreach (var slideNumber in slidesInSections[i])
{
string pageId;
if (isTrainer)
{
pageId = InsertPowerPointSlideInOneNote(slideNumber, pptOpenXml, imgsPath, note, sectionId,
true, StudentNotesTitle, true, TrainerNotesTitle);
}
else
{
pageId = InsertPowerPointSlideInOneNote(slideNumber, pptOpenXml, imgsPath, note, sectionId,
true, StudentNotesTitle, false);
}
if (!pageId.Equals(String.Empty))
{
note.SetSubPage(sectionId, pageId);
note.SetShowDate(pageId, false);
note.SetShowTime(pageId, false);
}
}
pptSectionsPageIds.Add(pptSectionPageId);
}
string tocPageId = note.CreateTableOfContentPage(sectionId);
note.SetShowDate(tocPageId, false);
note.SetShowTime(tocPageId, false);
foreach (var pptSectionPageId in pptSectionsPageIds)
{
note.SetCollapsePage(pptSectionPageId);
note.SetShowDate(pptSectionPageId, false);
note.SetShowTime(pptSectionPageId, false);
}
}