mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
terminando servicios manipulados y preimpresion
This commit is contained in:
@ -1,134 +0,0 @@
|
||||
/**
|
||||
* App Invoice - Edit
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
(function () {
|
||||
const invoiceItemPriceList = document.querySelectorAll('.invoice-item-price'),
|
||||
invoiceItemQtyList = document.querySelectorAll('.invoice-item-qty'),
|
||||
date = new Date(),
|
||||
invoiceDate = document.querySelector('.invoice-date'),
|
||||
dueDate = document.querySelector('.due-date');
|
||||
|
||||
// Price
|
||||
if (invoiceItemPriceList) {
|
||||
invoiceItemPriceList.forEach(function (invoiceItemPrice) {
|
||||
new Cleave(invoiceItemPrice, {
|
||||
delimiter: '',
|
||||
numeral: true
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Qty
|
||||
if (invoiceItemQtyList) {
|
||||
invoiceItemQtyList.forEach(function (invoiceItemQty) {
|
||||
new Cleave(invoiceItemQty, {
|
||||
delimiter: '',
|
||||
numeral: true
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Datepicker
|
||||
if (invoiceDate) {
|
||||
invoiceDate.flatpickr({
|
||||
monthSelectorType: 'static',
|
||||
defaultDate: date
|
||||
});
|
||||
}
|
||||
if (dueDate) {
|
||||
dueDate.flatpickr({
|
||||
monthSelectorType: 'static',
|
||||
defaultDate: new Date(date.getFullYear(), date.getMonth(), date.getDate() + 5)
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
// repeater (jquery)
|
||||
$(function () {
|
||||
var applyChangesBtn = $('.btn-apply-changes'),
|
||||
discount,
|
||||
tax1,
|
||||
tax2,
|
||||
discountInput,
|
||||
taxInput1,
|
||||
taxInput2,
|
||||
sourceItem = $('.source-item'),
|
||||
adminDetails = {
|
||||
'App Design': 'Designed UI kit & app pages.',
|
||||
'App Customization': 'Customization & Bug Fixes.',
|
||||
'ABC Template': 'Bootstrap 4 admin template.',
|
||||
'App Development': 'Native App Development.'
|
||||
};
|
||||
|
||||
// Prevent dropdown from closing on tax change
|
||||
$(document).on('click', '.tax-select', function (e) {
|
||||
e.stopPropagation();
|
||||
});
|
||||
|
||||
// On tax change update it's value value
|
||||
function updateValue(listener, el) {
|
||||
listener.closest('.repeater-wrapper').find(el).text(listener.val());
|
||||
}
|
||||
|
||||
// Apply item changes btn
|
||||
if (applyChangesBtn.length) {
|
||||
$(document).on('click', '.btn-apply-changes', function (e) {
|
||||
var $this = $(this);
|
||||
taxInput1 = $this.closest('.dropdown-menu').find('#taxInput1');
|
||||
taxInput2 = $this.closest('.dropdown-menu').find('#taxInput2');
|
||||
discountInput = $this.closest('.dropdown-menu').find('#discountInput');
|
||||
tax1 = $this.closest('.repeater-wrapper').find('.tax-1');
|
||||
tax2 = $this.closest('.repeater-wrapper').find('.tax-2');
|
||||
discount = $('.discount');
|
||||
|
||||
if (taxInput1.val() !== null) {
|
||||
updateValue(taxInput1, tax1);
|
||||
}
|
||||
|
||||
if (taxInput2.val() !== null) {
|
||||
updateValue(taxInput2, tax2);
|
||||
}
|
||||
|
||||
if (discountInput.val().length) {
|
||||
$this
|
||||
.closest('.repeater-wrapper')
|
||||
.find(discount)
|
||||
.text(discountInput.val() + '%');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Repeater init
|
||||
if (sourceItem.length) {
|
||||
sourceItem.on('submit', function (e) {
|
||||
e.preventDefault();
|
||||
});
|
||||
sourceItem.repeater({
|
||||
show: function () {
|
||||
$(this).slideDown();
|
||||
// Initialize tooltip on load of each item
|
||||
const tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
|
||||
tooltipTriggerList.map(function (tooltipTriggerEl) {
|
||||
return new bootstrap.Tooltip(tooltipTriggerEl);
|
||||
});
|
||||
},
|
||||
hide: function (e) {
|
||||
$(this).slideUp();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Item details select onchange
|
||||
$(document).on('change', '.item-details', function () {
|
||||
var $this = $(this),
|
||||
value = adminDetails[$this.val()];
|
||||
if ($this.next('textarea').length) {
|
||||
$this.next('textarea').val(value);
|
||||
} else {
|
||||
$this.after('<textarea class="form-control" rows="2">' + value + '</textarea>');
|
||||
}
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user