File: /var/www/html/hrms-production/resources/views/components/employee-probation-period-modal.blade.php
{{-- Clear / Revise Employee Probation Period --}}
<div class="modal fade" id="ProbationPeriodModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Employee Code <span id="EmployeeCode" class="text-info"></span></h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<!-- Main content -->
<form id="changeStatusProbationPeriodForm">
<input type="hidden" name="_token" id="token_probation_period" value="{{ csrf_token() }}">
<input type="hidden" id="ProbationPeriodId" name="ProbationPeriodId">
<div class="card-body">
<div class="row">
<div class="clearfix mb-4">
<div class="icheck-primary" id="ProbationPeriodClear_field">
<input type="radio" name="ProbationPeriodClear" id="ProbationPeriodClear" readonly>
<label class="mb-0" for="ProbationPeriodClear">Clear Probation Period</label>
</div>
<div class="icheck-primary" id="ProbationPeriodRevise_field">
<input type="radio" name="ProbationPeriodRevise" id="ProbationPeriodRevise"
readonly>
<label class="mb-0" for="ProbationPeriodRevise">Revise Probation Period</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="OrderNo">Order No. <span
class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" id="ProbationOrderNo"
name="ProbationOrderNo">
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="date">Order Date <span class="text-danger">*</span></label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="ProbationOrderDate" name="ProbationOrderDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#ProbationOrderDate" placeholder="DD/MM/YYYY" required />
<div class="input-group-append" data-target="#ProbationOrderDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="ProbationPeriodClearDate">Prob. Period Clear Date </label>
<input type="text" class="form-control form-control-sm"
id="ProbationPeriodClearDate" name="ProbationPeriodClearDate" readonly>
</div>
</div>
<div class="col-md-6" id="NextProbationClearDate_field">
<div class="form-group mb-2">
<label class="mb-0" for="date" id="NextProbationPeriodClearDate">Next Clear
Date<span class="text-danger">*</span></label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="NextProbationClearDate" name="NextProbationClearDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#NextProbationClearDate" placeholder="DD/MM/YYYY"
required />
<div class="input-group-append" data-target="#NextProbationClearDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="date" id="DateOfClear">Date of Clear<span
class="text-danger">*</span></label>
<label class="mb-0" for="date" id="DateOfRevise">Date of Revise<span
class="text-danger">*</span></label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="ClearReviseDate" name="ClearReviseDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#ClearReviseDate" placeholder="DD/MM/YYYY" required />
<div class="input-group-append" data-target="#ClearReviseDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="form-group mb-0">
<label for="ProbationPeriodCertificate" class="mb-0">Upload Order</label>
<div class="input-group input-group-sm">
<div class="custom-file">
<input type="file" class="custom-file-input"
name="ProbationPeriodCertificate" id="ProbationPeriodCertificate"
accept="image/*, .pdf">
<label class="custom-file-label" for="ProbationPeriodCertificate">Choose
file</label>
</div>
</div>
</div>
</div>
</div>
<hr />
<div class="row">
<div class="col-12">
<div class="d-flex align-items-center justify-content-center">
<button type="button" class="btn btn-sm btn-outline-secondary mx-1"
data-dismiss="modal" aria-label="Close">Cancel</button>
<button type="submit" id="btn-save-name" name="Save" value="Save"
class="btn btn-sm btn-info mx-1">Save</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->
{{-- Edit Probation Period Modal --}}
<div class="modal fade" id="EditProbationPeriodModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Employee Code <span id="EditProbationPeriodEmployeeCodeClear"
class="text-info"></span></h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<!-- Main content -->
<form id="EditProbationPeriodClearForm">
<input type="hidden" name="_token" id="token_probation_period_edit_clear"
value="{{ csrf_token() }}">
<input type="hidden" id="EditProbationPeriodIdClear" name="ProbationPeriodId">
<div class="card-body">
<div class="row">
<div class="col-md-12">
<div class="form-group">
<div class="form-group clearfix">
<label class="mb-0" for="date">Joining Time: </label>
<div class="col-sm-12">
<div class="icheck-primary d-inline">
<input type="radio" id="forenoon" value="Forenoon" name="JoiningTime">
<label class="mb-0" for="forenoon">Forenoon</label>
</div>
<div class="icheck-primary d-inline">
<input type="radio" id="afternoon" value="Afternoon" name="JoiningTime">
<label class="mb-0" for="afternoon">Afternoon</label>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="date">Joining Date <span
class="text-danger">*</span></label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="EditProbationJoiningDate" name="ProbationJoiningDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#EditProbationJoiningDate" placeholder="DD/MM/YYYY"
required />
<div class="input-group-append" data-target="#EditProbationJoiningDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="ProbationPeriodClearDate">Prob. Period Clear Date </label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="EditProbationPeriodDate"
name="ProbationPeriodClearDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#EditProbationPeriodDate" placeholder="DD/MM/YYYY"
required />
<div class="input-group-append" data-target="#EditProbationPeriodDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<hr />
<div class="row">
<div class="col-12">
<div class="d-flex align-items-center justify-content-center">
<button type="button" class="btn btn-sm btn-outline-secondary mx-1"
data-dismiss="modal" aria-label="Close">Cancel</button>
<button type="submit" name="Update" value="Update"
class="btn btn-sm btn-info mx-1">Update</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->
{{-- Edit Clear / Revise Probation Period Modal --}}
<div class="modal fade" id="EditClearReviseProbationPeriodModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Employee Code <span id="EditProbationPeriodEmployeeCode"
class="text-info"></span></h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<!-- Main content -->
<form id="updatedStatusProbationPeriodForm">
<input type="hidden" name="_token" id="token_probation_period_edit" value="{{ csrf_token() }}">
<input type="hidden" id="EditProbationPeriodId" name="ProbationPeriodId">
<div class="card-body">
<div class="row" id="checkbox_field">
<div class="clearfix mb-4">
<div class="icheck-primary" id="EditProbationPeriodClear_field">
<input type="checkbox" name="EditProbationPeriodClear"
id="EditProbationPeriodClear">
<label class="mb-0" for="EditProbationPeriodClear">Clear Probation Period</label>
</div>
<div class="icheck-primary" id="EditProbationPeriodRevise_field">
<input type="checkbox" name="EditProbationPeriodRevise"
id="EditProbationPeriodRevise">
<label class="mb-0" for="EditProbationPeriodRevise">Revise Probation Period</label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="OrderNo">Order No. <span
class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" id="EditProbationOrderNo"
name="ProbationOrderNo">
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="date">Order Date <span class="text-danger">*</span></label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="EditProbationOrderDate" name="ProbationOrderDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#EditProbationOrderDate" placeholder="DD/MM/YYYY"
required />
<div class="input-group-append" data-target="#EditProbationOrderDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="ProbationPeriodClearDate">Prob. Period Clear Date </label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="EditProbationPeriodClearDate"
name="ProbationPeriodClearDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#EditProbationPeriodClearDate" placeholder="DD/MM/YYYY"
required />
<div class="input-group-append" data-target="#EditProbationPeriodClearDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="date" id="EditDateOfClear">Date of Clear<span
class="text-danger">*</span></label>
<label class="mb-0" for="date" id="EditDateOfRevise">Date of Revise<span
class="text-danger">*</span></label>
<div class="form-group mb-2">
<div class="input-group date" data-target-input="nearest">
<input type="text" id="EditClearReviseDate" name="ClearReviseDate"
class="form-control form-control-sm datetimepicker-input"
data-target="#EditClearReviseDate" placeholder="DD/MM/YYYY" required />
<div class="input-group-append" data-target="#EditClearReviseDate"
data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="form-group mb-0">
<label for="ProbationPeriodCertificate" class="mb-0">Upload Order</label>
<div class="input-group input-group-sm">
<div class="custom-file">
<input type="file" class="custom-file-input"
name="ProbationPeriodCertificate" id="EditProbationPeriodCertificate"
accept="image/*, .pdf">
<label class="custom-file-label" for="ProbationPeriodCertificate">Choose
file</label>
</div>
</div>
</div>
</div>
</div>
<hr />
<div class="row">
<div class="col-12">
<div class="d-flex align-items-center justify-content-center">
<button type="button" class="btn btn-sm btn-outline-secondary mx-1"
data-dismiss="modal" aria-label="Close">Cancel</button>
<button type="submit" name="Update" value="Update"
class="btn btn-sm btn-info mx-1">Update</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->
{{-- JS Start Here --}}
{{-- Clear Employee Probation Period Modal --}}
<script>
function clearProbationPeriod(ProbationPeriodId)
{
var ProbationPeriodId = ProbationPeriodId;
$('#ProbationPeriodModal').modal('show');
$.ajax({
type: "POST",
url: "{{ url('/') }}/edit-employee-probation-period",
dataType: 'json',
data: {
ProbationPeriodId: ProbationPeriodId,
_token: "{{ csrf_token() }}",
},
success: function (response) {
$('#ProbationPeriodId').val(response.GetEmpProbationPeriod.ProbationPeriodId);
$('span#EmployeeCode').html('#' +response.GetEmpProbationPeriod.EmployeeCode);
//$('#ProbationPeriodClearDate').val(response.GetEmpProbationPeriod.ProbationPeriodClearDate);
var ClearDate = new Date(response.GetEmpProbationPeriod.ProbationPeriodClearDate);
$('#ProbationPeriodClearDate').val(((ClearDate.getDate() > 9) ? ClearDate.getDate() : ('0' + ClearDate.getDate())) + '/' + ((ClearDate.getMonth() > 8) ? (ClearDate.getMonth() + 1) : ('0' + (ClearDate.getMonth() + 1))) + '/' + ClearDate.getFullYear());
$('#ClearReviseDate').val('');
// Clear Checkbox
$("#ProbationPeriodClear_field").css('display', 'block');
$("#DateOfClear").css('display', 'block');
$("input#ProbationPeriodClear").prop('checked', true);
// Revise Checkbox
$("#ProbationPeriodRevise_field").css('display', 'none');
$("#NextProbationClearDate_field").css('display', 'none');
$("#NextProbationClearDate").prop('required', false);
$("#DateOfRevise").css('display', 'none');
$("input#ProbationPeriodRevise").prop('checked', false);
}
});
}
</script>
{{-- Revised Employee Probation Period Modal --}}
<script>
function reviseProbationPeriod(ProbationPeriodId)
{
var ProbationPeriodId = ProbationPeriodId;
$('#ProbationPeriodModal').modal('show');
$.ajax({
type: "POST",
url: "{{ url('/') }}/edit-employee-probation-period",
dataType: 'json',
data: {
ProbationPeriodId: ProbationPeriodId,
_token: "{{ csrf_token() }}",
},
success: function (response) {
$('#ProbationPeriodId').val(response.GetEmpProbationPeriod.ProbationPeriodId);
$('#EmployeeCode').val(response.GetEmpProbationPeriod.EmployeeCode);
$('span#EmployeeCode').html('#' +response.GetEmpProbationPeriod.EmployeeCode);
var ClearDate = new Date(response.GetEmpProbationPeriod.ProbationPeriodClearDate);
$('#ProbationPeriodClearDate').val(((ClearDate.getDate() > 9) ? ClearDate.getDate() : ('0' + ClearDate.getDate())) + '/' + ((ClearDate.getMonth() > 8) ? (ClearDate.getMonth() + 1) : ('0' + (ClearDate.getMonth() + 1))) + '/' + ClearDate.getFullYear());
$('#ClearReviseDate').val('');
// Clear Checkbox
$("#ProbationPeriodClear_field").css('display', 'none');
$("label#DateOfClear").css('display', 'none');
$("#NextProbationClearDate_field").css('display', 'none');
$("input#ProbationPeriodClear").prop('checked', false);
// Revise Checkbox
$("#ProbationPeriodRevise_field").css('display', 'block');
$("#NextProbationClearDate_field").css('display', 'block');
$("#NextProbationClearDate").prop('required', true);
$("label#DateOfRevise").css('display', 'block');
$("input#ProbationPeriodRevise").prop('checked', true);
}
});
}
</script>
{{-- Validate form and Change Status Employee Probation Period --}}
<script>
$(function () {
$.validator.setDefaults({
submitHandler: function () {
event.preventDefault();
// Get Form Data
var token = $("#token_probation_period").val();
var ProbationPeriodId = $("#ProbationPeriodId").val();
var ProbationOrderNo = $('#ProbationOrderNo').val();
var ProbationOrderDate = $('#ProbationOrderDate').val();
var IsCleared = '';
var IsRevised = '';
if ($("input:radio[name=ProbationPeriodClear]").is(":checked"))
{
var IsCleared = '1';
var IsRevised = '0';
} else if($("input:radio[name=ProbationPeriodRevise]").is(":checked"))
{
var IsRevised = '1';
var IsCleared = '0';
}
var ClearReviseDate = $('#ClearReviseDate').val();
var NextProbationClearDate = $('#NextProbationClearDate').val();
var ProbationPeriodCertificate = $('#ProbationPeriodCertificate')[0].files;
var fd = new FormData();
fd.append('_token',token);
fd.append('ProbationPeriodId',ProbationPeriodId);
fd.append('ProbationOrderNo',ProbationOrderNo);
fd.append('OrderDate',ProbationOrderDate);
fd.append('IsCleared',IsCleared);
fd.append('IsRevised',IsRevised);
fd.append('ClearAndReviseDate',ClearReviseDate);
fd.append('NextProbationClearDate',NextProbationClearDate);
// files data
fd.append('ProbationPeriodCertificate',ProbationPeriodCertificate[0]);
$.ajax({
type: "post",
url: "{{ url('change-status-employee-probation-period') }}",
data: fd,
contentType: false,
processData: false,
success: function(response) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'success',
title: 'Employee Record updated successfully!'
});
setTimeout(function(){
window.location.reload(1);
}, 2000);
},
error: function(data) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'error',
title: 'Something went wrong!'
});
}
});
}
});
$('#changeStatusProbationPeriodForm').validate({
rules: {
ProbationOrderNo: {
required: true,
},
ProbationOrderDate: {
required: true,
},
ClearProbationPeriodDate: {
required: true,
},
ProbationPeriodCertificate: {
//required: true,
accept: "image/*, pdf",
},
},
messages: {
ProbationOrderNo: {
required: "Order number is required.",
},
ProbationOrderDate: {
required: "Order date is required.",
},
ClearProbationPeriodDate: {
required: "Date of Clear is required.",
},
},
errorElement: 'span',
errorPlacement: function (error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function (element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function (element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
});
</script>
{{-- Edit Record Employee Probation Period --}}
<script>
function editProbationPeriod(ProbationPeriodId)
{
var ProbationPeriodId = ProbationPeriodId;
$.ajax({
type: "POST",
url: "{{ url('/') }}/edit-employee-probation-period",
dataType: 'json',
data: {
ProbationPeriodId: ProbationPeriodId,
_token: "{{ csrf_token() }}",
},
success: function (response) {
$('#EditProbationPeriodIdClear').val(response.GetEmpProbationPeriod.ProbationPeriodId);
$('span#EditProbationPeriodEmployeeCodeClear').html('#' +response.GetEmpProbationPeriod.EmployeeCode);
if (response.GetEmpProbationPeriod.JoiningTime == 'Forenoon') {
$("input#forenoon").prop('checked', true);
} else {
$("input#afternoon").prop('checked', true);
}
var joinDate = new Date(response.GetEmpProbationPeriod.JoiningDate);
$('#EditProbationJoiningDate').val(((joinDate.getDate() > 9) ? joinDate.getDate() : ('0' + joinDate.getDate())) + '/' + ((joinDate.getMonth() > 8) ? (joinDate.getMonth() + 1) : ('0' + (joinDate.getMonth() + 1))) + '/' + joinDate.getFullYear());
var ProbDate = new Date(response.GetEmpProbationPeriod.ProbationPeriodClearDate);
$('#EditProbationPeriodDate').val(((ProbDate.getDate() > 9) ? ProbDate.getDate() : ('0' + ProbDate.getDate())) + '/' + ((ProbDate.getMonth() > 8) ? (ProbDate.getMonth() + 1) : ('0' + (ProbDate.getMonth() + 1))) + '/' + ProbDate.getFullYear());
}
});
$('#EditProbationPeriodModal').modal('show');
}
</script>
{{-- Edit Clear / Revised Record Employee Probation Period --}}
<script>
function editClearReviseProbationPeriod(ProbationPeriodId)
{
var ProbationPeriodId = ProbationPeriodId;
$.ajax({
type: "POST",
url: "{{ url('/') }}/edit-employee-probation-period",
dataType: 'json',
data: {
ProbationPeriodId: ProbationPeriodId,
_token: "{{ csrf_token() }}",
},
success: function (response) {
$('#EditProbationPeriodId').val(response.GetEmpProbationPeriod.ProbationPeriodId);
$('span#EditProbationPeriodEmployeeCode').html('#' +response.GetEmpProbationPeriod.EmployeeCode);
var ProbPeriodDate = new Date(response.GetEmpProbationPeriod.ProbationPeriodClearDate);
$('#EditProbationPeriodClearDate').val(((ProbPeriodDate.getDate() > 9) ? ProbPeriodDate.getDate() : ('0' + ProbPeriodDate.getDate())) + '/' + ((ProbPeriodDate.getMonth() > 8) ? (ProbPeriodDate.getMonth() + 1) : ('0' + (ProbPeriodDate.getMonth() + 1))) + '/' + ProbPeriodDate.getFullYear());
if (response.GetEmpProbationPeriod.IsCleared == '1') {
$("#checkbox_field").css('display', 'block');
$("#EditProbationPeriodClear_field").css('display', 'block');
$("#EditDateOfClear").css('display', 'block');
$("input#EditProbationPeriodClear").prop('checked', true);
$("#EditProbationPeriodRevise_field").css('display', 'none');
$("#EditNextProbationClearDate_field").css('display', 'none');
$("#EditNextProbationClearDate").prop('required', false);
$("#EditDateOfRevise").css('display', 'none');
$("input#EditProbationPeriodRevise").prop('checked', false);
$('#EditProbationPeriodClearDate').prop('disabled', true)
$('#EditProbationOrderNo').val(response.GetEmpProbationPeriod.ProbationOrderNo);
if (response.GetEmpProbationPeriod.ProbationOrderDate) {
var OrderDate = new Date(response.GetEmpProbationPeriod.ProbationOrderDate);
$('#EditProbationOrderDate').val(((OrderDate.getDate() > 9) ? OrderDate.getDate() : ('0' + OrderDate.getDate())) + '/' + ((OrderDate.getMonth() > 8) ? (OrderDate.getMonth() + 1) : ('0' + (OrderDate.getMonth() + 1))) + '/' + OrderDate.getFullYear());
}
$('#EditClearReviseDate').val('');
if (response.GetEmpProbationPeriod.ClearReviseDate) {
var CRDate = new Date(response.GetEmpProbationPeriod.ClearReviseDate);
$('#EditClearReviseDate').val(((CRDate.getDate() > 9) ? CRDate.getDate() : ('0' + CRDate.getDate())) + '/' + ((CRDate.getMonth() > 8) ? (CRDate.getMonth() + 1) : ('0' + (CRDate.getMonth() + 1))) + '/' + CRDate.getFullYear());
}
} else if (response.GetEmpProbationPeriod.IsRevised == '1') {
$('#EditProbationOrderNo').val('');
$('#EditProbationOrderDate').val('');
$('#EditClearReviseDate').val('');
$("#checkbox_field").css('display', 'block');
$("#EditProbationPeriodClear_field").css('display', 'none');
$("label#EditDateOfClear").css('display', 'none');
$("#EditNextProbationClearDate_field").css('display', 'none');
$("input#EditProbationPeriodClear").prop('checked', false);
$("#EditProbationPeriodRevise_field").css('display', 'block');
$("#EditNextProbationClearDate_field").css('display', 'block');
$("#EditNextProbationClearDate").prop('required', true);
$("label#EditDateOfRevise").css('display', 'block');
$("input#EditProbationPeriodRevise").prop('checked', true);
$('#EditProbationPeriodClearDate').prop('disabled', false)
$('#EditProbationOrderNo').val(response.GetEmpProbationPeriod.ProbationOrderNo);
if (response.GetEmpProbationPeriod.ProbationOrderDate) {
var OrderDate = new Date(response.GetEmpProbationPeriod.ProbationOrderDate);
$('#EditProbationOrderDate').val(((OrderDate.getDate() > 9) ? OrderDate.getDate() : ('0' + OrderDate.getDate())) + '/' + ((OrderDate.getMonth() > 8) ? (OrderDate.getMonth() + 1) : ('0' + (OrderDate.getMonth() + 1))) + '/' + OrderDate.getFullYear());
}
if (response.GetEmpProbationPeriod.ClearReviseDate) {
var CRDate = new Date(response.GetEmpProbationPeriod.ClearReviseDate);
$('#EditClearReviseDate').val(((CRDate.getDate() > 9) ? CRDate.getDate() : ('0' + CRDate.getDate())) + '/' + ((CRDate.getMonth() > 8) ? (CRDate.getMonth() + 1) : ('0' + (CRDate.getMonth() + 1))) + '/' + CRDate.getFullYear());
}
} else {
$('#EditProbationOrderNo').val('');
$('#EditProbationOrderDate').val('');
$('#EditClearReviseDate').val('');
$("#checkbox_field").css('display', 'none');
$("#EditProbationPeriodClear_field").css('display', 'none');
$("input#EditProbationPeriodClear").prop('checked', false);
$("#EditProbationPeriodRevise_field").css('display', 'none');
$("input#EditProbationPeriodRevise").prop('checked', false);
}
}
});
$('#EditClearReviseProbationPeriodModal').modal('show');
}
</script>
{{-- Validate form and Update Clear / Revise Employee Probation Period --}}
<script>
$(function () {
$.validator.setDefaults({
submitHandler: function () {
event.preventDefault();
// Get Form Data
var token = $("#token_probation_period_edit").val();
var ProbationPeriodId = $("#EditProbationPeriodId").val();
var ProbationOrderNo = $('#EditProbationOrderNo').val();
var ProbationOrderDate = $('#EditProbationOrderDate').val();
var IsCleared = '0';
var IsRevised = '0';
if ($('#EditProbationPeriodClear').is(':checked'))
{
var IsCleared = '1';
var IsRevised = '0';
} else if($('#EditProbationPeriodRevise').is(':checked'))
{
var IsRevised = '1';
var IsCleared = '0';
}
var ProbationPeriodClearDate = $('#EditProbationPeriodClearDate').val();
var ClearReviseDate = $('#EditClearReviseDate').val();
var ProbationPeriodCertificate = $('#ProbationPeriodCertificate')[0].files;
var fd = new FormData();
fd.append('_token',token);
fd.append('ProbationPeriodId',ProbationPeriodId);
fd.append('ProbationOrderNo',ProbationOrderNo);
fd.append('OrderDate',ProbationOrderDate);
fd.append('IsCleared',IsCleared);
fd.append('IsRevised',IsRevised);
fd.append('ClearAndReviseDate',ClearReviseDate);
fd.append('ProbationClearDate',ProbationPeriodClearDate);
// files data
fd.append('ProbationPeriodCertificate',ProbationPeriodCertificate[0]);
$.ajax({
type: "post",
url: "{{ url('update-status-employee-probation-period') }}",
data: fd,
contentType: false,
processData: false,
success: function(response) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'success',
title: 'Employee Record updated successfully!'
});
setTimeout(function(){
window.location.reload(1);
}, 2000);
},
error: function(data) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'error',
title: 'Something went wrong!'
});
}
});
}
});
$('#updatedStatusProbationPeriodForm').validate({
rules: {
ProbationOrderNo: {
//required: true,
},
ProbationOrderDate: {
//required: true,
},
ClearProbationPeriodDate: {
//required: true,
},
ProbationPeriodCertificate: {
//required: true,
accept: "image/*, pdf",
},
},
messages: {
ProbationOrderNo: {
required: "Order number is required.",
},
ProbationOrderDate: {
required: "Order date is required.",
},
ClearProbationPeriodDate: {
required: "Date of Clear is required.",
},
},
errorElement: 'span',
errorPlacement: function (error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function (element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function (element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
});
</script>
{{-- Validate form and Update data --}}
<script>
$(function () {
$.validator.setDefaults({
submitHandler: function () {
event.preventDefault();
$.ajax({
type: "post",
url: "{{ url('update-employee-probation-period') }}",
data: $("#EditProbationPeriodClearForm").serialize(),
success: function(response) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'success',
title: 'Employee Record updated successfully!'
});
setTimeout(function(){
window.location.reload(1);
}, 2000);
},
error: function(data) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'error',
title: 'Something went wrong!'
});
}
});
}
});
$('#EditProbationPeriodClearForm').validate({
rules: {
JoiningTime: {
required: true,
},
ProbationJoiningDate: {
required: true,
},
ProbationPeriodClearDate: {
required: true,
},
},
messages: {
JoiningTime: {
required: "Joining time is required.",
},
ProbationJoiningDate: {
required: "Joining date is required.",
},
ProbationPeriodClearDate: {
required: "Clear date is required.",
},
},
errorElement: 'span',
errorPlacement: function (error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function (element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function (element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
});
</script>
{{-- Delete Employee Probation Period --}}
<script>
function deleteProbationPeriod(ProbationPeriodId) {
var ProbationPeriodId = ProbationPeriodId;
Swal.fire({
title: "Delete Employee Probation Period?",
text: "Are you sure you want to delete this Employee Probation Period?",
icon: "warning",
icon: "warning",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "Yes, delete it!",
}).then((result) => {
if (result.isConfirmed) {
$.ajax({
type: "post",
url: "{{ url('/') }}/delete-employee-probation-period",
dataType: "json",
data: {
_token: "{{csrf_token()}}",
ProbationPeriodId: ProbationPeriodId,
},
success: function (response) {
Swal.fire({
icon: "success",
title: "Employee Probation Period has been deleted!",
showConfirmButton: false,
timer: 1500,
}).then(function () {
location.reload();
});
},
});
}
});
}
</script>