├── deps ├── favicon │ ├── favicon.ico │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── apple-touch-icon.png │ ├── android-chrome-192x192.png │ ├── android-chrome-512x512.png │ └── site.webmanifest ├── images │ ├── baseavatar.jpg │ ├── bg-image.jpg │ ├── goods │ │ ├── sofa.jpg │ │ ├── flower.jpg │ │ ├── plants.jpg │ │ ├── corner sofa.jpg │ │ ├── double bed.jpg │ │ ├── bedside table.jpg │ │ ├── kitchen table.jpg │ │ ├── office chair.jpg │ │ ├── strange table.jpg │ │ ├── kitchen table 2.jpg │ │ ├── set of tea table and two chairs.jpg │ │ └── set of tea table and three chairs.jpg │ └── Not found image.png ├── css │ ├── my_footer_css.css │ └── my_css.css ├── icons │ ├── facebook.svg │ ├── google.svg │ ├── basket2-fill.svg │ ├── grid-fill.svg │ ├── box-arrow-in-left.svg │ ├── cart-plus.svg │ ├── box-arrow-in-right.svg │ ├── trash3-fill.svg │ └── github.svg └── js │ ├── jquery-events.js │ └── jquery-ajax.js ├── about.html ├── other_files ├── 404.html ├── 500.html ├── sale_banner.html ├── notifications.html ├── settings.json └── goods_list.py ├── carts └── cart.html ├── index.html ├── users ├── login.html ├── registration.html └── profile.html ├── goods ├── product.html └── catalog.html └── orders └── create_order.html /deps/favicon/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/favicon/favicon.ico -------------------------------------------------------------------------------- /deps/images/baseavatar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/baseavatar.jpg -------------------------------------------------------------------------------- /deps/images/bg-image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/bg-image.jpg -------------------------------------------------------------------------------- /deps/images/goods/sofa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/sofa.jpg -------------------------------------------------------------------------------- /deps/images/goods/flower.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/flower.jpg -------------------------------------------------------------------------------- /deps/images/goods/plants.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/plants.jpg -------------------------------------------------------------------------------- /deps/favicon/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/favicon/favicon-16x16.png -------------------------------------------------------------------------------- /deps/favicon/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/favicon/favicon-32x32.png -------------------------------------------------------------------------------- /deps/images/Not found image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/Not found image.png -------------------------------------------------------------------------------- /deps/favicon/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/favicon/apple-touch-icon.png -------------------------------------------------------------------------------- /deps/images/goods/corner sofa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/corner sofa.jpg -------------------------------------------------------------------------------- /deps/images/goods/double bed.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/double bed.jpg -------------------------------------------------------------------------------- /deps/images/goods/bedside table.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/bedside table.jpg -------------------------------------------------------------------------------- /deps/images/goods/kitchen table.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/kitchen table.jpg -------------------------------------------------------------------------------- /deps/images/goods/office chair.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/office chair.jpg -------------------------------------------------------------------------------- /deps/images/goods/strange table.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/strange table.jpg -------------------------------------------------------------------------------- /deps/images/goods/kitchen table 2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/kitchen table 2.jpg -------------------------------------------------------------------------------- /deps/favicon/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/favicon/android-chrome-192x192.png -------------------------------------------------------------------------------- /deps/favicon/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/favicon/android-chrome-512x512.png -------------------------------------------------------------------------------- /deps/css/my_footer_css.css: -------------------------------------------------------------------------------- 1 | footer { 2 | position: fixed; 3 | bottom: 0; 4 | width: 100%; 5 | background-color: #343a40; 6 | padding: 10px 0; 7 | } -------------------------------------------------------------------------------- /deps/images/goods/set of tea table and two chairs.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/set of tea table and two chairs.jpg -------------------------------------------------------------------------------- /deps/images/goods/set of tea table and three chairs.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PythonHubStudio/templates-for-Django-4-course-Home/HEAD/deps/images/goods/set of tea table and three chairs.jpg -------------------------------------------------------------------------------- /deps/favicon/site.webmanifest: -------------------------------------------------------------------------------- 1 | {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} -------------------------------------------------------------------------------- /deps/icons/facebook.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 |
9 |

О нас

10 |

Текст о том какой классный этот интернет магазин.

11 |
-------------------------------------------------------------------------------- /deps/icons/google.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /deps/icons/basket2-fill.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /deps/icons/grid-fill.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /deps/icons/box-arrow-in-left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /deps/icons/cart-plus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /deps/icons/box-arrow-in-right.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /deps/icons/trash3-fill.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /other_files/404.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | {% load static %} 3 | 4 | {% block css %} 5 | 6 | {% endblock css %} 7 | 8 | {% block cart_button %} 9 | {% include 'includes/cart_button.html' %} 10 | {% endblock cart_button %} 11 | 12 | 13 | {% block content %} 14 |

ОП, СТРАНИЦА НЕ НАЙДЕНА!

15 | {% endblock content %} 16 | 17 | {% block footer %} 18 | 23 | {% endblock footer %} -------------------------------------------------------------------------------- /deps/icons/github.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /other_files/500.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | {% load static %} 3 | 4 | {% block css %} 5 | 6 | {% endblock css %} 7 | 8 | {% block cart_button %} 9 | {% include 'includes/cart_button.html' %} 10 | {% endblock cart_button %} 11 | 12 | 13 | {% block content %} 14 |

НА СЕРВЕРЕ ЧТО-ТО ПОШЛО НЕ ТАК!

15 | {% endblock content %} 16 | 17 | {% block footer %} 18 | 23 | {% endblock footer %} -------------------------------------------------------------------------------- /other_files/sale_banner.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 |
5 | 6 | % 7 |
8 |

Название

9 |

9.99 $

10 |
11 |
12 | 13 |
14 |
-------------------------------------------------------------------------------- /deps/css/my_css.css: -------------------------------------------------------------------------------- 1 | body { 2 | background-image: url("../images/bg-image.jpg"); 3 | background-repeat: no-repeat; 4 | background-attachment: fixed; 5 | background-position: center center; 6 | background-size: cover; 7 | height: 100%; 8 | } 9 | 10 | .dropdown-toggle::after { 11 | content: none; 12 | } 13 | 14 | .custom-shadow { 15 | box-shadow: 5px 5px 25px 19px #000000; 16 | } 17 | 18 | .product_id { 19 | color: gray; 20 | font-size: 15px; 21 | } 22 | 23 | .badge.bg-warning.text-dark { 24 | position: absolute; 25 | top: 10px; 26 | right: 5px; 27 | z-index: 1; 28 | padding: 5px 10px; 29 | border-radius: 3px; 30 | font-size: 1rem; 31 | box-shadow: 2px 2px 15px 9px #000000; 32 | } 33 | 34 | .badge-banner { 35 | top: 80%; 36 | border-radius: 15px; 37 | font-size: 0.7rem; 38 | } -------------------------------------------------------------------------------- /deps/js/jquery-events.js: -------------------------------------------------------------------------------- 1 | // Когда html документ готов (прорисован) 2 | $(document).ready(function () { 3 | // Берем из разметки элемент по id - оповещения от django 4 | var notification = $('#notification'); 5 | // И через 7 сек. убираем 6 | if (notification.length > 0) { 7 | setTimeout(function () { 8 | notification.alert('close'); 9 | }, 7000); 10 | } 11 | 12 | // При клике по значку корзины открываем всплывающее(модальное) окно 13 | $('#modalButton').click(function () { 14 | $('#exampleModal').appendTo('body'); 15 | 16 | $('#exampleModal').modal('show'); 17 | }); 18 | 19 | // Собыите клик по кнопке закрыть окна корзины 20 | $('#exampleModal .btn-close').click(function () { 21 | $('#exampleModal').modal('hide'); 22 | }); 23 | 24 | // Обработчик события радиокнопки выбора способа доставки 25 | $("input[name='requires_delivery']").change(function() { 26 | var selectedValue = $(this).val(); 27 | // Скрываем или отображаем input ввода адреса доставки 28 | if (selectedValue === "1") { 29 | $("#deliveryAddressField").show(); 30 | } else { 31 | $("#deliveryAddressField").hide(); 32 | } 33 | }); 34 | 35 | }); -------------------------------------------------------------------------------- /other_files/notifications.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
6 | 10 |
11 |
12 |
13 | 14 | 15 |
Оишбка
16 | 17 | 18 |
19 |
20 |
21 | {% if messages %} 22 | {% for message in messages %} 23 | {% if message.tags == 'success' %} 24 | 27 | {% endif %} 28 | {% if message.tags == 'warning' %} 29 | 32 | {% endif %} 33 | {% endfor %} 34 | {% else %} 35 | 37 | {% endif %} 38 |
39 |
40 |
-------------------------------------------------------------------------------- /other_files/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "git.autoRepositoryDetection": "subFolders", 3 | "breadcrumbs.enabled": true, 4 | 5 | "debug.autoExpandLazyVariables": true, 6 | "debug.inlineValues": "on", 7 | 8 | "python.languageServer": "Pylance", 9 | "python.analysis.typeCheckingMode": "off", 10 | "python.analysis.diagnosticMode": "openFilesOnly", 11 | "python.analysis.autoSearchPaths": true, 12 | "python.analysis.autoImportCompletions": true, 13 | "python.analysis.completeFunctionParens": true, 14 | "python.analysis.inlayHints.variableTypes": true, 15 | "python.analysis.inlayHints.functionReturnTypes": true, 16 | "python.analysis.importFormat": "absolute", 17 | "python.analysis.enablePytestSupport": true, 18 | "python.analysis.indexing": true, 19 | "python.analysis.packageIndexDepths": [ 20 | { 21 | "name": "django", 22 | "depth": 3, 23 | "includeAllSymbols": true 24 | } 25 | ], 26 | 27 | "[python]": { 28 | "editor.defaultFormatter": "ms-python.black-formatter" 29 | }, 30 | "emmet.includeLanguages": { 31 | "django-html": "html" 32 | }, 33 | "files.associations": { 34 | "**/*.html": "html", 35 | "**/templates/*/*.html": "django-html", 36 | "**/templates/*/*/*.html": "django-html", 37 | "**/templates/*": "django-txt", 38 | "**/requirements{/**,*}.{txt,in}": "pip-requirements" 39 | }, 40 | "django.snippets.exclude": [ 41 | "cms", 42 | "wagtail" 43 | ], 44 | 45 | 46 | "[django-html]": { 47 | "editor.defaultFormatter": "batisteo.vscode-django", 48 | "breadcrumbs.showClasses": true, 49 | "editor.quickSuggestions": { 50 | "other": true, 51 | "comments": true, 52 | "strings": true 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /other_files/goods_list.py: -------------------------------------------------------------------------------- 1 | goods = [ 2 | {'image': 'deps/images/goods/set of tea table and three chairs.jpg', 3 | 'name': 'Чайный столик и три стула', 4 | 'description': 'Комплект из трёх стульев и дизайнерский столик для гостинной комнаты.', 5 | 'price': 150.00}, 6 | 7 | {'image': 'deps/images/goods/set of tea table and two chairs.jpg', 8 | 'name': 'Чайный столик и два стула', 9 | 'description': 'Набор из стола и двух стульев в минималистическом стиле.', 10 | 'price': 93.00}, 11 | 12 | {'image': 'deps/images/goods/double bed.jpg', 13 | 'name': 'Двухспальная кровать', 14 | 'description': 'Кровать двухспальная с надголовником и вообще очень ортопедичная.', 15 | 'price': 670.00}, 16 | 17 | {'image': 'deps/images/goods/kitchen table.jpg', 18 | 'name': 'Кухонный стол с раковиной', 19 | 'description': 'Кухонный стол для обеда с встроенной раковиной и стульями.', 20 | 'price': 365.00}, 21 | 22 | {'image': 'deps/images/goods/kitchen table 2.jpg', 23 | 'name': 'Кухонный стол с встройкой', 24 | 'description': 'Кухонный стол со встроенной плитой и раковиной. Много полок и вообще красивый.', 25 | 'price': 430.00}, 26 | 27 | {'image': 'deps/images/goods/corner sofa.jpg', 28 | 'name': 'Угловой диван для гостинной', 29 | 'description': 'Угловой диван, раскладывается в двухспальную кровать, для гостинной и приема гостей самое то!', 30 | 'price': 610.00}, 31 | 32 | {'image': 'deps/images/goods/bedside table.jpg', 33 | 'name': 'Прикроватный столик', 34 | 'description': 'Прикроватный столик с двумя выдвижными ящиками (цветок не входит в комплект).', 35 | 'price': 55.00}, 36 | 37 | {'image': 'deps/images/goods/sofa.jpg', 38 | 'name': 'Диван обыкновенный', 39 | 'description': 'Диван, он же софа обыкновенная, ничего примечательного для описания.', 40 | 'price': 190.00}, 41 | 42 | {'image': 'deps/images/goods/office chair.jpg', 43 | 'name': 'Стул офисный', 44 | 'description': 'Описание товара, про то какой он классный, но это стул, что тут сказать...', 45 | 'price': 30.00}, 46 | 47 | {'image': 'deps/images/goods/plants.jpg', 48 | 'name': 'Растение', 49 | 'description': 'Растение для украшения вашего интерьера подарит свежесть и безмятежность обстановке.', 50 | 'price': 10.00}, 51 | 52 | {'image': 'deps/images/goods/flower.jpg', 53 | 'name': 'Цветок стилизированный', 54 | 'description': 'Дизайнерский цветок (возможно искусственный) для украшения интерьера.', 55 | 'price': 15.00}, 56 | 57 | {'image': 'deps/images/goods/strange table.jpg', 58 | 'name': 'Прикроватный столик', 59 | 'description': 'Столик, довольно странный на вид, но подходит для размещения рядом с кроватью.', 60 | 'price': 25.00}, 61 | ] -------------------------------------------------------------------------------- /deps/js/jquery-ajax.js: -------------------------------------------------------------------------------- 1 | // Когда html документ готов (прорисован) 2 | $(document).ready(function () { 3 | // берем в переменную элемент разметки с id jq-notification для оповещений от ajax 4 | var successMessage = $("#jq-notification"); 5 | 6 | // // Ловим собыитие клика по кнопке добавить в корзину 7 | // $(document).on("click", ".add-to-cart", function (e) { 8 | // // Блокируем его базовое действие 9 | // e.preventDefault(); 10 | 11 | // // Берем элемент счетчика в значке корзины и берем оттуда значение 12 | // var goodsInCartCount = $("#goods-in-cart-count"); 13 | // var cartCount = parseInt(goodsInCartCount.text() || 0); 14 | 15 | // // Получаем id товара из атрибута data-product-id 16 | // var product_id = $(this).data("product-id"); 17 | 18 | // // Из атрибута href берем ссылку на контроллер django 19 | // var add_to_cart_url = $(this).attr("href"); 20 | 21 | // // делаем post запрос через ajax не перезагружая страницу 22 | // $.ajax({ 23 | // type: "POST", 24 | // url: add_to_cart_url, 25 | // data: { 26 | // product_id: product_id, 27 | // csrfmiddlewaretoken: $("[name=csrfmiddlewaretoken]").val(), 28 | // }, 29 | // success: function (data) { 30 | // // Сообщение 31 | // successMessage.html(data.message); 32 | // successMessage.fadeIn(400); 33 | // // Через 7сек убираем сообщение 34 | // setTimeout(function () { 35 | // successMessage.fadeOut(400); 36 | // }, 7000); 37 | 38 | // // Увеличиваем количество товаров в корзине (отрисовка в шаблоне) 39 | // cartCount++; 40 | // goodsInCartCount.text(cartCount); 41 | 42 | // // Меняем содержимое корзины на ответ от django (новый отрисованный фрагмент разметки корзины) 43 | // var cartItemsContainer = $("#cart-items-container"); 44 | // cartItemsContainer.html(data.cart_items_html); 45 | 46 | // }, 47 | 48 | // error: function (data) { 49 | // console.log("Ошибка при добавлении товара в корзину"); 50 | // }, 51 | // }); 52 | // }); 53 | 54 | 55 | 56 | 57 | // // Ловим собыитие клика по кнопке удалить товар из корзины 58 | // $(document).on("click", ".remove-from-cart", function (e) { 59 | // // Блокируем его базовое действие 60 | // e.preventDefault(); 61 | 62 | // // Берем элемент счетчика в значке корзины и берем оттуда значение 63 | // var goodsInCartCount = $("#goods-in-cart-count"); 64 | // var cartCount = parseInt(goodsInCartCount.text() || 0); 65 | 66 | // // Получаем id корзины из атрибута data-cart-id 67 | // var cart_id = $(this).data("cart-id"); 68 | // // Из атрибута href берем ссылку на контроллер django 69 | // var remove_from_cart = $(this).attr("href"); 70 | 71 | // // делаем post запрос через ajax не перезагружая страницу 72 | // $.ajax({ 73 | 74 | // type: "POST", 75 | // url: remove_from_cart, 76 | // data: { 77 | // cart_id: cart_id, 78 | // csrfmiddlewaretoken: $("[name=csrfmiddlewaretoken]").val(), 79 | // }, 80 | // success: function (data) { 81 | // // Сообщение 82 | // successMessage.html(data.message); 83 | // successMessage.fadeIn(400); 84 | // // Через 7сек убираем сообщение 85 | // setTimeout(function () { 86 | // successMessage.fadeOut(400); 87 | // }, 7000); 88 | 89 | // // Уменьшаем количество товаров в корзине (отрисовка) 90 | // cartCount -= data.quantity_deleted; 91 | // goodsInCartCount.text(cartCount); 92 | 93 | // // Меняем содержимое корзины на ответ от django (новый отрисованный фрагмент разметки корзины) 94 | // var cartItemsContainer = $("#cart-items-container"); 95 | // cartItemsContainer.html(data.cart_items_html); 96 | 97 | // }, 98 | 99 | // error: function (data) { 100 | // console.log("Ошибка при добавлении товара в корзину"); 101 | // }, 102 | // }); 103 | // }); 104 | 105 | 106 | 107 | 108 | // // Теперь + - количества товара 109 | // // Обработчик события для уменьшения значения 110 | // $(document).on("click", ".decrement", function () { 111 | // // Берем ссылку на контроллер django из атрибута data-cart-change-url 112 | // var url = $(this).data("cart-change-url"); 113 | // // Берем id корзины из атрибута data-cart-id 114 | // var cartID = $(this).data("cart-id"); 115 | // // Ищем ближайшеий input с количеством 116 | // var $input = $(this).closest('.input-group').find('.number'); 117 | // // Берем значение количества товара 118 | // var currentValue = parseInt($input.val()); 119 | // // Если количества больше одного, то только тогда делаем -1 120 | // if (currentValue > 1) { 121 | // $input.val(currentValue - 1); 122 | // // Запускаем функцию определенную ниже 123 | // // с аргументами (id карты, новое количество, количество уменьшилось или прибавилось, url) 124 | // updateCart(cartID, currentValue - 1, -1, url); 125 | // } 126 | // }); 127 | 128 | // // Обработчик события для увеличения значения 129 | // $(document).on("click", ".increment", function () { 130 | // // Берем ссылку на контроллер django из атрибута data-cart-change-url 131 | // var url = $(this).data("cart-change-url"); 132 | // // Берем id корзины из атрибута data-cart-id 133 | // var cartID = $(this).data("cart-id"); 134 | // // Ищем ближайшеий input с количеством 135 | // var $input = $(this).closest('.input-group').find('.number'); 136 | // // Берем значение количества товара 137 | // var currentValue = parseInt($input.val()); 138 | 139 | // $input.val(currentValue + 1); 140 | 141 | // // Запускаем функцию определенную ниже 142 | // // с аргументами (id карты, новое количество, количество уменьшилось или прибавилось, url) 143 | // updateCart(cartID, currentValue + 1, 1, url); 144 | // }); 145 | 146 | // function updateCart(cartID, quantity, change, url) { 147 | // $.ajax({ 148 | // type: "POST", 149 | // url: url, 150 | // data: { 151 | // cart_id: cartID, 152 | // quantity: quantity, 153 | // csrfmiddlewaretoken: $("[name=csrfmiddlewaretoken]").val(), 154 | // }, 155 | 156 | // success: function (data) { 157 | // // Сообщение 158 | // successMessage.html(data.message); 159 | // successMessage.fadeIn(400); 160 | // // Через 7сек убираем сообщение 161 | // setTimeout(function () { 162 | // successMessage.fadeOut(400); 163 | // }, 7000); 164 | 165 | // // Изменяем количество товаров в корзине 166 | // var goodsInCartCount = $("#goods-in-cart-count"); 167 | // var cartCount = parseInt(goodsInCartCount.text() || 0); 168 | // cartCount += change; 169 | // goodsInCartCount.text(cartCount); 170 | 171 | // // Меняем содержимое корзины 172 | // var cartItemsContainer = $("#cart-items-container"); 173 | // cartItemsContainer.html(data.cart_items_html); 174 | 175 | // }, 176 | // error: function (data) { 177 | // console.log("Ошибка при добавлении товара в корзину"); 178 | // }, 179 | // }); 180 | // } 181 | }); -------------------------------------------------------------------------------- /carts/cart.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Корзина 15 | 16 | 17 | 18 |
19 | 70 |
71 |
72 |
73 | 74 |
75 | 76 | 93 |
94 |
95 | 96 |
97 |
98 |
99 | 100 |
101 |
102 | 103 |
104 |
105 |
106 |
107 |

Корзина

108 |
109 | 110 |
111 |
112 |
Товар
113 |
114 |
    115 |
  • 116 |
    117 |
    118 |
    119 | 120 | 122 | 123 | 125 | 126 | 128 | 129 |
    130 |
    131 |
    132 |

    x 100.00 =

    133 |
    134 |
    100.00 $
    135 |
    136 | 137 | Catalog Icon 139 | 140 |
    141 |
    142 |
  • 143 |
144 |
145 |
146 | 150 |
151 | 152 |
153 | 154 | Оформить заказ 155 | 156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 | 165 | 166 | 167 | 168 | 169 | 170 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Home 18 | 19 | 20 | 21 |
22 | 73 |
74 |
75 |
76 | 77 |
78 | 79 | 96 | 97 |
98 | 104 |
105 | 106 | 168 | 169 |
170 |
171 | 172 |
173 |
174 |
175 | 176 |
177 |
178 | 179 |

Магазин мебели HOME

180 |
181 |
182 |
183 |
184 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | -------------------------------------------------------------------------------- /users/login.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Авторизация 15 | 16 | 17 | 18 |
19 | 70 |
71 |
72 |
73 | 74 |
75 | 76 | 93 | 94 |
95 | 100 |
101 | 102 | 164 | 165 |
166 |
167 | 168 |
169 |
170 |
171 | 172 |
173 |
174 | 175 |
176 |
177 |
178 |
179 |

Авторизация

180 |
181 |
182 | 183 | 184 |
185 |
186 | 187 | 188 |
189 | 190 |
191 | 194 |
195 |
196 |

Или авторизуйтесь через:

197 | 198 | Catalog Icon 199 | Google 200 | 201 | 202 | Catalog Icon 203 | Facebook 204 | 205 | 206 | Catalog Icon 207 | GitHub 208 | 209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 | 219 | 220 | 221 | 222 | 223 | 224 | -------------------------------------------------------------------------------- /goods/product.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Товар 15 | 16 | 17 | 18 |
19 | 70 |
71 |
72 |
73 | 74 |
75 | 76 | 93 | 94 |
95 | 101 |
102 | 103 | 167 | 168 |
169 |
170 | 171 |
172 |
173 |
174 | 175 |
176 |
177 | 178 |
179 |
180 |
181 | 182 |
183 | 185 |
186 |
187 |

id: 002654

188 |
189 | 190 | 206 |
207 | 208 |
209 |

Цена: 150.00 $

210 |
Чайный столик и три стула
211 |

Комплект из трёх стульев и дизайнерский столик для гостинной 212 | комнаты.

213 | Добавить в корзину 214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 | 222 | 223 | 224 | 225 | 226 | 227 | -------------------------------------------------------------------------------- /users/registration.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Регистрация 15 | 16 | 17 | 18 |
19 | 70 |
71 |
72 |
73 | 74 |
75 | 76 | 93 | 94 |
95 | 100 |
101 | 102 | 164 | 165 |
166 |
167 | 168 |
169 |
170 |
171 | 172 |
173 |
174 | 175 |
176 |
177 |
178 |
179 |

Регистрация

180 |
181 |
182 |
183 | 184 | 186 |
187 |
188 | 189 | 191 |
192 |
193 | 194 | 196 |
197 |
198 | 199 | 201 |
202 |
203 | 204 | 206 |
207 |
208 | 209 | 211 |
212 |
213 | 215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 | 225 | 226 | 227 | 228 | 229 | 230 | -------------------------------------------------------------------------------- /orders/create_order.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Профиль 15 | 16 | 17 | 18 |
19 | 70 |
71 |
72 |
73 | 74 |
75 | 76 | 93 |
94 |
95 | 96 |
97 |
98 |
99 | 100 |
101 |
102 | 103 |
104 |
105 |

Выбранные товары

106 |
107 | 108 |
109 |
110 |
Товар
111 |
112 |
    113 |
  • 114 |
    115 |
    116 |
    117 | 118 | 120 | 121 | 123 | 124 | 126 | 127 |
    128 |
    129 |
    130 |

    x 100.00 =

    131 |
    132 |
    100.00 $
    133 |
    134 | 135 | Catalog Icon 137 | 138 |
    139 |
    140 |
  • 141 |
142 |
143 |
144 | 148 |
149 | 150 |
151 |
152 | 153 |
154 |

Детали заказа

155 |
156 |
157 |
158 |
159 |
160 | 161 | 163 |
164 |
165 | 166 | 167 |
168 |
169 | 170 | 173 |
174 |
175 | 176 |
177 | 179 | 181 |
182 |
183 | 185 | 186 |
187 |
188 |
189 | 191 | 193 |
194 |
195 | 196 |
197 | 199 | 201 |
202 |
203 | 205 | 207 |
208 |
209 |
210 | 211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 | 221 | 222 | 223 | 224 | 225 | 226 | -------------------------------------------------------------------------------- /users/profile.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Профиль 15 | 16 | 17 | 18 |
19 | 70 |
71 |
72 |
73 | 74 |
75 | 76 | 93 |
94 |
95 | 96 |
97 |
98 |
99 | 100 |
101 |
102 | 103 |
104 |
105 |
106 | 107 |
108 |
109 |

Профиль пользователя

110 |
111 |
112 |
113 | Аватар пользователя 116 | 118 |
119 |
120 | 121 | 123 |
124 |
125 | 126 | 128 |
129 |
130 | 131 | 133 |
134 |
135 | 136 | 139 |
140 |
141 | 142 |
143 |
144 |
145 | 146 |
147 |
148 |

Корзина

149 |
150 | 151 |
152 |
153 |
Товар
154 |
155 |
    156 |
  • 157 |
    158 |
    159 |
    160 | 161 | 163 | 164 | 166 | 167 | 169 | 170 |
    171 |
    172 |
    173 |

    x 100.00 =

    174 |
    175 |
    100.00 $
    176 |
    177 | 178 | Catalog Icon 180 | 181 |
    182 |
    183 |
  • 184 |
185 |
186 |
187 | 191 |
192 | 193 |
194 | 195 | Оформить заказ 196 | 197 |
198 |
199 | 200 |
201 |
202 |

Мои заказы

203 | 204 |
205 |
206 |
207 |

208 | 211 |

212 |
213 |
214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 |
ТоварКоличествоЦенаОбщая стоимость
Комплект стол и три стула1255.00 $255.00 $
233 |
234 |

Итого:

235 |

255.00 $

236 | 237 |
238 |
239 |
240 |
241 |
242 |

243 | 246 |

247 |
248 |
249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 |
ТоварКоличествоЦенаОбщая стоимость
Стул офисный230.00 $60.00 $
268 |
269 |
270 |
271 |
272 |
273 | 274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 | 284 | 285 | 286 | 287 | 288 | 289 | -------------------------------------------------------------------------------- /goods/catalog.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Каталог 15 | 16 | 17 | 18 |
19 | 70 |
71 |
72 |
73 | 74 |
75 | 76 | 93 | 94 |
95 | 100 |
101 | 102 | 164 | 165 |
166 |
167 | 168 |
169 |
170 |
171 | 172 |
173 |
174 | 175 |
176 | 177 | 213 | 214 |
215 |
216 | ... 217 |
218 | 219 |

Чайный столик и три стула

220 |
221 |

Комплект из трёх стульев и дизайнерский столик для гостинной комнаты.

222 |

id: 02265

223 |
224 |

100 $

225 |

90.00 $

226 | Скидка 10.00 % 227 | 228 | 229 | Catalog Icon 231 | 232 |
233 |
234 |
235 |
236 | 237 |
238 |
239 | ... 240 |
241 | 242 |

Чайный столик и два стула

243 |
244 |

Набор из стола и двух стульев в минималистическом стиле.

245 |

id: 02265

246 |
247 |

100 $

248 |

90.00 $

249 | Скидка 10.00 % 250 | 251 | 252 | Catalog Icon 254 | 255 |
256 |
257 |
258 |
259 | 260 |
261 |
262 | ... 263 |
264 | 265 |

Двухспальная кровать

266 |
267 |

Кровать двухспальная с надголовником и вообще очень ортопедичная.

268 |

id: 02265

269 |
270 |

100 $

271 |

90.00 $

272 | Скидка 10.00 % 273 | 274 | 275 | Catalog Icon 277 | 278 |
279 |
280 |
281 |
282 | 283 |
284 |
285 | ... 286 |
287 | 288 |

Кухонный стол с раковиной

289 |
290 |

Кухонныйй стол для обеда с встроенной раковиной и стульями.

291 |

id: 02265

292 |
293 |

100 $

294 |

90.00 $

295 | Скидка 10.00 % 296 | 297 | 298 | Catalog Icon 300 | 301 |
302 |
303 |
304 |
305 | 306 |
307 |
308 | ... 309 |
310 | 311 |

Кухонный стол с встройкой

312 |
313 |

Кухонный стол со встроенной плитой и раковиной. Много полок и вообще красивый.

314 |

id: 02265

315 |
316 |

100 $

317 |

90.00 $

318 | Скидка 10.00 % 319 | 320 | 321 | Catalog Icon 323 | 324 |
325 |
326 |
327 |
328 | 329 |
330 |
331 | ... 332 |
333 | 334 |

Угловой диван для гостинной

335 |
336 |

Угловой диван, раскладывается в двухспальную кровать, для гостинной и приема гостей самое то!

337 |

id: 02265

338 |
339 |

100 $

340 |

90.00 $

341 | Скидка 10.00 % 342 | 343 | 344 | Catalog Icon 346 | 347 |
348 |
349 |
350 |
351 | 352 |
353 |
354 | ... 355 |
356 | 357 |

Прикроватный столик

358 |
359 |

Прикроватный столик с двумявыдвижными ящиками (цветок не входит в комплект).

360 |

id: 02265

361 |
362 |

100 $

363 |

90.00 $

364 | Скидка 10.00 % 365 | 366 | 367 | Catalog Icon 369 | 370 |
371 |
372 |
373 |
374 | 375 |
376 |
377 | ... 378 |
379 | 380 |

Диван обыкновенный

381 |
382 |

Диван, он же софа обыкновенная, ничего примечательного для описания.

383 |

id: 02265

384 |
385 |

100 $

386 |

90.00 $

387 | Скидка 10.00 % 388 | 389 | 390 | Catalog Icon 392 | 393 |
394 |
395 |
396 |
397 | 398 |
399 |
400 | ... 401 |
402 | 403 |

Стул офисный

404 |
405 |

Описание товара, про то какой он классный, но это стул, что тут сказать...

406 |

id: 02265

407 |
408 |

100 $

409 |

90.00 $

410 | Скидка 10.00 % 411 | 412 | 413 | Catalog Icon 415 | 416 |
417 |
418 |
419 |
420 | 421 |
422 |
423 | ... 424 |
425 | 426 |

Растение

427 |
428 |

Растение для украшения вашего интерьера подарит свежесть и безмятежность обстановке.

429 |

id: 02265

430 |
431 |

100 $

432 |

90.00 $

433 | Скидка 10.00 % 434 | 435 | 436 | Catalog Icon 438 | 439 |
440 |
441 |
442 |
443 | 444 |
445 |
446 | ... 447 |
448 | 449 |

Цветок стилизированный

450 |
451 |

Дизайнерский цветок (возможно искусственный) для украшения интерьера.

452 |

id: 02265

453 |
454 |

100 $

455 |

90.00 $

456 | Скидка 10.00 % 457 | 458 | 459 | Catalog Icon 461 | 462 |
463 |
464 |
465 |
466 | 467 |
468 |
469 | ... 470 |
471 | 472 |

Прикроватный столик

473 |
474 |

Столик, довольно странный на вид, но подходит для размещения рядом с кроватью.

475 |

id: 02265

476 |
477 |

100 $

478 |

90.00 $

479 | Скидка 10.00 % 480 | 481 | 482 | Catalog Icon 484 | 485 |
486 |
487 |
488 |
489 | 490 |
491 | 492 | 507 |
508 |
509 |
510 |
511 | 516 | 517 | 518 | 519 | 520 | 521 | 522 | --------------------------------------------------------------------------------