feat: add more informations for isOKIAwtis
Déploiement FRONT PROD / check (push) Successful in 2m12s
Déploiement FRONT PROD / deploy (push) Successful in 22s

This commit is contained in:
2026-06-20 06:09:24 +04:00
parent e7bf523f75
commit 45d1891df6
3 changed files with 35 additions and 5 deletions
+16 -1
View File
@@ -21,6 +21,8 @@ import {green} from '@mui/material/colors'
import ExpandMoreIcon from '@mui/icons-material/ExpandMore' import ExpandMoreIcon from '@mui/icons-material/ExpandMore'
import KeyboardBackspaceIcon from '@mui/icons-material/KeyboardBackspace' import KeyboardBackspaceIcon from '@mui/icons-material/KeyboardBackspace'
import VerifiedIcon from '@mui/icons-material/Verified'
import {formatKuveti} from '../../lib/kuveti' import {formatKuveti} from '../../lib/kuveti'
import AwtisBiyografi from './awtis-biyografi' import AwtisBiyografi from './awtis-biyografi'
import MizikLyen from './mizik-lyen' import MizikLyen from './mizik-lyen'
@@ -32,7 +34,7 @@ const sortTeks = paroles => paroles.sort((a, b) => a.titre.localeCompare(b.titre
export default function AwtisDetay({anAwtis}) { export default function AwtisDetay({anAwtis}) {
const [esByografiOuve, meteEsByografiOuve] = useState(false) const [esByografiOuve, meteEsByografiOuve] = useState(false)
const {alias, biographie, paroles, photo} = anAwtis const {alias, biographie, paroles, photo, isOKIAwtis} = anAwtis
const sortedTeks = sortTeks(paroles) const sortedTeks = sortTeks(paroles)
const gwanBiyo = biographie && biographie.length > 100 const gwanBiyo = biographie && biographie.length > 100
@@ -56,6 +58,19 @@ export default function AwtisDetay({anAwtis}) {
sx={{width: 200, height: 200, border: `2px solid ${green[500]}`}} sx={{width: 200, height: 200, border: `2px solid ${green[500]}`}}
/> />
</Box> </Box>
{isOKIAwtis && (
<Box sx={{display: 'flex', flexDirection: 'column', alignItems: 'center', gap: 0.75, mb: 2}}>
<Chip
icon={<VerifiedIcon sx={{fontSize: 16}} />}
label='Artiste OKI Exclusif'
size='small'
sx={{bgcolor: '#FFD700', color: '#000', fontWeight: 700, '& .MuiChip-icon': {color: '#000'}}}
/>
<Typography variant='caption' sx={{color: 'text.secondary', textAlign: 'center'}}>
Paroles publiées en exclusivité sur PAWÒL-NU, avant toute sortie sur les plateformes de streaming.
</Typography>
</Box>
)}
<Grid sx={{alignItems:'center'}} container direction='column' spacing={3}> <Grid sx={{alignItems:'center'}} container direction='column' spacing={3}>
{biyo && ( {biyo && (
<Grid size={{xs: 12, md: 6}}> <Grid size={{xs: 12, md: 6}}>
+18 -3
View File
@@ -10,8 +10,10 @@ import Card from '@mui/material/Card'
import CardMedia from '@mui/material/CardMedia' import CardMedia from '@mui/material/CardMedia'
import CardContent from '@mui/material/CardContent' import CardContent from '@mui/material/CardContent'
import Typography from '@mui/material/Typography' import Typography from '@mui/material/Typography'
import Chip from '@mui/material/Chip'
import {styled} from '@mui/material/styles' import {styled} from '@mui/material/styles'
import VerifiedIcon from '@mui/icons-material/Verified'
import AwtisBiyografi from './awtis-biyografi' import AwtisBiyografi from './awtis-biyografi'
@@ -55,13 +57,26 @@ export default function AwtisKat({artiste}) {
const router = useRouter() const router = useRouter()
const [esByografiOuve, meteEsByografiOuve] = useState(false) const [esByografiOuve, meteEsByografiOuve] = useState(false)
const {alias, biographie, paroles, photo, slug} = artiste const {alias, biographie, paroles, photo, slug, isOKIAwtis} = artiste
return ( return (
<Grid size={{xs: 12, sm: 6, md: 4}}> <Grid size={{xs: 12, sm: 6, md: 4}}>
<Kat> <Kat>
<Card sx={{maxWidth: 340}}> <Card sx={{maxWidth: 340, position: 'relative', ...(isOKIAwtis && {outline: '2px solid #FFD700'})}}>
<CardActionArea onClick={() => router.push(`${SITE_URL}/awtis/${slug}`)}> {isOKIAwtis && (
<Chip
icon={<VerifiedIcon sx={{fontSize: 14}} />}
label='OKI Exclusif'
size='small'
sx={{
position: 'absolute', top: 8, left: 8, zIndex: 1,
bgcolor: '#FFD700', color: '#000',
fontWeight: 700, fontSize: '0.7rem',
'& .MuiChip-icon': {color: '#000'},
}}
/>
)}
<CardActionArea onClick={() => router.push(`/awtis/${slug}`)}>
<CardMedia <CardMedia
className={classes.media} className={classes.media}
component='img' component='img'
+1 -1
View File
@@ -111,7 +111,7 @@ export async function jwennAwtisPajinasyon(paj) {
const start = AWTIS_POU_CHAK_PAJ * (paj - 1) const start = AWTIS_POU_CHAK_PAJ * (paj - 1)
const query = qs.stringify({ const query = qs.stringify({
populate: ['paroles', 'photo'], populate: ['paroles', 'photo'],
sort: ['createdAt:desc'], sort: ['isOKIAwtis:desc', 'createdAt:desc'],
pagination: { pagination: {
start, start,
limit: AWTIS_POU_CHAK_PAJ limit: AWTIS_POU_CHAK_PAJ