TradeController.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?php
  2. namespace app\controllers;
  3. use app\models\Trade;
  4. use Yii;
  5. use yii\rest\ActiveController;
  6. use yii\data\ActiveDataProvider;
  7. use yii\web\Request;
  8. class TradeController extends ActiveController
  9. {
  10. public $modelClass = 'app\models\Trade';
  11. public function actions()
  12. {
  13. return [
  14. 'index' => [
  15. 'class' => 'yii\rest\IndexAction',
  16. 'modelClass' => $this->modelClass,
  17. 'checkAccess' => [$this, 'checkAccess'],
  18. 'prepareDataProvider' => function ($action)
  19. {
  20. //$auc_id = Yii::$app->session->get('user.flags'); // NADA PREPISAT!!!
  21. if(Yii::$app->request->get()) { $auc_id = $_GET['id']; }
  22. if(isset($auc_id))
  23. {
  24. return new ActiveDataProvider(
  25. [
  26. 'query' => Trade::find()->where(['auk_id' => $auc_id])->orderBy('id DESC'),
  27. 'pagination' => [
  28. 'defaultPageSize' => 5,
  29. ],
  30. ]);
  31. }
  32. else
  33. {
  34. return new ActiveDataProvider(
  35. [
  36. 'query' => Trade::find(),
  37. ]);
  38. }
  39. }
  40. ],
  41. 'view' => [
  42. 'class' => 'yii\rest\ViewAction',
  43. 'modelClass' => $this->modelClass,
  44. 'checkAccess' => [$this, 'checkAccess'],
  45. ],
  46. 'create' => [
  47. 'class' => 'yii\rest\CreateAction',
  48. 'modelClass' => $this->modelClass,
  49. 'checkAccess' => [$this, 'checkAccess'],
  50. 'scenario' => $this->createScenario,
  51. ],
  52. 'update' => [
  53. 'class' => 'yii\rest\UpdateAction',
  54. 'modelClass' => $this->modelClass,
  55. 'checkAccess' => [$this, 'checkAccess'],
  56. 'scenario' => $this->updateScenario,
  57. ],
  58. 'delete' => [
  59. 'class' => 'yii\rest\DeleteAction',
  60. 'modelClass' => $this->modelClass,
  61. 'checkAccess' => [$this, 'checkAccess'],
  62. ],
  63. 'options' => [
  64. 'class' => 'yii\rest\OptionsAction',
  65. ],
  66. ];
  67. }
  68. }