modals.blade.php 12.1 KB
<script>
    var code;
    var code2;

    function createCaptcha() {
        //clear the contents of captcha div first
        var captha1 = $('#captcha1').html();

        document.getElementById('captcha1').innerHTML = "";
        document.getElementById('captcha2').innerHTML = "";
        var charsArray =
            "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@!#$%^&*";
        var lengthOtp = 6;
        var captcha = [];
        for (var i = 0; i < lengthOtp; i++) {
            //below code will not allow Repetition of Characters
            var index = Math.floor(Math.random() * charsArray.length + 1); //get the next character from the array
            if (captcha.indexOf(charsArray[index]) == -1)
                captcha.push(charsArray[index]);
            else i--;
        }
        var canv = document.createElement("canvas");
        canv.id = "captcha";
        canv.width = 100;
        canv.height = 50;
        var ctx = canv.getContext("2d");
        ctx.font = "25px Georgia";
        ctx.strokeText(captcha.join(""), 0, 30);
        //storing captcha so that can validate you can save it somewhere else according to your specific requirements
        code = captcha.join("");

        document.getElementById("captcha1").appendChild(canv);
        // adds the canvas to the body element

        createCaptcha2()
    }

    function createCaptcha2() {
        //clear the contents of captcha div first
        document.getElementById('captcha2').innerHTML = "";

        var captha2 = $('#captcha2').html();

        var charsArray =
            "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@!#$%^&*";
        var lengthOtp = 6;
        var captcha = [];
        for (var i = 0; i < lengthOtp; i++) {
            //below code will not allow Repetition of Characters
            var index = Math.floor(Math.random() * charsArray.length + 1); //get the next character from the array
            if (captcha.indexOf(charsArray[index]) == -1)
                captcha.push(charsArray[index]);
            else i--;
        }
        var canv = document.createElement("canvas");
        canv.id = "captcha";
        canv.width = 100;
        canv.height = 50;
        var ctx = canv.getContext("2d");
        ctx.font = "25px Georgia";
        ctx.strokeText(captcha.join(""), 0, 30);
        //storing captcha so that can validate you can save it somewhere else according to your specific requirements
        code2 = captcha.join("");

        document.getElementById("captcha2").appendChild(canv);
        // adds the canvas to the body element
    }

    function validateCaptcha() {

        if (document.getElementById("cpatchaTextBox").value == code) {
            console.log('Валидная капча 1!');
        }else{
            alert("Неверная капча! Повторите вновь");
            createCaptcha();
        }
    }

    function validateCaptcha2() {
        if (document.getElementById("cpatchaTextBox2").value == code2) {
            console.log('Валидная капча 2!');
        }else{
            alert("Неверная капча! Повторите вновь");
            createCaptcha();
        }
    }

    function successfulRegistrationWorker() {
        $.fancybox.close();

        $('#email_worker').val('');
        $('#password_worker').val('');
        $('#password_confirmation_worker').val('');
        $('#politik').prop('checked', false);
        $('#telephone_worker').val('');
        $('#job_titles_worker').val('').trigger('change');
        $('#surname_worker').val('');
        $('#name_man_worker').val('');
        $('#surname2_worker').val('');
        $('#cpatchaTextBox1').val('');

        $('#block-info').hide();
        $('#messages_error_reg').html('');

        $.fancybox.open({
            src: '#successful-registration-worker',
            type: 'inline',
            opts: {touch: false}
        });
    }

    function successfulRegistrationEmployer() {
        $.fancybox.close();

        $('#email_employer').val('');
        $('#password_employer').val('');
        $('#password_confirmation_employer').val('');
        $('#politik').prop('checked', false);
        $('#telephone_employer').val('');
        $('#surname_employer').val('');
        $('#name_man_employer').val('');
        $('#surname2_employer').val('');
        $('#company_employer').val('');
        $('#cpatchaTextBox1').val('');

        $('#block-info').hide();
        $('#messages_error_reg').html('');

        $.fancybox.open({
            src: '#successful-registration-employer',
            type: 'inline',
            opts: {touch: false}
        });
    }

    $(document).on('click', '#button_send', function() {
        var field_login = $('#email_input');
        var field_pwd = $('#password');
        var login_val = field_login.val();
        var pwd_val = field_pwd.val();

        console.log('login: '+login_val+' password: '+pwd_val);

        $.ajax({
            type: "GET",
            url: "{{ route('login') }}",
            data: "email="+login_val+"&password="+pwd_val,
            success: function (data) {
                console.log('Вход в систему');
                console.log(data);
                let d = JSON.parse(data);
                if(typeof d['REDIRECT'] !== "undefined") {
                    location.href = d['REDIRECT'];
                    console.log(d['REDIRECT']);
                }
                if (typeof d['ERROR'] !== "undefined") {
                    console.log(d['ERROR']);
                    $('#message_error').html(d['ERROR']);
                }
                //console.log(d['REDIRECT']);
                //$('#block_1').html(data);
            },
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            },
            error: function (data) {
                data = JSON.stringify(data);
                console.log('Error: ' + data);
            }
        });
    });

    $(document).on('click', '#button_reg_worker', function() {
        $('#messages_error_reg').html('');

        var field_login = $('#email_worker');
        var field_pwd = $('#password_worker');
        var field_confirm_pwd = $('#password_confirmation_worker');
        var field_politik_worker = $('#politik');
        var field_telephone_worker = $('#telephone_worker');
        var field_job_titles_worker = $('#job_titles_worker');
        var field_surname_worker = $('#surname_worker');
        var field_name_man = $('#name_man_worker');
        var field_surname2_worker = $('#surname2_worker');

        var login = field_login.val();
        var pwd = field_pwd.val();
        var confirm_pwd = field_confirm_pwd.val();
        var politik = field_politik_worker.val();
        var telephone = field_telephone_worker.val();
        var job_titles = field_job_titles_worker.val();
        var surname = field_surname_worker.val();
        var name_man = field_name_man.val();
        var surname2 = field_surname2_worker.val();


        if (document.getElementById("cpatchaTextBox1").value == code) {
            console.log('Валидный кот');

        } else {
            console.log('Ошибка1');
            event.preventDefault();
            $('#block-info').css({'display': 'block'});
            $('#messages_error_reg').html('ERROR: Капча неверная!');

            return false;
        }

        if (!document.getElementById('politik').checked) {
            event.preventDefault();
            $('#block-info').css({'display': 'block'});
            $('#messages_error_reg').html('ERROR: Вы не согласились с политикой конфидициальности!');
            return false;
        }

        $.ajax({
            type: "GET",
            url: "{{ route('register_worker') }}",
            data: "email="+login+"&password="+pwd+"&confirmed="+confirm_pwd+"&politik="+politik+
                "&telephone="+telephone+"&job_titles="+job_titles+"&surname="+surname+"&name_man="+name_man+
                "&surname2="+surname2+"&subscribe_email="+login,
            success: function (data) {
                let d = JSON.parse(data);
                if (typeof d['REDIRECT'] !== "undefined") {
                    successfulRegistrationWorker()
                }

                if (typeof d['ERROR'] !== "undefined") {
                    console.log(d['ERROR']);
                    $('#block-info').css({'display': 'block'});
                    $('#messages_error_reg').html(d['ERROR']);
                }
                console.log(d['REDIRECT']);

            },
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            },
            error: function (data) {
                data = JSON.stringify(data);
                console.log('Error: ' + data);
            }
        });

        return false;
    });

    $(document).on('click', '.open-login-modal', function(e) {
        e.preventDefault();
        $.fancybox.close();
        $.fancybox.open({
            src: '#sign',
            type: 'inline',
            opts: {touch: false}
        });
    });

    $(document).on('click', '#button_reg_employer', function() {

        $('#messages_error_reg').html('');

        var field_login = $('#email_employer');
        var field_pwd = $('#password_employer');
        var field_confirm_pwd = $('#password_confirmation_employer');
        var field_politik_employer = $('#politik_employer');
        var field_telephone_employer = $('#telephone_employer');
        var field_company_employer = $('#company_employer');
        var field_surname_employer = $('#surname_employer');
        var field_name_man_employer = $('#name_man_employer');
        var field_surname2_employer = $('#surname2_employer');

        var login = field_login.val();
        var pwd = field_pwd.val();
        var confirm_pwd = field_confirm_pwd.val();
        var politik = field_politik_employer.val();
        var telephone = field_telephone_employer.val();
        var company_employer = field_company_employer.val();
        var surname = field_surname_employer.val();
        var name_man = field_name_man_employer.val();
        var surname2 = field_surname2_employer.val();

        if (document.getElementById("cpatchaTextBox2").value == code2) {
            console.log('Валидный кот');

        } else {
            console.log('Ошибка2');
            event.preventDefault();
            $('#block-info').css({'display': 'block'});
            $('#messages_error_reg').html('ERROR: Капча неверная!');
            return false;
        }

        console.log('login: '+login+' password: '+pwd);
        if (!document.getElementById('politik_employer').checked) {
            event.preventDefault();
            $('#block-info').css({'display': 'block'});
            $('#messages_error_reg').html('ERROR: Вы не согласились с политикой конфидициальности!');
            return false;
        }

        $.ajax({
            type: "GET",
            url: "{{ route('register_employer') }}",
            data: "email="+login+"&password="+pwd+"&confirmed="+confirm_pwd+"&politik="+politik+
                "&telephone="+telephone+"&name_company="+company_employer+"&surname="+surname+"&name_man="+name_man+
                "&surname2="+surname2+"&subscribe_email="+login,
            success: function (data) {
                console.log('Вход в систему');
                let d = JSON.parse(data);
                if(typeof d['REDIRECT'] !== "undefined") {
                    successfulRegistrationEmployer()
                }
                if (typeof d['ERROR'] !== "undefined") {
                    console.log(d['ERROR']);
                    $('#block-info').css({'display': 'block'});
                    $('#messages_error_reg').html(d['ERROR']);
                }
                console.log(d['REDIRECT']);
            },
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            },
            error: function (data) {
                data = JSON.stringify(data);
                console.log('Error: ' + data);
            }
        });
        return false;
    });
</script>