Initial import

This commit is contained in:
Admin Nasledstvo
2026-05-01 20:52:04 +03:00
commit ac168868ee
10028 changed files with 2337954 additions and 0 deletions
@@ -0,0 +1,86 @@
<?php
namespace app\controllers;
use app\models\Articles;
use app\services\ViewReg;
class PartnerController extends BaseController
{
public $layout = 'portal';
public $partnerSlug;
public function actionIndex($partnerSlug)
{
$this->partnerSlug = $partnerSlug;
ViewReg::partnerLocaleSwitch($partnerSlug);
return $this->render('partner', ['slug' => $partnerSlug]);
}
public function actionPage($partnerSlug, $webPage, $slug = null)
{
$this->partnerSlug = $partnerSlug;
$page = ViewReg::find($webPage);
if ($page) {
//list page
if (!$slug) {
ViewReg::partnerLocaleSwitch($partnerSlug, $page->model);
return $this->render($page->view, ['model' => $page->model, 'partnerSlug' => $partnerSlug]);
}
}
switch ($webPage) {
case 'news':
case 'novini':
$article = Articles::getArticleBySlug($slug);
if ($article) {
ViewReg::localeSwitchArticle('news', $article);
return $this->render('detail_pages/article', ['model' => $article, 'type' => 'news', 'partnerSlug' => $partnerSlug]);
}
break;
case 'events':
case 'sabitia':
$article = Articles::getArticleBySlug($slug);
if ($article) {
ViewReg::localeSwitchArticle('events', $article);
return $this->render('detail_pages/article', ['model' => $article, 'type' => 'events', 'partnerSlug' => $partnerSlug]);
}
break;
case 'campaigns':
case 'kampanii':
$article = Articles::getArticleBySlug($slug);
if ($article) {
ViewReg::localeSwitchArticle('campaigns', $article);
return $this->render('detail_pages/article', ['model' => $article, 'type' => 'campaigns', 'partnerSlug' => $partnerSlug]);
}
break;
case 'projects':
case 'proekti':
return $this->render('detail_pages/project', ['slug' => $slug, 'partnerSlug' => $partnerSlug]);
case 'objects':
case 'obekti':
case 'collections-objects':
case 'kolektsii-obekti':
case 'expositions-objects':
case 'ekspozitsii-obekti':
return $this->render('detail_pages/object', ['webPage' => $webPage, 'slug' => $slug, 'partnerSlug' => $partnerSlug]);
case 'collections':
case 'kolektsii':
return $this->render('detail_pages/collection', ['slug' => $slug, 'partnerSlug' => $partnerSlug]);
case 'expositions':
case 'ekspozitsii':
return $this->render('detail_pages/exposition', ['slug' => $slug, 'partnerSlug' => $partnerSlug]);
case 'e-biblioteka':
case 'e-library':
return $this->render('detail_pages/e-library', ['slug' => $slug, 'partnerSlug' => $partnerSlug]);
}
}
}