Commit 015cc6832a44bb58174512a28f2012f7a4a5c214
1 parent
e6b208ea
Credits v2
Showing
1 changed file
with
21 additions
and
2 deletions
Show diff stats
models/Basket.php
| @@ -10,6 +10,7 @@ | @@ -10,6 +10,7 @@ | ||
| 10 | /** | 10 | /** |
| 11 | * Class Basket to work with basket | 11 | * Class Basket to work with basket |
| 12 | * | 12 | * |
| 13 | + * @property bool isCredit | ||
| 13 | * @package artweb\artbox\ecommerce\models | 14 | * @package artweb\artbox\ecommerce\models |
| 14 | */ | 15 | */ |
| 15 | class Basket extends Component | 16 | class Basket extends Component |
| @@ -32,7 +33,7 @@ | @@ -32,7 +33,7 @@ | ||
| 32 | $this->session = \Yii::$app->session; | 33 | $this->session = \Yii::$app->session; |
| 33 | if (!$this->session->has('basket')) { | 34 | if (!$this->session->has('basket')) { |
| 34 | $this->session->set('basket', []); | 35 | $this->session->set('basket', []); |
| 35 | - } elseif(!empty($this->session->get('basket'))) { | 36 | + } elseif (!empty( $this->session->get('basket') )) { |
| 36 | $cookies = \Yii::$app->response->cookies; | 37 | $cookies = \Yii::$app->response->cookies; |
| 37 | $cookies->add( | 38 | $cookies->add( |
| 38 | new Cookie( | 39 | new Cookie( |
| @@ -144,8 +145,9 @@ | @@ -144,8 +145,9 @@ | ||
| 144 | { | 145 | { |
| 145 | $this->session->set('basket', $data); | 146 | $this->session->set('basket', $data); |
| 146 | $cookies = \Yii::$app->response->cookies; | 147 | $cookies = \Yii::$app->response->cookies; |
| 147 | - if(empty($data)) { | 148 | + if (empty( $data )) { |
| 148 | $cookies->remove('basket'); | 149 | $cookies->remove('basket'); |
| 150 | + $cookies->remove('isCredit'); | ||
| 149 | } else { | 151 | } else { |
| 150 | $cookies->add( | 152 | $cookies->add( |
| 151 | new Cookie( | 153 | new Cookie( |
| @@ -247,6 +249,23 @@ | @@ -247,6 +249,23 @@ | ||
| 247 | public function clear() | 249 | public function clear() |
| 248 | { | 250 | { |
| 249 | $this->setData([]); | 251 | $this->setData([]); |
| 252 | + \Yii::$app->response->cookies->remove('isCredit'); | ||
| 253 | + } | ||
| 254 | + | ||
| 255 | + /** | ||
| 256 | + * Check if is credit cookie flag set | ||
| 257 | + * | ||
| 258 | + * @return bool | ||
| 259 | + */ | ||
| 260 | + public static function getIsCredit(): bool | ||
| 261 | + { | ||
| 262 | + // Get cookies from global in order to skip yii2 cookie validation | ||
| 263 | + $cookies = $_COOKIE; | ||
| 264 | + if (isset( $cookies[ 'isCredit' ] )) { | ||
| 265 | + return true; | ||
| 266 | + } else { | ||
| 267 | + return false; | ||
| 268 | + } | ||
| 250 | } | 269 | } |
| 251 | 270 | ||
| 252 | } | 271 | } |