Feuerwehr-eppingen/app/Helpers/BreadcrumbHelper.php
ppa. Marco Glietsch c62cd059e4 Sicherheitslücke geschlossen
BeimAufruf des Impressums kam eine Fehlermeldung bei der die Zugangsdaten für Datenbank und Mailversand sichtbar waren
2022-10-13 09:24:20 +02:00

113 lines
2.6 KiB
PHP

<?php
/**
* Created by PhpStorm.
* User: Marco Glietsch
* Date: 14.05.2018
* Time: 16:20
*/
namespace App\Helpers;
use Illuminate\Http\Request;
class BreadcrumbHelper
{
static function create($post = null)
{
$url = '/';
$crumbs = array();
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, ucfirst(__("general.current")), $url);
$request = app('request');
// Überprüfe, ob etwas übergeben wurde
if(isset($post))
{
// Überprüfe, ob es mehrere Posts sind
if(!isset($post->id))
{
if(isset($post->isMainPost) && count($post))
{
switch($post[0]->type)
{
case 'dienst':
$label = __("models.".$post->modeltypes);
$url .= $post[0]->type;
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, $label, $url);
$label = __("general.schedule").' '.$post->year.': '.$post->department.' - '.$post->instance;
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, $label, $url);
break;
case 'mitglied':
$label = __("models.".$post->modeltypes).' '.$post[0]->department;
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, $label, $url);
break;
}
}
else
{
// Wir befinden uns in der Übersicht
foreach($post as $p)
{
if($p->type == $request->path())
{
$label = __("models.".$post->modeltype);
$url .= $request->path();
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, $label, $url);
break;
}
}
}
}
// Überprüfe, ob ein Post übergeben wurde
elseif(isset($post->type))
{
// Überprüfe, ob es der Hauptpost ist
if(isset($post->isMainPost))
{
switch($post->type)
{
case 'seite':
$category = $post->title;
if(count($post->tag('seitenkategorie')))
{
$category = $post->tag('seitenkategorie')[0]->name;
}
$label = $category;
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, $label, $url);
break;
default:
$label = __("models.".$post->modeltypes);
$url .= $post->type;
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, $label, $url);
$label = __("models.".$post->modeltype);
$url .= "/" . $post->slug;
$crumbs = BreadcrumbHelper::addBreadcrumb($crumbs, $label, $url);
break;
}
}
elseif($request->path() != '')
{
}
}
}
return $crumbs;
}
static function addBreadcrumb($crumbs, $label, $url)
{
$url = URLHelper::addFilter($url);
$crumb = new \stdClass();
$crumb->label = $label;
$crumb->url = $url;
$crumbs[] = $crumb;
return $crumbs;
}
}