Start content
This commit is contained in:
		@@ -5,6 +5,7 @@
 | 
			
		||||
        <meta charset="utf-8">
 | 
			
		||||
        <meta name="viewport" content="width=device-width, initial-scale=1">
 | 
			
		||||
        <link href="{% static 'css/bootstrap.min.css' %}" rel="stylesheet">
 | 
			
		||||
        <link href="{% static 'css/icons/bootstrap-icons.css' %}" rel="stylesheet">
 | 
			
		||||
        <title>{{ base.title }}</title>
 | 
			
		||||
        {% block customhead %}
 | 
			
		||||
        {% endblock customhead %}
 | 
			
		||||
@@ -23,19 +24,25 @@
 | 
			
		||||
                        <li class="nav-item"><a href="{{ item.link }}" class="nav-link {{ item.active_class }}">{{ item }}</a></li>
 | 
			
		||||
                        {% endfor %}
 | 
			
		||||
                    </ul>
 | 
			
		||||
                    {% if base.navbar.has_user %}
 | 
			
		||||
                    <form action="" method="post" class="ms-auto">
 | 
			
		||||
                        {% csrf_token %}
 | 
			
		||||
                        <input type="search" name="qr_search" id="qr_search_field" aria-label="QR Scan" placeholder="QR Search" class="form-control me-2 text-success">
 | 
			
		||||
                    </form>
 | 
			
		||||
                    {% endif %}
 | 
			
		||||
                    <ul class="navbar-nav ms-auto">
 | 
			
		||||
                    {% if base.navbar.has_user %}
 | 
			
		||||
                        <li class="nav-item dropdown">
 | 
			
		||||
                            <a href="#" class="nav-link dropdown-toggle text-primary" id="navbar-user-dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">{{ base.navbar.username }}</a>
 | 
			
		||||
                            <ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbar-user-dropdown">
 | 
			
		||||
                                <li><a class="dropdown-item" href="#">Logout</a></li>
 | 
			
		||||
                                <li><a class="dropdown-item" href="{% url 'logout' %}">Logout</a></li>
 | 
			
		||||
                                {% if base.navbar.show_admin %}
 | 
			
		||||
                                <li><a class="dropdown-item text-warning" href="{% url 'admin:index' %}">Administration</a></li>
 | 
			
		||||
                                <li><a class="dropdown-item text-success" href="{% url 'admin:index' %}">Administration</a></li>
 | 
			
		||||
                                {% endif %}
 | 
			
		||||
                            </ul>
 | 
			
		||||
                        </li>
 | 
			
		||||
                    {% else %}
 | 
			
		||||
                        <li class="nav-item"><a href="#" class="nav-link">Login</a></li>
 | 
			
		||||
                        <li class="nav-item"><a href="{% url 'login' %}" class="nav-link{% if base.login_active %} active{% endif %}">Login</a></li>
 | 
			
		||||
                    {% endif %}
 | 
			
		||||
                    </ul>
 | 
			
		||||
                </div>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								shimatta_kenkyusho/templates/parts/components.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								shimatta_kenkyusho/templates/parts/components.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
{% extends 'base.html' %}
 | 
			
		||||
 | 
			
		||||
{% block content %}
 | 
			
		||||
<h1>Components</h1>
 | 
			
		||||
{% endblock content %}
 | 
			
		||||
							
								
								
									
										48
									
								
								shimatta_kenkyusho/templates/parts/login.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								shimatta_kenkyusho/templates/parts/login.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
			
		||||
{% extends 'base.html' %}
 | 
			
		||||
 | 
			
		||||
{% block content %}
 | 
			
		||||
<div class="container">
 | 
			
		||||
    <form action="" method="post">
 | 
			
		||||
        {% csrf_token %}
 | 
			
		||||
        <div class="row mb-3 justify-content-center">
 | 
			
		||||
         <div class="col-sm-5">
 | 
			
		||||
            <label for="{{form.username.id_for_label}}">Username</label>
 | 
			
		||||
            <div class="input-group has-validation">
 | 
			
		||||
                <span class="input-group-text" id="username_prepend">@</span>
 | 
			
		||||
                <input type="text" class="form-control{% if form.username.errors or form.non_field_errors %} is-invalid{% endif %}" id="{{form.username.id_for_label}}" name="{{form.username.name}}" aria-describedby="username_prepend validationServerUsernameFeedback" required>
 | 
			
		||||
                <div id="validationServerUsernameFeedback" class="invalid-feedback">
 | 
			
		||||
                    {% for msg in form.username.errors %}
 | 
			
		||||
                        {{msg}}
 | 
			
		||||
                    {% endfor %}
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="row mb-3 justify-content-center">
 | 
			
		||||
            <div class="col-sm-5">
 | 
			
		||||
                <label for="{{form.password.id_for_label}}">Password</label>
 | 
			
		||||
                <div class="input-group has-validation">
 | 
			
		||||
                    <input type="password" class="form-control{% if form.password.errors or form.non_field_errors %} is-invalid{% endif %}" name="{{form.password.name}}" id="{{form.password.id_for_label}}" aria-describedby="validationPassword"required>
 | 
			
		||||
                <div id="validationPassword" class="invalid-feedback">
 | 
			
		||||
                    {% for msg in form.password.errors %}
 | 
			
		||||
                    {{msg}}
 | 
			
		||||
                    {% endfor %}
 | 
			
		||||
                </div> 
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="row mb-3 justify-content-center">
 | 
			
		||||
            {% if form.non_field_errors %}
 | 
			
		||||
            {% for error in form.non_field_errors %}
 | 
			
		||||
            <p class="text-danger text-center">{{ error }}</p>
 | 
			
		||||
            {% endfor %}
 | 
			
		||||
            {% endif %}
 | 
			
		||||
        </div>
 | 
			
		||||
         <div class="row mb-3 justify-content-center">
 | 
			
		||||
            <div class="col-sm-5">
 | 
			
		||||
                <input class="btn btn-primary mb-3 px-4" type="submit" value="Login">
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
    </form>
 | 
			
		||||
</div>
 | 
			
		||||
{% endblock content %}
 | 
			
		||||
							
								
								
									
										19
									
								
								shimatta_kenkyusho/templates/parts/stocks-detail.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								shimatta_kenkyusho/templates/parts/stocks-detail.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
{% extends 'base.html' %}
 | 
			
		||||
{% load qr_code %}
 | 
			
		||||
{% block content %}
 | 
			
		||||
<div class="container">
 | 
			
		||||
<nav aria-label="breadcrumb" class="fs-4">
 | 
			
		||||
    <ol class="breadcrumb">
 | 
			
		||||
        <li class="breadcrumb-item"></li>
 | 
			
		||||
        {% for crumb in breadcrumbs %}
 | 
			
		||||
        <li class="breadcrumb-item"><a href="{% url 'parts-stocks-detail' uuid=crumb.id %}">{{crumb.name}}</a></li>
 | 
			
		||||
        {% endfor %}
 | 
			
		||||
        <li class="breadcrumb-item active" aria-current="page">{{object.name}}</li>
 | 
			
		||||
    </ol>
 | 
			
		||||
</nav>
 | 
			
		||||
 | 
			
		||||
<h1>Stocks in {{object.get_full_path }}</h1>
 | 
			
		||||
{% qr_from_text object.get_qr_code size="m" image_format="svg" %}
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
{% endblock content %}
 | 
			
		||||
							
								
								
									
										53
									
								
								shimatta_kenkyusho/templates/parts/stocks.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								shimatta_kenkyusho/templates/parts/stocks.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,53 @@
 | 
			
		||||
{% extends 'base.html' %}
 | 
			
		||||
 | 
			
		||||
{% block content %}
 | 
			
		||||
<div class="container">
 | 
			
		||||
    
 | 
			
		||||
    <div class="row">
 | 
			
		||||
        <div class="col-md">
 | 
			
		||||
            <h1>Low Stocks</h1>
 | 
			
		||||
            <div class="list-group">
 | 
			
		||||
            {% for low in low_stocks %}
 | 
			
		||||
                <a href="{% url 'parts-stocks-detail' uuid=low.storage.id %}" class="text-decoration-none">
 | 
			
		||||
                <li class="list-group-item list-group-item-action d-flex justify-content-between align-items-center">
 | 
			
		||||
                        <div class="flex-shrink-0">
 | 
			
		||||
                            {% if low.component.get_resolved_image %}
 | 
			
		||||
                                <img src="{{low.component.get_resolved_image}}" style="max-width:64px;max-height:64px;" alt="{{ low.component.name }}" class="mr-3">
 | 
			
		||||
                            {% else %}
 | 
			
		||||
                                {% load static %}
 | 
			
		||||
                                <img src="{% static 'css/icons/card-image.svg' %}" style="width:64px;max-height:64px;" alt="{{ low.component.name }}" class="mr-3">
 | 
			
		||||
                            {% endif %}
 | 
			
		||||
                        </div>
 | 
			
		||||
                        <div class="flex-grow-1 ms-3">
 | 
			
		||||
                            <h5 class="mt-0">{{ low.component.name }} in {{ low.component.package }}</h5>
 | 
			
		||||
                            {{ low.storage }}   
 | 
			
		||||
                        </div>
 | 
			
		||||
                        
 | 
			
		||||
                        {% if low.storage.responsible.username == view.request.user.username %}
 | 
			
		||||
                        <span class="badge bg-danger rounded-pill">{{low.amount}} / {{low.watermark}}</span>
 | 
			
		||||
                        {% else %}
 | 
			
		||||
                         <span class="badge bg-primary rounded-pill">{{low.amount}} / {{low.watermark}}</span>
 | 
			
		||||
                        {% endif %}
 | 
			
		||||
                </li></a>
 | 
			
		||||
            {% endfor %}
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="col-md">
 | 
			
		||||
           <h1>Storages</h1>
 | 
			
		||||
           <div class="list-group">
 | 
			
		||||
           {% for storage in storages %}
 | 
			
		||||
                <a href="{% url 'parts-stocks-detail' uuid=storage.id %}" class="text-decoration-none">
 | 
			
		||||
                    <li class="list-group-item list-group-item-action justify-content-between align-items-center d-flex">
 | 
			
		||||
                        <div> 
 | 
			
		||||
                        <h5>{{storage.name}}</h5>
 | 
			
		||||
                        Responsible: {{ storage.responsible }}
 | 
			
		||||
                        </div>
 | 
			
		||||
                        <span class="badge bg-primary rounded-pill">{{storage.get_total_stock_amount}}</span>
 | 
			
		||||
                    </li>
 | 
			
		||||
                </a>
 | 
			
		||||
           {% endfor %}
 | 
			
		||||
           </div>
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
</div>
 | 
			
		||||
{% endblock content %}
 | 
			
		||||
		Reference in New Issue
	
	Block a user