Add OtomatikSwitch to AjouteTradiksyon and EkriTeks

This commit is contained in:
Cédric FAMIBELLE-PRONZOLA
2022-03-27 02:18:03 +04:00
parent 6ca7591a25
commit 5399dde038
2 changed files with 73 additions and 58 deletions
+12 -1
View File
@@ -4,6 +4,8 @@ import PropTypes from 'prop-types'
import {MenuItem, Menu, Button} from '@mui/material' import {MenuItem, Menu, Button} from '@mui/material'
import {uniq} from 'lodash' import {uniq} from 'lodash'
import OtomatikSwitch from './otomatik-switch'
const PREFIX = 'AjouteTradiksyon' const PREFIX = 'AjouteTradiksyon'
const classes = { const classes = {
@@ -49,7 +51,7 @@ function StyledMenu(props) {
const StyledMenuItem = MenuItem const StyledMenuItem = MenuItem
function AjouteTradiksyon({chwaLang, setChwaLang}) { function AjouteTradiksyon({disableSwitch, tradiksyonOtomatik, setTradiksyonOtomatik, canAutoTranslate, chwaLang, setChwaLang}) {
const [anchorElement, setAnchorElement] = useState(null) const [anchorElement, setAnchorElement] = useState(null)
const handleClick = event => { const handleClick = event => {
@@ -63,6 +65,10 @@ function AjouteTradiksyon({chwaLang, setChwaLang}) {
} }
return ( return (
<>
{canAutoTranslate && (
<OtomatikSwitch tradiksyonOtomatik={tradiksyonOtomatik} setTradiksyonOtomatik={setTradiksyonOtomatik} disabled={!chwaLang.includes('fr') || disableSwitch} />
)}
<Root style={{textAlign: 'center', marginTop: 20}}> <Root style={{textAlign: 'center', marginTop: 20}}>
<Button <Button
aria-controls='lang-menu' aria-controls='lang-menu'
@@ -119,10 +125,15 @@ function AjouteTradiksyon({chwaLang, setChwaLang}) {
>🇮🇹 Italiano</StyledMenuItem> >🇮🇹 Italiano</StyledMenuItem>
</StyledMenu> </StyledMenu>
</Root> </Root>
</>
) )
} }
AjouteTradiksyon.propTypes = { AjouteTradiksyon.propTypes = {
disableSwitch: PropTypes.bool.isRequired,
tradiksyonOtomatik: PropTypes.bool.isRequired,
setTradiksyonOtomatik: PropTypes.func.isRequired,
canAutoTranslate: PropTypes.bool.isRequired,
chwaLang: PropTypes.array.isRequired, chwaLang: PropTypes.array.isRequired,
setChwaLang: PropTypes.func.isRequired setChwaLang: PropTypes.func.isRequired
} }
+7 -3
View File
@@ -84,6 +84,7 @@ function EkriTeks({selectedTeks, setSelectedTeks}) {
const [loading, setLoading] = useState(false) const [loading, setLoading] = useState(false)
const [currentTeksId, setCurrentTeksId] = useState(null) const [currentTeksId, setCurrentTeksId] = useState(null)
const [open, setOpen] = useState(false) const [open, setOpen] = useState(false)
const [tradiksyonOtomatik, setTradiksyonOtomatik] = useState(false)
const handleUpdate = useCallback(update => { const handleUpdate = useCallback(update => {
setTeksEkri({...teksEkri, ...update}) setTeksEkri({...teksEkri, ...update})
@@ -143,7 +144,8 @@ function EkriTeks({selectedTeks, setSelectedTeks}) {
italiano: it === '' ? null : it italiano: it === '' ? null : it
}, },
user, user,
awtis: awtisResponse.data.awtis.map(id => id) awtis: awtisResponse.data.awtis.map(id => id),
tradiksyonOtomatik
}, { }, {
headers headers
}) })
@@ -180,7 +182,8 @@ function EkriTeks({selectedTeks, setSelectedTeks}) {
italiano: it === '' ? null : it italiano: it === '' ? null : it
}, },
user, user,
awtis: [awtisResponse.data._id] awtis: [awtisResponse.data._id],
tradiksyonOtomatik
}, { }, {
headers headers
}) })
@@ -206,6 +209,7 @@ function EkriTeks({selectedTeks, setSelectedTeks}) {
setTradiksyon({fr: '', en: '', es: '', de: '', it: ''}) setTradiksyon({fr: '', en: '', es: '', de: '', it: ''})
setKiChwalang([]) setKiChwalang([])
setCurrentTeksId(null) setCurrentTeksId(null)
setTradiksyonOtomatik(false)
} }
useEffect(() => { useEffect(() => {
@@ -362,7 +366,7 @@ function EkriTeks({selectedTeks, setSelectedTeks}) {
</FormControl> </FormControl>
))} ))}
</form> </form>
<AjouteTradiksyon chwaLang={kiChawLang} setChwaLang={setKiChwalang} /> <AjouteTradiksyon disableSwitch={tradiksyon.fr === ''} tradiksyonOtomatik={tradiksyonOtomatik} setTradiksyonOtomatik={setTradiksyonOtomatik} canAutoTranslate={user.canAutoTranslate} chwaLang={kiChawLang} setChwaLang={setKiChwalang} />
<div> <div>
<Button <Button
fullWidth fullWidth