This is an old revision of the document!
Table of Contents
Dispatcher
Layer: Core · Source: lib/core/Dispatcher.php:34 (lines 34–535)
class Dispatcher
Docblock Metadata
| Tag | Value |
|---|---|
@category | Core Class |
@author | M.Noermoehammad |
@license | MIT |
@version | 1.1.2 |
@since | Since Release 0.1 |
@see | https://stackoverflow.com/questions/11696718/htaccess-rewrite-book-phpid-1234-to-book-1234 |
@see | https://stackoverflow.com/questions/1039725/how-to-do-url-re-writing-in-php |
@see | https://stackoverflow.com/questions/60339372/how-to-rewrite-url-by-htaccess-with-basic-parameters-in-core-php |
@see | https://httpd.apache.org/docs/trunk/mod/mod_dir.html#fallbackresource |
@see | https://stackoverflow.com/questions/26419426/htaccess-url-re-styling-image-url-to-seo-friendly |
@see | https://mediatemple.net/community/products/dv/204643270/using-htaccess-rewrite-rules |
@see | https://stackoverflow.com/questions/16388959/url-rewriting-with-php |
Inheritance
No parent, interface or trait. This is a root type.
Constants (0)
None.
Properties (2)
| Visibility | Type | Name | Default | Line |
|---|---|---|---|---|
private | (untyped) | $route | []; | 42 |
private | (untyped) | $frontendCompiled | null; | 47 |
Methods (19)
| Visibility | Method | Summary | Line |
|---|---|---|---|
| public | __construct() | Constructor | 68 |
| public | dispatch() | dispatch | 84 |
| public | handleSeoFriendlyUrl() | handleSeoFriendlyUrl | 98 |
| private | validateContentExists() | Validate content exists in database | 204 |
| private | validateSinglePost() | (undocumented) | 228 |
| private | validatePage() | (undocumented) | 248 |
| private | validateCategory() | (undocumented) | 267 |
| private | validateArchive() | (undocumented) | 278 |
| private | validateTag() | (undocumented) | 297 |
| private | handleQueryDownload() | (undocumented) | 308 |
| private | handleQueryStringUrl() | handleQueryStringUrl | 336 |
| private | requestURI() | RequestURI() | 349 |
| private | invokeTheme() | (undocumented) | 375 |
| private | renderTheme() | renderTheme | 386 |
| private | renderHtmxFragment() | Render HTMX fragment — just the content template, no header/footer. | 408 |
| private | compileFrontendRoutes() | Compile all frontend routes into a combined (?|…) branch-reset regex. | 433 |
| private | renderDownloadFile() | renderDownloadFile | 477 |
| private | errorNotFound() | (undocumented) | 494 |
| private | whiteListPathRequested() | Get whitelisted paths | 509 |
__construct()
public function __construct(?ThemeRendererInterface $themeRenderer = null)
lines 68–78 (11)
Constructor
Registry route and Initialize an instantiate of theme
| Parameter | Type | Default | Description |
|---|---|---|---|
$themeRenderer | ''?ThemeRendererInterface'' | null | none |
dispatch()
public function dispatch()
lines 84–92 (9)
Takes no parameters.
Returns: (none declared)
handleSeoFriendlyUrl()
public function handleSeoFriendlyUrl()
lines 98–195 (98)
handleSeoFriendlyUrl
Takes no parameters.
Returns: (none declared)
validateContentExists()
private function validateContentExists($routeKey, $requestPath)
lines 204–226 (23)
Validate content exists in database
| Parameter | Type | Default | Description |
|---|---|---|---|
$routeKey | (untyped) | required | none |
$requestPath | (untyped) | required | none |
Returns: (none declared) — bool
validateSinglePost()
private function validateSinglePost($requestPath)
lines 228–246 (19)
| Parameter | Type | Default | Description |
|---|---|---|---|
$requestPath | (untyped) | required | none |
Returns: (none declared)
validatePage()
private function validatePage($requestPath)
lines 248–265 (18)
| Parameter | Type | Default | Description |
|---|---|---|---|
$requestPath | (untyped) | required | none |
Returns: (none declared)
validateCategory()
private function validateCategory($requestPath)
lines 267–276 (10)
| Parameter | Type | Default | Description |
|---|---|---|---|
$requestPath | (untyped) | required | none |
Returns: (none declared)
validateArchive()
private function validateArchive($requestPath)
lines 278–295 (18)
| Parameter | Type | Default | Description |
|---|---|---|---|
$requestPath | (untyped) | required | none |
Returns: (none declared)
validateTag()
private function validateTag($requestPath)
lines 297–306 (10)
| Parameter | Type | Default | Description |
|---|---|---|---|
$requestPath | (untyped) | required | none |
Returns: (none declared)
handleQueryDownload()
private function handleQueryDownload()
lines 308–330 (23)
Takes no parameters.
Returns: (none declared)
handleQueryStringUrl()
private function handleQueryStringUrl()
lines 336–341 (6)
handleQueryStringUrl
Takes no parameters.
Returns: (none declared)
requestURI()
private function requestURI()
lines 349–367 (19)
RequestURI()
Takes no parameters.
Returns: (none declared) — mixed
invokeTheme()
private function invokeTheme()
lines 375–378 (4)
Takes no parameters.
Returns: (none declared)
renderTheme()
private function renderTheme($template)
lines 386–401 (16)
renderTheme
| Parameter | Type | Default | Description |
|---|---|---|---|
$template | (untyped) | required | none |
Returns: (none declared)
renderHtmxFragment()
private function renderHtmxFragment($template)
lines 408–422 (15)
Render HTMX fragment — just the content template, no header/footer.
| Parameter | Type | Default | Description |
|---|---|---|---|
$template | (untyped) | required | none |
Returns: (none declared)
compileFrontendRoutes()
private function compileFrontendRoutes()
lines 433–467 (35)
Compile all frontend routes into a combined (?|…) branch-reset regex.
Converts Perl-style (?'name'…) named groups to numbered groups for the combined regex, while preserving the original pattern for the per-route verification phase. With ~13 routes, no chunking is needed.
Takes no parameters.
Returns: (none declared) — array
renderDownloadFile()
private function renderDownloadFile($_requestPath)
lines 477–485 (9)
renderDownloadFile
Handles actual file download - bypasses theme headers/footers
| Parameter | Type | Default | Description |
|---|---|---|---|
$_requestPath | (untyped) | required | none |
Returns: (none declared)
errorNotFound()
private function errorNotFound()
lines 494–504 (11)
Takes no parameters.
Returns: (none declared)
whiteListPathRequested()
private function whiteListPathRequested()
lines 509–534 (26)
Get whitelisted paths
Takes no parameters.
Returns: (none declared)
Imports
| Alias | Fully-qualified name |
|---|---|
DownloadController | ''Scriptlog\Controller\DownloadController'' |
LocaleController | ''Scriptlog\Controller\LocaleController'' |
SearchController | ''Scriptlog\Controller\SearchController'' |
MediaDao | ''Scriptlog\Dao\MediaDao'' |
DownloadModel | ''Scriptlog\Model\DownloadModel'' |
DownloadService | ''Scriptlog\Service\DownloadService'' |
This page is generated from source by 'tools/gendoc'. Edits will be overwritten.
