You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
157 lines
8.3 KiB
HTML
157 lines
8.3 KiB
HTML
{% extends "add-edit-main.html" %}
|
|
{%load static%}
|
|
{% block content %}
|
|
|
|
|
|
<div class="w-full px-5 s:px-9 mb-5">
|
|
<div class="w-full h-full shadow-md rounded-md py-5 px-3 bg-white">
|
|
<div class="flex justify-center items-center gap-4">
|
|
<h1 class="text-3xl text-secondosiblue text-center font-semibold">
|
|
Add Staff
|
|
</h1>
|
|
</div>
|
|
|
|
<form method="POST" action="{% url 'adduser' %}" enctype="multipart/form-data">
|
|
{% csrf_token %}
|
|
<div class="w-full flex flex-col gap-5 justify-center items-center mt-5">
|
|
<div class="w-[70px] s:w-[100px] h-[70px] s:h-[100px] rounded-full border border-gray-200"
|
|
id="image-container">
|
|
<img src="{% static 'images/default-user.png' %}" alt="" srcset="" id=""
|
|
class="rounded-full w-full h-full">
|
|
</div>
|
|
|
|
<div class="w-full">
|
|
<label class="text-gray-500">Profile Picture:</label>
|
|
<div class="inbox-box border border-gray-300 py-1 px-3 w-full rounded-md mt-1">
|
|
<div class="flex items-center justify-between">
|
|
<input name="image" type="file" id="actual-btn" accept="image/*" hidden />
|
|
<span id="file-name" class="text-gray-500 text-base focus:outline-none outline-none">Upload
|
|
Picture</span>
|
|
<label for="actual-btn"
|
|
class="bg-transparent text-gray-500 border border-white px-4 py-2 h-14 cursor-pointer flex items-center"><i
|
|
class="fa fa-upload" style="font-size: 20px;"></i></label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="w-full">
|
|
<label class="text-gray-500">First Name:</label>
|
|
<input name="first_name" type="text"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1" required>
|
|
</div>
|
|
|
|
<div class="w-full">
|
|
<label class="text-gray-500">Last Name:</label>
|
|
<input name="last_name" type="text"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1" required>
|
|
</div>
|
|
|
|
<div class="w-full">
|
|
<label class="text-gray-500">Email:</label>
|
|
<input name="email" type="email"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1" required>
|
|
</div>
|
|
|
|
<div class="w-full">
|
|
<label class="text-gray-500">Mobile Number:</label>
|
|
<input name="mobile_number" type="number"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1" required>
|
|
</div>
|
|
|
|
|
|
<div class="w-full">
|
|
<div
|
|
class=" bg-gray-200 rounded-t-md flex justify-between items-center text-white text-xl font-bold h-[50px]">
|
|
<div class="px-3">
|
|
<p class="text-secondosiblue uppercase font-bold">Positions</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="w-full flex flex-col gap-3 mt-3" id="positionsContainer">
|
|
<div class="w-full bg-gray-50 border border-gray-100 rounded-md flex items-center gap-3 p-3 initialPositionContainer">
|
|
<div class="w-full grid grid-cols-1 md:grid-cols-3 gap-3">
|
|
<div>
|
|
<label class="text-gray-500">Position:</label>
|
|
<select name="position[]"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1">
|
|
<option disabled selected>Select Position</option>
|
|
{% for position in jobpositions %}
|
|
<option value="{{position.id}}">{{position.name}}</option>
|
|
{% endfor %}
|
|
</select>
|
|
</div>
|
|
|
|
<div>
|
|
<label class="text-gray-500">Start Date:</label>
|
|
<input name="start_date[]" type="date"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1">
|
|
</div>
|
|
|
|
<div>
|
|
<label class="text-gray-500">End Date:</label>
|
|
<input name="end_date[]" type="date"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1">
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div
|
|
class="w-[30px] h-[30px] rounded-full bg-secondosiblue border border-secondosiblue flex justify-center items-center gap-1 text-white cursor-pointer hover:bg-transparent hover:text-secondosiblue duration-300 hidden removePositionOption">
|
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"
|
|
stroke-width="1.5" stroke="currentColor" class="w-5">
|
|
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18 18 6M6 6l12 12" />
|
|
</svg>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="w-full bg-gray-50 shadow-md rounded-md p-3 flex justify-start items-center gap-1 cursor-pointer mt-3" id="addNewPosition">
|
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5"
|
|
stroke="currentColor" class="w-7 text-secondosiblue">
|
|
<path stroke-linecap="round" stroke-linejoin="round"
|
|
d="M12 9v6m3-3H9m12 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" />
|
|
</svg>
|
|
<p class="text-secondosiblue hover:underline duration-300">Add New Position</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="w-full flex justify-start items-center gap-2">
|
|
<input name="active" type="checkbox">
|
|
<p class="text-gray-500">Active</p>
|
|
</div>
|
|
|
|
<div class="w-full flex justify-start items-center gap-2">
|
|
<input name="intern" type="checkbox">
|
|
<p class="text-gray-500">Intern</p>
|
|
</div>
|
|
|
|
|
|
<div class="w-full">
|
|
<label class="text-gray-500">Password:</label>
|
|
<input name="password1" type="password"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1" required>
|
|
</div>
|
|
|
|
<div class="w-full">
|
|
<label class="text-gray-500">Password Confirmation:</label>
|
|
<input name="password2" type="password"
|
|
class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1" required>
|
|
</div>
|
|
|
|
<div class="w-full flex justify-center items-center mt-3">
|
|
<button type="submit"
|
|
class="w-fit py-1 px-3 bg-osiblue rounded-md outline-none text-white border border-osiblue text-xl cursor-pointer hover:bg-white hover:text-osiblue duration-300">Save</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
<!-------------- JS SCRIPTS --------------->
|
|
<script type="text/javascript" src='{% static "js/inputs/upload-image-tag.js" %}'></script>
|
|
|
|
|
|
<script type="text/javascript" src='{% static "js/inputs/staff-positions.js" %}'></script>
|
|
|
|
{% endblock content %} |