Files
octopus/myproject/templates/navbar.html
Andrey Smakotin a1f5733fde Упрощена модель Shop и реализован полный CRUD для магазинов
- Упрощена модель Shop: только name обязательное поле
- Удалены поля: district, режим работы, координаты, инструкции
- Description перенесено после name
- Все поля кроме name теперь опциональные

- Создан полный CRUD для магазинов:
  * ShopListView - список магазинов с пагинацией
  * ShopCreateView - создание нового магазина
  * ShopUpdateView - редактирование магазина
  * ShopDeleteView - удаление с подтверждением

- Создана форма ShopForm с Bootstrap стилями
- Поле "Название магазина" помечено как обязательное (*)
- Настроена обработка PhoneNumberField

- Созданы шаблоны:
  * shop_list.html - таблица со списком магазинов
  * shop_form.html - форма создания/редактирования
  * shop_confirm_delete.html - подтверждение удаления

- Настроены URLs для приложения shops
- Добавлена ссылка "Магазины" в главную навигацию
- Обновлена админ-панель shops

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 00:10:34 +03:00

68 lines
3.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- navbar.html - Reusable navigation bar component -->
<nav class="navbar navbar-expand-lg navbar-light bg-light fixed-top">
<div class="container">
<!-- Toggler for mobile view -->
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav"
aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<!-- Navbar content -->
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav me-auto">
{% if user.is_authenticated %}
<!-- Main navigation links -->
<li class="nav-item">
<a class="nav-link" href="{% url 'products:all-products' %}">Товары</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'products:variantgroup-list' %}">Варианты</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'products:tag-list' %}">Теги</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'orders:order-list' %}">Заказы</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'customers:customer-list' %}">Клиенты</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'shops:shop_list' %}">Магазины</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Касса</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'inventory:inventory-home' %}">Склад</a>
</li>
{% endif %}
</ul>
<ul class="navbar-nav align-items-center">
{% if user.is_authenticated %}
<!-- Show profile button and logout button for authenticated users -->
<li class="nav-item">
<a class="btn btn-outline-primary me-2" href="{% url 'accounts:profile' %}">Профиль</a>
</li>
<li class="nav-item d-flex align-items-center mx-2">
<span class="navbar-text mb-0">
({{ user.name|default:user.email }})
</span>
</li>
<li class="nav-item">
<a class="btn btn-outline-secondary ms-2" href="{% url 'accounts:logout' %}">Выйти</a>
</li>
{% else %}
<!-- Show login and register buttons for non-authenticated users -->
<li class="nav-item">
<a class="btn btn-outline-primary me-2" href="{% url 'accounts:login' %}">Вход</a>
</li>
<li class="nav-item">
<a class="btn btn-outline-secondary" href="{% url 'accounts:register' %}">Регистрация</a>
</li>
{% endif %}
</ul>
</div>
</div>
</nav>