Parcourir la source

add one article and optional Author

culture-page
Pavle Golubovic il y a 2 ans
Parent
révision
1a4727b511

+ 2
- 2
frontend/src/components/BlogHeadingSection.jsx Voir le fichier

AuthorImage: data.AuthorImage, AuthorImage: data.AuthorImage,
}} }}
/> />
<H1 data={data.ArticleTitle} />
{/* <H1 data={data.ArticleTitle} />
<Paragraph data={data.ArticleDescription} /> <Paragraph data={data.ArticleDescription} />
<Image data={data.ArticleImage} />
<Image data={data.ArticleImage} /> */}
</Fragment> </Fragment>
); );
}; };

+ 4
- 4
frontend/src/components/DynamicZones.jsx Voir le fichier



const DynamicZones = ({ data }) => { const DynamicZones = ({ data }) => {
return ( return (
<Fragment>
<div className='flex flex-col gap-32p'>
{/* Dymanic zones */} {/* Dymanic zones */}
{data && {data &&
data.length > 0 && data.length > 0 &&
data.map((item, index) => ( data.map((item, index) => (
<Fragment key={index}>
<div key={index}>
{/* H1 */} {/* H1 */}
{item.__component && item.__component === 'blog-components.h1' && ( {item.__component && item.__component === 'blog-components.h1' && (
<H1 data={item.field}></H1> <H1 data={item.field}></H1>
{item.__component && item.__component === 'blog-components.quote' && ( {item.__component && item.__component === 'blog-components.quote' && (
<Quote data={item.field}></Quote> <Quote data={item.field}></Quote>
)} )}
</Fragment>
</div>
))} ))}
</Fragment>
</div>
); );
}; };



+ 15
- 8
frontend/src/components/shared/ArticleCard.jsx Voir le fichier

return ( return (
// <div className={"card box" + (isLarge ? ' col-span-2' : '')}> // <div className={"card box" + (isLarge ? ' col-span-2' : '')}>
<a <a
className={'card box my-2 flex flex-col md:flex-row items-center justify-between gap-[72px]'}
className={
'card box my-2 flex flex-col md:flex-row items-center justify-between gap-[72px]'
}
href={`/articles/${data.Slug}`} href={`/articles/${data.Slug}`}
> >
<div className="flex flex-col gap-[18px]"> <div className="flex flex-col gap-[18px]">
<div className="flex gap-4">
{ data.Author &&
<div className="flex gap-4">
<img <img
className="max-h-[45px] object-fit rounded-full" className="max-h-[45px] object-fit rounded-full"
src={api_url + data.AuthorImage.data.attributes.url} src={api_url + data.AuthorImage.data.attributes.url}
alt={api_url + data.AuthorImage.data.attributes.alternativeText}
alt={data.AuthorImage.data.attributes.alternativeText}
/> />
<div className="flex flex-col items-start"> <div className="flex flex-col items-start">
<p className="paragraph">{data.Author}</p> <p className="paragraph">{data.Author}</p>
</p> </p>
</div> </div>
</div> </div>
<div className='text-left flex flex-col gap-[8px]'>
}
<div className="text-left flex flex-col gap-[8px]">
<h2 className="n-h3-heading text-dark-gray">{temp.ArticleTitle}</h2> <h2 className="n-h3-heading text-dark-gray">{temp.ArticleTitle}</h2>
<p className="n-paragraph">{temp.ArticleLeadingParagraph}</p> <p className="n-paragraph">{temp.ArticleLeadingParagraph}</p>
</div> </div>
)} )}
</div> </div>
</div> </div>
<img
src={api_url + data.ArticleImage.data.attributes.url}
alt={api_url + data.ArticleImage.data.attributes.alternativeText}
/>
<div className="w-full md:w-[450px] rounded-8 overflow-hidden">
<img
src={api_url + data.ArticleImage.data.attributes.url}
alt={data.ArticleImage.data.attributes.alternativeText}
/>
</div>


{/* <img src={api_url + data.img} alt={api_url + data.alt} className={'mb-12 mx-auto self-center'}></img> */} {/* <img src={api_url + data.img} alt={api_url + data.alt} className={'mb-12 mx-auto self-center'}></img> */}
</a> </a>

+ 4
- 1
frontend/src/pages/ArticlePage.jsx Voir le fichier

</a> </a>
<OneArticlesGrid> <OneArticlesGrid>
<div className="col-span-1 md:col-span-4"> <div className="col-span-1 md:col-span-4">
<BlogHeadingSection
{data[0].attributes.Author &&
<BlogHeadingSection
data={{ data={{
ArticleImage: data[0].attributes.ArticleImage, ArticleImage: data[0].attributes.ArticleImage,
ArticleTitle: data[0].attributes.ArticleTitle, ArticleTitle: data[0].attributes.ArticleTitle,
AuthorImage: data[0].attributes.AuthorImage, AuthorImage: data[0].attributes.AuthorImage,
}} }}
/> />
}
<DynamicZones data={data[0].attributes.DynamicZone1} /> <DynamicZones data={data[0].attributes.DynamicZone1} />
</div> </div>
<LatestArticles /> <LatestArticles />

Chargement…
Annuler
Enregistrer