400 lines
16 KiB
PHP
Executable File
400 lines
16 KiB
PHP
Executable File
|
|
|
|
<div class="tab-pane fade active show" id="vehicle-tab">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="card-body">
|
|
<form role="form" class="parsley-examples" method="post" id="general_form"
|
|
enctype="multipart/form-data">
|
|
|
|
<input type="hidden" name="client_id" id="client_id" />
|
|
<div class="form-group">
|
|
<div class="form-row">
|
|
|
|
<div class="form-row">
|
|
|
|
|
|
<div class="form-group col-md-4">
|
|
<label for="cost_center">Type<span class="text-danger">*</span></label>
|
|
<input type="text" class="form-control" id="type"
|
|
value="<?= isset($client['phone']) ? $client['phone'] : '' ?>" name="type" required>
|
|
</div>
|
|
|
|
<div class="form-group col-md-4">
|
|
<label for="cost_center">Description<span class="text-danger">*</span></label>
|
|
<input type="text" class="form-control" id="description" placeholder="Enter Description"
|
|
value="<?= isset($client['email']) ? $client['email'] : '' ?>" name="description" required>
|
|
</div>
|
|
|
|
<div class="form-group col-md-4">
|
|
<label for="owner">Owner Name <span class="text-danger">*</span></label>
|
|
<input type="text" class="form-control" id="owner" placeholder="Enter Owner Name"
|
|
value="<?= isset($client['reference']) ? $client['reference'] : '' ?>"
|
|
name="owner" required>
|
|
</div>
|
|
|
|
<div class="form-group col-md-4">
|
|
<label for="old_onwer">Old Owner Name (if any) <span class="text-danger"></span></label>
|
|
<input type="text" class="form-control" id="old_onwer" placeholder="Enter Old Owner Name"
|
|
value="<?= isset($client['reference']) ? $client['reference'] : '' ?>"
|
|
name="old_onwer" >
|
|
</div>
|
|
|
|
<div class="form-group col-md-4">
|
|
<label for="rc">RC Book <span class="text-danger">*</span></label>
|
|
<input type="text" class="form-control" id="rc" placeholder="Enter RC Book No"
|
|
value="<?= isset($client['reference']) ? $client['reference'] : '' ?>"
|
|
name="rc" >
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="form-group text-right m-b-0">
|
|
<button type="submit" class="btn btn-primary waves-effect waves-light mr-1"
|
|
id="btnSubmit">Submit</button>
|
|
<button type="button" class="btn btn-secondary waves-effect btnBack"
|
|
id="btnBack">Cancel</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div> <!-- end col-->
|
|
</div>
|
|
</div>
|
|
<!-- end -->
|
|
|
|
|
|
|
|
<script>
|
|
|
|
var PrimaryKey = $('#general_PrimaryKey').val();
|
|
var form_action = '';
|
|
|
|
$(document).ready(function() {
|
|
$('#client_logo').change(function() {
|
|
validateFile(this);
|
|
});
|
|
|
|
var la_date = flatpickr("#dob", {
|
|
dateFormat: "d-m-Y",
|
|
allowInput: false
|
|
});
|
|
|
|
var client_type = '<?= $client['client_type'] ?>';
|
|
|
|
if(client_type){
|
|
|
|
if(client_type == 2){
|
|
$('#client_name_txt').text('Proposer/Policy holder Name');
|
|
$('#short_name_txt').text('Policyholder Short Name');
|
|
$('#documents_tab_txt').text('Other Docs');
|
|
$('#retaildiv').show();
|
|
$('#dob').prop('required', true);
|
|
$('#gst').prop('required', true);
|
|
$('#aadhar').prop('required', true);
|
|
$('#phone').prop('required', true);
|
|
$('#email').prop('required', true);
|
|
$('#reference').prop('required', true);
|
|
$('#address1').prop('required', true);
|
|
$('#branch_tab_li').hide();
|
|
$('#notifi_tab_li').hide();
|
|
$('#veh_tab_li').show();
|
|
|
|
}else{
|
|
$('#client_name_txt').text('Client Name');
|
|
$('#short_name_txt').text('Client Short Name');
|
|
$('#documents_tab_txt').text('KYC Docs');
|
|
$('#retaildiv').hide()
|
|
$('#dob').prop('required', false);
|
|
$('#gst').prop('required', false);
|
|
$('#aadhar').prop('required', false);
|
|
$('#phone').prop('required', false);
|
|
$('#email').prop('required', false);
|
|
$('#reference').prop('required', false);
|
|
$('#address1').prop('required', false);
|
|
$('#branch_tab_li').show();
|
|
$('#notifi_tab_li').show();
|
|
$('#veh_tab_li').hide();
|
|
}
|
|
}
|
|
});
|
|
|
|
$(document).ready(function() {
|
|
|
|
$("#general_form").submit(function(event) {
|
|
|
|
event.preventDefault();
|
|
|
|
var $submitButton = $('#general_form').find('button[type="submit"]');
|
|
$submitButton.prop('disabled', true); // Disable the submit button
|
|
|
|
var isValid = $('#general_form').parsley().validate();
|
|
if (!isValid) {
|
|
$submitButton.prop('disabled', false);
|
|
console.log('Form is Empty', 'Warning');
|
|
return;
|
|
}
|
|
|
|
if (PrimaryKey === '') {
|
|
form_action = '<?= base_url("client/general/create"); ?>';
|
|
} else {
|
|
form_action = '<?= base_url("client/general/edit"); ?>';
|
|
}
|
|
|
|
$('.loader').fadeIn();
|
|
$('.loader-mask').fadeIn();
|
|
|
|
var formData = new FormData($('#general_form')[0]);
|
|
var OptionsHTML1 = ''
|
|
|
|
$.ajax({
|
|
data: formData,
|
|
url: form_action,
|
|
type: "POST",
|
|
dataType: 'json',
|
|
processData: false,
|
|
contentType: false,
|
|
success: function(res) {
|
|
|
|
console.log(res);
|
|
console.log($('#general_PrimaryKey').val());
|
|
|
|
if ($('#general_PrimaryKey').val() == "") {
|
|
|
|
window.location.href = '<?= base_url("client/list/"); ?>' + res.data.id;
|
|
}
|
|
|
|
|
|
if (res) {
|
|
setTimeout(function() {
|
|
|
|
$('.loader').fadeOut();
|
|
$('.loader-mask').delay(350).fadeOut('slow');
|
|
$('#kyc_tab').click();
|
|
|
|
$('#btnBranchAdd').show();
|
|
$('#BtnAdd').show();
|
|
$('#relation_form').show();
|
|
$('#btnBranchAdd').show();
|
|
|
|
var message = (PrimaryKey === '') ?
|
|
'Client General Info Created successfully' :
|
|
'Client General Info Updated successfully';
|
|
toastr.success(message, 'Success');
|
|
$submitButton.prop('disabled', false);
|
|
}, 1000);
|
|
}
|
|
|
|
var idToUse = res.data.id ? res.data.id : res.data.PrimaryKey;
|
|
|
|
$('#client_id').val(idToUse);
|
|
$('#general_PrimaryKey').val(idToUse);
|
|
$('#client_id_relation').val(idToUse);
|
|
$('#relation_PrimaryKey').val(idToUse);
|
|
$('#client_id_branch').val(idToUse);
|
|
$('#client_id_for_client_branch').val(idToUse);
|
|
$('#client_id_policy').val(idToUse);
|
|
$('#policy_PrimaryKey').val(idToUse);
|
|
$('#client_id_kyc').val(idToUse);
|
|
$('#kyc_PrimaryKey').val(idToUse);
|
|
$('#Client_id').val(idToUse);
|
|
|
|
$('#entity_type').val(res.data.entity_type_id);
|
|
|
|
|
|
var client_id_for_file = res.data.id;
|
|
|
|
if (PrimaryKey === '') {
|
|
$.ajax({
|
|
url: '<?= base_url("client/kyc/list/"); ?>' + res.data
|
|
.entity_type_id,
|
|
type: "GET",
|
|
dataType: 'json',
|
|
processData: false,
|
|
contentType: false,
|
|
success: function(res) {
|
|
|
|
console.log('kyc docs', res);
|
|
var tbody = $('#tbody');
|
|
tbody.empty();
|
|
|
|
$.each(res.data, function(index, item) {
|
|
var row = `<tr>
|
|
<td> ${item.file_name}</td>
|
|
<td id="form_${item.id}" style=""><form class="ajax" ><input class="file-input__input" type="file" name="file_name">
|
|
<input type="hidden" class="form-control" value="<?= csrf_hash() ?>" name="<?= csrf_token() ?>" />
|
|
<input type="hidden" class="form-control" value="${item.id}" name="kyc_doc_type_id" />
|
|
<input type="hidden" name="client_id" id="id_for_kyc_file" value="${client_id_for_file}"/>
|
|
<button class="btn btn-sm btn-primary submit" style="position: relative;right: 80px;">Submit</button></form></td>
|
|
<td id="name_${item.id}" style="display:none;"></td>
|
|
<td><i data-id="${item.id}" class="mdi mdi-delete btnKycDelete" style="font-size:18px;"></i></td>
|
|
</tr>`;
|
|
tbody.append(row);
|
|
});
|
|
},
|
|
error: function(xhr, status, error) {
|
|
console.error(xhr.responseText);
|
|
console.error(status, error);
|
|
}
|
|
});
|
|
}
|
|
},
|
|
error: function(xhr, status, error) {
|
|
console.error(xhr.responseText);
|
|
console.error(status, error);
|
|
setTimeout(function() {
|
|
$('.loader').fadeOut();
|
|
$('.loader-mask').delay(350).fadeOut('slow');
|
|
$submitButton.prop('disabled', false);
|
|
if (xhr.status === 404) {
|
|
toastr.warning('Resource not found', 'Warning');
|
|
} else if (xhr.status === 500) {
|
|
toastr.warning('Internal server error', 'Warning');
|
|
} else {
|
|
toastr.warning('Unknown error occurred', 'Warning');
|
|
}
|
|
}, 1000);
|
|
}
|
|
});
|
|
});
|
|
|
|
});
|
|
|
|
function onlyNumbers(event) {
|
|
var charcode;
|
|
charcode = event.which || event.keyCode;
|
|
if (charcode >= 48 && charcode <= 57) return true;
|
|
return false;
|
|
}
|
|
|
|
function PreviewImage() {
|
|
console.log('function called');
|
|
var fileInput = document.getElementById("client_logo");
|
|
var file = fileInput.files[0];
|
|
|
|
if (file) {
|
|
var allowedExtensions = ["jpg", "jpeg", "png"];
|
|
var fileExtension = file.name.split('.').pop().toLowerCase();
|
|
|
|
if (!allowedExtensions.includes(fileExtension) || file.size > 200 * 1024) {
|
|
toastr.warning('Maximum file size allowed is 200KB.', 'File size exceeds limit.');
|
|
fileInput.value = ""; // Clear the file input
|
|
document.getElementById("uploadPreview").src =
|
|
"http://ssl.gstatic.com/accounts/ui/avatar_2x.png"; // Remove the preview image
|
|
} else {
|
|
var reader = new FileReader();
|
|
reader.readAsDataURL(file);
|
|
|
|
reader.onload = function(event) {
|
|
document.getElementById("uploadPreview").src = event.target.result;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
|
|
function validateFile(input) {
|
|
|
|
const file = input.files[0];
|
|
const allowedExtensions = ["jpg", "jpeg", "png"];
|
|
const fileExtension = file.name.split(".").pop().toLowerCase();
|
|
|
|
// Check if the file extension is allowed
|
|
if (!allowedExtensions.includes(fileExtension)) {
|
|
toastr.warning('Only JPG, JPEG, PNG files are allowed.', 'Invalid file type.');
|
|
$("#uploadPreview").attr("src", "http://ssl.gstatic.com/accounts/ui/avatar_2x.png");
|
|
input.value = "";
|
|
}
|
|
|
|
|
|
// Check file size
|
|
const fileSize = file.size / 1024; // in KB
|
|
if (fileSize > 200) {
|
|
toastr.warning('Maximum file size allowed is 200KB.', 'File size exceeds limit.');
|
|
$("#uploadPreview").attr("src", "http://ssl.gstatic.com/accounts/ui/avatar_2x.png");
|
|
input.value = "";
|
|
}
|
|
|
|
// Check image dimensions
|
|
const img = new Image();
|
|
img.onload = function() {
|
|
if (this.width !== 100 || this.height !== 100) {
|
|
toastr.warning('Image dimensions should be 100x100 pixels.', 'Invalid image dimensions.');
|
|
$("#uploadPreview").attr("src", "http://ssl.gstatic.com/accounts/ui/avatar_2x.png");
|
|
}
|
|
// If both size and dimensions are valid, you can proceed with your logic here
|
|
// For example, you can display the image
|
|
const reader = new FileReader();
|
|
reader.onload = function(e) {
|
|
document.getElementById("uploadPreview").src = e.target.result;
|
|
};
|
|
reader.readAsDataURL(file);
|
|
};
|
|
img.src = URL.createObjectURL(file);
|
|
}
|
|
|
|
$('#client_type').change(function() {
|
|
var val = $(this).val();
|
|
if(val == 2){
|
|
$('#client_name_txt').text('Proposer/Policy holder Name');
|
|
$('#short_name_txt').text('Policyholder Short Name');
|
|
$('#documents_tab_txt').text('Other Docs');
|
|
$('#retaildiv').show();
|
|
$('#dob').prop('required', true);
|
|
$('#gst').prop('required', true);
|
|
$('#aadhar').prop('required', true);
|
|
$('#phone').prop('required', true);
|
|
$('#email').prop('required', true);
|
|
$('#reference').prop('required', true);
|
|
$('#address1').prop('required', true);
|
|
$('#branch_tab_li').hide();
|
|
$('#notifi_tab_li').hide();
|
|
$('#veh_tab_li').show();
|
|
}else{
|
|
$('#client_name_txt').text('Client Name');
|
|
$('#short_name_txt').text('Client Short Name');
|
|
$('#documents_tab_txt').text('KYC Docs');
|
|
$('#retaildiv').hide()
|
|
$('#dob').prop('required', false);
|
|
$('#gst').prop('required', false);
|
|
$('#aadhar').prop('required', false);
|
|
$('#phone').prop('required', false);
|
|
$('#email').prop('required', false);
|
|
$('#reference').prop('required', false);
|
|
$('#address1').prop('required', false);
|
|
$('#branch_tab_li').show();
|
|
$('#notifi_tab_li').show();
|
|
$('#veh_tab_li').hide();
|
|
|
|
|
|
}
|
|
});
|
|
|
|
$('#cost_center').change(function() {
|
|
|
|
var cost_center = $(this).val();
|
|
console.log(cost_center + '-' + cost_center.length);
|
|
cost_center = cost_center.trim();
|
|
console.log(cost_center + '-' + cost_center.length);
|
|
|
|
|
|
$.ajax({
|
|
url: '<?php echo base_url('util/check_cost_center/');?>' + cost_center,
|
|
type: "GET",
|
|
dataType: 'json',
|
|
success: function(res) {
|
|
|
|
console.log(res)
|
|
if (res.status == true) {
|
|
toastr.warning(res.message, 'Warning');
|
|
$('#cost_center').val('');
|
|
}
|
|
},
|
|
error: function(xhr, status, error) {
|
|
console.error(xhr.responseText);
|
|
console.error(status, error);
|
|
}
|
|
});
|
|
|
|
})
|
|
</script> |