$(document).ready(function () { var isMobileDevices = (/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(navigator.userAgent.toLowerCase())); $("#renewPolicyForm").attr("autocomplete","off"); $("#renewPolicyForm").attr('novalidate', 'novalidate'); $(".form-btn").addClass('disabled'); loadPlateCode(); var fields = { "vehicle_regno" : [ {"required" : "required"}, {"onpaste" : "return true;"}, {"ondrag" : "return false;"}, {"ondrop" : "return false;"}, {"type" : "number"} ], "vehicle_code" : [ {"required" : "required"}, {"onpaste" : "return true;"}, {"ondrag" : "return false;"}, {"ondrop" : "return false;"}, {"type" : "text"} ], //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - STARTS "civil_id" : [ {"required" : "required"}, {"onpaste" : "return true;"}, {"ondrag" : "return false;"}, {"ondrop" : "return false;"}, {"type" : "text"} ], //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - Ends }; setTimeout(function() { $(".renewPolicyButton").hide(); }, 100); var validators = { "vehicle_regno" : { id: "vehicle_regno", label: "vehicle_regno-float", errorMessage0: 'Please provide a valid Vehicle Registration Number.', inputpattern: /^\d+$/, required: false }, "vehicle_code" : { id: "vehicle_code", label: "vehicle_regno-float", inputpattern: /^[A-Za-z]+$/, errorMessage0: 'Please provide vehicle plate code.', required: false }, "civil_id" : { id: "civil_id", label: "civil_id-float", errorMessage0: 'Please provide a valid Civil ID.', inputpattern: /^[0-9!@#$%^&*/]+$/, }, }; for (var id in fields) { for (var i = 0; i < fields[id].length; i++) { var field = fields[id][i]; for (var attrName in field) { $("#" + id).attr(attrName, field[attrName]); } } } var validate = function(key) { $("#" + validators[key].label).next(".red").remove(); var glyphOk = ""; var glyphRemove = ""; var customErrorMessage = "", isFound = false, isInputValid = false; if (validators[key]["id"]) { var value = $('#' + validators[key].id).val(); if (validators[key].duplicate) { var duplicateValidator = validators[key].duplicate; var elemPos = duplicateValidator.findDuplicate(value); var currPos = duplicateValidator.pos; customErrorMessage = duplicateValidator.errorMessage; if (validators[key].duplicate.edit) { isFound = (elemPos == -1 || elemPos == currPos) ? false : true; } else { isFound = (elemPos == -1) ? false : true; } } if (validators[key].required == false && validators[key].inputpattern) { isInputValid = (value !="" && value != null) ? (validators[key].inputpattern.test(value) ? true : false) : true; if (!isInputValid) { $("#" + validators[key].id).css("border", "1px solid red"); $("#" + validators[key].label).after('
' + validators[key].errorMessage0 + '
'); $("#" + validators[key].label).closest('.elem').find(".glyrenpol").remove(); if(value!=null && value !=""){ $("#" + validators[key].label).closest('.glyphdiv').before(glyphRemove); } return false; } else { $("#" + validators[key].id).css("border", "1px solid #55565A"); $("#" + validators[key].label).next(".red").remove(); $("#" + validators[key].label).closest('.elem').find(".glyrenpol").remove(); if(value!=null && value !=""){ $("#" + validators[key].label).closest('.glyphdiv').before(glyphOk); } return true; } } else if (value.length == 0 || value.trim() == "" || (validators[key].pattern0 && !validators[key].pattern0.test(value)) || isFound) { var errMsg = isFound ? duplicateValidator.errorMessage : validators[key].errorMessage0; $("#" + validators[key].id).css("border", "1px solid red"); $("#" + validators[key].label).after('
' + errMsg + '
'); $("#" + validators[key].label).closest('.elem').find(".glyrenpol").remove(); $("#" + validators[key].label).closest('.glyphdiv').before(glyphRemove); return false; } else if ((value != null && validators[key].patternFunc0 != null) && !validators[key].patternFunc0(value)) { $("#" + validators[key].id).css("border", "1px solid red"); $("#" + validators[key].label).after('
' + validators[key].errorMessage1 + '
'); $("#" + validators[key].label).closest('.elem').find(".glyrenpol").remove(); $("#" + validators[key].label).closest('.glyphdiv').before(glyphRemove); } else { $("#" + validators[key].id).css("border", "1px solid #55565A"); $("#" + validators[key].label).next(".red").remove(); $("#" + validators[key].label).closest('.elem').find(".glyrenpol").remove(); $("#" + validators[key].label).closest('.glyphdiv').before(glyphOk); return true; } } else { var value = $("." + validators[key].class).val(); if(value == null) { $("#" + validators[key].label).after('
' + validators[key].errorMessage0 + '
'); return false; } else { $("#" + validators[key].label).next(".red").remove(); return true; } } }; //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - STARTS var renew_policy = ["vehicle_regno", "civil_id"]; //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - Ends var isFormValid = function(elements) { var validCount = 0; for (var i = 0; i < elements.length; i++) { if (validate(elements[i])) { validCount++; } } return { isFormValid : validCount == elements.length, invalidCount: elements.length - validCount}; }; function ValidateRegNum() { const reg_number_pattern = /^\d+$/; var reg_code_pattern = /^[A-Za-z]+$/; var reg_number = $('#vehicle_regno').val(); var reg_code = $('#vehicle_code').val(); //var pol_no = $('#policy_no').val(); var civilId=$('#civil_id').val(); var glyphOk = ""; var glyphRemove = ""; $('#vehicle_regno-float').next(".red").remove(); $("#vehicle_regno, #vehicle_code").removeClass('error'); $('#vehicle_regno-float').closest('.right-input').find(".glyphicon-remove").remove(); $('#vehicle_regno-float').closest('.right-input').find(".glyphicon-ok").remove(); var isNumberValid = (reg_number.trim().length == 0 || !reg_number_pattern.test(reg_number)) ? false : true; var isPlateValid = (reg_code.trim().length == 0 || !reg_code_pattern.test(reg_code)) ? false : true; if (!isNumberValid && !isPlateValid) { $("#vehicle_regno, #vehicle_code").addClass('error'); $('#vehicle_regno-float').after('
Please provide Vehicle Plate Code & Registration Number.
'); $("#vehicle_regno-float").closest('.glyphdiv').before(glyphRemove); } else { if (!isNumberValid) { $("#vehicle_regno").addClass('error'); $('#vehicle_regno-float').after('
Please provide Vehicle Registration Number.
'); $("#vehicle_regno-float").closest('.elem').find(".glyrenpol").remove(); $("#vehicle_regno-float").closest('.glyphdiv').before(glyphRemove); } else if (!isPlateValid) { $("#vehicle_code").addClass('error'); $('#vehicle_regno-float').after('
Please provide Vehicle Plate Code.
'); $("#vehicle_regno-float").closest('.elem').find(".glyrenpol").remove(); $("#vehicle_regno-float").closest('.glyphdiv').before(glyphRemove); } else{ $("#vehicle_regno-float").closest('.elem').find(".glyrenpol").remove(); $("#vehicle_regno-float").closest('.glyphdiv').before(glyphOk); } submitbuttondisable() } } $('.form-btn').click(function() { if($('.form-btn').hasClass('disabled')) { return false; } else { return true; } }); function submitbuttondisable(){ var plateNo = $("#vehicle_regno").val(); var civilId=$("#civil_id").val(); var plateCode=$("#vehicle_code").val(); var plateCode_pattern = /^[A-Za-z]+$/; var plateCode_test=plateCode_pattern.test(plateCode); if(civilId == " " || civilId.length == 0 || plateNo == " " || plateNo.length == 0 || plateCode_test == false) { $(".form-btn").addClass('disabled'); $(".form-btn").addClass('cursor-style'); } else{ $(".form-btn").removeClass('disabled'); $(".form-btn").removeClass('cursor-style'); } } $("#vehicle_regno").on("keyup blur",function() { //validate('vehicle_regno'); ValidateRegNum(); }); $("#vehicle_code").on("keyup change blur",function() { //validate('vehicle_code'); ValidateRegNum(); this.value = this.value.toLocaleUpperCase(); }); $("#civil_id").on("keyup change blur",function() { validate('civil_id'); var civilID=$('#civil_id').val(); if(civilID.length != 0 && civilID != " "){ submitbuttondisable(); }else{ $(".form-btn").addClass('disabled'); $(".form-btn").addClass('cursor-style'); } }); var errMsg = "Please provide both Civil ID and Vehicle Registration Number."; var errMsg1 = "Please provide both the vehicle plate code and plate number."; //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - STARTS $("#renew_submit").click(function() { if (isFormValid(renew_policy).isFormValid) { var regnNo = $("#vehicle_regno").val(); var plateCode = $("#vehicle_code").val(); var civilId = $("#civil_id").val(); if(civilId!=null && civilId.trim()!="" && regnNo!=null && regnNo.trim()!="" && plateCode !='' && plateCode !="undefined" && plateCode != null ){ document.renewPolicyForm.action=contextPathUrl+"/renewPolicyDetails.do?civilId="+civilId+"®nNoText="+plateCode+regnNo+""; document.renewPolicyForm.submit(); $(".loading-container").show(); $("body").addClass("show-loader"); } else{ $("#vehicle_regno, #vehicle_code").addClass('error'); ValidateRegNum(); return false; } } else{ return false; } }); //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - Ends setTimeout(function() { $(".quoteAndBuyButton").removeClass("trackChanges").addClass("untrackChanges"); $(".retrieveQuoteButton").removeClass("trackChanges").addClass("untrackChanges"); $(".pageLogo").removeClass("goTohomeSite").addClass("homeSite"); $(".pageHome").removeClass("goTohomeSite").addClass("homeSite"); }, 100); $("body").on("click", function(e) { if (!$(e.target).hasClass("custom-tooltip")) { $(".custom-tooltip").css("display", "none"); document.body.style.overflowY = ''; } }); var showPopup = function(button, element) { setTimeout(function(){ var val = button.offset(); if (!isMobileDevices || $('.submenu-left').is(':visible')) { $(element) .css({ left: val.left + button.outerWidth() + 15, top: val.top - $(element).height() / 2 - 5 }); } else { document.body.style.overflowY = 'hidden'; $(element).css({top:val.top - $(element).height() / 2 - 5}); } // $(element).height(window.innerHeight - 90); $(element).css('display', 'block'); }); }; //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - STARTS if (!isMobileDevices) { $("#civil-id").hover(function(obj) { showPopup( $(this), '.civilId' ); }, function() { $(".civilId").css('display', 'none'); }); } else { $("#civil-id").click(function(obj) { showPopup( $(this), '.civilId' ); }); } //KaizenADM - Release 8.5 - OMAN - Request Id#93239 -Renewal based on Civil ID and Vehicle Details - ENDS if (!isMobileDevices) { $("#vehicle-regno").hover(function(obj) { showPopup( $(this), '.vehicleRegNumber' ); }, function() { $(".vehicleRegNumber").css('display', 'none'); }); } else { $("#vehicle-regno").click(function(obj) { showPopup( $(this), '.vehicleRegNumber' ); }); } $("#renewQuoteModal").modal("show") $(".modal-backdrop").addClass("modal-bg-backdrop"); }); function loadPlateCode(vehPlateCode){ var ddName="vehPlateCodeList"; $.ajax({ type: "POST", url: contextPathUrl+"/loadDropDown.do?ddName="+ddName+"&", dataType: "json", success: function(data, status,xhr){ $("#vehicle_code").html(""); $("#vehicle_codespan").text("Select"); $("#vehicle_code").append(""); $.each(data, function(index, value) { $.each(value, function(key, name){ $("#vehicle_code").append(''); index++; }); }); retrieveDropdownvalues(vehPlateCode,"vehicle_code"); }, error: function(status, errorThrown){ }, complete: function (textStatus){ } }); } function retrieveDropdownvalues(id,dropdownId){ var dispLength; if(dropdownId == 'carFinance'){ dispLength = 17; if(id == '99915'){ $('.other-required').show(); } }else if(dropdownId == 'carModel' || dropdownId == 'vehNCDProvider' || dropdownId == 'nationality' || dropdownId == 'emirate' || dropdownId == 'orangeCardBranch'){ dispLength = 17; } else{ dispLength = 23; } var selectobject = document.getElementById(dropdownId); if(selectobject!=null && selectobject.options){//Added null check for (var i=0; i