$(document).ready(function(){
    // REGISTRATION



    $(".msg-box .close").click(function(){
        $(".msg-box").fadeOut("fast");
    });

    // MY ACCOUNT BAR
    $(".my-account").click(function(){
        $(".ua-bar").toggleClass("active");
        $(".my-account").toggleClass("active");
        $(".ua-bar-nav").toggle();
        $(".page-overlay").toggle();
        $(document.body).toggleClass("disable-body-scroll-y");
    });

    $(".page-overlay").click(function(){
        $(".close-ua-navi-btn").click();
        $(document.body).removeClass("disable-body-scroll-y");
    });

    $(".close-ua-navi-btn").click(function(){
        $(".ua-bar").toggleClass("active");
        $(".ua-bar-nav").toggle();
        $(".page-overlay").toggle();
        $(document.body).removeClass("disable-body-scroll-y");
    });

    // REVIEWS
    var reviewPage=0;
    $(".more-reviews").click(function(){
        reviewPage++;
        api.moreReviews(reviewPage,function(data){
            $(".reviews-wrapper").html(data.html);

            $.smoothScroll({
                scrollTarget: $(".reviews h2")
            });
        });
    });

    // NOTIFICATIONS BAR
    if($(".notifications-bar").length!=0){
        $(".notifications-bar-blank").outerHeight($(".notifications-bar").outerHeight());
    }
    if($(".pinned-news-bar").length!=0){
        $(".notifications-bar-blank").outerHeight($(".pinned-news-bar").outerHeight());
    }

    // ERROR CLEAN UP
    $(document.body).on("change","input.error, textarea.error",function(){
        $(this).removeClass("error");
    });

    $(".vk-login-btn,.social-login-btn.vk").click(function(){
        var agreeChecked=$("#register-agree").is(":checked");
        if($("#register-agree:visible").length && !agreeChecked){
            showAlert("Вы должны согласиться с правилами предоставления услуг.","danger");
            return;
        }

        if(location.host==='www.ishopium.com') {
            location.href = 'https://oauth.vk.com/authorize?client_id=2263937&redirect_uri=https://www.ishopium.com/vk_login&display=page&scope=email&response_type=code&v=5.74';
        }else {
            location.href = 'https://oauth.vk.com/authorize?client_id=6460511&redirect_uri=https://www.pochtoy.com/vk_login&display=page&scope=email&response_type=code&v=5.74';
        }
    });

    $(".fb-login-btn, .social-login-btn.facebook").click(function(){
        var agreeChecked=$("#register-agree").is(":checked");
        if($("#register-agree:visible").length && !agreeChecked){
            showAlert("Вы должны согласиться с правилами предоставления услуг.","danger");
            return;
        }
        FB.getLoginStatus(function(response) {
            console.log({response:response});
            if(response.status!=='connected'){
                FB.login(function(login_response){
                    console.log({login_response:login_response});
                    if(login_response.status==='connected'){
                        fb_loginned(login_response.authResponse.accessToken,login_response.authResponse.userID);
                    }
                },{scope: 'email'});
            }else{
                fb_loginned(response.authResponse.accessToken,response.authResponse.userID);
            }
        });
    });

    function fb_loginned(token,userid){
        api.FBSignIn(token,userid,async function(data){
            if(data.status==='ok'){
                if(data.new_user){
                    try {
                        dataLayer.push({event: 'formpopup'});
                        await new Promise(success=>{
                            setTimeout(success,1000);
                        });
                    }catch (e) {

                    }
                    location.href='/registration_done/';
                }else{
                    location.href='/user-room/';
                }
            }else{

            }
        });
    }

    // multilang
    $(".header__multilang__wrapper").on("click", function(){
        $(".header__multilang__form").toggle();
    })
    $(".header__multilang__form__close").on("click", function(){
        $(".header__multilang__form").hide();
    })

    function translateSwitcherInit() {
        var currentLang = defaultLang;
        var cookieLang = document.cookie.match(/googtrans=\/ru\/(.*?)[;$]/);

        // if(cookieLang != null) {
            if (cookieLang && cookieLang[1]) {
                currentLang = cookieLang[1];
            } else {
                currentLang = defaultLang
            }

            var langInfo = $('.header__multilang__wrapper');
            var langsInfos = document.querySelector(`.header__multilang__form__body__lang [data-google-lang="${currentLang}"]`)
            langsInfos.selected = true;

            if (langsInfos.dataset.img) {
                langInfo.find('img').attr('src', langsInfos.dataset.img);
            }
            langInfo.find('.header__inner__multilang__wrapper__lang').text(langsInfos.dataset.shortText);
        // }

        $(document).on('change', '.header__multilang__form__body__lang', function(){
            for(var hostNameParts = window.location.hostname.split('.'); 2 < hostNameParts.length;) hostNameParts.shift();

            // var nextLang = $(this).attr("data-google-lang");
            var nextLang = document.querySelector(`.header__multilang__form__body__lang`).selectedOptions[0].dataset.googleLang
            var cookieValue = 'googtrans=/' + defaultLang + '/' + nextLang + '; path=/';
            var cookieExpires = '; expires=Thu, 01 Jan 1970 00:00:01 GMT';

            document.cookie = cookieValue + cookieExpires;
            document.cookie = cookieValue;

            var cookieValue2 = 'select_lang=' + nextLang + '; path=/';
            var cookieExpires2 = '; expires=Thu, 01 Jan 1970 00:00:01 GMT';

            document.cookie = cookieValue2 + cookieExpires2;
            document.cookie = cookieValue2;

            cookieValue += cookieValue + '; domain=' + hostNameParts.join('.');

            try {
                document.cookie = cookieValue + cookieExpires;
                document.cookie = cookieValue;
            } catch (d) {}

            window.location.reload();
        });
    }

    translateSwitcherInit()
});
var defaultLang = 'ru';
function translateInit() {
    new google.translate.TranslateElement({
        pageLanguage: defaultLang,
    });
}

function onGoogleSignIn(googleUser){
    if(userRegistered) {
        location.href="/user-room/";
        return;
    }
    var agreeChecked=$("#register-agree").is(":checked");
    if($("#register-agree:visible").length && !agreeChecked){
        showAlert("Вы должны согласиться с правилами предоставления услуг.","danger");
        return;
    }
    var profile = googleUser.getBasicProfile();
    var id_token = googleUser.getAuthResponse().id_token;
    api.GoogleSignIn(id_token,async function(data){
        if(data.status==='ok'){
            if(data.new_user){
                try {
                    dataLayer.push({event: 'formpopup'});
                    await new Promise(success=>{
                        setTimeout(success,1000);
                    });
                }catch (e) {

                }
                location.href='/registration_done/';
            }else{
                location.href='/user-room/';
            }
        }else{

        }
    });
}


var sath=null;
var alertDisabled=false;
/**
 success
 info
 warning
 danger
 */
function showAlert(text, type, timeout=10000){
    if(alertDisabled) return;
    clearTimeout(sath);
    if(typeof(type)==='undefined'){
        type='warning';
    }

    if($(".msg-box").length!==0) {
        $(".msg-box").attr("type", type);
        $(".msg-box").show().find(".message").html(text);
        sath = setTimeout(function () {
            $(".msg-box").fadeOut("slow");
        }, timeout);
    }else{
        //alert(text);

    }


}

function addRealChangeHandler(selector,handler){
    $(document).delegate(selector,"keyup change",function(){
        var prevValue=$(this).data("archPrevValue");
        var curVal=$(this).val();
        if(prevValue!=curVal){
            handler(this);
        }
        $(this).data("archPrevValue",curVal);
    })
}
