/**
  *  Display a tree of all page types and their children, with perms
  *
  *  @param Group group show permissions related to this group
  *  @return string A fully formatted tree as a HTML list	
  */
 public static function PageTree($group = null)
 {
     self::$group = $group;
     //Get all the page types
     $classes = SiteTree::page_type_classes();
     $pageTreeList = array();
     //We don't want to remove the fields from this list, so disable the remove
     SimplifyPermissionProvider::setRemoveEnabled(false);
     //Get an instance of each page type, add to an array
     //TODO: This works, but only returns the initial field state of the objects
     //      Might be a better way to scrape ALL the possible fields?
     foreach ($classes as $class) {
         $instance = singleton($class);
         if ($instance instanceof HiddenClass) {
             continue;
         }
         if (!$instance->canCreate()) {
             continue;
         }
         $pageTreeList[] = $instance;
     }
     //Get the children of each page type and return it as an UL
     $pageTree = self::getChildrenAsUL($pageTreeList, 0, " id='perm-tree' class='tree' ", "SiteTree");
     //Re-enable the remove
     SimplifyPermissionProvider::setRemoveEnabled(true);
     return $pageTree;
 }