File manager - Edit - /var/www/html/portalHomolog/app/Support/StructurePublicUrls.php
Back
<?php namespace App\Support; use App\Models\Structure; /** * URLs públicas do portal para estruturas (órgãos). */ class StructurePublicUrls { /** * Verifica se o título de um link administrado equivale a "Fale conosco" * (para ocultar duplicata quando o item fixo interno é exibido). */ public static function isAdministrativeFaleConoscoTitulo(?string $titulo): bool { if ($titulo === null || trim($titulo) === '') { return false; } $normalized = mb_strtolower(preg_replace('/\s+/u', ' ', trim($titulo)), 'UTF-8'); return $normalized === 'fale conosco'; } /** * URL da página interna "Fale conosco" do órgão. */ public static function faleConoscoUrl(Structure $org): string { $org->loadMissing('pertence'); if (! $org->structure_id || ! $org->pertence) { return route('paginas.orgao.fale-conosco', ['slug' => $org->slug]); } $params = [ 'slug' => $org->pertence->slug, 'slug2' => $org->slug, ]; return match ($org->type) { 'SECRETARIA_EXECUTIVA' => route('paginas.orgao.fale-conosco.executiva', $params), 'DIRETORIA' => route('paginas.orgao.fale-conosco.diretoria', $params), 'SUPERINTENDENCIA' => route('paginas.orgao.fale-conosco.superintendencia', $params), default => route('paginas.orgao.fale-conosco', ['slug' => $org->slug]), }; } /** * URL da página principal do órgão (secretarias/...), independentemente do tipo. */ public static function detailsUrl(Structure $org): string { $org->loadMissing('pertence'); if (! $org->structure_id || ! $org->pertence) { return url('/secretarias/'.$org->slug); } $parent = $org->pertence->slug; $child = $org->slug; return match ($org->type) { 'SECRETARIA_EXECUTIVA' => url("/secretarias/{$parent}/executivas/{$child}"), 'DIRETORIA' => url("/secretarias/{$parent}/diretorias/{$child}"), 'SUPERINTENDENCIA' => url("/secretarias/{$parent}/superintendencias/{$child}"), default => url('/secretarias/'.$child), }; } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.01 |
proxy
|
phpinfo
|
Settings