import React, { Suspense, useEffect, useState, useRef, lazy } from 'react'; import { Meteor } from 'meteor/meteor'; import { PoblesCollection } from '/imports/api/pobles.js'; import { useSubscribe, useTracker, useFind } from 'meteor/react-meteor-data/suspense'; import { Roles } from 'meteor/roles'; // import { useUserId } from 'meteor/react-meteor-accounts'; import { BarraNav } from "./BarraNav/BarraNav"; import { Link } from 'react-router-dom'; export const Pobles = () => { const [pobleSeleccionat, setPobleSeleccionat] = useState(null); const [creantPoble, setCreantPoble] = useState(false); useSubscribe('pobles'); // const pobles = useTracker("pobles", () => PoblesCollection.find().fetchAsync()); const pobles = useFind(PoblesCollection, [{}, {sort: {nomPoble: 1}}]); const [esEditor, setEsEditor] = useState(false); const userId = Meteor.userId(); // console.log("isAdmin: ", isAdmin) ; // (async () => { useEffect(() => { (async () => { const comprovaAdmin = await Roles.userIsInRoleAsync(userId, ["admin"]); setEsEditor(comprovaAdmin); })(); }, []); // })(); const QuadreInfo_Poble = () => { const refInAmbitAssignat = useRef(); return
{pobleSeleccionat &&

{pobleSeleccionat._id}

}
{ try { Meteor.callAsync('editaOAfigPoble', { ...pobleSeleccionat || [], nomPoble: d.get('nomPoble'), cp: d.get('cp') || "", comarca: d.get('comarca') || "", ambitAssociat: d.get('ambit-associat') }).then(() => setPobleSeleccionat(null)) .catch(err => console.error(err)); } catch (err) { alert(err); console.error(err); } }} > refInAmbitAssignat.current.value = ev.target.value.replace(/ +/g, '-').toLowerCase()} />


{ esEditor && <>

Àmbit associat: {/* // nomPoble.replace(/ +/g, '-').toLowerCase()}/> */}

}
; }; return Carregant...} >

Pobles

{ esEditor && (pobleSeleccionat || creantPoble) && } {esEditor && }
; };