MMCT TEAM
Server IP : 103.191.208.50  /  Your IP : 216.73.216.53
Web Server : LiteSpeed
System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64
User : celkcksm ( 1031)
PHP Version : 7.4.33
Disable Function : show_source, system, shell_exec, passthru, popen, exec
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /home/celkcksm/ncriptech/frontend/assets/js/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/celkcksm/ncriptech/frontend/assets/js/contact.js
var validator = '';
$(document).ready(function() {
    window.telConfigInd = {
        separateDialCode: true,
        autoPlaceholder: "polite",
        preferredCountries: ['in'],
        initialCountry: "in",
        utilsScript: SITE_URL + 'frontend/assets/js/intl-tel/js/utils.js'
    }
    var CareerFrmNo = document.querySelector("#contact_number");
    if (CareerFrmNo != null) {
        var Career = window.intlTelInput(CareerFrmNo, window.telConfigInd);
    }
    $(document).on('change', 'select[name="contact_category_id"]', function() {
        var $contactForm = $('#contactForm');
        var $category = $(this);
        var $offerCat = $contactForm.find('#offer_cat');
        var $contactSubat = $contactForm.find('select[name="contact_subcategory_id"]');
        $.ajax({
            type: 'POST',
            url: SITE_URL + 'contact-sub-category',
            data: {
                contact_category_id: $category.val(),
            },
            success: function(response) {
                if (response.success) {
                    $offerCat.css('opacity', '1');
                    $contactSubat.prop('disabled', false).html(response.subcategories).parent('.form-select').addClass('has-value').find('i.error').remove();
                } else {
                    $offerCat.css('opacity', '0.2');
                    $contactSubat.prop('disabled', true);
                }
            }
        });
    });
    $("#contactForm").validate({
        errorElement: "i",
        ignore: [],
        rules: {
            first_name: {
                required: true,
                minlength: 3,
                maxlength: 90,
                namevalidation: true
            },
            last_name: {
                required: true,
                minlength: 3,
                maxlength: 90,
                namevalidation: true
            },
            city: {
                required: true,
                minlength: 3,
                maxlength: 90,
                namevalidation: true
            },
            email: {
                required: true,
                singleemail: true,
                minlength: 3,
                maxlength: 90
            },
            looking_for: {
                required: true
            },
            country_id: {
                required: true
            },
            contact_number: {
                required: true,
                number: true,
                minlength: 9,
                maxlength: 10
            },
            company_name: {
                minlength: 3,
                maxlength: 90
            },
            message: {
                required: true,
                minlength: 6,
                maxlength: 300
            },
            captcha: {
                required: true,
                number: true,
                captchaValidation: true
            },
            contact_category_id: {
                required: function() {
                    return $('#looking_for').val() == 2;
                }
            },
            contact_subcategory_id: {
                required: function() {
                    return $('#looking_for').val() == 2;
                }
            }
        },
        messages: {
            first_name: {
                required: "Please enter your first name",
            },
            last_name: {
                required: "Please enter your last name",
            },
            city: {
                required: "Please enter your city",
                maxlength: "City name cannot exceed 90 characters"
            },
            email: {
                required: "Please enter your email",
                email: "Please enter a valid email",
                maxlength: "Email cannot exceed 90 characters"
            },
            looking_for: {
                required: "Please select a service"
            },
            country_id: {
                required: "Please select your country of residence"
            },
            contact_number: {
                required: "Please enter your contact number",
                number: "Please enter a valid contact number",
                minlength: "Contact number must be at least 9 digits",
                maxlength: "Contact number cannot exceed 10 digits"
            },
            company_name: {
                required: "Company name cannot exceed 50 characters"
            },
            message: {
                required: "Please enter your message",
                minlength: "Message must be at least 6 characters",
                maxlength: "Message cannot exceed 500 characters"
            },
            captcha: {
                required: "Please enter the captcha",
                number: "Captcha must be a number",
                captchaValidation: "Captcha validation failed"
            },
            contact_category_id: {
                required: "Please select a category"
            },
            contact_subcategory_id: {
                required: "Please select a sub category"
            },
        },
        submitHandler: function(form) {
            if (rendercaptcha == false) {
                recaptchaRender();
            }
            if (rendercaptcha) {
                const btn = $(form).find('button[type="submit"]');
                const btnTxt = btn.html();
                btn.attr('disabled', true).html(`<strong>PLEASE WAIT ...</strong>`);
                grecaptcha.ready(function() {
                    grecaptcha.execute(SITE_KEY, {
                        action: 'ContactRequestForm'
                    }).then(function(token) {
                        let data = new FormData(form);
                        data.append('recaptoken', token);
                        data.append('contact_number', Career.getNumber(intlTelInputUtils.numberFormat.E164));
                        $.ajax({
                            url: SITE_URL + 'contact-request',
                            type: 'post',
                            data: data,
                            cache: false,
                            contentType: false,
                            processData: false,
                            success: function(res) {
                                btn.attr('disabled', false).html(btnTxt);
                                if (res.success) {
                                    location.href = SITE_URL + 'thank-you';
                                } else {
                                    $('#modal-formSuccess').addClass('showing-modal');
                                    $('#suuccess_msg_h4').html('Oh No!');
                                    $('#suuccess_msg').html(res.message);
                                }
                            },
                            error: function() {
                                openModal('modal-formFail');
                            }
                        });
                    });
                });
            }
        }
    });
    $('body').on('change', '#looking_for', function() {
        if ($(this).val() != 2) {
            $('.hidden_div').hide();
        } else {
            $('.hidden_div').show();
        }
    });
    window.telConfigInd = {
        separateDialCode: true,
        autoPlaceholder: "polite",
        preferredCountries: ['in'],
        initialCountry: "in",
        utilsScript: SITE_URL + 'frontend/assets/js/intl-tel/js/utils.js'
    }
    var CareerFrmPhNo = document.querySelector("#contact_no");
    if (CareerFrmPhNo != null) {
        var CareerPhNo = window.intlTelInput(CareerFrmPhNo, window.telConfigInd);
    }
    $(document).on('change', 'select[name="category_id"]', function() {
        $.ajax({
            type: 'POST',
            url: SITE_URL + 'contact-sub-category',
            data: {
                contact_category_id: $('select[name="category_id"]').val(),
            },
            success: function(response) {
                if (response.success) {
                    $('.subcategory-area').show();
                    $('select[name="subcategory_id"]').html(response.subcategories).parent('.form-select').addClass('has-value').find('i.error').remove();
                } else {
                    $('.subcategory-area').hide();
                }
            }
        });
    });
    $("#connectRequestForm").validate({
        errorElement: "i",
        ignore: [],
        rules: {
            name: {
                required: true,
                minlength: 3,
                maxlength: 90,
                namevalidation: true
            },
            email: {
                required: true,
                singleemail: true,
                minlength: 3,
                maxlength: 90
            },
            contact_number: {
                required: true,
                number: true,
                minlength: 9,
                maxlength: 10
            },
            category_id: {
                required: true,
            },
            subcategory_id: {
                required: true,
            }
        },
        messages: {
            name: {
                required: "Please enter your name",
            },
            email: {
                required: "Please enter your email",
                email: "Please enter a valid email",
                maxlength: "Email cannot exceed 90 characters"
            },
            contact_number: {
                required: "Please enter your contact number",
                number: "Please enter a valid contact number",
                minlength: "Contact number must be at least 9 digits",
                maxlength: "Contact number cannot exceed 10 digits"
            },
            category_id: {
                required: "Please select a category"
            },
            subcategory_id: {
                required: "Please select a sub category"
            },
        },
        submitHandler: function(form) {
            if (rendercaptcha == false) {
                recaptchaRender();
            }
            if (rendercaptcha) {
                const btn = $(form).find('button[type="submit"]');
                const btnTxt = btn.html();
                btn.attr('disabled', true).html(`<strong>PLEASE WAIT ...</strong>`);
                grecaptcha.ready(function() {
                    grecaptcha.execute(SITE_KEY, {
                        action: 'connectRequestForm'
                    }).then(function(token) {
                        let data = new FormData(form);
                        data.append('recaptoken', token);
                        data.append('contact_number', CareerPhNo.getNumber(intlTelInputUtils.numberFormat.E164));
                        $.ajax({
                            url: SITE_URL + 'connect-request',
                            type: 'post',
                            data: data,
                            cache: false,
                            contentType: false,
                            processData: false,
                            success: function(res) {
                                btn.attr('disabled', false).html(btnTxt);
                                if (res.success) {
                                    location.href = SITE_URL + 'thank-you';
                                } else {
                                    $('#modal-formSuccess').addClass('showing-modal');
                                    $('#suuccess_msg_h4').html('Oh No!');
                                    $('#suuccess_msg').html(res.message);
                                }
                            },
                            error: function() {
                                openModal('modal-formFail');
                            }
                        });
                    });
                });
            }
        }
    });
});

function openContactModal() {
    $('#modal-connectRequestForm').addClass('showing-modal')
}

MMCT - 2023