Maslosoft Staple API
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
<?php
namespace Maslosoft\Staple\Helpers;
use Maslosoft\Staple\Interfaces\RequestAwareInterface;
use Maslosoft\Staple\Request\HttpRequest;
/**
* RootWalker
*
* @author Piotr Maselkowski <pmaselkowski at gmail.com>
*/
class RootWalker extends AbstractWalker implements RequestAwareInterface
{
public function getPathItems()
{
$request = new HttpRequest;
$url = $request->getPath();
$items = [];
do
{
$request->setPath($url);
$filePath = $request->getFileName($this);
$data = (object) (new PreProcessor)->getData($this, $filePath, basename($filePath));
if (isset($data->title))
{
$fileBaseName = basename($filePath);
$urlBaseName = basename($url);
if($fileBaseName === $urlBaseName)
{
$suffix = '';
}
else
{
$suffix = '/';
}
$sanitizedUrl = rtrim($url, '/') . $suffix;
$items[$sanitizedUrl] = $data->title;
}
$url = dirname($url);
}
while ($url !== '/');
return $items;
}
public function getExtensions()
{
return $this->staple->getExtensions();
}
}
API documentation generated by ApiGen