chore(tenants): conteudo de publico/ atualizado
This commit is contained in:
@@ -3756,7 +3756,7 @@ data:
|
||||
|
||||
</main>
|
||||
|
||||
<script src="/publico/painel.js?v=2.88"></script>
|
||||
<script src="/publico/painel.js?v=2.89"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -4238,7 +4238,8 @@ data:
|
||||
+ (whatsapp(c.whatsapp) ? '<a class="btn claro" href="' + esc(whatsapp(c.whatsapp)) + '" target="_blank" rel="noopener noreferrer">WhatsApp</a>' : "")
|
||||
+ (c.email ? '<a class="btn claro" href="mailto:' + esc(c.email) + '">E-mail</a>' : "")
|
||||
+ (f.faturaVencida ? '<a class="btn claro" href="' + esc(linkSeguro(f.faturaVencida) || "#") + '" target="_blank" rel="noopener noreferrer">Fatura vencida</a>' : "")
|
||||
+ (c.tenant ? '<button type="button" class="btn claro" data-licenca="' + esc(c.tenant) + '">Reenviar licença</button>' : "")
|
||||
+ (c.tenant ? '<button type="button" class="btn claro" data-licenca="' + esc(c.tenant) + '" data-acao="reenviar">Reenviar licença</button>'
|
||||
+ '<button type="button" class="btn claro" data-licenca="' + esc(c.tenant) + '" data-acao="trocar">Trocar chave</button>' : "")
|
||||
+ '</div><p id="licencaAviso" class="ajuda" aria-live="polite"></p></header>'
|
||||
+ (alertas ? '<ul class="lista-alertas">' + alertas + "</ul>" : "")
|
||||
|
||||
@@ -4760,20 +4761,31 @@ data:
|
||||
corpo.addEventListener("keydown", function (ev) { if (ev.key === "Enter") aoEscolher(ev); });
|
||||
$("alertas").addEventListener("click", aoEscolher);
|
||||
|
||||
/* ── licenca do app do treinador ──────────────────────────────────────────
|
||||
* Reenviar = gerar uma chave NOVA e mandar ao dono da compra. A anterior
|
||||
* deixa de valer para ATIVAR (quem ja ativou o app continua entrando: o app
|
||||
* guarda a escolinha, nao a chave). Por isso pede confirmacao. */
|
||||
/* ── licenca dos apps (dono, treinador, pais) ─────────────────────────────
|
||||
* Reenviar = mandar a MESMA chave da escola ao dono da compra (captacao 4.32+;
|
||||
* so a chave antiga, guardada so com hash, e trocada uma vez). Nada muda para
|
||||
* ninguem: sem confirmacao.
|
||||
* Trocar = revogar a chave e gerar outra. Desde os apps 1.0.4 (captacao 4.33)
|
||||
* o app pergunta a situacao da chave ao abrir: trocar DERRUBA os apps de todos
|
||||
* da escola (dono, treinadores, pais) em ate 15 min de uso, e cada um precisa
|
||||
* da chave nova. Por isso pede o nome do tenant digitado. */
|
||||
var API_LICENCA = "/api/plataforma/painel/licencas/";
|
||||
|
||||
function reenviarLicenca(tenant, aviso) {
|
||||
function acaoDaLicenca(tenant, acao, aviso) {
|
||||
if (!tokenAtual) return Promise.resolve();
|
||||
if (!window.confirm("Gerar uma chave NOVA para " + tenant + " e mandar por e-mail ao dono da compra?\n\n"
|
||||
+ "A chave atual deixa de valer para ativar o app (quem já ativou continua entrando).")) {
|
||||
return Promise.resolve();
|
||||
if (acao === "trocar") {
|
||||
var digitado = window.prompt("TROCAR a chave de " + tenant + "?\n\n"
|
||||
+ "A chave atual para de valer e os apps de TODOS da escola (dono, treinadores e pais) saem da conta "
|
||||
+ "em até 15 minutos de uso; cada um vai precisar da chave nova, que vai por e-mail ao dono da compra.\n"
|
||||
+ "Use só se a chave vazou.\n\nPara confirmar, digite o nome do tenant (" + tenant + "):");
|
||||
if (digitado === null) return Promise.resolve();
|
||||
if (digitado.trim() !== tenant) {
|
||||
aviso.textContent = "Nada foi trocado: o nome digitado não confere.";
|
||||
return Promise.resolve();
|
||||
}
|
||||
}
|
||||
aviso.textContent = "Enviando…";
|
||||
return fetch(API_LICENCA + encodeURIComponent(tenant) + "/reenviar", {
|
||||
return fetch(API_LICENCA + encodeURIComponent(tenant) + "/" + acao, {
|
||||
method: "POST", headers: { "x-atm-admin-token": tokenAtual, "Content-Type": "application/json" }, body: "{}"
|
||||
}).then(function (r) {
|
||||
if (r.status === 401) throw new Error("O token expirou. Saia e entre de novo no painel.");
|
||||
@@ -4782,7 +4794,8 @@ data:
|
||||
return d;
|
||||
});
|
||||
}).then(function (d) {
|
||||
aviso.textContent = (d.emailEnviado ? "Chave nova enviada para " : "Chave nova criada; o e-mail vai em instantes para ")
|
||||
var oQue = acao === "trocar" ? "Chave NOVA" : "Chave da escola";
|
||||
aviso.textContent = oQue + (d.emailEnviado ? " enviada para " : " pronta; o e-mail vai em instantes para ")
|
||||
+ (d.destino || "o dono da compra") + " (termina em " + d.finalDaChave + ").";
|
||||
}).catch(function (e) {
|
||||
aviso.textContent = e && e.message && e.message !== "Failed to fetch" ? e.message : "Sem conexão com o servidor.";
|
||||
@@ -4793,7 +4806,8 @@ data:
|
||||
var b = ev.target.closest ? ev.target.closest("[data-licenca]") : null;
|
||||
if (!b) return;
|
||||
b.disabled = true;
|
||||
reenviarLicenca(b.getAttribute("data-licenca"), $("licencaAviso")).then(function () { b.disabled = false; });
|
||||
acaoDaLicenca(b.getAttribute("data-licenca"), b.getAttribute("data-acao") || "reenviar", $("licencaAviso"))
|
||||
.then(function () { b.disabled = false; });
|
||||
});
|
||||
|
||||
$("fecharFicha").addEventListener("click", fecharFicha);
|
||||
|
||||
Reference in New Issue
Block a user