ajuste empresa usuario

This commit is contained in:
2026-06-19 13:04:35 -03:00
parent 151beb10a7
commit 468a8467a3
+24 -1
View File
@@ -672,6 +672,9 @@ window.darkModeIsDark=function(){return localStorage.getItem('chatc2_dark_mode')
<a id="navConfigChat" class="admin-only-nav" href="#" title="Configurações">⚙️</a> <a id="navConfigChat" class="admin-only-nav" href="#" title="Configurações">⚙️</a>
</div> </div>
</div> </div>
<div id="empresaSwitcherWrap" style="display:none;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,0.08)">
<select id="empresaSwitcher" onchange="trocarEmpresa(this.value)" style="width:100%;padding:6px 8px;border:1px solid rgba(255,255,255,0.15);border-radius:6px;font-size:12px;background:rgba(255,255,255,0.06);color:#fff;outline:none"></select>
</div>
<div class="nav-tabs"> <div class="nav-tabs">
<a href="#" class="active" onclick="mudarFiltro('mine',this)">Minhas (0)</a> <a href="#" class="active" onclick="mudarFiltro('mine',this)">Minhas (0)</a>
<a href="#" onclick="mudarFiltro('unassigned',this)">Sem atend. (0)</a> <a href="#" onclick="mudarFiltro('unassigned',this)">Sem atend. (0)</a>
@@ -777,7 +780,7 @@ window.darkModeIsDark=function(){return localStorage.getItem('chatc2_dark_mode')
const token = localStorage.getItem('chatc2_token'); const token = localStorage.getItem('chatc2_token');
const pathParts = window.location.pathname.split('/'); const pathParts = window.location.pathname.split('/');
const alias = pathParts[2]; const alias = pathParts[2];
const empresaId = pathParts[4]; let empresaId = pathParts[4];
const conversaId = pathParts[6]; const conversaId = pathParts[6];
const usuarioLogado = JSON.parse(localStorage.getItem('chatc2_user') || '{}'); const usuarioLogado = JSON.parse(localStorage.getItem('chatc2_user') || '{}');
// Navegacao rapida no header do chat // Navegacao rapida no header do chat
@@ -1718,7 +1721,27 @@ window.mudarFiltro = function(filtro, el) {
// Mostra // Mostra
// ===== SELETOR DE EMPRESA (usuário com acesso a mais de uma) =====
async function carregarEmpresas() {
try {
var r = await (await fetch('/api/' + alias + '/empresas', { headers: { 'Authorization': 'Bearer ' + token } })).json();
if (!r.success || !r.data || r.data.length <= 1) return; // só mostra se tiver mais de uma
var sel = document.getElementById('empresaSwitcher');
sel.innerHTML = r.data.map(function(e) {
var nome = e.nomeFantasia || e.nome || ('Empresa ' + e.id);
return '<option value="' + e.id + '"' + (String(e.id) === String(empresaId) ? ' selected' : '') + '>' + esc(nome) + '</option>';
}).join('');
document.getElementById('empresaSwitcherWrap').style.display = 'block';
} catch(e) {}
}
window.trocarEmpresa = function(novaEmpresaId) {
if (!novaEmpresaId || String(novaEmpresaId) === String(empresaId)) return;
// Recarrega a tela na empresa escolhida (estado limpo: conversas, config, etc.)
window.location.href = '/app/' + alias + '/company/' + novaEmpresaId + '/conversation/0';
};
// ===== INICIAR ===== // ===== INICIAR =====
carregarEmpresas();
carregarConversas(); carregarConversas();
carregarConfigResolucao().then(function() { carregarConfigResolucao().then(function() {
if (conversaId) abrirConversa(parseInt(conversaId)); if (conversaId) abrirConversa(parseInt(conversaId));