Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace frontend\controllers;
- use Yii;
- use yii\web\Controller;
- use yii\web\HttpException;
- use yii\filters\AccessControl;
- use yii\filters\VerbFilter;
- use common\models\Order;
- use common\models\User;
- /**
- * Controller responsible for orders.
- */
- class OrderController extends Controller
- {
- /**
- * @inheritdoc
- */
- public function behaviors()
- {
- return [
- 'access' => [
- 'class' => AccessControl::className(),
- 'only' => ['assign'],
- 'rules' => [
- ['actions' => ['assign'], 'allow' => true, 'roles' => ['manager']],
- ],
- ],
- 'verbs' => [
- 'class' => VerbFilter::className(),
- 'actions' => [
- 'assign' => ['post'],
- ],
- ],
- ];
- }
- /**
- * @param integer $id of the order to be linked with the current manager user.
- * @throws HttpException in case order cannot be found.
- */
- public function actionAssign($id)
- {
- /** @var Order $order */
- if (($order = Order::findOne($id)) === null) {
- throw new HttpException(404, 'Your order cannot be found!');
- }
- /** @var User $manager */
- $manager = User::findOne(Yii::$app->getUser()->getId());
- $order->apply($manager);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment