Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev Autor Línea Nro. Línea
276 geraldo 1
import React, { useEffect, useState } from "react";
2
import { axios } from '../../utils';
3
import CardTest from "./card-test/CardTest";
4
import Spinner from "../../shared/loading-spinner/Spinner";
5
 
6
const SelfEvaluation = (props) => {
283 geraldo 7
 
8
    console.log(props.backendVars);
285 geraldo 9
 
282 geraldo 10
    // get props
11
    const { backendVars } = props;
285 geraldo 12
 
276 geraldo 13
    /**
14
     * Init States
15
     */
16
    const [rows, setRows] = useState([]);
17
    const [loading, setLoading] = useState(true);
18
 
19
    /**
20
     * Get All self evaluation tests
21
     */
282 geraldo 22
    const fetchData = async (searchParam = '') => {
23
 
24
        setLoading(true);
285 geraldo 25
        await axios
26
            .get(
27
                "/profile/self-evaluation?search=" + searchParam)
28
            .then((response) => {
29
                if (response.data.success) {
30
                    setRows(response.data.data);
31
                }
32
            });
276 geraldo 33
        setLoading(false);
285 geraldo 34
    };
282 geraldo 35
 
285 geraldo 36
 
276 geraldo 37
    /**
282 geraldo 38
     * Search rows
39
     * @param {*} e
40
     */
41
    const handleSearch = async (e) => fetchData(e);
42
 
43
    /**
276 geraldo 44
     * componentDidMount
45
     */
46
    useEffect(() => {
282 geraldo 47
        fetchData();
276 geraldo 48
    }, []);
49
 
50
    return (
51
        <section className="companies-info">
52
            <div className="container">
53
                <div className="company-title">
54
                    <div className="section_admin_title_buttons">
55
                        <h1 className="title">
282 geraldo 56
                            {backendVars.LBL_SELF_EVALUATION}
276 geraldo 57
                        </h1>
58
                    </div>
59
                </div>
60
 
61
                <div className="company-title">
62
                    <div className="section_admin_title_buttons">
63
                        <div className="form-group">
64
                            <input
286 geraldo 65
                                className="form-control"
276 geraldo 66
                                type="text"
284 geraldo 67
                                placeholder={backendVars.LBL_DATATABLE_SSEARCH}
282 geraldo 68
                                onChange={e => handleSearch(e.target.value)}
276 geraldo 69
                            />
70
                        </div>
71
                    </div>
72
                </div>
73
 
74
                <div className="companies-list">
75
                    {loading ? (
76
                        <div className="row">
77
                            <Spinner />
78
                        </div>
79
                    ) : (
80
                        <div className="row">
286 geraldo 81
                            {rows.length<=0 ? (
82
                                <div className="col-md-12 col-sm-12 col-xs-12 text-center">
284 geraldo 83
                                    {backendVars.LBL_DATATABLE_SZERORECORDS}
276 geraldo 84
                                </div>
85
                            ) : (
86
                                <div className="col-md-12 col-sm-12 col-xs-12">
286 geraldo 87
                                    {rows.map((test, key) => {
88
                                        return <CardTest
89
                                            key={key}
90
                                            test={test}
91
                                            backendVars={backendVars} />
92
                                    })}
276 geraldo 93
                                </div>
94
                            )}
95
                        </div>
96
                    )}
97
 
98
                </div>
99
            </div>
100
        </section>
101
 
102
    );
103
};
104
 
105
export default SelfEvaluation;