Browse Source

changes added in pages

master
yoganandhan 8 months ago
parent
commit
ea900b6c20
  1. 79
      src/main/java/com/gcc/crslogs/controller/ApiController.java
  2. 23
      src/main/java/com/gcc/crslogs/service/BirthAndDeathDetailsService.java
  3. 100
      src/main/resources/templates/modules/crslogspages/birth.html
  4. 108
      src/main/resources/templates/modules/crslogspages/death.html

79
src/main/java/com/gcc/crslogs/controller/ApiController.java

@ -36,7 +36,6 @@ import jakarta.servlet.http.HttpSession;
@RequestMapping("/crs/api")
public class ApiController {
@Autowired
private JdbcTemplate jdbcTemplate;
@ -46,10 +45,8 @@ public class ApiController {
@Autowired
private BirthAndDeathDetailsService birthAndDeathDetailsService;
private final RestTemplate restTemplate = new RestTemplate();
/* ///////////////// otp configuration ///////////////////// */
@GetMapping(value = "/sendOTP")
@ -70,20 +67,26 @@ public class ApiController {
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd-MMM-yyyy%20HH:mm");
LocalDateTime now = LocalDateTime.now();
System.out.println(dtf.format(now));
//String generatedToken = "Welcome to GCC! Your OTP for C%26D waste collectors Registration process is "+otp;
// String generatedToken = "Welcome to GCC! Your OTP for C%26D waste collectors
// Registration process is "+otp;
//String generatedToken = "Welcome to GCC "+otp+" is your OTP for gcc QR System";
// String generatedToken = "Welcome to GCC "+otp+" is your OTP for gcc QR
// System";
String generatedToken = "Welcome to GCC! Your OTP for Birth and Death Certificate login is " + otp;
//String generatedToken = "Welcome to GCC! Your OTP for C and D waste collectors Registration process is " + otp;
// String generatedToken = "Welcome to GCC! Your OTP for C and D waste
// collectors Registration process is " + otp;
// String key="qxg4mklD";
String key = "pfTEYN6H";
String urlString= appConfig.getGetOtpUrl()+"from=GCCCRP&key="+key+"&sender=GCCCRP&to="+MobileNo+"&body="+generatedToken+"&entityid=1401572690000011081&templateid=1407174687453240990";
//String urlString = "https://tmegov.onex-aura.com/api/sms?from=GCCCRP&key=pfTEYN6H&sender=GCCCRP&to=9360777472&body=Welcome%20to%20GCC!%20Your%20OTP%20for%20C%26D%20waste%20collectors%20Registration%20process%20is%20"+otp+"&entityid=1401572690000011081&templateid=1407172959127552127";
//String urlString= appConfig.getGetOtpUrl()+"from=GCCCRP&key="+key+"&sender=GCCCRP&to="+MobileNo+"&body="+generatedToken+"&entityid=1401572690000011081&templateid=1407168250479102852";
// String urlString=appConfig.getGetOtpUrl()+"user=GCCtrans&authkey=92kOC1RBGBIws&sender=GCCCRP&mobile="+MobileNo+"&text="+generatedToken+"&rpt=1&summary=1&output=json&entityid=1401572690000011081&templateid=1407168250479102852";
String urlString = appConfig.getGetOtpUrl() + "from=GCCCRP&key=" + key + "&sender=GCCCRP&to=" + MobileNo
+ "&body=" + generatedToken + "&entityid=1401572690000011081&templateid=1407174687453240990";
// String urlString =
// "https://tmegov.onex-aura.com/api/sms?from=GCCCRP&key=pfTEYN6H&sender=GCCCRP&to=9360777472&body=Welcome%20to%20GCC!%20Your%20OTP%20for%20C%26D%20waste%20collectors%20Registration%20process%20is%20"+otp+"&entityid=1401572690000011081&templateid=1407172959127552127";
// String urlString=
// appConfig.getGetOtpUrl()+"from=GCCCRP&key="+key+"&sender=GCCCRP&to="+MobileNo+"&body="+generatedToken+"&entityid=1401572690000011081&templateid=1407168250479102852";
// String
// urlString=appConfig.getGetOtpUrl()+"user=GCCtrans&authkey=92kOC1RBGBIws&sender=GCCCRP&mobile="+MobileNo+"&text="+generatedToken+"&rpt=1&summary=1&output=json&entityid=1401572690000011081&templateid=1407168250479102852";
System.out.print("\n urlString---: " + urlString);
String bodyMessage = "";
try {
@ -104,7 +107,8 @@ public class ApiController {
}
/////////////////////verify otp method with session handling/////////////////////
///////////////////// verify otp method with session
///////////////////// handling/////////////////////
@GetMapping(value = "/verifyOTP")
public Map<String, String> verifyOtp(HttpServletRequest request, @RequestParam String otp,
@ -127,7 +131,8 @@ public class ApiController {
session.setAttribute("verifiedotp", "success");
response.put("userName", (String) userDetails.get("user_name"));
}
System.out.println("userId---:" + userDetails.get("user_id")+"\nuserName:"+userDetails.get("user_name"));
System.out.println(
"userId---:" + userDetails.get("user_id") + "\nuserName:" + userDetails.get("user_name"));
}
response.put("status", "Success");
@ -151,10 +156,6 @@ public class ApiController {
return response;
}
/////////////////////// birth details getting method///////////////////
// now using in live
// @GetMapping("/birth-details")
@ -174,11 +175,11 @@ public class ApiController {
// }
// try {
// Map<String, Object> result = birthAndDeathDetailsService.fetchBirthCertificate(dob, sex, regno, childname, fathername, mothername);
// Map<String, Object> result =
// birthAndDeathDetailsService.fetchBirthCertificate(dob, sex, regno, childname,
// fathername, mothername);
// return ResponseEntity.ok(result);
// } catch (Exception e) {
// e.printStackTrace();
@ -189,7 +190,6 @@ public class ApiController {
// }
// }
// from external api restapiservices
@PostMapping("/birth-details")
@ -212,8 +212,7 @@ public ResponseEntity<?> fetchBirthCertificateSecurely(@RequestBody Map<String,
try {
Map<String, Object> result = birthAndDeathDetailsService.fetchLocalBirthCertificate(
dob, fathername, mothername, childname, sex
);
dob, fathername, mothername, childname, sex);
return ResponseEntity.ok(result);
} catch (Exception e) {
e.printStackTrace();
@ -241,10 +240,6 @@ public ResponseEntity<?> fetchBirthCertificateSecurely(@RequestBody Map<String,
}
}
// from external api restapiservices death certificate
@PostMapping("/death-details")
@ -265,10 +260,11 @@ public ResponseEntity<?> fetchDeathCertificateSecurely(@RequestBody Map<String,
// System.out.println("fathername " + fathername);
// System.out.println("mothername " + mothername);
System.out.println("sex: " + sex);
try {
Map<String, Object> result = birthAndDeathDetailsService.fetchLocalDeathCertificate(
dod, fathername, mothername, personname, sex
);
dod, fathername, mothername, personname, sex);
return ResponseEntity.ok(result);
} catch (Exception e) {
e.printStackTrace();
@ -296,14 +292,6 @@ String message = e.getMessage() != null ? e.getMessage().toLowerCase() : "";
}
}
//////////////////////// death details getting method///////////////////
@GetMapping("/death-details")
@ -323,7 +311,8 @@ String message = e.getMessage() != null ? e.getMessage().toLowerCase() : "";
}
try {
Map<String, Object> result = birthAndDeathDetailsService.fetchDeathCertificate(dod, sex, regno, personname, fathername, mothername);
Map<String, Object> result = birthAndDeathDetailsService.fetchDeathCertificate(dod, sex, regno, personname,
fathername, mothername);
return ResponseEntity.ok(result);
} catch (Exception e) {
e.printStackTrace();
@ -334,19 +323,17 @@ String message = e.getMessage() != null ? e.getMessage().toLowerCase() : "";
}
}
///////////////// save new user method/////////////////
@PostMapping("/saveNewUser")
public ResponseEntity<?> saveNewUser (@RequestParam String user_name, @RequestParam(required = false) String user_address, @RequestParam String user_mobile) {
public ResponseEntity<?> saveNewUser(@RequestParam String user_name,
@RequestParam(required = false) String user_address, @RequestParam String user_mobile) {
// Convert name to uppercase before saving
String upperCaseName = user_name.toUpperCase();
return birthAndDeathDetailsService.saveNewUser(upperCaseName, user_address, user_mobile);
}
///////////////// check existing or not method////////////
@PostMapping("/checkUser")
@ -362,11 +349,11 @@ String message = e.getMessage() != null ? e.getMessage().toLowerCase() : "";
}
}
/////////////////////// save certificate logs method///////////////////
@PostMapping("/saveCertificateLogs")
public ResponseEntity<?> saveCertificateLogs(HttpServletRequest request, @RequestParam String regNo, @RequestParam String eventDate,
public ResponseEntity<?> saveCertificateLogs(HttpServletRequest request, @RequestParam String regNo,
@RequestParam String eventDate,
@RequestParam String Url, @RequestParam String service) {
HttpSession session = request.getSession();
int userid = 0;
@ -379,6 +366,4 @@ String message = e.getMessage() != null ? e.getMessage().toLowerCase() : "";
}
}

23
src/main/java/com/gcc/crslogs/service/BirthAndDeathDetailsService.java

@ -122,11 +122,12 @@ public class BirthAndDeathDetailsService {
if (result.containsKey("certificate_details")) {
List<Map<String, Object>> details = (List<Map<String, Object>>) result.get("certificate_details");
List<Map<String, Object>> filtered = details.stream()
.filter(row -> row.get("pdf_url") != null && !row.get("pdf_url").toString().trim().isEmpty())
.toList();
// List<Map<String, Object>> filtered = details.stream()
// .filter(row -> row.get("pdf_url") != null &&
// !row.get("pdf_url").toString().trim().isEmpty())
// .toList();
result.put("certificate_details", filtered);
result.put("certificate_details", details);
}
return result;
@ -164,19 +165,23 @@ public class BirthAndDeathDetailsService {
ResponseEntity<String> response = restTemplate.postForEntity(apiUrl, entity, String.class);
System.out.println("api:" + apiUrl);
System.out.println("params:" + params);
String rawJson = response.getBody();
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> result = mapper.readValue(rawJson, new TypeReference<Map<String, Object>>() {
});
// ✅ Only keep records that actually have a PDF link
if (result.containsKey("certificate_details")) {
List<Map<String, Object>> details = (List<Map<String, Object>>) result.get("certificate_details");
List<Map<String, Object>> filtered = details.stream()
.filter(row -> row.get("pdf_url") != null && !row.get("pdf_url").toString().trim().isEmpty())
.toList();
// List<Map<String, Object>> filtered = details.stream()
// .filter(row -> row.get("pdf_url") != null &&
// !row.get("pdf_url").toString().trim().isEmpty())
// .toList();
result.put("certificate_details", filtered);
result.put("certificate_details", details);
}
return result;

100
src/main/resources/templates/modules/crslogspages/birth.html

@ -20,8 +20,6 @@
<style>
.form-check {
display: flex;
align-items: center;
@ -62,7 +60,8 @@ label {
}
.header .center-text {
position: absolute; /* Centered text */
position: absolute;
/* Centered text */
left: 50%;
transform: translateX(-50%);
text-align: center;
@ -105,7 +104,8 @@ label {
.menu-dropdown {
right: 0;
left: 0;
z-index: 1000; /* Add z-index to bring the menu above other elements */
z-index: 1000;
/* Add z-index to bring the menu above other elements */
}
/* Mobile Specific Styling */
@ -115,11 +115,13 @@ label {
justify-content: space-between;
align-items: center;
}
.center-text {
font-size: 18px !important;
flex-grow: 1;
text-align: center;
}
.menu-dropdown {
right: 0;
left: 0;
@ -208,7 +210,8 @@ body {
}
.bottom-container {
margin-bottom: 50px; /* Adjust as needed */
margin-bottom: 50px;
/* Adjust as needed */
}
@ -303,7 +306,8 @@ body {
border: 1px dashed #aaa;
padding: 10px 15px;
user-select: none;
pointer-events: none; /* disables copy */
pointer-events: none;
/* disables copy */
text-decoration: line-through;
color: #333;
transform: rotate(-1deg);
@ -319,9 +323,12 @@ body {
#entered-captcha,
#generated-captcha {
-webkit-user-select: none; /* Chrome/Safari */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* IE10+ */
-webkit-user-select: none;
/* Chrome/Safari */
-moz-user-select: none;
/* Firefox */
-ms-user-select: none;
/* IE10+ */
user-select: none;
}
@ -331,8 +338,10 @@ body {
/* Decrease top margin for the container */
.container.mt-4, .container.mt-5 {
margin-top: 10px !important; /* Adjust this value as needed */
.container.mt-4,
.container.mt-5 {
margin-top: 10px !important;
/* Adjust this value as needed */
}
@ -410,6 +419,7 @@ body {
@media (min-width: 769px) {
.mobile-username,
.mobile-logout {
display: block;
@ -420,9 +430,6 @@ body {
/* left:47%; */
}
}
</style>
@ -517,14 +524,14 @@ body {
<div class="row mb-3">
<div class="col-md-5">
<label class="form-label" for="registerno">Enter Register Number </label> <input type="text"
id="regno" class="form-control"
placeholder="Enter Register number">
<label class="form-label" for="registerno">Enter Register Number </label> <input type="text" id="regno"
class="form-control" placeholder="Enter Register number">
</div>
<div class="col-md-5">
<label class="form-label" for="name">Child Name </label> <input type="text"
class="form-control" placeholder="Enter Child Name here" id="childname" oninput="this.value = this.value.replace(/[^a-zA-Z\s]/g, '')">
<label class="form-label" for="name">Child Name </label> <input type="text" class="form-control"
placeholder="Enter Child Name here" id="childname"
oninput="this.value = this.value.replace(/[^a-zA-Z\s]/g, '')">
</div>
</div>
@ -533,19 +540,26 @@ body {
<!-- Row 2: D.O.B and Gender -->
<div class="row mb-3">
<div class="col-md-5">
<label class="form-label" for="name">Date of Birth<span
class="text-danger">*</span></label> <input type="DATE"
class="form-control" placeholder="Enter Door Number"
id="dateofbirth" onclick="this.showPicker()" required>
<label class="form-label" for="name">Date of Birth<span class="text-danger">*</span></label> <input
type="DATE" class="form-control" placeholder="Enter Door Number" id="dateofbirth"
onclick="this.showPicker()" required>
</div>
<div class="col-md-5"> <label class="form-label d-block">Gender <span class="text-danger">*</span></label>
<div class="d-flex align-items-center gap-3">
<div class="form-check form-check-inline mb-0">
<input class="form-check-input" type="radio" name="gender" id="birthGenderMale" value="Male" required> <label class="form-check-label" for="birthGenderMale">Male</label> </div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio" name="gender" id="birthGenderFemale" value="Female" required> <label class="form-check-label" for="birthGenderFemale">Female</label> </div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio" name="gender" id="birthGenderTrans" value="Transgender" required> <label class="form-check-label" for="birthGenderTrans">Transgender</label> </div> </div> </div>
<input class="form-check-input" type="radio" name="gender" id="birthGenderMale" value="Male"
required> <label class="form-check-label" for="birthGenderMale">Male</label>
</div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio"
name="gender" id="birthGenderFemale" value="Female" required> <label class="form-check-label"
for="birthGenderFemale">Female</label> </div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio"
name="gender" id="birthGenderTrans" value="g" required> <label class="form-check-label"
for="birthGenderTrans">Transgender</label> </div>
</div>
</div>
</div>
@ -554,24 +568,23 @@ body {
<!-- Row 3: Parents Details -->
<div class="row mb-3">
<div class="col-md-5">
<label class="form-label" for="name">Name of Father</label> <input type="text"
class="form-control" placeholder="Enter the Father Name"
id="fathername">
<label class="form-label" for="name">Name of Father</label> <input type="text" class="form-control"
placeholder="Enter the Father Name" id="fathername">
</div>
<div class="col-md-5">
<label class="form-label" for="name">Name of Mother</span></label> <input type="text"
class="form-control" placeholder="Enter the Mother Name"
id="mothername">
class="form-control" placeholder="Enter the Mother Name" id="mothername">
</div>
<div class="col-md-5 mt-3">
<label for="birth-captcha-input">Enter Captcha <span class="text-danger">*</span></label>
<div class="d-flex align-items-center">
<div id="birth-captcha" class="captcha-box mr-2" style="width: 140px; text-align: center; user-select: none;"></div>
<button type="button" class="btn btn-sm btn-outline-secondary" onclick="generateCaptcha('birth')">↻</button>
<div id="birth-captcha" class="captcha-box mr-2"
style="width: 140px; text-align: center; user-select: none;"></div>
<button type="button" class="btn btn-sm btn-outline-secondary"
onclick="generateCaptcha('birth')">↻</button>
</div>
<input type="text" id="birth-captcha-input" class="form-control mt-2"
placeholder="Enter Captcha"
<input type="text" id="birth-captcha-input" class="form-control mt-2" placeholder="Enter Captcha"
onpaste="return false" oncopy="return false" oncut="return false" />
</div>
@ -604,10 +617,8 @@ body {
</main>
<div id="pageLoader"
style="display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.8); z-index: 9999; text-align: center;">
<div
style="position: relative; top: 50%; transform: translateY(-50%);">
<div class="spinner-border text-primary" role="status"
style="width: 3rem; height: 3rem;">
<div style="position: relative; top: 50%; transform: translateY(-50%);">
<div class="spinner-border text-primary" role="status" style="width: 3rem; height: 3rem;">
<span class="sr-only">Loading...</span>
</div>
<!-- Add the 'Please wait' text below the spinner -->
@ -619,7 +630,8 @@ body {
<!-- Bootstrap Modal -->
<div class="modal fade" id="birthModal" tabindex="-1" aria-labelledby="birthModalLabel" data-bs-backdrop="static" aria-hidden="true">
<div class="modal fade" id="birthModal" tabindex="-1" aria-labelledby="birthModalLabel" data-bs-backdrop="static"
aria-hidden="true">
<div class="modal-dialog modal-xl modal-dialog-scrollable">
<div class="modal-content">
<div class="modal-header">
@ -641,11 +653,9 @@ body {
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<script
src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js"></script>
<script src="https://cdn.datatables.net/1.13.6/js/jquery.dataTables.min.js"></script>
@ -1124,5 +1134,3 @@ $.ajax({
</body>
</html>

108
src/main/resources/templates/modules/crslogspages/death.html

@ -20,8 +20,6 @@
<style>
.form-check {
display: flex;
align-items: center;
@ -62,7 +60,8 @@ label {
}
.header .center-text {
position: absolute; /* Centered text */
position: absolute;
/* Centered text */
left: 50%;
transform: translateX(-50%);
text-align: center;
@ -105,7 +104,8 @@ label {
.menu-dropdown {
right: 0;
left: 0;
z-index: 1000; /* Add z-index to bring the menu above other elements */
z-index: 1000;
/* Add z-index to bring the menu above other elements */
}
/* Mobile Specific Styling */
@ -115,11 +115,13 @@ label {
justify-content: space-between;
align-items: center;
}
.center-text {
font-size: 18px !important;
flex-grow: 1;
text-align: center;
}
.menu-dropdown {
right: 0;
left: 0;
@ -208,7 +210,8 @@ body {
}
.bottom-container {
margin-bottom: 50px; /* Adjust as needed */
margin-bottom: 50px;
/* Adjust as needed */
}
@ -284,8 +287,7 @@ body {
transition: background-color 0.3s ease;
}
.nav-link:hover
{
.nav-link:hover {
background-color: #006680;
color: #fff;
}
@ -303,7 +305,8 @@ body {
border: 1px dashed #aaa;
padding: 10px 15px;
user-select: none;
pointer-events: none; /* disables copy */
pointer-events: none;
/* disables copy */
text-decoration: line-through;
color: #333;
transform: rotate(-1deg);
@ -319,9 +322,12 @@ body {
#entered-captcha,
#generated-captcha {
-webkit-user-select: none; /* Chrome/Safari */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* IE10+ */
-webkit-user-select: none;
/* Chrome/Safari */
-moz-user-select: none;
/* Firefox */
-ms-user-select: none;
/* IE10+ */
user-select: none;
}
@ -331,8 +337,10 @@ body {
/* Decrease top margin for the container */
.container.mt-4, .container.mt-5 {
margin-top: 10px !important; /* Adjust this value as needed */
.container.mt-4,
.container.mt-5 {
margin-top: 10px !important;
/* Adjust this value as needed */
}
@ -410,6 +418,7 @@ body {
@media (min-width: 769px) {
.mobile-username,
.mobile-logout {
display: block;
@ -420,9 +429,6 @@ body {
/* left:47%; */
}
}
</style>
@ -519,13 +525,13 @@ body {
<div class="col-md-5">
<label class="form-label" for="phoneNumber">Enter Register Number </label> <input type="text"
class="form-control"
placeholder="Enter Register number">
class="form-control" placeholder="Enter Register number">
</div>
<div class="col-md-5">
<label class="form-label" for="name">Person Name </label> <input type="text"
class="form-control" placeholder="Enter Person Name here" id="personname" oninput="this.value = this.value.replace(/[^a-zA-Z\s]/g, '')">
<label class="form-label" for="name">Person Name </label> <input type="text" class="form-control"
placeholder="Enter Person Name here" id="personname"
oninput="this.value = this.value.replace(/[^a-zA-Z\s]/g, '')">
</div>
</div>
@ -534,10 +540,9 @@ body {
<!-- Row 2: D.O.B and Gender -->
<div class="row mb-3">
<div class="col-md-5">
<label class="form-label" for="name">Date of Death<span
class="text-danger">*</span></label> <input type="DATE"
class="form-control" placeholder="Select Date"
id="dateofdeath" onclick="this.showPicker()" required>
<label class="form-label" for="name">Date of Death<span class="text-danger">*</span></label> <input
type="DATE" class="form-control" placeholder="Select Date" id="dateofdeath" onclick="this.showPicker()"
required>
</div>
@ -545,10 +550,18 @@ body {
<div class="col-md-5"> <label class="form-label d-block">Gender <span class="text-danger">*</span></label>
<div class="d-flex align-items-center gap-3">
<div class="form-check form-check-inline mb-0">
<input class="form-check-input" type="radio" name="deathgender" id="deathGenderMale" value="Male" required> <label class="form-check-label" for="deathGenderMale">Male</label> </div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio" name="deathgender" id="deathGenderFemale" value="Female" required> <label class="form-check-label" for="deathGenderFemale">Female</label> </div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio" name="deathgender" id="deathGenderTrans" value="Transgender" required> <label class="form-check-label" for="deathGenderTrans">Transgender</label>
</div> </div> </div>
<input class="form-check-input" type="radio" name="deathgender" id="deathGenderMale" value="Male"
required> <label class="form-check-label" for="deathGenderMale">Male</label>
</div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio"
name="deathgender" id="deathGenderFemale" value="Female" required> <label class="form-check-label"
for="deathGenderFemale">Female</label> </div>
<div class="form-check form-check-inline mb-0"> <input class="form-check-input" type="radio"
name="deathgender" id="deathGenderTrans" value="g" required> <label class="form-check-label"
for="deathGenderTrans">Transgender</label>
</div>
</div>
</div>
</div>
@ -557,24 +570,23 @@ body {
<!-- Row 3: Parents Details -->
<div class="row mb-3">
<div class="col-md-5">
<label class="form-label" for="name">Name of Father</label> <input type="text"
class="form-control" placeholder="Enter the Father Name"
id="deathfathername">
<label class="form-label" for="name">Name of Father</label> <input type="text" class="form-control"
placeholder="Enter the Father Name" id="deathfathername">
</div>
<div class="col-md-5">
<label class="form-label" for="name">Name of Mother</label> <input type="text"
class="form-control" placeholder="Enter the Mother Name"
id="deathmothername">
<label class="form-label" for="name">Name of Mother</label> <input type="text" class="form-control"
placeholder="Enter the Mother Name" id="deathmothername">
</div>
<div class="col-md-5 mt-3">
<label for="death-captcha-input">Enter Captcha <span class="text-danger">*</span></label>
<div class="d-flex align-items-center">
<div id="death-captcha" class="captcha-box mr-2" style="width: 140px; text-align: center; user-select: none;"></div>
<button type="button" class="btn btn-sm btn-outline-secondary" onclick="generateCaptcha('death')">↻</button>
<div id="death-captcha" class="captcha-box mr-2"
style="width: 140px; text-align: center; user-select: none;"></div>
<button type="button" class="btn btn-sm btn-outline-secondary"
onclick="generateCaptcha('death')">↻</button>
</div>
<input type="text" id="death-captcha-input" class="form-control mt-2"
placeholder="Enter Captcha"
<input type="text" id="death-captcha-input" class="form-control mt-2" placeholder="Enter Captcha"
onpaste="return false" oncopy="return false" oncut="return false" />
</div>
@ -600,10 +612,8 @@ body {
</main>
<div id="pageLoader"
style="display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.8); z-index: 9999; text-align: center;">
<div
style="position: relative; top: 50%; transform: translateY(-50%);">
<div class="spinner-border text-primary" role="status"
style="width: 3rem; height: 3rem;">
<div style="position: relative; top: 50%; transform: translateY(-50%);">
<div class="spinner-border text-primary" role="status" style="width: 3rem; height: 3rem;">
<span class="sr-only">Loading...</span>
</div>
<!-- Add the 'Please wait' text below the spinner -->
@ -615,7 +625,8 @@ body {
<!-- Bootstrap Modal -->
<div class="modal fade" id="deathModal" tabindex="-1" aria-labelledby="deathModalLabel" data-bs-backdrop="static" aria-hidden="true">
<div class="modal fade" id="deathModal" tabindex="-1" aria-labelledby="deathModalLabel" data-bs-backdrop="static"
aria-hidden="true">
<div class="modal-dialog modal-xl modal-dialog-scrollable">
<div class="modal-content">
<div class="modal-header">
@ -637,11 +648,9 @@ body {
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<script
src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js"></script>
<script src="https://cdn.datatables.net/1.13.6/js/jquery.dataTables.min.js"></script>
@ -1022,7 +1031,7 @@ $('#pageLoader').show();
if (motherName.trim()) payload.mothername = motherName.trim();
if (personName.trim()) payload.personName = personName.trim();
//console.log("payload:", payload);
$.ajax({
url: '/crs/api/death-details',
method: 'POST',
@ -1030,6 +1039,7 @@ $.ajax({
data: JSON.stringify(payload),
success: function (response) {
//console.log("response:", response);
$('#pageLoader').hide();
if (response && response.certificate_details && response.certificate_details.length > 0) {
@ -1117,5 +1127,3 @@ $.ajax({
</body>
</html>
Loading…
Cancel
Save