document.getElementById('new-question-type').addEventListener('change', (e) => {
    var options = e.target.selectedOptions[0].getAttribute('data-options');
    var inline = e.target.selectedOptions[0].getAttribute('data-inline');
    
    if(inline === 'true') {
        document.getElementById('is-inline').classList.remove('d-none');
    }else{
        document.getElementById('is-inline').classList.add('d-none');
        document.getElementById('new-question-inline').checked = false;
    }

    if(options === 'true') {
        document.getElementById('is-options').classList.remove('d-none');
        document.getElementById('new-question-options').required = true;
    }else{
        document.getElementById('is-options').classList.add('d-none');
        document.getElementById('new-question-options').value = "";
        document.getElementById('new-question-options').required = false;
    }
});

document.getElementById('update-question-type').addEventListener('change', (e) => {
    var options = e.target.selectedOptions[0].getAttribute('data-options');
    var inline = e.target.selectedOptions[0].getAttribute('data-inline');
    
    if(inline === 'true') {
        document.getElementById('update-is-inline').classList.remove('d-none');
    }else{
        document.getElementById('update-is-inline').classList.add('d-none');
        document.getElementById('update-question-inline').checked = false;
    }

    if(options === 'true') {
        document.getElementById('update-is-options').classList.remove('d-none');
        document.getElementById('update-question-options').required = true;
    }else{
        document.getElementById('update-is-options').classList.add('d-none');
        document.getElementById('update-question-options').value = "";
        document.getElementById('update-question-options').required = false;
    }
});

var table = new JSTable("#applications-table", {
    serverSide : false,
    perPage : 15,
    labels: {
        placeholder: "Ara...",
        perPage: "sayfa başına kayıt",
        noRows: "Hiçbir kayıt bulunamadı!",
        info: "{rows} kayıttan {start} - {end} arası görüntüleniyor",
        loading: "Yükleniyor...",
        infoFiltered: "{rows} kayıttan {start} - {end} arası görüntüleniyor ({rowsTotal} kayıt arasından filtrelendi)"
    },
    layout: {
        top: "{search}",
        bottom: "{info}{pager}"
    }
});

const viewSurveyModal = document.getElementById('view-answer-modal');
const updateQuestionModal = document.getElementById('update-question-modal');

viewSurveyModal.addEventListener('show.bs.modal', function (event) {
    var button = event.relatedTarget;
    var id = button.getAttribute('data-id');

    var formData = new FormData();
    formData.append("id", id);

    request('/admin/common/api/survey/get-answers.php', formData, function (data) {
        try {
            data = JSON.parse(data);
            if (!(data instanceof Object)) {
                new Toast({
                    type: "danger",
                    title: 'Hata!',
                    message: 'Bir hata oluştu. Lütfen tüm alanları kontrol ediniz',
                    duration: 10000,
                });
            } else {
                if (data['status']) {
                    document.querySelector('#view-answer-modal .modal-body').innerHTML = data['answers'];
                }else{
                    new Toast({
                        type: "danger",
                        title: 'Hata!',
                        message: data['message'],
                        duration: 10000,
                    });
                }
            }
        } catch (e) {
            new Toast({
                type: "danger",
                title: 'Hata!',
                message: 'Bir hata oluştu. Lütfen daha sonra tekrar deneyiniz',
                duration: 10000,
            });
        }
    });
});

updateQuestionModal.addEventListener('show.bs.modal', function (event) {
    var button = event.relatedTarget;
    var id = button.getAttribute('data-id');

    var formData = new FormData();
    formData.append("id", id);

    request('/admin/common/api/survey/get-question.php', formData, function (data) {
        try {
            data = JSON.parse(data);
            if (!(data instanceof Object)) {
                new Toast({
                    type: "danger",
                    title: 'Hata!',
                    message: 'Bir hata oluştu. Lütfen tüm alanları kontrol ediniz',
                    duration: 10000,
                });
            } else {
                if (data['status']) {
                    document.getElementById('update-question-type').value = data['question'][0]['type'];
                    document.getElementById('update-question-type').dispatchEvent(new Event('change'));
                    document.getElementById('update-question-title').value = data['question'][0]['title'];
                    document.getElementById('update-question-description').value = data['question'][0]['description'];
                    document.getElementById('update-question-options').value = data['question'][0]['options'];
                    document.getElementById('update-question-id').value = data['question'][0]['id'];

                    if(data['question'][0]['inline'] == 1) {
                        document.getElementById('update-question-inline').checked = true;
                    }else{
                        document.getElementById('update-question-inline').checked = false;
                    }
                    if(data['question'][0]['required'] == 1) {
                        document.getElementById('update-question-required').checked = true;
                    }else{
                        document.getElementById('update-question-required').checked = false;
                    }
                }else{
                    new Toast({
                        type: "danger",
                        title: 'Hata!',
                        message: data['message'],
                        duration: 10000,
                    });
                }
            }
        } catch (e) {
            new Toast({
                type: "danger",
                title: 'Hata!',
                message: 'Bir hata oluştu. Lütfen daha sonra tekrar deneyiniz'+e,
                duration: 10000,
            });
        }
    });
});