Completed
Push — master ( 8964d0...7b5d3d )
by zacksleo
09:02
created

DefaultController::actionIndex()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 10
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
dl 0
loc 10
rs 9.4285
c 1
b 0
f 0
cc 1
eloc 5
nc 1
nop 0
1
<?php
2
3
namespace zacksleo\yii2\ad\controllers;
4
5
use Yii;
6
use zacksleo\yii2\ad\models\AdPosition;
7
use yii\data\ActiveDataProvider;
8
use yii\web\Controller;
9
use yii\web\NotFoundHttpException;
10
use yii\filters\VerbFilter;
11
12
/**
13
 * AdPositionController implements the CRUD actions for AdPosition model.
14
 */
15
class DefaultController extends Controller
16
{
17
    /**
18
     * @inheritdoc
19
     */
20
    public function behaviors()
21
    {
22
        return [
23
            'verbs' => [
24
                'class' => VerbFilter::className(),
25
                'actions' => [
26
                    'delete' => ['POST'],
27
                ],
28
            ],
29
        ];
30
    }
31
32
    /**
33
     * Lists all AdPosition models.
34
     * @return mixed
35
     */
36
    public function actionIndex()
37
    {
38
        $dataProvider = new ActiveDataProvider([
39
            'query' => AdPosition::find(),
40
        ]);
41
42
        return $this->render('index', [
43
            'dataProvider' => $dataProvider,
44
        ]);
45
    }
46
47
    /**
48
     * Displays a single AdPosition model.
49
     * @param integer $id
50
     * @return mixed
51
     */
52
    public function actionView($id)
53
    {
54
        return $this->render('view', [
55
            'model' => $this->findModel($id),
56
        ]);
57
    }
58
59
    /**
60
     * Creates a new AdPosition model.
61
     * If creation is successful, the browser will be redirected to the 'view' page.
62
     * @return mixed
63
     */
64
    public function actionCreate()
65
    {
66
        $model = new AdPosition();
67
68
        if ($model->load(Yii::$app->request->post()) && $model->save()) {
69
            return $this->redirect(['view', 'id' => $model->id]);
70
        } else {
71
            return $this->render('create', [
72
                'model' => $model,
73
            ]);
74
        }
75
    }
76
77
    /**
78
     * Updates an existing AdPosition model.
79
     * If update is successful, the browser will be redirected to the 'view' page.
80
     * @param integer $id
81
     * @return mixed
82
     */
83
    public function actionUpdate($id)
84
    {
85
        $model = $this->findModel($id);
86
87
        if ($model->load(Yii::$app->request->post()) && $model->save()) {
88
            return $this->redirect(['view', 'id' => $model->id]);
89
        } else {
90
            return $this->render('update', [
91
                'model' => $model,
92
            ]);
93
        }
94
    }
95
96
    /**
97
     * Deletes an existing AdPosition model.
98
     * If deletion is successful, the browser will be redirected to the 'index' page.
99
     * @param integer $id
100
     * @return mixed
101
     */
102
    public function actionDelete($id)
103
    {
104
        $this->findModel($id)->delete();
105
106
        return $this->redirect(['index']);
107
    }
108
109
    /**
110
     * Finds the AdPosition model based on its primary key value.
111
     * If the model is not found, a 404 HTTP exception will be thrown.
112
     * @param integer $id
113
     * @return AdPosition the loaded model
114
     * @throws NotFoundHttpException if the model cannot be found
115
     */
116
    protected function findModel($id)
117
    {
118
        if (($model = AdPosition::findOne($id)) !== null) {
0 ignored issues
show
Bug Compatibility introduced by
The expression \zacksleo\yii2\ad\models\AdPosition::findOne($id); of type yii\db\ActiveRecordInterface|array|null adds the type array to the return on line 119 which is incompatible with the return type documented by zacksleo\yii2\ad\control...ltController::findModel of type zacksleo\yii2\ad\models\AdPosition.
Loading history...
119
            return $model;
120
        } else {
121
            throw new NotFoundHttpException('The requested page does not exist.');
122
        }
123
    }
124
}
125