b507d689
andryeyev
Итерация 1 (Терми...
|
1
2
3
4
5
6
7
8
9
10
|
<?php
namespace backend\controllers;
use Yii;
use common\models\Page;
use backend\models\SearchPage;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
use yii\filters\VerbFilter;
|
48269590
andryeyev
+ Страница getDat...
|
11
|
use common\models\PageLang;
|
b507d689
andryeyev
Итерация 1 (Терми...
|
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
/**
* PageController implements the CRUD actions for Page model.
*/
class PageController extends Controller
{
public function behaviors()
{
return [
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'delete' => ['post'],
],
],
];
}
|
ab4d7cb1
andryeyev
Page + Языковая в...
|
29
|
|
b507d689
andryeyev
Итерация 1 (Терми...
|
30
31
32
33
34
35
|
/**
* Lists all Page models.
* @return mixed
*/
public function actionIndex()
|
ab4d7cb1
andryeyev
Page + Языковая в...
|
36
37
38
39
|
{
$searchModel = new SearchPage();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
|
b507d689
andryeyev
Итерация 1 (Терми...
|
40
|
return $this->render('index', [
|
b507d689
andryeyev
Итерация 1 (Терми...
|
41
|
'searchModel' => $searchModel,
|
ab4d7cb1
andryeyev
Page + Языковая в...
|
42
|
'dataProvider' => $dataProvider,
|
b507d689
andryeyev
Итерация 1 (Терми...
|
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
]);
}
/**
* Displays a single Page model.
* @param integer $id
* @return mixed
*/
public function actionView($id)
{
return $this->render('view', [
'model' => $this->findModel($id),
]);
}
/**
* Creates a new Page model.
* If creation is successful, the browser will be redirected to the 'view' page.
* @return mixed
*/
public function actionCreate()
{
$model = new Page();
|
48269590
andryeyev
+ Страница getDat...
|
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
if ($model->load(Yii::$app->request->post()) && $model->save())
{
// сохраняем в таблицу page_lang
$model2 = new PageLang();
// передаем переменные
$model2->attributes = $_POST['Page'];
$model2->page_id = $model->page_id;
$model2->lang_id = Yii::$app->lang_id;
// сохраняем
$model2->save();
|
b507d689
andryeyev
Итерация 1 (Терми...
|
80
|
return $this->redirect(['view', 'id' => $model->page_id]);
|
48269590
andryeyev
+ Страница getDat...
|
81
82
83
|
}
else
{
|
b507d689
andryeyev
Итерация 1 (Терми...
|
84
85
|
return $this->render('create', [
'model' => $model,
|
b507d689
andryeyev
Итерация 1 (Терми...
|
86
87
88
89
90
91
92
93
94
95
96
|
]);
}
}
/**
* Updates an existing Page model.
* If update is successful, the browser will be redirected to the 'view' page.
* @param integer $id
* @return mixed
*/
public function actionUpdate($id)
|
48269590
andryeyev
+ Страница getDat...
|
97
|
{
|
b507d689
andryeyev
Итерация 1 (Терми...
|
98
|
$model = $this->findModel($id);
|
b507d689
andryeyev
Итерация 1 (Терми...
|
99
|
|
48269590
andryeyev
+ Страница getDat...
|
100
101
102
103
|
if ($model->load(Yii::$app->request->post()) && $model->save())
{
// сохраняем в таблицу page_lang
$model2 = new PageLang();
|
583ea05f
andryeyev
+ widget-select2
|
104
105
106
107
108
109
110
111
|
// передаем переменные
if ($array = $model->findPageLangField($_POST['Page']))
{
// сохраняем
$model2->updateAll($array, ['page_id' => $id, 'lang_id' => Yii::$app->lang_id]);
}
|
b507d689
andryeyev
Итерация 1 (Терми...
|
112
|
return $this->redirect(['view', 'id' => $model->page_id]);
|
48269590
andryeyev
+ Страница getDat...
|
113
114
115
|
}
else
{
|
583ea05f
andryeyev
+ widget-select2
|
116
|
return $this->render('update', [
|
b507d689
andryeyev
Итерация 1 (Терми...
|
117
|
'model' => $model,
|
b507d689
andryeyev
Итерация 1 (Терми...
|
118
119
120
121
122
123
124
125
126
127
128
129
|
]);
}
}
/**
* Deletes an existing Page model.
* If deletion is successful, the browser will be redirected to the 'index' page.
* @param integer $id
* @return mixed
*/
public function actionDelete($id)
{
|
583ea05f
andryeyev
+ widget-select2
|
130
|
// удаляем page
|
b507d689
andryeyev
Итерация 1 (Терми...
|
131
|
$this->findModel($id)->delete();
|
583ea05f
andryeyev
+ widget-select2
|
132
133
134
135
|
// удаляем page_lang
$model2 = new PageLang();
$model2->deleteAll('page_id = '.(int)$id);
|
b507d689
andryeyev
Итерация 1 (Терми...
|
136
137
138
139
140
141
142
143
144
145
146
147
148
|
return $this->redirect(['index']);
}
/**
* Finds the Page model based on its primary key value.
* If the model is not found, a 404 HTTP exception will be thrown.
* @param integer $id
* @return Page the loaded model
* @throws NotFoundHttpException if the model cannot be found
*/
protected function findModel($id)
{
|
48269590
andryeyev
+ Страница getDat...
|
149
|
if (($model = Page::findOne(['page_id' => $id])) !== null) {
|
b507d689
andryeyev
Итерация 1 (Терми...
|
150
151
152
153
154
155
|
return $model;
} else {
throw new NotFoundHttpException('The requested page does not exist.');
}
}
}
|