Commit f7aa643c74d000975961b3bde6de15cefca39d91
1 parent
30c37ebf
21.03.16 Versrka
Showing
12 changed files
with
200 additions
and
242 deletions
Show diff stats
.gitignore
| ... | ... | @@ -35,4 +35,6 @@ common/config/params-local.php |
| 35 | 35 | backend/config/main-local.php |
| 36 | 36 | backend/config/params-local.php |
| 37 | 37 | frontend/config/main-local.php |
| 38 | -frontend/config/params-local.php | |
| 39 | 38 | \ No newline at end of file |
| 39 | +frontend/config/params-local.php | |
| 40 | +frontend/views/вертска | |
| 41 | +frontend/web/css/node_modules | |
| 40 | 42 | \ No newline at end of file | ... | ... |
common/models/Customers.php
common/widgets/BasketModal.php
| 1 | 1 | <?php |
| 2 | 2 | namespace common\widgets; |
| 3 | -use common\models\Fields; | |
| 3 | + | |
| 4 | 4 | use yii\base\Widget; |
| 5 | -use yii\helpers\ArrayHelper; | |
| 6 | 5 | |
| 7 | 6 | class BasketModal extends Widget |
| 8 | 7 | { |
| 9 | - public $item_id; | |
| 10 | - public $model; | |
| 11 | - public $template; | |
| 12 | - public $language; | |
| 13 | 8 | |
| 14 | 9 | public function init(){ |
| 15 | 10 | |
| ... | ... | @@ -20,29 +15,15 @@ class BasketModal extends Widget |
| 20 | 15 | |
| 21 | 16 | public function run() |
| 22 | 17 | { |
| 23 | - if($this->item_id && $this->model){ | |
| 24 | - $widgetData = $this->findModel(); | |
| 25 | - } else { | |
| 26 | - $widgetData= [new Fields()]; | |
| 18 | + $sessionData = \Yii::$app->session->get('order'); | |
| 19 | + $count = count($sessionData); | |
| 20 | + if(is_array($sessionData) && !empty($sessionData)){ | |
| 21 | + return $this->render('busket_modal',[ | |
| 22 | + 'items'=>$sessionData, | |
| 23 | + 'count' => $count | |
| 24 | + ]); | |
| 27 | 25 | } |
| 28 | 26 | |
| 29 | - return $this->render($this->template.'_field',['model'=>ArrayHelper::toArray($widgetData)]); | |
| 30 | 27 | } |
| 31 | 28 | |
| 32 | - protected function findModel() | |
| 33 | - { | |
| 34 | - | |
| 35 | - if (($model = Fields::find()->where([ | |
| 36 | - 'table_id'=>$this->item_id, | |
| 37 | - 'table_name'=>$this->model, | |
| 38 | - 'field_type'=>$this->template, | |
| 39 | - 'language'=>$this->language, | |
| 40 | - ])->all())) { | |
| 41 | - | |
| 42 | - return $model; | |
| 43 | - | |
| 44 | - } else { | |
| 45 | - return [new Fields()]; | |
| 46 | - } | |
| 47 | - } | |
| 48 | 29 | } |
| 49 | 30 | \ No newline at end of file | ... | ... |
common/widgets/views/busket_modal.php
| 1 | 1 | <?php |
| 2 | 2 | /** |
| 3 | - * Created by PhpStorm. | |
| 4 | - * User: vitaliy | |
| 5 | - * Date: 23.03.16 | |
| 6 | - * Time: 0:25 | |
| 7 | - */ | |
| 8 | 3 | \ No newline at end of file |
| 4 | + * @var $items array data from session | |
| 5 | + * @var $count integer count items in basket | |
| 6 | + */ | |
| 7 | + | |
| 8 | +?> | |
| 9 | +<div class="order_list"> | |
| 10 | + <ul> | |
| 11 | + <?php foreach($items as $item){ ?> | |
| 12 | + <li> | |
| 13 | + <div class="order_list_li" data-id="1"> | |
| 14 | + <div class="delete_item_btn"><i class="fa fa-times"></i></div> | |
| 15 | + <div class="little_img"> | |
| 16 | + <img src="/images/items/01.jpg" alt=""> | |
| 17 | + </div> | |
| 18 | + <div class="name_and_code"> | |
| 19 | + <span class="name">Штукатурка гипсовая Кнауф Ротбанд 30 кг белая</span> | |
| 20 | + <span class="code"> Код: 45885-01016049</span> | |
| 21 | + </div> | |
| 22 | + <div class="count_block_wrap"> | |
| 23 | + <div class="count_block"> | |
| 24 | + <input type="text" name="" class="form-control buy_one_item" value="1"> | |
| 25 | + <div class="count_buttons"> | |
| 26 | + <div class="button_plus">+</div> | |
| 27 | + <div class="button_minus">-</div> | |
| 28 | + </div> | |
| 29 | + </div> | |
| 30 | + <div class="price">102.05 <span class="price_text">грн.</span></div> | |
| 31 | + </div> | |
| 32 | + </div> | |
| 33 | + </li> | |
| 34 | + <?php } ?> | |
| 35 | + | |
| 36 | + </ul> | |
| 37 | + <hr> | |
| 38 | + <div class="all_price"> | |
| 39 | + <p>Всего товаров: <span class="all_count"><?= $count ?></span></p> | |
| 40 | + <p>Сумма: <span class="all_price">306.15</span> грн.</p> | |
| 41 | + </div> | |
| 42 | + <div class="busket_bottom_btn"> | |
| 43 | + <a href="#">продолжить покупки</a> | |
| 44 | + <button>оформить заказ</button> | |
| 45 | + </div> | |
| 46 | +</div> | ... | ... |
console/migrations/m160321_232402_orders.php
| ... | ... | @@ -13,7 +13,8 @@ class m160321_232402_orders extends Migration |
| 13 | 13 | } |
| 14 | 14 | |
| 15 | 15 | $this->createTable('{{%orders}}', [ |
| 16 | - 'id' => $this->primaryKey(), | |
| 16 | + 'order_id' => $this->primaryKey(), | |
| 17 | + 'customer_id' => $this->integer(), | |
| 17 | 18 | 'name' => $this->string()->notNull(), |
| 18 | 19 | 'email' => $this->string()->notNull(), |
| 19 | 20 | 'phone' => $this->string(32)->notNull(), |
| ... | ... | @@ -24,11 +25,25 @@ class m160321_232402_orders extends Migration |
| 24 | 25 | 'created_at' => $this->integer()->notNull(), |
| 25 | 26 | 'updated_at' => $this->integer()->notNull(), |
| 26 | 27 | ], $tableOptions); |
| 28 | + | |
| 29 | + $this->createTable('{{%order_items}}', [ | |
| 30 | + 'order_items_id' => $this->primaryKey(), | |
| 31 | + 'order_id' => $this->integer(), | |
| 32 | + 'item_id' => $this->integer(), | |
| 33 | + 'item_count' => $this->integer(), | |
| 34 | + 'price' => $this->float(), | |
| 35 | + ], $tableOptions); | |
| 36 | + | |
| 37 | + $this->addForeignKey('orders_items_fk', '{{%order_items}}', 'order_id', '{{%orders}}', 'order_id', 'CASCADE', 'CASCADE'); | |
| 38 | + $this->addForeignKey('orders_items_items_fk', '{{%order_items}}', 'item_id', '{{%product}}', 'product_id', 'RESTRICT', 'RESTRICT'); | |
| 27 | 39 | } |
| 28 | 40 | |
| 29 | 41 | public function down() |
| 30 | 42 | { |
| 43 | + $this->dropForeignKey('orders_items_fk', '{{%order_items}}'); | |
| 44 | + $this->dropForeignKey('orders_items_items_fk', '{{%order_items}}'); | |
| 31 | 45 | $this->dropTable('{{%orders}}'); |
| 46 | + $this->dropTable('{{%order_items}}'); | |
| 32 | 47 | } |
| 33 | 48 | |
| 34 | 49 | } | ... | ... |
frontend/controllers/OrdersController.php
| ... | ... | @@ -2,6 +2,7 @@ |
| 2 | 2 | |
| 3 | 3 | namespace frontend\controllers; |
| 4 | 4 | |
| 5 | +use common\widgets\BasketModal; | |
| 5 | 6 | use Yii; |
| 6 | 7 | |
| 7 | 8 | use yii\web\Controller; |
| ... | ... | @@ -10,10 +11,21 @@ use yii\data\ArrayDataProvider; |
| 10 | 11 | /** |
| 11 | 12 | * OrderController implements the CRUD actions for Order model. |
| 12 | 13 | */ |
| 13 | -class OrderыController extends Controller | |
| 14 | +class OrdersController extends Controller | |
| 14 | 15 | { |
| 15 | 16 | |
| 16 | - public $layout='/column2'; | |
| 17 | + | |
| 18 | + /** | |
| 19 | + * @inheritdoc | |
| 20 | + */ | |
| 21 | + public function beforeAction($action) | |
| 22 | + { | |
| 23 | + if ($action->id == 'buy-items' || $action->id == 'delete') { | |
| 24 | + Yii::$app->controller->enableCsrfValidation = false; | |
| 25 | + } | |
| 26 | + | |
| 27 | + return true; | |
| 28 | + } | |
| 17 | 29 | |
| 18 | 30 | /** |
| 19 | 31 | * Lists all Order models. |
| ... | ... | @@ -105,7 +117,7 @@ class OrderыController extends Controller |
| 105 | 117 | $array[$data['id']] = $data; |
| 106 | 118 | Yii::$app->session->set('order', $array ); |
| 107 | 119 | } |
| 108 | - echo count(Yii::$app->session->get('order')); | |
| 120 | + echo BasketModal::widget([]); | |
| 109 | 121 | |
| 110 | 122 | } |
| 111 | 123 | /** | ... | ... |
frontend/views/layouts/main.php
| ... | ... | @@ -4,6 +4,7 @@ |
| 4 | 4 | /* @var $content string */ |
| 5 | 5 | |
| 6 | 6 | |
| 7 | +use common\widgets\BasketModal; | |
| 7 | 8 | use frontend\assets\AppAsset; |
| 8 | 9 | use yii\helpers\Html; |
| 9 | 10 | use yii\helpers\Url; |
| ... | ... | @@ -79,84 +80,8 @@ AppAsset::register($this); |
| 79 | 80 | <div class="busket_modal_header"><!-- MODAL BUSKET WINDOW(HEAD) START --> |
| 80 | 81 | <div class="m_a"> |
| 81 | 82 | <div class="busket_modal_02"> |
| 82 | - <div class="order_list"> | |
| 83 | - <ul> | |
| 84 | - <li> | |
| 85 | - <div class="order_list_li "> | |
| 86 | - <div class="delete_item_btn"><i class="fa fa-times"></i></div> | |
| 87 | - <div class="little_img"> | |
| 88 | - <img src="/images/items/01.jpg" alt=""> | |
| 89 | - </div> | |
| 90 | - <div class="name_and_code"> | |
| 91 | - <span class="name">Штукатурка гипсовая Кнауф Ротбанд 30 кг белая</span> | |
| 92 | - <span class="code"> Код: 45885-01016049</span> | |
| 93 | - </div> | |
| 94 | - <div class="count_block_wrap"> | |
| 95 | - <div class="count_block"> | |
| 96 | - <div class="count_number">1</div> | |
| 97 | - <div class="count_buttons"> | |
| 98 | - <div class="button_plus">+</div> | |
| 99 | - <div class="button_minus">-</div> | |
| 100 | - </div> | |
| 101 | - </div> | |
| 102 | - <div class="price">102.05 <span class="price_text">грн.</span></div> | |
| 103 | - </div> | |
| 104 | - </div> | |
| 105 | - </li> | |
| 106 | - <li> | |
| 107 | - <div class="order_list_li "> | |
| 108 | - <div class="delete_item_btn"><i class="fa fa-times"></i></div> | |
| 109 | - <div class="little_img"> | |
| 110 | - <img src="/images/items/01.jpg" alt=""> | |
| 111 | - </div> | |
| 112 | - <div class="name_and_code"> | |
| 113 | - <span class="name">Штукатурка гипсовая Кнауф Ротбанд 30 кг белая</span> | |
| 114 | - <span class="code"> Код: 45885-01016049</span> | |
| 115 | - </div> | |
| 116 | - <div class="count_block_wrap"> | |
| 117 | - <div class="count_block"> | |
| 118 | - <div class="count_number">1</div> | |
| 119 | - <div class="count_buttons"> | |
| 120 | - <div class="button_plus">+</div> | |
| 121 | - <div class="button_minus">-</div> | |
| 122 | - </div> | |
| 123 | - </div> | |
| 124 | - <div class="price">102.05 <span class="price_text">грн.</span></div> | |
| 125 | - </div> | |
| 126 | - </div> | |
| 127 | - </li> | |
| 128 | - <li> | |
| 129 | - <div class="order_list_li "> | |
| 130 | - <div class="delete_item_btn"><i class="fa fa-times"></i></div> | |
| 131 | - <div class="little_img"> | |
| 132 | - <img src="/images/items/01.jpg" alt=""> | |
| 133 | - </div> | |
| 134 | - <div class="name_and_code"> | |
| 135 | - <span class="name">Штукатурка гипсовая Кнауф Ротбанд 30 кг белая</span> | |
| 136 | - <span class="code"> Код: 45885-01016049</span> | |
| 137 | - </div> | |
| 138 | - <div class="count_block_wrap"> | |
| 139 | - <div class="count_block"> | |
| 140 | - <div class="count_number">1</div> | |
| 141 | - <div class="count_buttons"> | |
| 142 | - <div class="button_plus">+</div> | |
| 143 | - <div class="button_minus">-</div> | |
| 144 | - </div> | |
| 145 | - </div> | |
| 146 | - <div class="price">102.05 <span class="price_text">грн.</span></div> | |
| 147 | - </div> | |
| 148 | - </div> | |
| 149 | - </li> | |
| 150 | - </ul> | |
| 151 | - <hr> | |
| 152 | - <div class="all_price"> | |
| 153 | - <p>Всего товаров: <span class="all_count">3</span></p> | |
| 154 | - <p>Сумма: <span class="all_price">306.15</span> грн.</p> | |
| 155 | - </div> | |
| 156 | - <div class="busket_bottom_btn"> | |
| 157 | - <a href="#">продолжить покупки</a> | |
| 158 | - <button>оформить заказ</button> | |
| 159 | - </div> | |
| 83 | + <div class="basket_result"> | |
| 84 | + <?= BasketModal::widget([]); ?> | |
| 160 | 85 | </div> |
| 161 | 86 | </div> |
| 162 | 87 | </div> |
| ... | ... | @@ -257,87 +182,9 @@ AppAsset::register($this); |
| 257 | 182 | <div class="m_a"> |
| 258 | 183 | <div class="busket_modal_01"> |
| 259 | 184 | <div class="modal_close_btn"></div> |
| 260 | - <div class="order_list"> | |
| 261 | - <h3>товар добавлен в корзину</h3> | |
| 262 | - <ul> | |
| 263 | - <li> | |
| 264 | - <div class="order_list_li "> | |
| 265 | - <div class="delete_item_btn"><i class="fa fa-times"></i></div> | |
| 266 | - <div class="little_img"> | |
| 267 | - <img src="/images/items/01.jpg" alt=""> | |
| 268 | - </div> | |
| 269 | - <div class="name_and_code"> | |
| 270 | - <span class="name">Штукатурка гипсовая Кнауф Ротбанд 30 кг белая</span> | |
| 271 | - <span class="code"> Код: 45885-01016049</span> | |
| 272 | - </div> | |
| 273 | - <div class="count_block_wrap"> | |
| 274 | - <div class="count_block"> | |
| 275 | - <div class="count_number">1</div> | |
| 276 | - <div class="count_buttons"> | |
| 277 | - <div class="button_plus">+</div> | |
| 278 | - <div class="button_minus">-</div> | |
| 279 | - </div> | |
| 280 | - </div> | |
| 281 | - <div class="price">102.05 <span class="price_text">грн.</span></div> | |
| 282 | - </div> | |
| 283 | - </div> | |
| 284 | - </li> | |
| 285 | - <li> | |
| 286 | - <div class="order_list_li "> | |
| 287 | - <div class="delete_item_btn"><i class="fa fa-times"></i></div> | |
| 288 | - <div class="little_img"> | |
| 289 | - <img src="/images/items/01.jpg" alt=""> | |
| 290 | - </div> | |
| 291 | - <div class="name_and_code"> | |
| 292 | - <span class="name">Штукатурка гипсовая Кнауф Ротбанд 30 кг белая</span> | |
| 293 | - <span class="code"> Код: 45885-01016049</span> | |
| 294 | - </div> | |
| 295 | - <div class="count_block_wrap"> | |
| 296 | - <div class="count_block"> | |
| 297 | - <div class="count_number">1</div> | |
| 298 | - <div class="count_buttons"> | |
| 299 | - <div class="button_plus">+</div> | |
| 300 | - <div class="button_minus">-</div> | |
| 301 | - </div> | |
| 302 | - </div> | |
| 303 | - <div class="price">102.05 <span class="price_text">грн.</span></div> | |
| 304 | - </div> | |
| 305 | - </div> | |
| 306 | - </li> | |
| 307 | - <li> | |
| 308 | - <div class="order_list_li "> | |
| 309 | - <div class="delete_item_btn"><i class="fa fa-times"></i></div> | |
| 310 | - <div class="little_img"> | |
| 311 | - <img src="/images/items/01.jpg" alt=""> | |
| 312 | - </div> | |
| 313 | - <div class="name_and_code"> | |
| 314 | - <span class="name">Штукатурка гипсовая Кнауф Ротбанд 30 кг белая</span> | |
| 315 | - <span class="code"> Код: 45885-01016049</span> | |
| 316 | - </div> | |
| 317 | - <div class="count_block_wrap"> | |
| 318 | - <div class="count_block"> | |
| 319 | - <div class="count_number">1</div> | |
| 320 | - <div class="count_buttons"> | |
| 321 | - <div class="button_plus">+</div> | |
| 322 | - <div class="button_minus">-</div> | |
| 323 | - </div> | |
| 324 | - </div> | |
| 325 | - <div class="price">102.05 <span class="price_text">грн.</span></div> | |
| 326 | - </div> | |
| 327 | - </div> | |
| 328 | - </li> | |
| 329 | - </ul> | |
| 330 | - <hr> | |
| 331 | - <div class="all_price"> | |
| 332 | - <p>Всего товаров: <span class="all_count">3</span></p> | |
| 333 | - <p>Сумма: <span class="all_price">306.15</span> грн.</p> | |
| 334 | - </div> | |
| 335 | - <div class="busket_bottom_btn"> | |
| 336 | - <a href="#">продолжить покупки</a> | |
| 337 | - <button>оформить заказ</button> | |
| 338 | - </div> | |
| 185 | + <div class="basket_result"> | |
| 186 | + <?= BasketModal::widget([]); ?> | |
| 339 | 187 | </div> |
| 340 | - | |
| 341 | 188 | </div> |
| 342 | 189 | </div> |
| 343 | 190 | </div> <!-- MODAL BUSKET WINDOW END --> | ... | ... |
frontend/views/site/login.php
| ... | ... | @@ -19,7 +19,7 @@ $this->params['breadcrumbs'][] = $this->title; |
| 19 | 19 | <div class="col-lg-5"> |
| 20 | 20 | <?php $form = ActiveForm::begin(['id' => 'login-form']); ?> |
| 21 | 21 | |
| 22 | - <?= $form->field($model, 'username')->textInput(['autofocus' => true]) ?> | |
| 22 | + <?= $form->field($model, 'email')->textInput(['autofocus' => true]) ?> | |
| 23 | 23 | |
| 24 | 24 | <?= $form->field($model, 'password')->passwordInput() ?> |
| 25 | 25 | ... | ... |
frontend/web/css/concat_all.css
| ... | ... | @@ -2494,7 +2494,7 @@ span.red { |
| 2494 | 2494 | .busket_modal_wrapper .busket_modal_01 .order_list .count_block .count_buttons { |
| 2495 | 2495 | position: relative; |
| 2496 | 2496 | /*top: 4px;*/ |
| 2497 | - right: 6px; | |
| 2497 | + right: 16px; | |
| 2498 | 2498 | display: inline-block; |
| 2499 | 2499 | vertical-align: bottom; |
| 2500 | 2500 | } |
| ... | ... | @@ -2680,7 +2680,7 @@ span.red { |
| 2680 | 2680 | .busket_modal_header .busket_modal_02 .order_list .count_block .count_buttons { |
| 2681 | 2681 | position: relative; |
| 2682 | 2682 | /*top: 4px;*/ |
| 2683 | - right: 6px; | |
| 2683 | + right: 16px; | |
| 2684 | 2684 | display: inline-block; |
| 2685 | 2685 | vertical-align: bottom; |
| 2686 | 2686 | } | ... | ... |
frontend/web/css/concat_all_back.css
| ... | ... | @@ -2492,8 +2492,7 @@ span.red { |
| 2492 | 2492 | |
| 2493 | 2493 | .busket_modal_wrapper .busket_modal_01 .order_list .count_block .count_buttons { |
| 2494 | 2494 | position: relative; |
| 2495 | - /*top: 4px;*/ | |
| 2496 | - right: 6px; | |
| 2495 | + right: 16px; | |
| 2497 | 2496 | display: inline-block; |
| 2498 | 2497 | vertical-align: bottom; |
| 2499 | 2498 | } | ... | ... |
frontend/web/css/style.css
| ... | ... | @@ -1071,10 +1071,32 @@ input.error_pass{ |
| 1071 | 1071 | #loginform-rememberme{ |
| 1072 | 1072 | display: none; |
| 1073 | 1073 | } |
| 1074 | + | |
| 1074 | 1075 | .field-loginform-rememberme{ |
| 1075 | 1076 | display: inline; |
| 1076 | 1077 | color: #6aa034; |
| 1077 | 1078 | } |
| 1079 | + | |
| 1078 | 1080 | .field-loginform-rememberme label:hover{ |
| 1079 | 1081 | color: #517a27; |
| 1082 | +} | |
| 1083 | + | |
| 1084 | +.buy_one_item { | |
| 1085 | + display: inline-block; | |
| 1086 | + width: 50px; | |
| 1087 | + height: 31px; | |
| 1088 | + vertical-align: top; | |
| 1089 | + font-size: 17px; | |
| 1090 | + line-height: 1; | |
| 1091 | + padding: 0 10px 0 10px; | |
| 1092 | + color: #555; | |
| 1093 | + background-color: #fff; | |
| 1094 | + background-image: none; | |
| 1095 | + border: 1px solid #ccc; | |
| 1096 | + border-radius: 4px; | |
| 1097 | + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | |
| 1098 | + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); | |
| 1099 | + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; | |
| 1100 | + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; | |
| 1101 | + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; | |
| 1080 | 1102 | } |
| 1081 | 1103 | \ No newline at end of file | ... | ... |
frontend/web/js/my_scripts.js
| ... | ... | @@ -21,10 +21,10 @@ $(document).ready(function(){ |
| 21 | 21 | filter_list.on('click', function(){ |
| 22 | 22 | $(this).next().slideToggle(300); |
| 23 | 23 | var this_img = $(this).children('img'); |
| 24 | - if (this_img.attr('src') === "images/head_down.png" ) { | |
| 25 | - this_img.attr('src', 'images/head_up.png'); | |
| 24 | + if (this_img.attr('src') === "/images/head_down.png" ) { | |
| 25 | + this_img.attr('src', '/images/head_up.png'); | |
| 26 | 26 | } else { |
| 27 | - this_img.attr('src', 'images/head_down.png'); | |
| 27 | + this_img.attr('src', '/images/head_down.png'); | |
| 28 | 28 | }; |
| 29 | 29 | }); |
| 30 | 30 | |
| ... | ... | @@ -85,46 +85,25 @@ $(document).ready(function(){ |
| 85 | 85 | // arrow left hover |
| 86 | 86 | arrow_left.hover( |
| 87 | 87 | function(){ |
| 88 | - $(this).attr('src', 'images/slider_left_hover.png'); | |
| 88 | + $(this).attr('src', '/images/slider_left_hover.png'); | |
| 89 | 89 | }, function(){ |
| 90 | - $(this).attr('src', 'images/slider_left.png'); | |
| 90 | + $(this).attr('src', '/images/slider_left.png'); | |
| 91 | 91 | }); |
| 92 | 92 | |
| 93 | 93 | // arrow right hover |
| 94 | 94 | arrow_right.hover( |
| 95 | 95 | function(){ |
| 96 | - $(this).attr('src', 'images/slider_right_hover.png'); | |
| 96 | + $(this).attr('src', '/images/slider_right_hover.png'); | |
| 97 | 97 | }, function(){ |
| 98 | - $(this).attr('src', 'images/slider_right.png'); | |
| 98 | + $(this).attr('src', '/images/slider_right.png'); | |
| 99 | 99 | }); |
| 100 | 100 | |
| 101 | 101 | // добавить в корзину - счетчик + - товар |
| 102 | 102 | var open_card_item_price = $('.counter').children('.price'), |
| 103 | - counter_plus_btn = $('.counter').find('.button_plus'), | |
| 104 | - counter_minus_btn = $('.counter').find('.button_minus'), | |
| 105 | 103 | counter_item_count = $('.counter').find('.count_number'), |
| 106 | 104 | state_price = 1*($('.counter').children('.price').html()); |
| 107 | 105 | |
| 108 | 106 | |
| 109 | - counter_plus_btn.click(function(){ | |
| 110 | - var count = +counter_item_count.html(); | |
| 111 | - count++; | |
| 112 | - counter_item_count.text(count); | |
| 113 | - | |
| 114 | - var become = 1*($('.counter').children('.price').html()); | |
| 115 | - var result = become + state_price; | |
| 116 | - open_card_item_price.text(result.toFixed(2)); | |
| 117 | - }); | |
| 118 | - counter_minus_btn.click(function(){ | |
| 119 | - var become = 1*($('.counter').children('.price').html()); | |
| 120 | - var result = become - state_price; | |
| 121 | - if(become > 0) { | |
| 122 | - open_card_item_price.text(result.toFixed(2)); | |
| 123 | - var count = +counter_item_count.html(); | |
| 124 | - count--; | |
| 125 | - counter_item_count.text(count); | |
| 126 | - } | |
| 127 | - }); | |
| 128 | 107 | |
| 129 | 108 | // активный класс для корзины |
| 130 | 109 | var basket_order_list = $('.order_list').find('.order_list_li'); |
| ... | ... | @@ -141,19 +120,19 @@ $(document).ready(function(){ |
| 141 | 120 | basket_each_count = basket_order_list.children('.how_many'); // количество каждого товара |
| 142 | 121 | // console.log(basket_each_price); |
| 143 | 122 | |
| 144 | - function basket_all_prices() { | |
| 145 | - var all_count = 0; | |
| 146 | - var all_price = 0; | |
| 147 | - for (var i = basket_each_count.length - 1; i >= 0; i--) { | |
| 148 | - var temp = basket_each_count[i].innerHTML; | |
| 149 | - var temp_price = basket_each_price[i].innerHTML; | |
| 150 | - all_count += parseInt(temp); | |
| 151 | - all_price += parseFloat(temp_price); | |
| 152 | - }; | |
| 153 | - basket_all_items.text(all_count); | |
| 154 | - basket_all_price.text(all_price.toFixed(2)); | |
| 155 | - } | |
| 156 | - basket_all_prices(); | |
| 123 | + //function basket_all_prices() { | |
| 124 | + // var all_count = 0; | |
| 125 | + // var all_price = 0; | |
| 126 | + // for (var i = basket_each_count.length - 1; i >= 0; i--) { | |
| 127 | + // var temp = basket_each_count[i].innerHTML; | |
| 128 | + // var temp_price = basket_each_price[i].innerHTML; | |
| 129 | + // all_count += parseInt(temp); | |
| 130 | + // all_price += parseFloat(temp_price); | |
| 131 | + // }; | |
| 132 | + // basket_all_items.text(all_count); | |
| 133 | + // basket_all_price.text(all_price.toFixed(2)); | |
| 134 | + //} | |
| 135 | + //basket_all_prices(); | |
| 157 | 136 | |
| 158 | 137 | |
| 159 | 138 | // modal widows |
| ... | ... | @@ -293,6 +272,8 @@ $(document).ready(function(){ |
| 293 | 272 | log_wrap.fadeOut(200); |
| 294 | 273 | forgot_pass_wrap.fadeOut(200); |
| 295 | 274 | forgot_pass_success_wrap.fadeOut(200); |
| 275 | + forgot_pass_success_wrap.fadeOut(200); | |
| 276 | + busket_modal_wrapper.fadeOut(200); | |
| 296 | 277 | callback_wrap.fadeOut(200); |
| 297 | 278 | }); |
| 298 | 279 | $(".close_modal").click(function(){ |
| ... | ... | @@ -499,6 +480,68 @@ $(document).ready(function(){ |
| 499 | 480 | all_modal_moves(); |
| 500 | 481 | |
| 501 | 482 | |
| 483 | + function countPrise(block){ | |
| 484 | + var total_price = 0; | |
| 485 | + block.find('.price').each(function(){ | |
| 486 | + total_price += +$(this).html(); | |
| 487 | + }); | |
| 488 | + $('.total_price').html(total_price); | |
| 489 | + $("input[name='OrderForm[total_price]']").val(total_price); | |
| 490 | + } | |
| 491 | + | |
| 492 | + | |
| 493 | + $('.item').on('click', '.basket_add_but', function(e){ | |
| 494 | + var id = $(this).parents('.item').data('id'); | |
| 495 | + console.log(id); | |
| 496 | + $.post( "/orders/buy-items", {id: id}, function( data ) { | |
| 497 | + $('.basket_result').each(function(){ | |
| 498 | + $(this).html(data) | |
| 499 | + }); | |
| 500 | + }); | |
| 501 | + | |
| 502 | + }); | |
| 503 | + | |
| 504 | + $('.basket_result').on('click', '.delete_item_btn', function(){ | |
| 505 | + var id = $(this).parents('.order_list_li').data('id'); | |
| 506 | + $(this).parents('.order_list_li').remove(); | |
| 507 | + $.post( "/orders/delete", {id: id}, function( data ) { | |
| 508 | + }); | |
| 509 | + countPrise(); | |
| 510 | + }); | |
| 511 | + | |
| 512 | + $('.basket_result').on('click', '.button_minus', function(){ | |
| 513 | + var input = $(this).parents('.order_list_li ').find('input'); | |
| 514 | + var number = input.val(); | |
| 515 | + if(number > 1){ | |
| 516 | + number--; | |
| 517 | + input.val(number); | |
| 518 | + var price = $(this).parents('.goods_data').find('.item_prise_block').find('span').html(); | |
| 519 | + var new_price = number * price; | |
| 520 | + $(this).parents('.goods_data').find('.item_prise_total_block').find('span').html(new_price); | |
| 521 | + } | |
| 522 | + countPrise(); | |
| 523 | + }); | |
| 524 | + | |
| 525 | + | |
| 526 | + $('.basket_result').on('click', '.button_plus', function(){ | |
| 527 | + var input = $(this).parents('.order_list_li ').find('input'); | |
| 528 | + var number = input.val(); | |
| 529 | + number++; | |
| 530 | + input.val(number); | |
| 531 | + var price = $(this).parents('.goods_data').find('.item_prise_block').find('span').html(); | |
| 532 | + var new_price = number * price; | |
| 533 | + $(this).parents('.goods_data').find('.item_prise_total_block').find('span').html(new_price); | |
| 534 | + countPrise(); | |
| 535 | + }); | |
| 536 | + | |
| 537 | + $('.basket_result').on('change', '.buy_one_item', function(){ | |
| 538 | + var num = $(this).val(); | |
| 539 | + var priceBlock = $(this).parents('.order_list_li').find('.price'); | |
| 540 | + var price = priceBlock.html(); | |
| 541 | + var new_price = num * price; | |
| 542 | + priceBlock.html(new_price); | |
| 543 | + countPrise(); | |
| 544 | + }); | |
| 502 | 545 | |
| 503 | 546 | |
| 504 | 547 | }); |
| 505 | 548 | \ No newline at end of file | ... | ... |