| @@ 509-519 (lines=11) @@ | ||
| 506 | $inSiteTree = $classname === 'SiteTree' ? true : false; |
|
| 507 | if(isset(self::$site_tree_classes[$classname])) { |
|
| 508 | $inSiteTree = self::$site_tree_classes[$classname]; |
|
| 509 | } else { |
|
| 510 | $class = new \ReflectionClass($classname); |
|
| 511 | while($class = $class->getParentClass()) { |
|
| 512 | $parentClass = $class->getName(); |
|
| 513 | if($parentClass == 'SiteTree') { |
|
| 514 | $inSiteTree = true; |
|
| 515 | break; |
|
| 516 | } |
|
| 517 | } |
|
| 518 | self::$site_tree_classes[$classname] = $inSiteTree; |
|
| 519 | } |
|
| 520 | ||
| 521 | if($inSiteTree) { |
|
| 522 | // this prevents the same item being indexed twice due to class inheritance |
|
| @@ 126-135 (lines=10) @@ | ||
| 123 | ||
| 124 | public static function isInSiteTree($classname) { |
|
| 125 | $inSiteTree = ($classname === 'SiteTree' ? true : false); |
|
| 126 | if(!$inSiteTree) { |
|
| 127 | $class = new \ReflectionClass($classname); |
|
| 128 | while($class = $class->getParentClass()) { |
|
| 129 | $parentClass = $class->getName(); |
|
| 130 | if($parentClass == 'SiteTree') { |
|
| 131 | $inSiteTree = true; |
|
| 132 | break; |
|
| 133 | } |
|
| 134 | } |
|
| 135 | } |
|
| 136 | return $inSiteTree; |
|
| 137 | } |
|
| 138 | ||