public static function getView($type)
 {
     $typeParts = explode('.', $type);
     $typeExtension = '.' . (count($typeParts) > 1 ? implode('.', array_slice($typeParts, 1)) : 'main');
     $typeClassName = Block::getBlockClass($typeParts[0]);
     $typeClasses = array_merge([$typeClassName], class_parents($typeClassName));
     foreach ($typeClasses as $typeClass) {
         $blockTypeView = Block::getBlockType($typeClass) . $typeExtension;
         $blockTypeView = strtolower($blockTypeView);
         $locations = ['coaster.blocks.', 'coaster::blocks.'];
         foreach ($locations as $location) {
             if (View::exists($location . $blockTypeView)) {
                 return $location . $blockTypeView;
             }
         }
     }
     return null;
 }