Skip to content

Instantly share code, notes, and snippets.

@jondjones
Last active December 24, 2015 23:59
Show Gist options
  • Save jondjones/6884044 to your computer and use it in GitHub Desktop.
Save jondjones/6884044 to your computer and use it in GitHub Desktop.
EPiServer 6
/// <summary>
/// </summary>
/// <param name="pageReference"></param>
/// <param name="isInEditMode"></param>
/// <returns></returns>
public static IEnumerable<PageData> GetChildren(PageReference pageReference, bool isInEditMode)
{
IEnumerable<PageData> pages = null;
try
{
var helper = new EpiPageHelper();
if (isInEditMode)
{
// Get all unpublished child pages
var missingDataPages = DataFactory.Instance.GetChildren(pageReference, LanguageSelector.AutoDetect(true));
// As EPI has a missing meta-data bug we need to get all data before anythign else
var editorPages = missingDataPages.Select(x => helper.GetLastestVersion(x.PageLink));
pages = editorPages.Where(item => item.VisibleInMenu && helper.HasAccess(item));
}
else
{
pages = GetPublicPages(pageReference);
}
}
catch (Exception ex)
{
Logger.Error(ex);
}
return pages;
}
var pageId = 1;
var pageRef = new PageReference(pageId );
var page = DataFactory.Instance.GetPage(pageRef) as PageType;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment