73 lines
2.8 KiB
JavaScript
Vendored
73 lines
2.8 KiB
JavaScript
Vendored
if (document.querySelector('.content.faq')) {
|
|
let links = document.querySelectorAll('aside > ul > li > a');
|
|
for (let link of links) {
|
|
link.addEventListener('click', evt => {
|
|
let href = link.getAttribute('href');
|
|
if (href.indexOf('#') === 0) {
|
|
evt.preventDefault();
|
|
__Gaul.scrollToContent(link.getAttribute('href').substr(1), 80)
|
|
}
|
|
})
|
|
}
|
|
for (let question of document.getElementsByClassName('faqQuestionHeader')) {
|
|
question.onclick = function (e) {
|
|
e.preventDefault();
|
|
let questions = document.getElementsByClassName('faqQuestionHeader');
|
|
let question = this;
|
|
let toggle = function (dom, open = false) {
|
|
let parent = dom.parentElement;
|
|
let answer = dom.parentElement.querySelector('.faqReponse');
|
|
if (!open) {
|
|
parent.classList.remove('active');
|
|
dom.classList.remove('active');
|
|
answer.classList.remove('show');
|
|
} else {
|
|
parent.classList.add('active');
|
|
dom.classList.add('active');
|
|
answer.classList.add('show');
|
|
}
|
|
};
|
|
for (let qst of questions) {
|
|
if (question === qst) {
|
|
continue;
|
|
}
|
|
if (qst.classList.contains('active')) {
|
|
toggle(qst);
|
|
}
|
|
}
|
|
setTimeout((function (question) {
|
|
toggle(question, !question.classList.contains('active'));
|
|
}).bind(this, question), 500);
|
|
}
|
|
}
|
|
for (let question of document.getElementsByClassName('faqAvis')) {
|
|
let sayYes = question.querySelector('.faqYes');
|
|
let sayNo = question.querySelector('.faqNop');
|
|
let content = question.querySelector('div');
|
|
let faqThx = question.querySelector('.faqThx');
|
|
let faqError = question.querySelector('.faqError');
|
|
|
|
let say = function (opinion, id) {
|
|
axios.post(window._routes['faq.updateSatisfactionStat'] + '/' + id, {
|
|
opinion: opinion ? 1 : 0
|
|
}).then((response) => {
|
|
content.style.display = 'none';
|
|
faqThx.style.display = 'block';
|
|
}, (error) => {
|
|
content.style.display = 'none';
|
|
faqError.style.display = 'block';
|
|
console.error(error);
|
|
});
|
|
};
|
|
if (sayYes) {
|
|
sayYes.onclick = function (e) {
|
|
say(true, this.dataset.id);
|
|
}
|
|
}
|
|
if (sayNo) {
|
|
sayNo.onclick = function (e) {
|
|
say(false, this.dataset.id);
|
|
}
|
|
}
|
|
}
|
|
}
|