{% extends "base.html" %} {% block content %}
{% if title %}

{{ title }}

{% else %}

User Form

{% endif %} ← Back to Contacts
{{ form.hidden_tag() }}
{% if user and user.profile_picture %} {% endif %}
{{ form.first_name.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.first_name(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500") }} {% if form.first_name.errors %} {% for error in form.first_name.errors %}

{{ error }}

{% endfor %} {% endif %}
{{ form.last_name.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.last_name(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500") }} {% if form.last_name.errors %} {% for error in form.last_name.errors %}

{{ error }}

{% endfor %} {% endif %}
{{ form.email.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.email(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500") }} {% if form.email.errors %} {% for error in form.email.errors %}

{{ error }}

{% endfor %} {% endif %}
{% if current_user.is_admin %}
{{ form.new_password.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.new_password(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 pr-10", autocomplete="new-password", id="new_password") }}
{{ form.confirm_password.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.confirm_password(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 pr-10", autocomplete="new-password", id="confirm_password") }} {% if form.confirm_password.errors %} {% for error in form.confirm_password.errors %}

{{ error }}

{% endfor %} {% endif %}
{% endif %}
{{ form.phone.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.phone(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500") }} {% if form.phone.errors %} {% for error in form.phone.errors %}

{{ error }}

{% endfor %} {% endif %}
{{ form.company.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.company(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500") }} {% if form.company.errors %} {% for error in form.company.errors %}

{{ error }}

{% endfor %} {% endif %}
{{ form.position.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.position(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500") }} {% if form.position.errors %} {% for error in form.position.errors %}

{{ error }}

{% endfor %} {% endif %}
{{ form.notes.label(class="block text-sm font-medium text-gray-700 mb-1") }} {{ form.notes(class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500", rows="4") }} {% if form.notes.errors %} {% for error in form.notes.errors %}

{{ error }}

{% endfor %} {% endif %}
{{ form.is_active(class="h-4 w-4 focus:ring-blue-500 border-gray-300 rounded", style="accent-color: #16767b;") }} {{ form.is_active.label(class="ml-2 block text-sm text-gray-900") }}
{% set is_last_admin = current_user.is_admin and total_admins <= 1 %} {{ form.is_admin( class="h-4 w-4 focus:ring-blue-500 border-gray-300 rounded", style="accent-color: #16767b;", disabled=is_last_admin and form.is_admin.data ) }} {{ form.is_admin.label(class="ml-2 block text-sm text-gray-900") }} {% if is_last_admin and form.is_admin.data %} {% endif %} {% if is_last_admin and form.is_admin.data %}
You are the only admin
{% endif %}
{% if form.is_admin.errors %}
{% for error in form.is_admin.errors %}

{{ error }}

{% endfor %}
{% endif %}
{{ form.submit(class="text-white px-6 py-2 rounded-lg transition duration-200", style="background-color: #16767b; border: 1px solid #16767b;", onmouseover="this.style.backgroundColor='#1a8a90'", onmouseout="this.style.backgroundColor='#16767b'") }}
{% endblock %}