Commit 63296d615b63c239f1ac1b1fb9897b40ef9a990c
1 parent
540d16cd
-Added gallery
Showing
3 changed files
with
109 additions
and
78 deletions
Show diff stats
frontend/config/main.php
... | ... | @@ -3,53 +3,62 @@ |
3 | 3 | use artbox\core\components\SeoUrlManager; |
4 | 4 | |
5 | 5 | $params = array_merge( |
6 | - require(__DIR__ . '/../../common/config/params.php'), | |
7 | - require(__DIR__ . '/../../common/config/params-local.php'), | |
8 | - require(__DIR__ . '/params.php'), | |
9 | - require(__DIR__ . '/params-local.php') | |
10 | -); | |
11 | - | |
12 | -return [ | |
13 | - 'id' => 'app-frontend', | |
14 | - 'homeUrl' => '/', | |
15 | - 'basePath' => dirname(__DIR__), | |
16 | - 'bootstrap' => ['log'], | |
17 | - 'controllerNamespace' => 'frontend\controllers', | |
18 | - 'components' => [ | |
19 | - 'request' => [ | |
20 | - 'class' => LanguageRequest::className(), | |
21 | - 'csrfParam' => '_csrf-frontend', | |
22 | - 'baseUrl' => '', | |
23 | - ], | |
24 | - 'user' => [ | |
25 | - 'identityClass' => 'common\models\User', | |
26 | - 'enableAutoLogin' => true, | |
27 | - 'identityCookie' => ['name' => '_identity-frontend', 'httpOnly' => true], | |
28 | - ], | |
29 | - 'session' => [ | |
30 | - // this is the name of the session cookie used for login on the frontend | |
31 | - 'name' => 'advanced-frontend', | |
32 | - ], | |
33 | - 'log' => [ | |
34 | - 'traceLevel' => YII_DEBUG ? 3 : 0, | |
35 | - 'targets' => [ | |
36 | - [ | |
37 | - 'class' => 'yii\log\FileTarget', | |
38 | - 'levels' => ['error', 'warning'], | |
6 | + require( __DIR__ . '/../../common/config/params.php' ), | |
7 | + require( __DIR__ . '/../../common/config/params-local.php' ), | |
8 | + require( __DIR__ . '/params.php' ), | |
9 | + require( __DIR__ . '/params-local.php' ) | |
10 | + ); | |
11 | + | |
12 | + return [ | |
13 | + 'id' => 'app-frontend', | |
14 | + 'homeUrl' => '/', | |
15 | + 'basePath' => dirname(__DIR__), | |
16 | + 'bootstrap' => [ 'log' ], | |
17 | + 'controllerNamespace' => 'frontend\controllers', | |
18 | + 'components' => [ | |
19 | + 'request' => [ | |
20 | + 'class' => LanguageRequest::className(), | |
21 | + 'csrfParam' => '_csrf-frontend', | |
22 | + 'baseUrl' => '', | |
23 | + ], | |
24 | + 'user' => [ | |
25 | + 'identityClass' => 'common\models\User', | |
26 | + 'enableAutoLogin' => true, | |
27 | + 'identityCookie' => [ | |
28 | + 'name' => '_identity-frontend', | |
29 | + 'httpOnly' => true, | |
39 | 30 | ], |
40 | 31 | ], |
41 | - ], | |
42 | - 'errorHandler' => [ | |
43 | - 'errorAction' => 'site/error', | |
44 | - ], | |
45 | - 'urlManager' => [ | |
46 | - 'class' => SeoUrlManager::className(), | |
47 | - 'enablePrettyUrl' => true, | |
48 | - 'showScriptName' => false, | |
49 | - 'rules' => [ | |
50 | - '\/robots.txt' => 'site/robots', | |
32 | + 'session' => [ | |
33 | + // this is the name of the session cookie used for login on the frontend | |
34 | + 'name' => 'advanced-frontend', | |
35 | + ], | |
36 | + 'log' => [ | |
37 | + 'traceLevel' => YII_DEBUG ? 3 : 0, | |
38 | + 'targets' => [ | |
39 | + [ | |
40 | + 'class' => 'yii\log\FileTarget', | |
41 | + 'levels' => [ | |
42 | + 'error', | |
43 | + 'warning', | |
44 | + ], | |
45 | + ], | |
46 | + ], | |
47 | + ], | |
48 | + 'errorHandler' => [ | |
49 | + 'errorAction' => 'site/error', | |
50 | + ], | |
51 | + 'urlManager' => [ | |
52 | + 'class' => SeoUrlManager::className(), | |
53 | + 'enablePrettyUrl' => true, | |
54 | + 'showScriptName' => false, | |
55 | + 'processRoutes' => [ | |
56 | + 'page/view', | |
57 | + ], | |
58 | + 'rules' => [ | |
59 | + '\/robots.txt' => 'site/robots', | |
60 | + ], | |
51 | 61 | ], |
52 | 62 | ], |
53 | - ], | |
54 | - 'params' => $params, | |
55 | -]; | |
63 | + 'params' => $params, | |
64 | + ]; | ... | ... |
frontend/controllers/PageController.php
1 | 1 | <?php |
2 | 2 | namespace frontend\controllers; |
3 | - | |
3 | + | |
4 | 4 | use artbox\core\components\SeoComponent; |
5 | 5 | use artbox\core\models\Page; |
6 | 6 | use yii\web\Controller; |
7 | 7 | use yii\web\NotFoundHttpException; |
8 | 8 | use Yii; |
9 | - | |
9 | + | |
10 | 10 | /** |
11 | 11 | * Class PageController |
12 | 12 | * |
... | ... | @@ -17,13 +17,22 @@ |
17 | 17 | public function actionView($id) |
18 | 18 | { |
19 | 19 | $model = $this->findModel($id); |
20 | - | |
20 | + | |
21 | 21 | /** |
22 | 22 | * @var SeoComponent $seo |
23 | 23 | */ |
24 | 24 | $seo = Yii::$app->get('seo'); |
25 | 25 | $seo->setModel($model->lang); |
26 | - | |
26 | + | |
27 | + if (strpos($model->lang->body, '[[gallery]]')) { | |
28 | + $splited = explode('[[gallery]]', $model->lang->body); | |
29 | + $body = array_shift($splited); | |
30 | + $lefts = implode('', $splited); | |
31 | + } else { | |
32 | + $body = $model->lang->body; | |
33 | + $lefts = null; | |
34 | + } | |
35 | + | |
27 | 36 | $pages = Page::find() |
28 | 37 | ->with('lang') |
29 | 38 | ->where( |
... | ... | @@ -38,18 +47,22 @@ |
38 | 47 | return $this->render( |
39 | 48 | 'view', |
40 | 49 | [ |
41 | - 'model' => $model, | |
42 | - 'pages' => $pages, | |
50 | + 'model' => $model, | |
51 | + 'pages' => $pages, | |
52 | + 'body' => $body, | |
53 | + 'lefts' => $lefts, | |
43 | 54 | 'images' => $model->getImages(), |
44 | 55 | ] |
45 | 56 | ); |
46 | 57 | } |
47 | - | |
58 | + | |
48 | 59 | protected function findModel($id) |
49 | 60 | { |
50 | 61 | /** |
51 | - * @var Page $model | |
62 | + * @var Page $model | |
63 | + * @var SeoComponent $seo | |
52 | 64 | */ |
65 | + $seo = \Yii::$app->get('seo'); | |
53 | 66 | $model = Page::find() |
54 | 67 | ->where( |
55 | 68 | [ |
... | ... | @@ -58,9 +71,9 @@ |
58 | 71 | ) |
59 | 72 | ->with('lang') |
60 | 73 | ->one(); |
61 | - | |
62 | - if (!empty( $model )) { | |
63 | - if ($model->lang->alias_id !== Yii::$app->seo->aliasId) { | |
74 | + | |
75 | + if (!empty($model)) { | |
76 | + if ($model->lang->alias_id !== $seo->aliasId) { | |
64 | 77 | throw new NotFoundHttpException('Wrong language'); |
65 | 78 | } |
66 | 79 | return $model; | ... | ... |
frontend/views/page/view.php
... | ... | @@ -10,7 +10,9 @@ |
10 | 10 | * @var Page $model |
11 | 11 | * @var Page[] $pages |
12 | 12 | * @var SeoComponent $seo |
13 | - * @var Image[] $images | |
13 | + * @var Image[] $images | |
14 | + * @var string $lefts | |
15 | + * @var string $body | |
14 | 16 | */ |
15 | 17 | $seo = \Yii::$app->get('seo'); |
16 | 18 | $this->params[ 'breadcrumbs' ][] = $seo->title; |
... | ... | @@ -23,31 +25,37 @@ |
23 | 25 | |
24 | 26 | <!-- *** LEFT COLUMN *** |
25 | 27 | _________________________________________________________ --> |
26 | - | |
27 | 28 | <div class="col-md-9 clearfix"> |
28 | - | |
29 | - <?php if (!empty($images)) { ?> | |
30 | - <section> | |
31 | - <div class="project owl-carousel"> | |
32 | - | |
33 | - <?php foreach ($images as $image) { ?> | |
34 | - <div class="item"> | |
35 | - <img class="img-responsive" src="<?=$image->getUrl()?>" alt=""> | |
36 | - </div> | |
37 | - <?php } ?> | |
38 | - | |
39 | - </div> | |
40 | - <!-- /.project owl-slider --> | |
41 | - </section> | |
42 | - <?php } ?> | |
43 | - | |
44 | 29 | <section> |
45 | 30 | <div id="text-page"> |
46 | 31 | |
47 | - <?= $model->lang->body ?> | |
32 | + <?= $body ?> | |
48 | 33 | |
49 | 34 | </div> |
50 | 35 | </section> |
36 | + | |
37 | + <?php if (!empty($images) && !empty($lefts)) { ?> | |
38 | + <section> | |
39 | + <div class="project owl-carousel"> | |
40 | + | |
41 | + <?php foreach ($images as $image) { ?> | |
42 | + <div class="item"> | |
43 | + <img class="img-responsive" src="<?= $image->getUrl() ?>" alt=""> | |
44 | + </div> | |
45 | + <?php } ?> | |
46 | + | |
47 | + </div> | |
48 | + <!-- /.project owl-slider --> | |
49 | + </section> | |
50 | + | |
51 | + <section> | |
52 | + <div id="text-page"> | |
53 | + | |
54 | + <?= $lefts ?> | |
55 | + | |
56 | + </div> | |
57 | + </section> | |
58 | + <?php } ?> | |
51 | 59 | |
52 | 60 | </div> |
53 | 61 | <!-- /.col-md-9 --> |
... | ... | @@ -88,13 +96,14 @@ _________________________________________________________ --> |
88 | 96 | </div> |
89 | 97 | |
90 | 98 | <!-- *** PAGES MENU END *** --> |
91 | - | |
92 | - | |
99 | + | |
100 | + <?php /* | |
93 | 101 | <div class="banner"> |
94 | 102 | <a href="shop-category.html"> |
95 | 103 | <img src="/img/banner.jpg" alt="sales 2014" class="img-responsive"> |
96 | 104 | </a> |
97 | 105 | </div> |
106 | + */ ?> | |
98 | 107 | <!-- /.banner --> |
99 | 108 | </div> |
100 | 109 | <!-- /.col-md-3 --> | ... | ... |