diff --git a/index.html b/index.html index 0aa5602..4334834 100644 --- a/index.html +++ b/index.html @@ -58,21 +58,14 @@ document.getElementById('lb').onclick=function(){ var u=document.getElementById('lu').value.trim().toLowerCase(); var p=document.getElementById('lp').value.trim(); if(u==='admin'&&p==='admin'){doAppLogin('admin',{name:'Администратор',role:'Руководитель',freq:'0,month',email:'admin@telecom.kz',branch:'АО «Казахтелеком»',dept:'ЦА',region:'Центральный',oblast:'—',city:'г. Астана'});return} - // Сначала подтягиваем всех пользователей из Supabase в localStorage + // Быстрая проверка localStorage + var users={};try{users=JSON.parse(localStorage.getItem('pab_users')||'{}')}catch(e){} + if(users[u]&&users[u].pass===p){doAppLogin(u,users[u]);return} + // Показываем что идёт проверка + var btn=document.getElementById('lb');btn.textContent='Проверка...';btn.disabled=true; + // Проверка через Supabase var SBU="https://znexbjafkvyjffffbhlf.supabase.co",SBK="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InpuZXhiamFma3Z5amZmZmZiaGxmIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc4MDY0NDE4MiwiZXhwIjoyMDk2MjIwMTgyfQ.5pOYTkL5eCmpSHBY3EwKof6NVKt7tL4Fn8xUAKM8itE"; - fetch(SBU+"/rest/v1/users?select=*",{headers:{"apikey":SBK,"Authorization":"Bearer "+SBK}}).then(function(r){return r.json()}).then(function(sbUsers){ - var users={};try{users=JSON.parse(localStorage.getItem('pab_users')||'{}')}catch(e){} - sbUsers.forEach(function(x){if(!users[x.login])users[x.login]={pass:x.pass,name:x.name,email:x.email,role:x.role,freq:x.freq,branch:x.branch,dept:x.dept,region:x.region,oblast:x.oblast,city:x.city}}); - localStorage.setItem('pab_users',JSON.stringify(users)); - // Проверяем логин - if(users[u]&&users[u].pass===p){doAppLogin(u,users[u]);return} - if(sbUsers.some(function(x){return x.login===u&&x.pass===p})){var ud=sbUsers.find(function(x){return x.login===u});doAppLogin(u,ud);return} - document.getElementById('lerr').style.display='block'; - }).catch(function(){ - var users={};try{users=JSON.parse(localStorage.getItem('pab_users')||'{}')}catch(e){} - if(users[u]&&users[u].pass===p){doAppLogin(u,users[u]);return} - document.getElementById('lerr').style.display='block'; - }); + fetch(SBU+"/rest/v1/users?login=eq."+encodeURIComponent(u),{headers:{"apikey":SBK,"Authorization":"Bearer "+SBK}}).then(function(r){return r.json()}).then(function(d){if(d.length>0&&d[0].pass===p){var ud=d[0];doAppLogin(u,ud);users[u]={pass:ud.pass,name:ud.name,email:ud.email,role:ud.role,freq:ud.freq,branch:ud.branch,dept:ud.dept,region:ud.region,oblast:ud.oblast,city:ud.city};localStorage.setItem('pab_users',JSON.stringify(users))}else{btn.textContent='Войти';btn.disabled=false;document.getElementById('lerr').style.display='block'}}).catch(function(){btn.textContent='Войти';btn.disabled=false;document.getElementById('lerr').style.display='block'}); }; }; document.getElementById('lp').onkeydown=function(e){if(e.key==='Enter')document.getElementById('lb').onclick()};