|
|
<html> <header> <script src="https://checkout.razorpay.com/v1/checkout.js"></script><script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script type="text/javascript">
const paymentStart=(id,amount,isBulk)=>{
console.log("payment started" + id); console.log("payment isBulk started" + isBulk);
amount = Number(amount);
console.log("amount==>" + amount);
if (amount === 0) {
const freeOrderId = "ord-" + Date.now(); const freePaymentId = "pay-" + Date.now();
Swal.fire({ title: "Free Entry", text: "This category is free of cost. Confirming booking...", icon: "info", allowOutsideClick: false, didOpen: () => Swal.showLoading() });
updatePaymentInServer( freePaymentId, freeOrderId, id, amount, isBulk ); return; }
$.ajax({ url:'/victoriapublichall/bookingapi/create_order', data:JSON.stringify({amount:amount,info:'order_request',id:id,isBulk:isBulk}), contentType:'application/json', type:'POST', dataType:'json', success:function(response){
let amt = response.amount; let refid = id; console.log("refid") console.log("FIRST:==>"); console.log(response); if(response.status=="created"){
let options = { /* "key": "[[${keyId}]]", */ "key": "rzp_test_tDkHFEqWXmuEi8", // "key":"rzp_live_ySI5Ns54Y7qOcJ", "amount": response.amount, // Amount is in currency subunits. Default currency is INR. Hence, 50000 refers to 50000 paise "currency": response.currency, "name": "Greater Chennai Corporation", "description": "Victoria public Hall Booking Transaction", "image": "https://upload.wikimedia.org/wikipedia/commons/a/a8/Chennai_Corporation_Emblem.png", "order_id": response.id, //This is a sample Order ID. Pass the `id` obtained in the response of Step 1 "handler": function (response){
console.log("second==>\n"); console.log(response); console.log(response.razorpay_payment_id); console.log(response.razorpay_order_id); console.log(response.razorpay_signature); console.log("payment success"); //alert("congrates !payment successfull") updatePaymentInServer(response.razorpay_payment_id,response.razorpay_order_id,refid,amt,isBulk); },
modal: { ondismiss: function () { console.log("Razorpay popup closed by user");
const loader = document.getElementById("pageLoader"); if (loader) { loader.style.display = "block"; }
// small delay so loader is visible setTimeout(() => { // REDIRECT BACK TO BOOKING PAGE window.location.replace("/victoriapublichall/register"); }, 300); } }, "prefill": { "name": "", "email": "", "contact": "" }, "notes": { "address": "Greater Chennai Corporation." }, "theme": { "color": "#3399cc" } }; var rzp1 = new Razorpay(options); rzp1.on('payment.failed', function (response){ console.log(response.error.code); console.log(response.error.description); console.log(response.error.source); console.log(response.error.step); console.log(response.error.reason); console.log(response.error.metadata.order_id); console.log(response.error.metadata.payment_id); alert("Payment Failed"); }); rzp1.open(); } }, error:function(error){ console.log(error); alert("error"); } }) }; function updatePaymentInServer(payment_id,order_id,refid,amt,isbulk){ console.log("amt...",amt); let mobile_no = "";
if (isbulk === 1 || isbulk === true) {
mobile_no = $("#paymentNumber").val()?.trim() ; } else { mobile_no = $("#contactDisplay").text()?.trim() ; }
console.log("mobile_no==>", mobile_no);
$.ajax({ url:'/victoriapublichall/bookingapi/Confirm', data:JSON.stringify({payment_id:payment_id,order_id:order_id,id:refid,amt:amt,mobile_no: mobile_no,isBulk:isbulk}), contentType:'application/json', type:'POST', dataType:'text', success:function(response){ console.log("update payment in server");
console.log("order_id...",order_id); window.location.href = "/victoriapublichall/bookingQRCode?orderid=" +order_id;
}, error:function(error){ swal("Failed`!", "Failed to confirm your booking. If payment was debited, it will be credited back, or you can check with your bank.", "error"); } }); }; </script> </header> </html>
|