initial
This commit is contained in:
@@ -0,0 +1,165 @@
|
||||
{% extends 'dashboard/base.html' %}
|
||||
{% load static %}
|
||||
{% load customtag %}
|
||||
{% block title %}{{ title }} - {{ seo_settings.meta_title }}{% endblock title %}
|
||||
{% block content %}
|
||||
<style>
|
||||
|
||||
/* Media query for mobile devices */
|
||||
@media (max-width: 768px) {
|
||||
#cke_id_description {
|
||||
width: 309px !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Media query for desktop devices */
|
||||
@media (min-width: 769px) {
|
||||
#cke_id_description {
|
||||
width: 980px !important;
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
/* CSS to style the password input container */
|
||||
.password-input {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/* CSS to position the "Show" and "Hide" text on the right side */
|
||||
.toggle-password {
|
||||
position: absolute;
|
||||
top: 74px;
|
||||
right: 38px;
|
||||
transform: translateY(-50%);
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
<div class="page-body">
|
||||
<div class="container-fluid">
|
||||
<div class="page-title">
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<h3>{{ title }}</h3>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item">
|
||||
<a href="{% url 'adminHome' %}">
|
||||
<svg class="stroke-icon">
|
||||
<use href="{% static 'admin/assets/svg/icon-sprite.svg' %}#stroke-home"></use>
|
||||
</svg>
|
||||
</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item">Users</li>
|
||||
<li class="breadcrumb-item active">Create User</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Container-fluid starts-->
|
||||
<div class="container-fluid">
|
||||
<div class="row project-cards">
|
||||
<div class="col-md-12 project-list">
|
||||
</div>
|
||||
<div class="container">
|
||||
<form method="POST" enctype="multipart/form-data">
|
||||
{% csrf_token %}
|
||||
{{form.media}}
|
||||
{% if form.errors %}
|
||||
<div class="alert alert-danger">
|
||||
<strong>Error:</strong>
|
||||
<ul>
|
||||
{% for field, errors in form.errors.items %}
|
||||
{% for error in errors %}
|
||||
<li>{{ field }}: {{ error }}</li>
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.name.id_for_label }}" class="form-label">Name <span class="text-danger">*</span></label>
|
||||
{{ form.name|add_class:'form-control' }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.email.id_for_label }}" class="form-label">Email <span class="text-danger">*</span></label>
|
||||
{{ form.email|add_class:'form-control' }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.username.id_for_label }}" class="form-label">Username <span class="text-danger">*</span></label>
|
||||
{{ form.username|add_class:'form-control' }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.role.id_for_label }}" class="form-label">Role <span class="text-danger">*</span></label>
|
||||
{{ form.role|add_class:'form-select' }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.password1.id_for_label }}" class="form-label">Password <span class="text-danger">*</span></label>
|
||||
<input type="password" id="{{ form.password1.id_for_label }}" class="form-control" name="password1" />
|
||||
<span class="toggle-password" onclick="togglePasswordVisibility('{{ form.password1.id_for_label }}')"><i class="fa fa-eye"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.password2.id_for_label }}" class="form-label">Confirm Password <span class="text-danger">*</span></label>
|
||||
<input type="password" id="{{ form.password2.id_for_label }}" class="form-control" name="password2" />
|
||||
<span class="toggle-password" onclick="togglePasswordVisibility('{{ form.password2.id_for_label }}')"><i class="fa fa-eye"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
// JavaScript to toggle password visibility
|
||||
function togglePasswordVisibility(inputId) {
|
||||
var input = document.getElementById(inputId);
|
||||
var toggle = document.querySelector('[id="' + inputId + '"] + .toggle-password');
|
||||
|
||||
if (input.type === 'password') {
|
||||
input.type = 'text';
|
||||
toggle.innerHTML = '<i class="fa fa-eye-slash"></i>';
|
||||
} else {
|
||||
input.type = 'password';
|
||||
toggle.innerHTML = '<i class="fa fa-eye"></i>';
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- Add more form fields as needed -->
|
||||
|
||||
<button class="btn btn-primary mb-5" type="submit">Save</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Container-fluid Ends-->
|
||||
{% endblock %}
|
||||
@@ -0,0 +1,218 @@
|
||||
{% extends 'dashboard/base.html' %}
|
||||
{% load static %}
|
||||
{% load customtag %}
|
||||
{% block title %}{{ title }} - {{ seo_settings.meta_title }}{% endblock title %}
|
||||
{% block content %}
|
||||
<style>
|
||||
|
||||
/* Media query for mobile devices */
|
||||
@media (max-width: 768px) {
|
||||
#cke_id_description {
|
||||
width: 309px !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Media query for desktop devices */
|
||||
@media (min-width: 769px) {
|
||||
#cke_id_description {
|
||||
width: 980px !important;
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<div class="page-body">
|
||||
<div class="container-fluid">
|
||||
<div class="page-title">
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<h3>{{ title }}</h3>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item">
|
||||
<a href="{% url 'adminHome' %}">
|
||||
<svg class="stroke-icon">
|
||||
<use href="{% static 'admin/assets/svg/icon-sprite.svg' %}#stroke-home"></use>
|
||||
</svg>
|
||||
</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item">Users</li>
|
||||
<li class="breadcrumb-item active">Edit Profile</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Container-fluid starts-->
|
||||
<div class="container-fluid">
|
||||
<div class="row project-cards">
|
||||
<div class="col-md-12 project-list">
|
||||
</div>
|
||||
<div class="container">
|
||||
<form method="POST" enctype="multipart/form-data">
|
||||
{% csrf_token %}
|
||||
{{form.media}}
|
||||
{% if messages %}
|
||||
{% for message in messages %}
|
||||
<div class="alert alert-{{ message.tags }} alert-dismissible fade show" role="alert">
|
||||
{{ message }}
|
||||
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% if form.errors %}
|
||||
<div class="alert alert-danger">
|
||||
<strong>Error:</strong>
|
||||
<ul>
|
||||
{% for field, errors in form.errors.items %}
|
||||
{% for error in errors %}
|
||||
<li>{{ field }}: {{ error }}</li>
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.profile_picture.id_for_label }}" class="form-label">Profile Picture <span class="text-danger">*</span></label>
|
||||
{% if profile.profile_picture %}
|
||||
<br>
|
||||
<img class="currentImg" style="border-radius:10px; width:100px;" src="{{ profile.profile_picture.url }}" alt="Current Image">
|
||||
<br>
|
||||
{% endif %}
|
||||
{{ form.profile_picture }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.name.id_for_label }}" class="form-label">Name <span class="text-danger">*</span></label>
|
||||
{{ form.name }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.email.id_for_label }}" class="form-label">Email <span class="text-danger">*</span></label>
|
||||
{{ form.email}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.phone.id_for_label }}" class="form-label">Phone <span class="text-danger">*</span></label>
|
||||
{{ form.phone}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.role.id_for_label }}" class="form-label">Role <span class="text-danger">*</span></label>
|
||||
{{ form.role|add_class:'form-select' }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.slug.id_for_label }}" class="form-label">Profile Slug <span class="text-danger">*</span></label>
|
||||
{{ form.slug }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.address.id_for_label }}" class="form-label">Address <span class="text-danger">*</span></label>
|
||||
{{ form.address }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.city.id_for_label }}" class="form-label">City <span class="text-danger">*</span></label>
|
||||
{{ form.city }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.state.id_for_label }}" class="form-label">State <span class="text-danger">*</span></label>
|
||||
{{ form.state }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.zipcode.id_for_label }}" class="form-label">Zipcode <span class="text-danger">*</span></label>
|
||||
{{ form.zipcode }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.country.id_for_label }}" class="form-label">Country <span class="text-danger">*</span></label>
|
||||
{{ form.country }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.facebook.id_for_label }}" class="form-label">Facebook <span class="text-danger">*</span></label>
|
||||
{{ form.facebook }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.instagram.id_for_label }}" class="form-label">Instagram <span class="text-danger">*</span></label>
|
||||
{{ form.instagram }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.linkedin.id_for_label }}" class="form-label">Linkedin <span class="text-danger">*</span></label>
|
||||
{{ form.linkedin }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Add more form fields as needed -->
|
||||
|
||||
<button class="btn btn-primary mb-5" type="submit">Save</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Container-fluid Ends-->
|
||||
{% endblock %}
|
||||
@@ -0,0 +1,162 @@
|
||||
{% extends 'dashboard/base.html' %}
|
||||
{% load static %}
|
||||
{% load customtag %}
|
||||
{% block title %}{{ title }} - {{ seo_settings.meta_title }}{% endblock title %}
|
||||
{% block content %}
|
||||
<style>
|
||||
|
||||
/* Media query for mobile devices */
|
||||
@media (max-width: 768px) {
|
||||
#cke_id_description {
|
||||
width: 309px !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Media query for desktop devices */
|
||||
@media (min-width: 769px) {
|
||||
#cke_id_description {
|
||||
width: 980px !important;
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
.password-input {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/* CSS to position the "Show" and "Hide" text inside the field */
|
||||
.toggle-password {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 10px; /* Adjust this value to control the right-side position */
|
||||
transform: translateY(-50%);
|
||||
cursor: pointer;
|
||||
padding: 2px 5px;
|
||||
}
|
||||
</style>
|
||||
<div class="page-body">
|
||||
<div class="container-fluid">
|
||||
<div class="page-title">
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<h3>{{ title }} of {{profile.name}}</h3>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item">
|
||||
<a href="{% url 'adminHome' %}">
|
||||
<svg class="stroke-icon">
|
||||
<use href="{% static 'admin/assets/svg/icon-sprite.svg' %}#stroke-home"></use>
|
||||
</svg>
|
||||
</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item">User</li>
|
||||
<li class="breadcrumb-item">{{ profile.user }}</li>
|
||||
<li class="breadcrumb-item active">Change Password</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Container-fluid starts-->
|
||||
<div class="container-fluid">
|
||||
<div class="row project-cards">
|
||||
<div class="col-md-12 project-list">
|
||||
</div>
|
||||
<div class="container">
|
||||
<form method="POST" action="" enctype="multipart/form-data">
|
||||
{% csrf_token %}
|
||||
{% if messages %}
|
||||
{% for message in messages %}
|
||||
<div class="alert alert-{{ message.tags }} alert-dismissible fade show" role="alert">
|
||||
{{ message }}
|
||||
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% if form.errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
{% for field in form %}
|
||||
{% if field.errors %}
|
||||
<li>{{ field.label }}: {{ field.errors }}</li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="row mb-2">
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="" class="form-label">Username ( Read Only )</label>
|
||||
<input type="text" value={{ profile.user }} id="" readonly class="form-control" name="username" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-2">
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.old_password.id_for_label }}" class="form-label">Old Password <span class="text-danger">*</span></label>
|
||||
<div class="password-input">
|
||||
<input type="password" id="{{ form.old_password.id_for_label }}" class="form-control" name="old_password" />
|
||||
<span class="toggle-password" onclick="togglePasswordVisibility('{{ form.old_password.id_for_label }}')"><i class="fa fa-eye"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-1">
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.new_password1.id_for_label }}" class="form-label">New Password <span class="text-danger">*</span></label>
|
||||
<div class="password-input">
|
||||
<input type="password" id="{{ form.new_password1.id_for_label }}" class="form-control" name="new_password1" />
|
||||
<span class="toggle-password" onclick="togglePasswordVisibility('{{ form.new_password1.id_for_label }}')"><i class="fa fa-eye"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<label for="{{ form.new_password2.id_for_label }}" class="form-label">Confirm Password <span class="text-danger">*</span></label>
|
||||
<div class="password-input">
|
||||
<input type="password" id="{{ form.new_password2.id_for_label }}" class="form-control" name="new_password2" />
|
||||
<span class="toggle-password" onclick="togglePasswordVisibility('{{ form.new_password2.id_for_label }}')"><i class="fa fa-eye"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Add more form fields as needed -->
|
||||
|
||||
<button class="btn btn-primary mb-5" type="submit">Save</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
// JavaScript to toggle password visibility
|
||||
function togglePasswordVisibility(inputId) {
|
||||
var input = document.getElementById(inputId);
|
||||
var toggle = document.querySelector('[id="' + inputId + '"] + .toggle-password');
|
||||
|
||||
if (input.type === 'password') {
|
||||
input.type = 'text';
|
||||
toggle.innerHTML = '<i class="fa fa-eye-slash"></i>';
|
||||
} else {
|
||||
input.type = 'password';
|
||||
toggle.innerHTML = '<i class="fa fa-eye"></i>';
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
<!-- Container-fluid Ends-->
|
||||
{% endblock %}
|
||||
@@ -0,0 +1,127 @@
|
||||
{% extends 'dashboard/base.html' %}
|
||||
{% load static %}
|
||||
{% block title %}{{ title }} - {{ seo_settings.meta_title }}{% endblock title %}
|
||||
{% block content %}
|
||||
<style>
|
||||
i.fa.fa-key {
|
||||
color: darkgoldenrod;
|
||||
}
|
||||
</style>
|
||||
<div class="page-body">
|
||||
<div class="container-fluid">
|
||||
<div class="page-title">
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<h3>Users</h3>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="{% url 'adminHome' %}">
|
||||
<svg class="stroke-icon">
|
||||
<use href="{% static 'admin/assets/svg/icon-sprite.svg' %}#stroke-home"></use>
|
||||
</svg></a></li>
|
||||
<li class="breadcrumb-item">Users</li>
|
||||
<li class="breadcrumb-item active">User List</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Container-fluid starts-->
|
||||
<div class="container-fluid">
|
||||
<div class="col-md-12 project-list">
|
||||
<div class="card">
|
||||
<div class="row">
|
||||
<div class="col-md-6 p-0 d-flex">
|
||||
<ul class="nav nav-tabs border-tab" id="top-tab" role="tablist">
|
||||
<li class="nav-item"><a class="nav-link active" id="top-home-tab" data-bs-toggle="tab" href="#top-home" role="tab" aria-controls="top-home" aria-selected="true"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-target"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="6"></circle><circle cx="12" cy="12" r="2"></circle></svg>All Users</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-md-6 p-0">
|
||||
<div class="form-group mb-0 me-0"></div><a class="btn btn-primary" href="{% url 'createUser' %}"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-plus-square"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line></svg>Create New User</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<!-- Zero Configuration Starts-->
|
||||
<div class="col-sm-12">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="display" id="basic-1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Image</th>
|
||||
<th>Name</th>
|
||||
<th>Role</th>
|
||||
<th>Email</th>
|
||||
<th>Phone</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for user in users %}
|
||||
<tr>
|
||||
<td>{{ forloop.counter }}</td>
|
||||
<td><img src="{{ user.getUserImage }}" style="border-radius:10px;" width="50" alt="userProfilePicture"></td>
|
||||
<td><a href="{% url 'editUserProfile' user.id %}">{{ user.name }}</a></td>
|
||||
<td>{{ user.user.role }}</td>
|
||||
{% if user.email %}
|
||||
<td>{{ user.email }}</td>
|
||||
{% else %}
|
||||
<td>Not added</td>
|
||||
{% endif %}
|
||||
{% if user.phone %}
|
||||
<td>{{ user.phone }}</td>
|
||||
{% else %}
|
||||
<td>Not added</td>
|
||||
{% endif %}
|
||||
<td>
|
||||
<ul class="action">
|
||||
<li class="edit"> <a href="{% url 'editUserProfile' user.id %}"><i class="icon-pencil-alt"></i></a></li>
|
||||
<li class="password"> <a href="{% url 'changePassword' user.id %}"><i class="fa fa-key"></i></a></li>
|
||||
<li class="delete"><a href="#" data-slug="{{ user.id }}"><i class="icon-trash"></i></a></li>
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', (event) => {
|
||||
var deleteButtons = document.querySelectorAll('.icon-trash');
|
||||
|
||||
deleteButtons.forEach(function(button) {
|
||||
button.addEventListener('click', function (event) {
|
||||
event.preventDefault();
|
||||
|
||||
var url = "{% url 'deleteUser' user.id %}";
|
||||
|
||||
Swal.fire({
|
||||
title: 'Are you sure?',
|
||||
text: "You won't be able to revert this!",
|
||||
icon: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: 'Yes, delete it!'
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
window.location.href = url;
|
||||
}
|
||||
})
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Zero Configuration Ends-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user