var myVkIdGlobal = ''
var selectedGroupId = ''

$(document).ready(function () {
    // Если есть оповещение, что модуль успешно подключен
    if ( /vk_rdy=1/.test(document.cookie) ) {
        document.cookie = "vk_rdy=0;";
        let notifyDiv = `<div class="display_notification display_notification_class_by_type_1">
                            <a class="display_notification_button" href="#"
                               onclick="hide_this_notif(this)" title="Закрыть уведомление"></a>
                        <div class="display_notification_icon"></div>
                        <div class="display_notification_text">Установка модуля успешно завершена!</div>
                    </div>`;
        $('#all_nonmenu_text .content').prepend(notifyDiv);
    }

    // Если есть ошибка
    if ( /group_error=1/.test(document.cookie) ) {
        document.cookie = "group_error=0;";
        let notifyDiv = `<div class="display_notification display_notification_class_by_type_2">
                            <a class="display_notification_button" href="#"
                               onclick="hide_this_notif(this)" title="Закрыть уведомление"></a>
                        <div class="display_notification_icon"></div>
                        <div class="display_notification_text">Неверный код</div>
                    </div>`;
        $('#all_nonmenu_text .content').prepend(notifyDiv);
    }

    // Получаем группу из бд
    if (!localStorage.getItem('groupActive')) {
        var groupFromDB = '';
        $.ajax({
            url: 'modules/vk_chat/checkActiveGroup.php',
            success: function (r) {
                if ( r != 0 ) {
                    groupFromDB = r;
                }
            }
        });
    }

    //получаем данные о нашем аккаунте
    $.ajax({
        url: 'modules/vk_chat/myAccount.php',
        success: function (resp) {
            var data = JSON.parse(resp)
            if (data.error) {
                //если находимся в стадии подключения модуля, но авторизовались(еще есть кнопка Сохранить)
                /*if ( $('#activate_form input[type=submit]').val() != 'Сохранить' ) {
                    jalert('Вы не прошли авторизацию! Перейдите в <a href="edit_modules.php?module=social_messages">"Модули"->"Интеграция с vk.com"</a> и следуйте инструкции авторизации ')
                }*/
                $('#message_window').hide()
            } else {
                myVkIdGlobal = data.response[0].id
                let myName = data.response[0].first_name + ' ' + data.response[0].last_name
                let divMyAcc = `<div class="panel panel-default" style="width: 100%;"><div class="panel-heading">Подключенные аккаунты</div><div class="panel-body"><div class="my_active_account"><div class="my_active_account__name">Пользователь: <a href="https://vk.com/id${myVkIdGlobal}" target="_blank">${myName}</a></div><div class="my_active_account__photo"><button class="btn btn-default btn-sm" id="logout_user">Выйти</button></div></div></div></div>`
                $('.inner_wrapper_vk').append(divMyAcc)
                $('#vk_groups-getToken--form input[name=user_id]').val(myVkIdGlobal)

                //получаем данные об администрируемых группах
                $.ajax({
                    url: `modules/vk_chat/getGroups.php?user_id=${myVkIdGlobal}`,
                    beforeSend: function() {
                        // Скрываем загружающийся контент и показываем прелоудер
                        let preloader = `<div class="preloader__block">
                                            <div class="preloader">
                                                <div class="lds-css ng-scope">
                                                    <div style="width:100%;height:100%" class="lds-ellipsis">
                                                        <div>
                                                            <div></div>
                                                        </div>
                                                        <div>
                                                            <div></div>
                                                        </div>
                                                        <div>
                                                            <div></div>
                                                        </div>
                                                        <div>
                                                            <div></div>
                                                        </div>
                                                        <div>
                                                            <div></div>
                                                        </div>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>`;
                        $('.my_active_account').hide()
                        $('.active__group').hide()
                        $('.inner_wrapper_vk').append(preloader);
                    },
                    complete: function() {
                        // Показываем
                        $('.preloader__block').remove();
                        $('.my_active_account').show()
                        $('.active__group').show()
                    },
                    success: function (resp) {
                        var data = JSON.parse(resp)
                        if ( !data.error ) {
                            if ( data.response.count != 0 ) {
                                $('.inner_wrapper_vk-step2').show();
                                userGroupsIds = data.response.items
                                userGroupsIds.forEach(function (item,i) {
                                    var id = item.id
                                    var name = item.name
                                    var photo = item.photo_50
                                    var li = `<option class="socialGroups" id="socialGroup${id}" data-id="${id}" data-name="${name}" value="${id}">${name}</option>`
                                    $('.vk_groups_admin select').append(li)

                                    // Если авторизованы под группой, тогда скрываем список групп и показываем подключенную группу
                                    var groupActive = localStorage.getItem('groupActive');
                                    if (!groupActive) {
                                        groupActive = groupFromDB;
                                    }

                                    if ( groupActive && groupActive !== '' && id == groupActive ) {
                                        //Добавление имени группы в ls
                                        localStorage.setItem("groupActive", groupActive)
                                        localStorage.setItem("groupActiveName", name)
                                        $('#social_container').parents('.panel-default').hide()
                                        let groupActiveDiv = `<div class="active__group"><div class="active__group_name" data-id="${id}">Группа: <a href="https://vk.com/club${id}" target="_blank">${name}</a></div><button id="active__group_button" class="btn btn-default">Выйти</button></div>`
                                        $('.my_active_account').parent().append(groupActiveDiv)

                                        // Отключение подключеной группы
                                        $('#active__group_button').on('click', function () {
                                            jconfirm('При отключении страницы вся история сообщений будет удалена', function (ans) {
                                                if (!ans)
                                                    return;
                                                else {
                                                    // Запрос на удалени истории из БД
                                                    $.ajax({
                                                        url: 'modules/vk_chat/clearGroupHistory.php',
                                                        type: 'post',
                                                        data: `csrf=${csrf}`,
                                                        success: function (resp) {
                                                            localStorage.removeItem('groupActive');
                                                            localStorage.removeItem('groupActiveName');
                                                            location.reload()
                                                        }
                                                    })

                                                }
                                            })

                                        });
                                    }
                                });

                                //события на клик по сообществу(авторизация)
                                $('.vk_groups_admin select').on('change', function () {
                                    $this = $(this)
                                    if ( $this.val() != 'null' ) {
                                        selectedGroupId = $this.val();
                                        $('#vk_groups-getToken--form input[name=group_id]').val(selectedGroupId)
                                        $('#vk_groups-auth--btn').trigger('click');
                                        $('#vk_groups-getToken--form').show();
                                    } else {
                                        $('#vk_groups-getToken--form').hide();
                                    }
                                })
                            }
                        }
                    }
                })
            }
        }
    })


    $('.vk_groups_admin-title').on('click', function () {
        var menuDiv = $('.vk_groups_admin')
        if ( !menuDiv.hasClass('open_groups') )
            menuDiv.addClass('open_groups')
        else
            menuDiv.removeClass('open_groups')
    })

    $('#vk_groups-auth--btn').click(function () {
        $.ajax({
            url: 'modules/vk_chat/groupAuth.php',
            type: 'post',
            data: `action=getCode&group_ids=${selectedGroupId}&csrf=${csrf}`,
            async: false,
            success: function (resp) {
                window.open(resp, 'popup','width=600,height=600')
            }
        })
    })

    $('#vk_groups-getToken--form input[name=csrf]').val(csrf)

    $('#vk_group-submit--btn').click(function () {
        if ( $('#vk_group-form--code').val() != '' ) {
            localStorage.setItem("groupActive", selectedGroupId);
            /* document.cookie = "vk_rdy=1"; */
        } else {
            return false;
        }
    })

    // Применить настройки для модуля
    $('#vk_module_settings__button').click(function () {
        let vkNameInput = $('.vk_module_settings__content input[name=vk_name_setting]');
        let vkNameLink = $('.vk_module_settings__content input[name=vk_name_link]');

        if ( vkNameInput.is(':checked') ) {
            vkNameInput.val(1)
        } else {
            vkNameInput.val(0)
        }

        if ( vkNameLink.is(':checked') ) {
            vkNameLink.val(1)
        } else {
            vkNameLink.val(0)
        }

        let vkNameSetting = $('.vk_module_settings__content input[name=vk_name_setting]').val();
        let vkNameLinkSetting = $('.vk_module_settings__content input[name=vk_name_link]').val();
        $.ajax({
            url: 'modules/vk_chat/editVkModuleSettings.php',
            type: 'post',
            data: `vk_name_setting=${vkNameSetting}&vk_name_link=${vkNameLinkSetting}&csrf=${csrf}`,
            success: function (resp) {
                location.reload()
            }
        })
    });

    $('.inner_wrapper_vk').delegate('#logout_user', 'click',function () {
        // Запрос на удаление записей в таблице настроек(отключение подключенных страниц вк
        $.ajax({
            url: 'modules/vk_chat/clearVkModuleTable.php',
            type: 'post',
            data: `&csrf=${csrf}`,
            success: function (res) {
                location.reload();
            }
        })
    });
})
