d8c1a2e0
Yarik
Big commit artbox
|
1
2
3
4
|
<?php
namespace frontend\controllers;
|
36d1807a
Yarik
Big commit.
|
5
6
|
use common\models\Articles;
use common\models\ArticlesSearch;
|
d8c1a2e0
Yarik
Big commit artbox
|
7
|
use yii\web\Controller;
|
36d1807a
Yarik
Big commit.
|
8
|
use yii\web\NotFoundHttpException;
|
d55d2fe0
Yarik
Multilanguage
|
9
|
|
d8c1a2e0
Yarik
Big commit artbox
|
10
11
12
13
14
15
16
17
18
19
20
21
|
/**
* Article controller
*/
class ArticleController extends Controller
{
/**
* Displays article list.
* @return string
*/
public function actionIndex()
{
|
36d1807a
Yarik
Big commit.
|
22
23
|
$searchModel = new ArticlesSearch();
$dataProvider = $searchModel->search(\Yii::$app->request->queryParams);
|
d55d2fe0
Yarik
Multilanguage
|
24
25
|
$dataProvider->query->orderBy([ 'date' => SORT_DESC ])
->joinWith('lang', true, 'INNER JOIN');
|
36d1807a
Yarik
Big commit.
|
26
27
28
29
30
31
32
33
|
$dataProvider->pagination = [
'pageSize' => 10,
];
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
|
d8c1a2e0
Yarik
Big commit artbox
|
34
35
36
37
38
39
|
}
/**
* Display one article page.
* @return string
*/
|
36d1807a
Yarik
Big commit.
|
40
|
public function actionView($id)
|
d8c1a2e0
Yarik
Big commit artbox
|
41
|
{
|
36d1807a
Yarik
Big commit.
|
42
43
44
45
46
47
|
$model = $this->findModel($id);
return $this->render('view', [
'model' => $model,
]);
}
|
d55d2fe0
Yarik
Multilanguage
|
48
49
50
51
52
53
54
|
private function findModel($id)
{
$model = Articles::find()
->where([ 'articles_id' => $id ])
->joinWith('lang', true, 'INNER JOIN')
->one();
if(!empty( $model )) {
|
36d1807a
Yarik
Big commit.
|
55
56
57
58
|
return $model;
} else {
throw new NotFoundHttpException();
}
|
d8c1a2e0
Yarik
Big commit artbox
|
59
60
|
}
}
|