diff --git a/app.html b/app.html index 7683d03..2914863 100644 --- a/app.html +++ b/app.html @@ -100,13 +100,18 @@ function allU(){var r=getU();r.admin={pass:"admin",name:"Администрат function getA(){return JSON.parse(localStorage.getItem("pab_audits")||"[]")} function saveA(d){localStorage.setItem("pab_audits",JSON.stringify(d))} -// Sync from Supabase to localStorage +// Sync: push localStorage to Supabase, then pull Supabase to localStorage async function syncFromSB(){ try{ - var u=await SB.from("users").select("*");if(u.data){var um={};u.data.forEach(function(x){um[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}});saveU(um)} - var a=await SB.from("audits").select("*").order("created_at",{ascending:false});if(a.data){var am=a.data.map(function(x){return{id:x.id,number:x.number,date:x.date,location:x.location,region:x.region,workType:x.work_type,workerCount:x.worker_count,observer:x.observer,observerRole:x.observer_role,overallSafe:x.overall_safe,categories:x.categories,totalViolations:x.total_violations,dialogue:x.dialogue,docs:x.docs,createdBy:x.created_by,createdAt:x.created_at}});saveA(am)} - console.log("Synced from Supabase") - }catch(e){console.log("Supabase sync failed, using localStorage")} + // 1. Push localStorage users to Supabase + var lu=getU();for(var k in lu){await SB.from("users").upsert({login:k,pass:lu[k].pass,name:lu[k].name,email:lu[k].email,role:lu[k].role,freq:lu[k].freq,branch:lu[k].branch,dept:lu[k].dept,region:lu[k].region,oblast:lu[k].oblast,city:lu[k].city}).select();} + // 2. Push localStorage audits to Supabase + var la=getA();for(var i=0;i Вход — ПАБ -