152 lines
6.2 KiB
JavaScript
152 lines
6.2 KiB
JavaScript
// **------ tab js**
|
|
$(document).on('click', '.tab-link', function () {
|
|
const tabID = $(this).attr('data-tab');
|
|
|
|
$(this).addClass('active').siblings().removeClass('active');
|
|
|
|
$('#tab-' + tabID).addClass('active').siblings().removeClass('active');
|
|
});
|
|
|
|
|
|
"use strict";
|
|
|
|
$(function () {
|
|
const tooltipInit = {
|
|
init: function () {
|
|
$("a").tooltip();
|
|
}
|
|
};
|
|
|
|
tooltipInit.init();
|
|
});
|
|
|
|
|
|
// Add New Card Js
|
|
function projectCardContent() {
|
|
const files = document.querySelector(".file_upload").files;
|
|
return `
|
|
<div class="col-md-6 col-xl-4 project-card">
|
|
<div class="card hover-effect">
|
|
<div class="card-header">
|
|
<div class="d-flex align-items-center">
|
|
<div>
|
|
<img src=${files.length > 0 ? URL.createObjectURL(files[0]) : "" } alt="image" class="h-40 w-40 d-flex-center b-r-50 overflow-hidden" id="preview">
|
|
</div>
|
|
<a href="project_details.html" target="_blank" class="flex-grow-1 ps-2">
|
|
<h6 class="m-0 f-w-600">${$('#pName').val()}</h6>
|
|
<div class="text-muted f-s-14">Admin</div>
|
|
</a>
|
|
<div class="dropdown">
|
|
<button class="bg-none border-0" type="button" data-bs-toggle="dropdown" aria-expanded="false">
|
|
<i class="ti ti-dots-vertical text-dark"></i>
|
|
</button>
|
|
<ul class="dropdown-menu dropdown-menu-end">
|
|
<li>
|
|
<a class="dropdown-item" href="#">
|
|
<i class="ti ti-edit text-success"></i> Edit
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a class="dropdown-item delete-button" href="#">
|
|
<i class="ti ti-trash text-danger"></i> Delete
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="d-flex">
|
|
<div>
|
|
<h6 class="text-dark f-s-14">Start Date : <span class="text-success">${$('#startDate').val()}</span></h6>
|
|
<h6 class="text-dark f-s-14">End Date : <span class="text-danger">${$('#endDate').val()}</span></h6>
|
|
</div>
|
|
<div class="flex-grow-1 text-end">
|
|
<p class="f-w-500 text-secondary">Pricing </p>
|
|
<h6 class="f-w-600">${$('#pricing').val()}</h6>
|
|
</div>
|
|
</div>
|
|
<p class="text-muted f-s-14 text-secondary">${$('#projectDescription').val()}</p>
|
|
<div class="text-end mb-2" >
|
|
<span class="badge text-light-primary">Progress</span>
|
|
</div>
|
|
<div class="progress w-100" role="progressbar" aria-valuenow="50" aria-valuemin="0" aria-valuemax="100">
|
|
<div class="progress-bar bg-primary" style="width: 50%"> 50% </div>
|
|
</div>
|
|
</div>
|
|
<div class="card-footer">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<span class="text-dark f-w-600" ><i class="ti ti-brand-wechat"></i> 20 Members</span>
|
|
</div>
|
|
<div class="col-6">
|
|
<ul class="avatar-group float-end breadcrumb-start">
|
|
<li class="h-30 w-30 d-flex-center b-r-50 text-bg-danger b-2-light position-relative"
|
|
data-bs-toggle="tooltip" data-bs-title="Sabrina Torres">
|
|
<img src="../assets/images/avatar/4.png" alt=""
|
|
class="img-fluid b-r-50 overflow-hidden">
|
|
</li>
|
|
<li class="h-30 w-30 d-flex-center b-r-50 text-bg-success b-2-light position-relative"
|
|
data-bs-toggle="tooltip" data-bs-title="Sabrina Torres">
|
|
<img src="../assets/images/avatar/1.png" alt=""
|
|
class="img-fluid b-r-50 overflow-hidden">
|
|
</li>
|
|
<li class="h-30 w-30 d-flex-center b-r-50 text-bg-warning b-2-light position-relative"
|
|
data-bs-toggle="tooltip" data-bs-title="Sabrina Torres">
|
|
<img src="../assets/images/avatar/2.png" alt=""
|
|
class="img-fluid b-r-50 overflow-hidden">
|
|
</li>
|
|
<li class="h-30 w-30 d-flex-center b-r-50 text-bg-info b-2-light position-relative"
|
|
data-bs-toggle="tooltip" data-bs-title="Sabrina Torres">
|
|
<img src="../assets/images/avatar/3.png" alt=""
|
|
class="img-fluid b-r-50 overflow-hidden">
|
|
</li>
|
|
<li class="text-bg-primary h-30 w-30 d-flex-center b-r-50" data-bs-toggle="tooltip"
|
|
data-bs-title="5 More">
|
|
5+
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`
|
|
}
|
|
|
|
function getActions() {
|
|
try {
|
|
document.querySelectorAll('.delete-button').forEach(function (btn) {
|
|
btn.addEventListener('click', function (event) {
|
|
const deletbtn = event.target.closest(".project-card");
|
|
// document.querySelector('#delet-tab-pane .row').appendChild(deletbtn.cloneNode(true));
|
|
deletbtn.closest(".project-card").remove();
|
|
});
|
|
});
|
|
} catch (e) {
|
|
console.error("Error in getActions: ", e);
|
|
}
|
|
}
|
|
|
|
function resetModalInputs() {
|
|
$('#pName').val('');
|
|
$('#startDate').val('');
|
|
$('#endDate').val('');
|
|
$('#pricing').val('');
|
|
$('#projectDescription').val('');
|
|
document.querySelector(".file_upload").value = '';
|
|
}
|
|
|
|
try {
|
|
document.querySelector('#addCard').onclick = function (event) {
|
|
const rowElement = document.querySelector("#tab-1 .row");
|
|
rowElement.insertAdjacentHTML('afterbegin', projectCardContent());
|
|
resetModalInputs();
|
|
$("#projectCard").modal("hide");
|
|
getActions();
|
|
}
|
|
} catch (e) {
|
|
console.error("Error in addCard: ", e);
|
|
}
|
|
getActions();
|