/*=========================================================
お困りごとドック(追従ヘルプパネル)
右下の丸ボタンをクリックするとヘルプ導線のパネルが開く。
マークアップはこのファイルで生成するため、読み込むページ側は
CSSとJSを読み込むだけでよい。
読み込み方法(CSSも合わせて読み込むこと)
・jQuery非依存(読み込み順を気にしなくてよい)
・現在の適用範囲:トップページ(/index.html、/sp/index.html)と
FAQ(/personal/faq/、/corporate/faq/)、
法人IB(/corporate/service/internetbanking/)、
スマホアプリ(/personal/service/spappli/)
・FAQ配下ではパネルを出さず、AIチャットへの直リンクボタンに切り替える
AIチャットはAIリボーンを利用する。
==========================================================*/
(function () {
'use strict';
var AICHAT_URL = '#';
var CHATBOT_SCRIPT_ID = 'aiRebornEmbedScript';
var chatbotObserver = null;
var pendingChatOpen = false;
var chatbotAlignment = '';
var CHATBOT_CONFIG = {
orgId: '69ae1b3b73d046a7f9e01d20',
chatbotId: '6a0c022d5691b7aabb26bbf1',
domain: 'https://sotaagents.ai',
apiUrl: 'https://org-shared-api.sotaagents.ai'
};
var LINKS = [
{
href: '/personal/faq/',
label: 'よくあるご質問
(個人のお客さま)',
icon: '',
mod: 'c-helpDock__icon--faq'
},
{
href: '/corporate/faq/',
label: 'よくあるご質問
(法人のお客さま)',
icon: '',
mod: 'c-helpDock__icon--faq c-helpDock__icon--corporate'
},
{
href: AICHAT_URL,
label: 'AIチャットで質問',
icon: '
',
mod: 'c-helpDock__icon--chat',
chat: true
}
];
function adjustChatbotPosition(button) {
var offset = window.matchMedia('(max-width: 639px)').matches ? '0' : '24px';
if (!chatbotAlignment) {
chatbotAlignment = button.style.right ? 'right' : 'left';
}
button.style[chatbotAlignment] = offset;
}
function hideChatbotDefaultButton(button) {
var icon = button.querySelector('img');
if (icon) {
icon.style.display = 'none';
}
button.style.width = '0';
button.style.height = '0';
button.style.pointerEvents = 'none';
button.style.zIndex = '2147483647';
button.tabIndex = -1;
adjustChatbotPosition(button);
window.addEventListener('resize', function () {
adjustChatbotPosition(button);
});
}
function handleChatbotButton(button) {
hideChatbotDefaultButton(button);
if (pendingChatOpen) {
pendingChatOpen = false;
button.click();
}
if (chatbotObserver) {
chatbotObserver.disconnect();
chatbotObserver = null;
}
}
function watchChatbotButton() {
var button = document.getElementById('bubble-icon-chat');
if (button) {
handleChatbotButton(button);
return;
}
if (chatbotObserver) {
return;
}
chatbotObserver = new MutationObserver(function () {
button = document.getElementById('bubble-icon-chat');
if (button) {
handleChatbotButton(button);
}
});
chatbotObserver.observe(document.body, { childList: true, subtree: true });
}
function loadChatbot() {
var script;
window.embeddedChatbotConfig = CHATBOT_CONFIG;
watchChatbotButton();
if (document.getElementById(CHATBOT_SCRIPT_ID)) {
return;
}
script = document.createElement('script');
script.id = CHATBOT_SCRIPT_ID;
script.src = 'https://sotaagents.ai/embed.min.js';
script.async = true;
document.head.appendChild(script);
}
function isChatTrigger(target) {
while (target && target !== document) {
if (target.classList &&
(target.classList.contains('js-aiChatTrigger') ||
target.classList.contains('p-faqTop__aichatBtn'))) {
return true;
}
target = target.parentNode;
}
return false;
}
function openChatbot() {
var button = document.getElementById('bubble-icon-chat');
if (button) {
button.click();
return;
}
pendingChatOpen = true;
watchChatbotButton();
}
/* FAQ配下(/personal/faq/・/corporate/faq/)かどうか */
function isFaqPage() {
return location.pathname.indexOf('/faq/') !== -1;
}
/*
FAQ配下用。すでにFAQを見ている人向けなのでAIチャットへ直接飛ばす。
デザインは角丸10pxの横長バー(PC node-id 7-7598 / SP node-id 136-1974)。
丸ピルはトップページのパネル開閉ボタンが使うので --chat で分ける。
*/
function buildChatHtml() {
return '' +
'
' +
'' +
'AIチャットでお問い合わせ' +
'商品・サービスについて24時間対応' +
'' +
'';
}
function buildHtml() {
var items = '';
var i;
var chatClass;
for (i = 0; i < LINKS.length; i++) {
chatClass = LINKS[i].chat ? ' js-aiChatTrigger' : '';
items += '
ご質問はこちら
' + '