for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace ByTIC\Navigation\Breadcrumbs;
use Nip\Utility\Traits\SingletonTrait;
/**
* Class BreadcrumbsManager
* @package ByTIC\Navigation\Breadcrumbs
*/
class BreadcrumbsManager
{
use SingletonTrait;
const DEFAULT_NAMESPACE = "default";
* @var Trail[]
protected $trails = [];
* BreadcrumbsManager constructor.
public function __construct()
$this->checkNewTrail(self::DEFAULT_NAMESPACE);
}
* @param string $name
* @return mixed
public function trail($name = self::DEFAULT_NAMESPACE)
$this->checkNewTrail($name);
return $this->trails[$name];
protected function checkNewTrail($name)
if (!isset($this->trails[$name])) {
$this->initNewTrail($name);
protected function initNewTrail($name)
$this->trails[$name] = $this->generateNewTrail();
* @return Trail
protected function generateNewTrail()
return new Trail();