progress
This commit is contained in:
13
src/assets/scss/components/pageBando.scss
Normal file
13
src/assets/scss/components/pageBando.scss
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
.pageBando__templateSelection {
|
||||||
|
display: flex;
|
||||||
|
gap: 14px;
|
||||||
|
align-items: flex-end;
|
||||||
|
|
||||||
|
.appForm__field {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
button {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -105,4 +105,5 @@ body {
|
|||||||
@import "./components/appPage.scss";
|
@import "./components/appPage.scss";
|
||||||
@import "./components/statsBigBadges.scss";
|
@import "./components/statsBigBadges.scss";
|
||||||
@import "./components/bandoStatusTag.scss";
|
@import "./components/bandoStatusTag.scss";
|
||||||
@import "./components/appForm.scss";
|
@import "./components/appForm.scss";
|
||||||
|
@import "./components/pageBando.scss";
|
||||||
@@ -1,8 +1,10 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Navigate, Outlet } from 'react-router-dom';
|
import {
|
||||||
|
//Navigate,
|
||||||
|
Outlet } from 'react-router-dom';
|
||||||
|
|
||||||
// tools
|
// tools
|
||||||
import AuthenticationService from '../../service/authentication-service';
|
//import AuthenticationService from '../../service/authentication-service';
|
||||||
|
|
||||||
const ProtectedRoute = () => {
|
const ProtectedRoute = () => {
|
||||||
|
|
||||||
|
|||||||
@@ -9,10 +9,13 @@ import { InputText } from 'primereact/inputtext';
|
|||||||
import { InputTextarea } from 'primereact/inputtextarea';
|
import { InputTextarea } from 'primereact/inputtextarea';
|
||||||
import getBandoLabel from '../../helpers/getBandoLabel';
|
import getBandoLabel from '../../helpers/getBandoLabel';
|
||||||
import { Button } from 'primereact/button';
|
import { Button } from 'primereact/button';
|
||||||
|
import { Dropdown } from 'primereact/dropdown';
|
||||||
|
|
||||||
const Bando = () => {
|
const Bando = () => {
|
||||||
const { id } = useParams();
|
const { id } = useParams();
|
||||||
const [data, setData] = useState({});
|
const [data, setData] = useState({});
|
||||||
|
const [selectedTemplate, setSelectedTemplate] = useState(null);
|
||||||
|
const [templates, setTemplate] = useState(null);
|
||||||
const {
|
const {
|
||||||
control,
|
control,
|
||||||
reset,
|
reset,
|
||||||
@@ -21,7 +24,7 @@ const Bando = () => {
|
|||||||
getValues
|
getValues
|
||||||
} = useForm(data);
|
} = useForm(data);
|
||||||
const onSubmit = data => console.log(data);
|
const onSubmit = data => console.log(data);
|
||||||
console.log(errors, getValues());
|
console.log('data', data);
|
||||||
|
|
||||||
const onPublish = () => {
|
const onPublish = () => {
|
||||||
console.log('click onPublish');
|
console.log('click onPublish');
|
||||||
@@ -34,8 +37,8 @@ const Bando = () => {
|
|||||||
const data = 0 === bandoId
|
const data = 0 === bandoId
|
||||||
? {
|
? {
|
||||||
status: 'draft',
|
status: 'draft',
|
||||||
name: null,
|
name: '',
|
||||||
description: null
|
description: ''
|
||||||
}
|
}
|
||||||
: {
|
: {
|
||||||
name: 'Bando Innovazione 2024',
|
name: 'Bando Innovazione 2024',
|
||||||
@@ -48,6 +51,12 @@ const Bando = () => {
|
|||||||
}
|
}
|
||||||
setData(data);
|
setData(data);
|
||||||
reset();
|
reset();
|
||||||
|
|
||||||
|
const templates = [
|
||||||
|
{ name: 'Il mio template', value: 22 },
|
||||||
|
{ name: 'Template #11', value: 11 },
|
||||||
|
];
|
||||||
|
setTemplate(templates)
|
||||||
}, [id]);
|
}, [id]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -62,6 +71,28 @@ const Bando = () => {
|
|||||||
|
|
||||||
<div className="appPage__spacer"></div>
|
<div className="appPage__spacer"></div>
|
||||||
|
|
||||||
|
<div className="pageBando__templateSelection">
|
||||||
|
<div className="appForm__field">
|
||||||
|
<label htmlFor="template">
|
||||||
|
{__('Usa Template Salvato', 'gepafin')}
|
||||||
|
</label>
|
||||||
|
<Dropdown
|
||||||
|
id="template"
|
||||||
|
value={selectedTemplate}
|
||||||
|
onChange={(e) => setSelectedTemplate(e.value)}
|
||||||
|
options={templates}
|
||||||
|
optionLabel="name"
|
||||||
|
placeholder={__('Seleziona template', 'gepafin')} />
|
||||||
|
</div>
|
||||||
|
<Button
|
||||||
|
onClick={() => console.log('use template')}
|
||||||
|
label={__('Applica', 'gepafin')}
|
||||||
|
icon="pi pi-check"
|
||||||
|
iconPos="right" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="appPage__spacer"></div>
|
||||||
|
|
||||||
{data
|
{data
|
||||||
? <form className="appForm" onSubmit={handleSubmit(onSubmit)}>
|
? <form className="appForm" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<div className="appForm__field">
|
<div className="appForm__field">
|
||||||
@@ -75,7 +106,10 @@ const Bando = () => {
|
|||||||
rules={{ required: __('È obbligatorio', 'gepafin') }}
|
rules={{ required: __('È obbligatorio', 'gepafin') }}
|
||||||
render={({ field, fieldState }) => (
|
render={({ field, fieldState }) => (
|
||||||
<InputText id={field.name}
|
<InputText id={field.name}
|
||||||
{...field}
|
onInput={field.onChange}
|
||||||
|
onBlur={field.onBlur}
|
||||||
|
value={field.value}
|
||||||
|
name={field.name}
|
||||||
autoFocus
|
autoFocus
|
||||||
className={classNames({ 'p-invalid': fieldState.invalid })}/>
|
className={classNames({ 'p-invalid': fieldState.invalid })}/>
|
||||||
)}/>
|
)}/>
|
||||||
|
|||||||
Reference in New Issue
Block a user