Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 2937 | Rev 3292 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
2369 stevensc 1
import React, { useEffect, useState } from 'react';
1386 steven 2
import { addNotification } from '../../../redux/notification/notification.actions';
3
import { axios } from '../../../utils';
4
import styles from './HomeSection.module.scss';
5
 
2369 stevensc 6
export default function HomeNews({ containerClassName = '', suggestionsContainerClassName = '' }) {
1386 steven 7
    const [news, setNews] = useState([])
8
    const loadNews = () => {
9
        axios.get('/helpers/posts')
10
            .then(res => {
2369 stevensc 11
                if (res.data.success) {
1386 steven 12
                    setNews(res.data.data)
13
                }
14
            })
15
            .catch(() => {
16
                addNotification({
17
                    style: "error",
18
                    msg: "Disculpe, ha ocurrido un error buscando novedades",
19
                });
20
            })
21
    }
22
    useEffect(() => {
23
        loadNews()
24
    }, [])
25
    return (
2369 stevensc 26
        <div className={containerClassName} style={{ paddingBottom: '5%' }}>
2845 stevensc 27
            <div className={styles.suggestions}>
1386 steven 28
                <div className="sd-title">
2934 stevensc 29
                    <h3>Articulos</h3>
1386 steven 30
                </div>
31
                <div className="suggestions-list">
32
                    {
33
                        news.map(element => {
2369 stevensc 34
                            return (
2932 stevensc 35
                                <div key={element.title} className={styles.postsList}>
36
                                    <img
37
                                        src={element.image}
38
                                        alt={`${element.title} image`}
39
                                    />
2933 stevensc 40
                                    <div className="d-flex flex-column ml-3" style={{ gap: '5px' }}>
2932 stevensc 41
                                        <h4>
42
                                            {element.title}
43
                                        </h4>
44
                                        <span>
45
                                            {element.date}
2758 stevensc 46
                                        </span>
47
                                    </div>
2933 stevensc 48
                                    <a
2939 stevensc 49
                                        className="btn btn-primary ml-3"
2933 stevensc 50
                                        href={element.link}
51
                                        target="_blank"
52
                                        rel="noreferrer"
2937 stevensc 53
                                        style={{ fontSize: '.9rem', borderRadius: '4px' }}
2933 stevensc 54
                                    >
55
                                        MÁS INF
56
                                    </a>
1386 steven 57
                                </div>
58
                            )
59
                        })
60
                    }
61
                </div>
62
            </div>
2678 stevensc 63
        </div >
1386 steven 64
    )
65
}