diff --git a/public/scripts/extensions/expressions/index.js b/public/scripts/extensions/expressions/index.js index eece43a2c..19d03c3ef 100644 --- a/public/scripts/extensions/expressions/index.js +++ b/public/scripts/extensions/expressions/index.js @@ -99,9 +99,10 @@ async function moduleWorker() { lastCharacter = context.groupId || context.characterId; } + const offlineMode = $('.expression_settings .offline_mode'); if (!modules.includes('classify')) { $('.expression_settings').show(); - $('.expression_settings .offline_mode').css('display', 'block'); + offlineMode.css('display', 'block'); lastCharacter = context.groupId || context.characterId; if (context.groupId) { @@ -111,7 +112,15 @@ async function moduleWorker() { return; } else { - $('.expression_settings .offline_mode').css('display', 'none'); + // force reload expressions list on connect to API + if (offlineMode.is(':visible')) { + expressionsList = null; + spriteCache = {}; + expressionsList = await getExpressionsList(); + await validateImages(currentLastMessage.name, true); + } + + offlineMode.css('display', 'none'); } @@ -260,12 +269,10 @@ async function getExpressionsList() { console.log('getting expressions list'); // get something for offline mode (default images) if (!modules.includes('classify')) { - return DEFAULT_EXPRESSIONS; } if (Array.isArray(expressionsList)) { - return expressionsList; } @@ -273,7 +280,6 @@ async function getExpressionsList() { url.pathname = '/api/classify/labels'; try { - const apiResult = await fetch(url, { method: 'GET', headers: { 'Bypass-Tunnel-Reminder': 'bypass' }, @@ -287,7 +293,6 @@ async function getExpressionsList() { } } catch (error) { - console.log(error); return []; } @@ -313,7 +318,6 @@ async function setExpression(character, expression, force) { }); } else { if (extension_settings.expressions.showDefault) { - setDefault(); } } @@ -344,7 +348,6 @@ function onClickExpressionImage() { (function () { function addExpressionImage() { - const html = `