ver. 0.280: Articles frontend migration, class.Article removal, Settings facade cleanup

- Add 8 frontend methods to ArticleRepository (with Redis cache)
- Create front\Views\Articles (rendering + utility methods)
- Rewire front\view\Site::show() and front\controls\Site::route() to repo + Views
- Update 5 article templates to use \front\Views\Articles::
- Convert front\factory\Articles and front\view\Articles to facades
- Remove class.Article (entity + static methods migrated to repo + Views)
- Remove front\factory\Settings facade (already migrated)
- Fix: eliminate global $lang from articleNoindex(), inline page sort query
- Tests: 450 OK, 1431 assertions (+13 new)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-16 15:52:03 +01:00
parent 3b32ea0b9b
commit 723cb1a5eb
35 changed files with 1070 additions and 642 deletions

View File

@@ -1,7 +1,7 @@
<? global $lang;?>
<?
$text = $this -> article['language']['text'];
$text = \front\factory\Articles::generateHeadersIds( $text );
$text = \front\Views\Articles::generateHeadersIds( $text );
?>
<div class="article">
<?
@@ -55,7 +55,7 @@ $text = \front\factory\Articles::generateHeadersIds( $text );
<div class="title">
<?= \S::lang( 'spis-tresci' );?>
</div>
<?= \front\factory\Articles::generateTableOfContents( $text );?>
<?= \front\Views\Articles::generateTableOfContents( $text );?>
</div>
<? endif;?>
<? endif;?>
@@ -67,7 +67,11 @@ $text = \front\factory\Articles::generateHeadersIds( $text );
{
$article_tmp = explode( ':', $article_tmp );
if ( $article_tmp[1] != $this -> article['id'] )
$text = str_replace( '[ARTYKUL:' . $article_tmp[1] . ']', \front\view\Articles::article_full( $article_tmp[1], $lang_id ), $text );
{
$nestedArticleRepo = new \Domain\Article\ArticleRepository( $GLOBALS['mdb'] );
$nestedArticle = $nestedArticleRepo->articleDetailsFrontend( (int)$article_tmp[1], $lang_id );
$text = str_replace( '[ARTYKUL:' . $article_tmp[1] . ']', $nestedArticle ? \front\Views\Articles::fullArticle( $nestedArticle ) : '', $text );
}
else
$text = str_replace( '[ARTYKUL:' . $article_tmp[1] . ']', '', $text );
}