This commit is contained in:
Eduardo Quiros 2022-08-22 05:59:30 -06:00
parent f3f02e41ed
commit 6d66a783b7
No known key found for this signature in database
GPG Key ID: B77F36C3F12720B4
1 changed files with 73 additions and 73 deletions

View File

@ -27,13 +27,13 @@ const RegistroComunicado = () => {
community_id: '' community_id: ''
}; };
useEffect(()=>{ useEffect(() => {
listaComunis(); listaComunis();
},[]) }, [])
const [comunicado, setComunicado] = useState(emptyComunicado); const [comunicado, setComunicado] = useState(emptyComunicado);
const [comunicados,setComuicados]=useState([]); const [comunicados, setComuicados] = useState([]);
const [comunicadoId, setComunicadoId] = useState(null); const [comunicadoId, setComunicadoId] = useState(null);
const [submitted, setSubmitted] = useState(false); const [submitted, setSubmitted] = useState(false);
const toast = useRef(null); const toast = useRef(null);
@ -42,103 +42,103 @@ const RegistroComunicado = () => {
const [globalFilter, setGlobalFilter] = useState(null); const [globalFilter, setGlobalFilter] = useState(null);
async function listaComunis() { async function listaComunis() {
let comunicadosA=await fetch('http://localhost:4000/post/allPosts', {method:'GET'}); let comunicadosA = await fetch('http://localhost:4000/post/allPosts', { method: 'GET' });
let comunicadosRes= await comunicadosA.json(); let comunicadosRes = await comunicadosA.json();
setComuicados(comunicadosRes.message); setComuicados(comunicadosRes.message);
console.log(comunicadosRes.message); console.log(comunicadosRes.message);
} }
const saveComunicado = () => { const saveComunicado = () => {
var data = { var data = {
post: document.getElementById('txt_comunicado').value, post: document.getElementById('txt_comunicado').value,
user_id: cookies.id, user_id: cookies.id,
community_id: cookies.community_id community_id: cookies.community_id
}; };
fetch('http://localhost:4000/post/createPost', { fetch('http://localhost:4000/post/createPost', {
cache: 'no-cache', cache: 'no-cache',
method: 'POST', method: 'POST',
body: JSON.stringify(data), body: JSON.stringify(data),
headers: { headers: {
'Content-Type': 'application/json' 'Content-Type': 'application/json'
} }
}) })
.then( .then(
function (response) { function(response) {
if (response.status != 201) if (response.status != 201)
console.log('Ocurrió un error con el servicio: ' + response.status); console.log('Ocurrió un error con el servicio: ' + response.status);
else else
return response.json(); return response.json();
} }
) )
.then( .then(
function (response) { function(response) {
} }
) )
.catch( .catch(
err => console.log('Ocurrió un error con el fetch', err) err => console.log('Ocurrió un error con el fetch', err)
); );
} }
const header = ( const header = (
<React.Fragment>
<div className="flex flex-column md:flex-row md:justify-content-between md:align-items-center">
<h5 className="m-0">Comunicados de la comunidad</h5>
<span className="block mt-2 md:mt-0 p-input-icon-left">
<i className="pi pi-search" />
<InputText type="search" onInput={(e) => setGlobalFilter(e.target.value)} placeholder="Buscar..." />
</span>
</div>
</React.Fragment>
);
const headerPost = (
<>
<p>
{' '}
<FontAwesomeIcon icon={faCommentAlt} style={{ color: "#D7A86E" }} />{' '}
Descripción comunicado</p>
</>
)
const leftToolbarTemplate = () => {
return (
<React.Fragment> <React.Fragment>
<div className="my-2">
<Button label="Eliminar" icon="pi pi-trash" className="p-button-danger" /> <div className="flex flex-column md:flex-row md:justify-content-between md:align-items-center">
<h5 className="m-0">Comunicados de la comunidad</h5>
<span className="block mt-2 md:mt-0 p-input-icon-left">
<i className="pi pi-search" />
<InputText type="search" onInput={(e) => setGlobalFilter(e.target.value)} placeholder="Buscar..." />
</span>
</div> </div>
</React.Fragment> </React.Fragment>
);
const headerPost = (
<>
<p>
{' '}
<FontAwesomeIcon icon={faCommentAlt} style={{ color: "#D7A86E" }} />{' '}
Descripción comunicado</p>
</>
) )
}
const rightToolbarTemplate = () => { const leftToolbarTemplate = () => {
return ( return (
<React.Fragment> <React.Fragment>
<Button label="Exportar" icon="pi pi-upload" className="p-button-help" /> <div className="my-2">
</React.Fragment> <Button label="Eliminar" icon="pi pi-trash" className="p-button-danger" />
) </div>
} </React.Fragment>
)
}
const rightToolbarTemplate = () => {
return (
<React.Fragment>
<Button label="Exportar" icon="pi pi-upload" className="p-button-help" />
</React.Fragment>
)
}
return ( return (
<div className="grid"> <div className="grid">
<div className="col-12"> <div className="col-12">
<Toast ref={toast} /> <Toast ref={toast} />
<div className="card"> <div className="card">
<Toolbar className="mb-4" left={leftToolbarTemplate} right={rightToolbarTemplate}></Toolbar> <Toolbar className="mb-4" left={leftToolbarTemplate} right={rightToolbarTemplate}></Toolbar>
<DataTable ref={dt} value={comunicados} dataKey="_id" paginator rows={5} <DataTable ref={dt} value={comunicados} dataKey="_id" paginator rows={5}
scrollable scrollHeight="400px" scrollDirection="both" header={header} scrollable scrollHeight="400px" scrollDirection="both" header={header}
rowsPerPageOptions={[5, 10, 25]} className="datatable-responsive mt-3" rowsPerPageOptions={[5, 10, 25]} className="datatable-responsive mt-3"
paginatorTemplate="FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown" paginatorTemplate="FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink CurrentPageReport RowsPerPageDropdown"
currentPageReportTemplate="Mostrando {first} a {last} de {totalRecords} administradores de comunidades de viviendas" currentPageReportTemplate="Mostrando {first} a {last} de {totalRecords} administradores de comunidades de viviendas"
globalFilter={globalFilter} emptyMessage="No hay administradores de comunidades registrados."> globalFilter={globalFilter} emptyMessage="No hay administradores de comunidades registrados.">
<Column selectionMode="multiple" headerStyle={{ width: '3rem' }}></Column> <Column selectionMode="multiple" headerStyle={{ width: '3rem' }}></Column>
<Column field="post" sortable header={headerPost} style={{ flexGrow: 1, flexBasis: '160px', minWidth: '160px', wordBreak: 'break-word' }}></Column> <Column field="post" sortable header={headerPost} style={{ flexGrow: 1, flexBasis: '160px', minWidth: '160px', wordBreak: 'break-word' }}></Column>
</DataTable> </DataTable>
</div> </div>
</div> </div>
<div className="col-12"> <div className="col-12">
<div className="card"> <div className="card">
<h5>Registro de un comunicado para la comunidad</h5> <h5>Registro de un comunicado para la comunidad</h5>
@ -150,7 +150,7 @@ const rightToolbarTemplate = () => {
<span className="p-inputgroup-addon p-button p-icon-input-khaki"> <span className="p-inputgroup-addon p-button p-icon-input-khaki">
<i className="pi pi-pencil"></i> <i className="pi pi-pencil"></i>
</span> </span>
<InputTextarea id="txt_comunicado" rows="4"/> <InputTextarea id="txt_comunicado" rows="4" />
</div> </div>
</div> </div>
</div> </div>