FIX_Master Unit Test

This commit is contained in:
venba-Inspriron-3558 2025-09-07 15:39:39 +05:30
parent 0093ed8ab3
commit aefc126434
4 changed files with 271 additions and 201 deletions

View File

@ -14,17 +14,17 @@
<!-- Optional CSS -->
<style>
/* Make modal really XL and scrollable */
#branchModal .modal-dialog.modal-xl {
#insurerBranchModal .modal-dialog.modal-xl {
max-width: 90%;
height: 90vh;
}
#branchModal .modal-content {
#insurerBranchModal .modal-content {
height: 100%;
overflow: hidden;
}
#branchModal .modal-body {
#insurerBranchModal .modal-body {
overflow-y: auto;
max-height: 80vh;
}
@ -170,7 +170,7 @@
<!-- end -->
<!-- Modal -->
<div class="modal fade" id="branchModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal fade" id="insurerBranchModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-xl" style="max-width: 1140px !important;">
<div class="modal-content">
<!-- Modal Header -->
@ -184,115 +184,131 @@
<!-- Modal Body -->
<div class="modal-body" style="overflow-y:auto; max-height:80vh;">
<form id="insurer_branch_form" class="parsley-examples" method="post" enctype="multipart/form-data">
<div class="row">
<!-- Left Section: Branch Details -->
<div class="col-md-8 d-flex flex-column" style="max-height: calc(80vh - 50px);">
<!-- Branch Name & Code -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="branch_name">Branch Name <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_name" name="branch_name" required>
</div>
<div class="form-group col-md-6">
<label for="branch_code">Branch Code <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_code" name="branch_code" required>
</div>
</div>
<!-- Address Lines -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="address1">Address Line 1 <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="address1" name="address1" required>
</div>
<div class="form-group col-md-6">
<label for="address2">Address Line 2</label>
<input type="text" class="form-control" id="address2" name="address2">
</div>
</div>
<!-- State & District -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="state">State <span class="text-danger">*</span></label>
<select class="form-control" id="state" name="state" required>
<option value="">Select State</option>
<?php foreach($state as $value) { ?>
<option value="<?= $value['id'] ?>"><?= $value['state'] ?></option>
<?php } ?>
</select>
</div>
<div class="form-group col-md-6">
<label for="district">District <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="district" name="district" required>
</div>
</div>
<!-- City & Pincode -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="branch_city">City <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_city" name="city" required>
</div>
<div class="form-group col-md-6">
<label for="pincode">Pincode <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="pincode" name="pincode" required>
</div>
</div>
<!-- Submit / Cancel -->
<input type="hidden" class="form-control" value="<?= csrf_hash() ?>" name="<?= csrf_token() ?>" />
<input type="hidden" name="PrimaryKey" id="insurer_Branch_PrimaryKey" />
<input type="hidden" name="insurer_id" id="insurer_id_branch" value="<?= isset($insurer['id']) ? $insurer['id'] : '' ?>"/>
<div class="row">
<!-- Left Section: Branch Details -->
<div class="col-md-8 d-flex flex-column" style="max-height: calc(80vh - 50px);">
<!-- Branch Name & Code -->
<div class="form-row">
<!-- <div class="form-group col-md-12 mt-2"> -->
<div style="margin-top: 85px;">
<button type="submit" class="btn btn-primary mr-2" id="btnSubmit">Submit</button>
<button type="button" class="btn app-btn-outline-secondary btnBack" id="btnBack" data-dismiss="modal" aria-hidden="true">Cancel</button>
</div>
<!-- </div> -->
<div class="form-group col-md-6">
<label for="branch_name">Branch Name <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_name"
placeholder="Enter Branch Name" name="branch_name" required>
</div>
<div class="form-group col-md-6">
<label for="branch_code">Branch Code <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_code"
placeholder="Enter Branch Code" name="branch_code" required>
</div>
</div>
<!-- Address Lines -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="address1">Address Line 1 <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="address1" name="address1" placeholder="Enter Address 1" required>
</div>
<div class="form-group col-md-6">
<label for="address2">Address Line 2</label>
<input type="text" class="form-control" id="address2" placeholder="Enter Address 2" name="address2">
</div>
</div>
<!-- State & District -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="state">State <span class="text-danger">*</span></label>
<select class="form-control" id="state" name="state" required>
<option value="">Select State</option>
<?php foreach($state as $value) { ?>
<option value="<?= $value['id'] ?>"><?= $value['state'] ?></option>
<?php } ?>
</select>
</div>
<div class="form-group col-md-6">
<label for="district">District <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="district"
placeholder="Enter District" name="district" required>
</div>
</div>
<!-- City & Pincode -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="branch_city">City <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_city"
placeholder="Enter City" name="city" required>
</div>
<div class="form-group col-md-6">
<label for="pincode">Pincode <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="pincode" placeholder="Enter Pincode" name="pincode" required>
</div>
</div>
<!-- Submit / Cancel -->
<div class="form-row">
<!-- <div class="form-group col-md-12 mt-2"> -->
<div style="margin-top: 85px;">
<button type="submit" class="btn btn-primary mr-2" id="btnSubmit">Submit</button>
<button type="button" class="btn app-btn-outline-secondary btnBack" id="btnBack" data-dismiss="modal" aria-hidden="true">Cancel</button>
</div>
<!-- </div> -->
</div>
</div>
<!-- Right Section: Contact Details -->
<div class="col-md-4" style="background:#f8f9fa; max-height: calc(80vh - 50px); overflow-y:auto; border-radius:8px; padding:10px;">
<!-- First Contact -->
<div id="contact_1_wrapper" class="bg-white p-2 mb-2 rounded contact-block">
<div class="d-flex justify-content-between align-items-center mb-2">
<h6 class="modal-subtitle mb-0">Contact 1</h6>
<div class="d-flex align-items-center">
<i class="mdi mdi-trash-can text-danger" style="cursor:pointer; font-size:24px !important;" onclick="removeContact(this)" id="${uniqueId}_remove"></i>
</div>
</div>
<!-- Contact Form Fields -->
<div class="form-row">
<!-- <input type="hidden" name="primarykey[]" id="contact_id_1" value=""/> -->
<div class="form-group col-md-12">
<label for="name">Name <span class="text-danger">*</span></label>
<input value="" type="text" class="form-control" placeholder="Enter Contact Name" name="name[]" id="name" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="designation">Designation <span class="text-danger">*</span></label>
<input value="" type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" id="designation" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="email">Email <span class="text-danger">*</span></label>
<input value="" type="email" data-parsley-type="email" class="form-control" placeholder="Enter Contact Email" name="email[]" id="email" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="mobile">Mobile <span class="text-danger">*</span></label>
<!-- <input name="mobile[]" pattern="[0-9]{10}" value="" type="tel" data-parsley-type="number" data-parsley-length="[10,10]" class="form-control" placeholder="Enter Contact Mobile" id="mobile" required> -->
<input name="mobile[]" pattern="[0-9]{10}" value="" type="text" data-parsley-type="number" data-parsley-length="[10,10]" class="form-control" placeholder="Enter Contact Mobile" id="mobile" required oninput="this.value = this.value.replace(/[^0-9]/g,'');" maxlength="10">
</div>
</div>
</div>
<!-- Container for dynamically added contacts -->
<div id="container"></div>
<div>
<button type="button" class="btn btn-primary btn-sm ac me-3" style="width: 100%;" onclick="appendContactHtml()" id="add"><i class="mdi mdi-plus"></i> Add Contact</button>
</div>
</div>
</div>
<!-- Right Section: Contact Details -->
<div class="col-md-4" style="background:#f8f9fa; max-height: calc(80vh - 50px); overflow-y:auto; border-radius:8px; padding:10px;">
<!-- First Contact -->
<div id="contact_1_wrapper" class="bg-white p-2 mb-2 rounded contact-block">
<div class="d-flex justify-content-between align-items-center mb-2">
<h6 class="modal-subtitle mb-0">Contact 1</h6>
<div class="d-flex align-items-center">
<i class="mdi mdi-trash-can text-danger" style="cursor:pointer; font-size:24px !important;" onclick="removeContact(this)" id="contact_1_remove"></i>
</div>
</div>
<!-- Contact Form Fields -->
<input type="hidden" name="primarykey[]" id="contact_id_1" value=""/>
<div class="form-group mb-2">
<label for="name">Name <span class="text-danger">*</span></label>
<input type="text" class="form-control" placeholder="Enter Contact Name" name="name[]" id="name" required>
</div>
<div class="form-group mb-2">
<label for="designation">Designation <span class="text-danger">*</span></label>
<input type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" id="designation" required>
</div>
<div class="form-group mb-2">
<label for="email">Email <span class="text-danger">*</span></label>
<input type="email" class="form-control" placeholder="Enter Contact Email" name="email[]" id="email" required>
</div>
<div class="form-group mb-2">
<label for="mobile">Mobile <span class="text-danger">*</span></label>
<input type="tel" class="form-control" placeholder="Enter Contact Mobile" pattern="[0-9]{10}" name="mobile[]" id="mobile" required>
</div>
</div>
<!-- Container for dynamically added contacts -->
<div id="container"></div>
<div>
<button type="button" class="btn btn-primary btn-sm ac me-3" style="width: 100%;" onclick="appendContactHtml()" id="add"><i class="mdi mdi-plus"></i> Add Contact</button>
</div>
</div>
</div>
</form>
</div>
@ -310,16 +326,17 @@
$(document).ready(function () {
insurer_Branch_PrimaryKey = $('#insurer_id_branch').val();
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
var myModal = new bootstrap.Modal(document.getElementById('insurerBranchModal'));
myModal.hide();
// $('#add_branch').hide();
$('.btnBack').hide();
// $('.btnBack').hide();
if(insurer_Branch_PrimaryKey !== ''){
var branchTable = '';
var data = <?= isset($insuer_branch) ? json_encode($insuer_branch) : '[]' ?>;
console.log("insurer branch data", data);
$.each(data, function(index, item) {
branchTable += `
<tr>
@ -347,11 +364,11 @@
$("#insurer_branch_form")[0].reset();
contactCount = 1
insurer_branch_form_action = '<?= base_url("master/insurer/branch/create"); ?>';
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
var myModal = new bootstrap.Modal(document.getElementById('insurerBranchModal'));
myModal.show();
// $('#add_branch').show();
// $('#branch_table').hide();
$('.btnBack').show();
// $('.btnBack').show();
// $('#btnBranchAdd').hide();
$('#branch_name').val('');
@ -391,12 +408,12 @@
$('.btnBack').click(function(){
$("#insurer_branch_form")[0].reset();
contactCount = 1
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
myModal.hide();
$('.close').click();
// $('#add_branch').hide();
// $('#branch_table').show();
$('.btnBack').hide();
// $('.btnBack').hide();
// $('#btnBranchAdd').show();
$('#branch_name').val('');
@ -409,6 +426,7 @@
$('#email').val('');
$('#mobile').val('');
$('#designation').val('');
$('#container').empty(); $('#contact_1_wrapper input').val('');
})
@ -430,12 +448,12 @@
dataType: 'json',
processData: false,
contentType: false,
beforeSend: function() {
$('.loader').fadeIn();
$('.loader-mask').fadeIn();
},
success: function(res) {
$("#insurer_branch_form")[0].reset();
setTimeout(function() {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
}, 1000);
console.log(res);
$('#insurer_branch_list tr').remove();
var insurerBranchTableInsert = ''
@ -453,9 +471,9 @@
});
$('#insurer_branch_list').append(insurerBranchTableInsert);
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
myModal.hide();
$('#container').empty(); $('#contact_1_wrapper input').val('');
$('.close').click();
// window.location.reload();
// $('#add_branch').hide();
// $('#branch_table').show();
// $('.btnBack').hide();
@ -467,10 +485,17 @@
console.error(status, error);
setTimeout(function() {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
toastr.warning('Something Wrong!', 'warning');
}, 1000);
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
toastr.warning('Something Wrong!', 'warning');
}, 1000);
},
complete: function() {
setTimeout(function() {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
}, 1000);
$('.close').click();
}
});
@ -501,11 +526,11 @@
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
}, 1000);
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
var myModal = new bootstrap.Modal(document.getElementById('insurerBranchModal'));
myModal.show();
// $('#add_branch').show();
// $('#branch_table').show();
$('.btnBack').show();
// $('.btnBack').show();
// $('#btnBranchAdd').hide();
console.log("res.levelcontact[0].id"+res.levelcontact[0].id);
$('#branch_name').val(res.insurerbranch.branch_name);
@ -661,6 +686,7 @@
var container = document.getElementById('container');
var uniqueId = Date.now().toString();
// <input type="hidden" name="primarykey[]" id="contact_id_1" value="${contact !== undefined && contact !== false ? contact.id : ''}"/>
var html = `
<div id="${uniqueId}" class="bg-white p-2 mb-2 rounded contact-block">
<div class="d-flex justify-content-between align-items-center mb-2">
@ -669,13 +695,18 @@
<i class="mdi mdi-trash-can text-danger" style="cursor:pointer; font-size:24px !important;" onclick="removeContact(this)" id="${uniqueId}_remove"></i>
</div>
</div>
<div class="form-row">
<input type="hidden" name="primarykey[]" value="${contact ? contact.id : ''}"/>
<div class="form-row">
<div class="form-group col-md-12">
<label>Name<span class="text-danger">*</span></label>
<input value="${contact ? contact.name : ''}" type="text" class="form-control" placeholder="Enter Contact Name" name="name[]" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label>Designation<span class="text-danger">*</span></label>
<input value="${contact ? contact.designation : ''}" type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label>Email<span class="text-danger">*</span></label>
@ -688,12 +719,6 @@
<input value="${contact ? contact.mobile : ''}" type="tel" class="form-control" placeholder="Enter Contact Mobile" pattern="[0-9]{10}" name="mobile[]" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label>Designation<span class="text-danger">*</span></label>
<input value="${contact ? contact.designation : ''}" type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" required>
</div>
</div>
</div>
`;
@ -705,18 +730,29 @@
}
function removeContact(btn){
var $block = $(btn).closest('.contact-block');
var isFirst = $block.attr('id') === 'contact_1_wrapper';
function removeContact(button) {
var uniqueId = button.id.split("_")[0];
var contactSection = document.getElementById(uniqueId);
if (contactSection) {
contactSection.parentNode.removeChild(contactSection);
renumberContacts(); // ✅ renumber after removal
toggleAddButton();
if (isFirst) {
var $next = $('#container .contact-block').first();
if ($next.length){
$block.replaceWith($next);
$next.attr('id','contact_1_wrapper');
$next.find('.modal-subtitle').text('Contact 1');
} else {
$block.find('input').val('');
return;
}
} else {
$block.remove();
}
renumberContacts();
toggleAddButton();
}
function toggleAddButton() {
var totalContacts = document.querySelectorAll('.contact-block, #contact_1_wrapper').length;
var addButton = document.querySelector('.ac');

View File

@ -68,9 +68,9 @@
$('#btnBranchAdd').hide();
toastr.warning('First Add the Insurer!', 'warning',{timeOut: 2000});
}else{
if ($('#btnBranchBack')[0].style.display == 'none') {
// if ($('#btnBranchBack')[0].style.display == 'none') {
$('#btnBranchAdd').show();
}
// }
}
}

View File

@ -14,17 +14,17 @@
<!-- Optional CSS -->
<style>
/* Make modal really XL and scrollable */
#branchModal .modal-dialog.modal-xl {
#tpaBranchModal .modal-dialog.modal-xl {
max-width: 90%;
height: 90vh;
}
#branchModal .modal-content {
#tpaBranchModal .modal-content {
height: 100%;
overflow: hidden;
}
#branchModal .modal-body {
#tpaBranchModal .modal-body {
overflow-y: auto;
max-height: 80vh;
}
@ -166,7 +166,7 @@
</div>
<!-- end -->
<!-- Modal -->
<div class="modal fade" id="branchModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal fade" id="tpaBranchModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-xl" style="max-width: 1140px !important;">
<div class="modal-content">
<!-- Modal Header -->
@ -181,18 +181,22 @@
<div class="modal-body" style="overflow-y:auto; max-height:80vh;">
<form id="insurer_branch_form" class="parsley-examples" method="post" enctype="multipart/form-data">
<div class="row">
<input type="hidden" class="form-control" value="<?= csrf_hash() ?>" name="<?= csrf_token() ?>" />
<input type="hidden" name="PrimaryKey" id="tpa_Branch_PrimaryKey" />
<input type="hidden" name="tpa_id" id="tpa_id_branch" value="<?= isset($tpa['id']) ? $tpa['id'] : '' ?>"/>
<!-- Left Section: Branch Details -->
<div class="col-md-8 d-flex flex-column" style="max-height: calc(80vh - 50px);">
<!-- Branch Name & Code -->
<div class="form-row">
<div class="form-group col-md-6">
<label for="branch_name">Branch Name <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_name" name="branch_name" required>
<input type="text" class="form-control" id="branch_name"
placeholder="Enter Branch Name" name="branch_name" required>
</div>
<div class="form-group col-md-6">
<label for="branch_code">Branch Code <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_code" name="branch_code" required>
<input type="text" class="form-control" id="branch_code"
placeholder="Enter Branch Code" name="branch_code" required>
</div>
</div>
@ -200,11 +204,11 @@
<div class="form-row">
<div class="form-group col-md-6">
<label for="address1">Address Line 1 <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="address1" name="address1" required>
<input type="text" class="form-control" id="address1" name="address1" placeholder="Enter Address 1" required>
</div>
<div class="form-group col-md-6">
<label for="address2">Address Line 2</label>
<input type="text" class="form-control" id="address2" name="address2">
<input type="text" class="form-control" id="address2" placeholder="Enter Address 2" name="address2">
</div>
</div>
@ -213,15 +217,17 @@
<div class="form-group col-md-6">
<label for="state">State <span class="text-danger">*</span></label>
<select class="form-control" id="state" name="state" required>
<option value="">Select State</option>
<?php foreach($state as $value) { ?>
<option value="<?= $value['id'] ?>"><?= $value['state'] ?></option>
<?php } ?>
<option value="">Select State</option>
<?php if ($state) {
foreach($state as $value) { ?>
<option value="<?= $value['id'] ?>"><?= $value['state'] ?></option>
<?php } }?>
</select>
</div>
<div class="form-group col-md-6">
<label for="district">District <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="district" name="district" required>
<input type="text" class="form-control" id="district"
placeholder="Enter District" name="district" required>
</div>
</div>
@ -229,18 +235,19 @@
<div class="form-row">
<div class="form-group col-md-6">
<label for="branch_city">City <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="branch_city" name="city" required>
<input type="text" class="form-control" id="branch_city"
placeholder="Enter City" name="city" required>
</div>
<div class="form-group col-md-6">
<label for="pincode">Pincode <span class="text-danger">*</span></label>
<input type="text" class="form-control" id="pincode" name="pincode" required>
<input type="text" class="form-control" id="pincode" placeholder="Enter Pincode" name="pincode" required>
</div>
</div>
<!-- Submit / Cancel -->
<div class="form-row">
<!-- <div class="form-group col-md-12 mt-2"> -->
<div class="mt-2">
<!-- <div class="form-group col-md-12 mt-2"> -->
<div style="margin-top: 85px;">
<button type="submit" class="btn app-btn-secondary mr-2" id="btnSubmit">Submit</button>
<button type="button" class="btn app-btn-outline-secondary btnBack" id="btnBack" data-dismiss="modal" aria-hidden="true">Cancel</button>
</div>
@ -260,22 +267,30 @@
</div>
<!-- Contact Form Fields -->
<input type="hidden" name="primarykey[]" id="contact_id_1" value=""/>
<div class="form-group mb-2">
<!-- <input type="hidden" name="primarykey[]" id="contact_id_1" value=""/> -->
<div class="form-row">
<div class="form-group col-md-12">
<label for="name">Name <span class="text-danger">*</span></label>
<input type="text" class="form-control" placeholder="Enter Contact Name" name="name[]" id="name" required>
<input value="" type="text" class="form-control" placeholder="Enter Contact Name" name="name[]" id="name" required>
</div>
<div class="form-group mb-2">
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="designation">Designation <span class="text-danger">*</span></label>
<input type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" id="designation" required>
<input value="" type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" id="designation" required>
</div>
<div class="form-group mb-2">
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="email">Email <span class="text-danger">*</span></label>
<input type="email" class="form-control" placeholder="Enter Contact Email" name="email[]" id="email" required>
<input value="" data-parsley-type="email" type="email" data-parsley-type="email" class="form-control" placeholder="Enter Contact Email" name="email[]" id="email" required>
</div>
<div class="form-group mb-2">
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="mobile">Mobile <span class="text-danger">*</span></label>
<input type="tel" class="form-control" placeholder="Enter Contact Mobile" pattern="[0-9]{10}" name="mobile[]" id="mobile" required>
<input value="" data-parsley-type="number" data-parsley-length="[10,10]" type="tel" class="form-control" placeholder="Enter Contact Mobile" name="mobile[]" id="mobile" required>
</div>
</div>
</div>
@ -309,21 +324,21 @@ $(document).ready(function () {
var tpa_Branch_PrimaryKey = $('#tpa_id_branch').val();
var tpa_branch_form_action = '';
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
var myModal = new bootstrap.Modal(document.getElementById('tpaBranchModal'));
myModal.hide();
// $('#add_branch').hide();
$('.btnBack').hide();
// $('.btnBack').hide();
loadBranchList();
$('#btnBranchAdd').click(function(){
tpa_branch_form_action = '<?= base_url("master/tpa/branch/create"); ?>';
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
var myModal = new bootstrap.Modal(document.getElementById('tpaBranchModal'));
myModal.show();
// $('#add_branch').show();
// $('#branch_table').hide();
$('.btnBack').show();
// $('.btnBack').show();
// $('#btnBranchAdd').hide();
$('#branch_name').val('');
@ -364,11 +379,11 @@ $(document).ready(function () {
$('.btnBack').click(function(){
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
var myModal = new bootstrap.Modal(document.getElementById('tpaBranchModal'));
myModal.hide();
// $('#add_branch').hide();
// $('#branch_table').show();
$('.btnBack').hide();
// $('.btnBack').hide();
// $('#btnBranchAdd').show();
$('#branch_name').val('');
@ -381,6 +396,7 @@ $(document).ready(function () {
$('#email').val('');
$('#mobile').val('');
$('#designation').val('');
$('#container').empty(); $('#contact_1_wrapper input').val('');
})
@ -449,8 +465,8 @@ $(document).ready(function () {
});
}
$('#tpa_branch_list').append(tpaBranchTableInsert);
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
myModal.hide();
$('#container').empty(); $('#contact_1_wrapper input').val('');
$('.close').click();
// $('#add_branch').hide();
// $('#branch_table').show();
// $('.btnBack').hide();
@ -464,6 +480,13 @@ $(document).ready(function () {
$('.loader-mask').delay(350).fadeOut('slow');
toastr.warning('Something Wrong!', 'warning');
}, 1000);
},
complete: function() {
setTimeout(function() {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
}, 1000);
$('.close').click();
}
});
}
@ -487,7 +510,7 @@ $(document).ready(function () {
}, 1000);
console.log("tpa.............");
console.log(res)
var myModal = new bootstrap.Modal(document.getElementById('branchModal'));
var myModal = new bootstrap.Modal(document.getElementById('tpaBranchModal'));
myModal.show();
// $('#add_branch').show();
// $('#branch_table').hide();
@ -663,7 +686,7 @@ function renumberContacts() {
var container = document.getElementById('container');
var uniqueId = Date.now().toString();
// <input type="hidden" name="primarykey[]" value="${contact ? contact.id : ''}"/>
var html = `
<div id="${uniqueId}" class="bg-white p-2 mb-2 rounded contact-block">
<div class="d-flex justify-content-between align-items-center mb-2">
@ -673,12 +696,18 @@ function renumberContacts() {
</div>
</div>
<div class="form-row">
<input type="hidden" name="primarykey[]" value="${contact ? contact.id : ''}"/>
<div class="form-group col-md-12">
<label>Name<span class="text-danger">*</span></label>
<input value="${contact ? contact.name : ''}" type="text" class="form-control" placeholder="Enter Contact Name" name="name[]" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label>Designation<span class="text-danger">*</span></label>
<input value="${contact ? contact.designation : ''}" type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label>Email<span class="text-danger">*</span></label>
@ -691,12 +720,6 @@ function renumberContacts() {
<input value="${contact ? contact.mobile : ''}" type="tel" class="form-control" placeholder="Enter Contact Mobile" pattern="[0-9]{10}" name="mobile[]" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label>Designation<span class="text-danger">*</span></label>
<input value="${contact ? contact.designation : ''}" type="text" class="form-control" placeholder="Enter Designation Name" name="designation[]" required>
</div>
</div>
</div>
`;
@ -707,15 +730,26 @@ function renumberContacts() {
}
}
function removeContact(button) {
var uniqueId = button.id.split("_")[0];
var contactSection = document.getElementById(uniqueId);
function removeContact(btn){
var $block = $(btn).closest('.contact-block');
var isFirst = $block.attr('id') === 'contact_1_wrapper';
if (contactSection) {
contactSection.parentNode.removeChild(contactSection);
renumberContacts(); // ✅ renumber after removal
toggleAddButton();
if (isFirst) {
var $next = $('#container .contact-block').first();
if ($next.length){
$block.replaceWith($next);
$next.attr('id','contact_1_wrapper');
$next.find('.modal-subtitle').text('Contact 1');
} else {
$block.find('input').val('');
return;
}
} else {
$block.remove();
}
renumberContacts();
toggleAddButton();
}
function toggleAddButton() {

View File

@ -83,9 +83,9 @@ body {
$('#btnBranchAdd').hide();
toastr.warning('First Add the TPA!', 'warning',{timeOut: 2000});
}else{
if ($('#btnBranchBack')[0].style.display == 'none') {
// if ($('#btnBranchBack')[0].style.display == 'none') {
$('#btnBranchAdd').show();
}
// }
}
}